utils.ts 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. import { queryGetDivisions } from "./api/common/index";
  2. import { getTaAccounts } from './api/account/index';
  3. import { v4 } from "../stores/utils/uuid/index";
  4. import { IMessageHead } from './../services/socket/trade/protobuf/proto';
  5. import Toast from "../miniprogram_npm/@vant/weapp/toast/toast";
  6. /// 获取履约步骤类型ID
  7. export function getSteptype(typeid: number): string {
  8. switch (typeid) {
  9. case 1:
  10. return '买方支付'
  11. break;
  12. case 2:
  13. return '卖方收款'
  14. break;
  15. case 3:
  16. return '买方自提'
  17. break;
  18. case 4:
  19. return '卖方发货'
  20. break;
  21. case 5:
  22. return '买方确认货'
  23. break;
  24. case 6:
  25. return '卖方发票'
  26. break;
  27. case 7:
  28. return '买方确认票'
  29. break;
  30. case 8:
  31. return '卖仓单转移'
  32. break;
  33. case 9:
  34. return '释放卖方冻结'
  35. break;
  36. case 10:
  37. return '货款溢短'
  38. break;
  39. case 11:
  40. return '生成合同[中江]'
  41. break;
  42. case 12:
  43. return '运费'
  44. break;
  45. case 90:
  46. return '确认支付'
  47. break;
  48. case 91:
  49. return '确认放行'
  50. break;
  51. default:
  52. return '买方支付(直接扣款)'
  53. break;
  54. }
  55. }
  56. /// 获取履约步骤类型ID
  57. export function getStepStatus(stepstatus: number): string {
  58. switch (stepstatus) {
  59. case 1:
  60. return '待开始'
  61. break;
  62. case 2:
  63. return '进行中'
  64. break;
  65. case 3:
  66. return '已完成'
  67. break;
  68. case 4:
  69. return '延期(进行中)'
  70. break;
  71. case 5:
  72. return '失败'
  73. break;
  74. case 6:
  75. return '自动完成'
  76. break;
  77. default:
  78. return '超时关闭'
  79. break;
  80. }
  81. }
  82. /// 获取履约状态
  83. export function getPerformancestatus(status: number): string {
  84. switch (status) {
  85. case 1:
  86. return '待激活'
  87. break;
  88. case 2:
  89. return '正常'
  90. break;
  91. case 3:
  92. return '处理错误'
  93. break;
  94. case 4:
  95. return '违约待处理'
  96. break;
  97. case 5:
  98. return '违约处理中'
  99. break;
  100. case 6:
  101. return '完成'
  102. break;
  103. case 7:
  104. return '违约已完成'
  105. break;
  106. case 8:
  107. return '释放冻结失败 '
  108. break;
  109. case 9:
  110. return '超时待处理'
  111. break;
  112. default:
  113. return '超时关闭'
  114. break;
  115. }
  116. }
  117. /// 获取出境检测执行状态
  118. export function getExecutestatus(status: number) {
  119. switch (status) {
  120. case 1:
  121. return '未生效'
  122. break;
  123. case 2:
  124. return '进行中'
  125. break;
  126. default:
  127. return '已结束'
  128. break;
  129. }
  130. }
  131. /// 获取地区区域信息
  132. export function getDivisions() {
  133. /// 发送请求
  134. queryGetDivisions({
  135. enableAuthorization: false,
  136. success: (res) => {
  137. /// 数据缓存
  138. setDivisions(res.data)
  139. },
  140. fail: () => {
  141. Toast('地区信息获取失败')
  142. }
  143. })
  144. }
  145. /// 获取资金账户信息
  146. export function taAccounts() {
  147. /// 发送请求
  148. getTaAccounts({
  149. data: {
  150. loginID: loginid()
  151. },
  152. success: (res) => {
  153. /// 数据缓存
  154. wx.setStorageSync('GetTaAccounts', res.data)
  155. wx.setStorageSync('AccountID', res.data[0].accountid)
  156. },
  157. fail: () => {
  158. Toast('资金账户信息获取失败')
  159. }
  160. })
  161. }
  162. /// 获取当前对应的资金账户
  163. export function taAccount(accountid: number): GuangZuan.TaAccount {
  164. const tas = <GuangZuan.TaAccount[]>wx.getStorageSync('GetTaAccounts')
  165. return tas.filter(obj => {
  166. return obj.accountid === accountid
  167. })[0]
  168. }
  169. /// 获取登录Loginid
  170. export function loginid() {
  171. return wx.getStorageSync('LoginID')
  172. }
  173. /// 获取用户userid
  174. export function userid() {
  175. return wx.getStorageSync('UserId')
  176. }
  177. /// 获取资金用户ID
  178. export function accountid() {
  179. return wx.getStorageSync('AccountID')
  180. }
  181. /// 获取用户Token
  182. export function xtoken() {
  183. return wx.getStorageSync('Authorization')
  184. }
  185. /// 获取市场id
  186. export function marketid() {
  187. return wx.getStorageSync('MarketID')
  188. }
  189. /// 是否加密
  190. export function isEncrypted() {
  191. return false
  192. }
  193. /// 存储地区信息
  194. export function setDivisions(datas: GuangZuan.GetDivisions[]) {
  195. wx.setStorageSync('GetDivisions', datas)
  196. }
  197. /// 获取地区信息
  198. export function divisions() {
  199. return wx.getStorageSync('GetDivisions')
  200. }
  201. /// 终端类型
  202. export function clientType() {
  203. return 5
  204. }
  205. /// 返回proto交易头
  206. export function protoHeader(funcode: number) {
  207. /// 组合请求头
  208. const header: IMessageHead = {
  209. FunCode: funcode,
  210. AccountID: accountid(),
  211. UserID: userid(),
  212. MarketID: marketid(),
  213. UUID: v4()
  214. }
  215. return header
  216. }
  217. /// 获取时间戳
  218. export function timetample() {
  219. return Date.parse(new Date().toString())
  220. }
  221. /// 获取登录查询数据信息
  222. export function loginQuery(): GuangZuan.LoginQuery {
  223. const data = <GuangZuan.LoginQuery>wx.getStorageSync('LoginQuery')
  224. return data
  225. }
  226. /// 获取登录账号
  227. export function loginCode(): string {
  228. const code = (<GuangZuan.LoginQuery>wx.getStorageSync('LoginQuery')).loginAccount.logincode
  229. return code === '' ? loginid() : code
  230. }
  231. /// 存储所有的枚举信息
  232. export function setAllEnums(enums: GuangZuan.AllEnums[]) {
  233. wx.setStorageSync('AllEnums', enums)
  234. }
  235. export function getAllEnums(): GuangZuan.AllEnums[] {
  236. const objs = <[GuangZuan.AllEnums]>wx.getStorageSync('AllEnums')
  237. return objs
  238. }
  239. export function getEnumList(enumdiccode: string): GuangZuan.AllEnums[] {
  240. const objs = getAllEnums().filter(obj => {
  241. return obj.enumdiccode === enumdiccode
  242. })
  243. return objs
  244. }
  245. /// 获取对应枚举的值
  246. export function getEnumdicValue(enumdiccode: string, enumdicname: string): number {
  247. const objs = getEnumList(enumdiccode)
  248. if (objs.length != 0) {
  249. const enums = objs.filter(obj => {
  250. return obj.enumdicname === enumdicname
  251. })
  252. return enums.filter(obj => {
  253. return obj.enumdicname === enumdicname
  254. })[0].enumitemname
  255. }
  256. return 0
  257. }