index.ts 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. import { FunCode } from "../../../../constants/enum/funcode"
  2. import { sendMsgToMQ } from "../../../../services/api/common/index"
  3. import { queryGZBSFWOrder } from "../../../../services/api/trade/index"
  4. import { clientType, getErrorMsg, getExecutestatus, isEncrypted, loginCode, loginid, protoHeader, timetample, userid } from "../../../../services/utils"
  5. import { hideLoading, showLoading } from "../../../../utils/message/index"
  6. import { isnullstr } from "../../../../utils/util"
  7. import { encryptBody } from "../../../../utils/websocket/crypto"
  8. Page({
  9. /**
  10. * 页面的初始数据
  11. */
  12. data: {
  13. /// 底部安全区域
  14. safeBottom: getApp().globalData.safeBottom,
  15. /// tabs
  16. tabs: [{id: 0, name: '待处理'}, {id: 1, name: '进行中'}, {id: 2, name: '已结束'}],
  17. /// tab索引
  18. active: 0,
  19. /// 列头
  20. titles: [['总净重(ct)| 总净重(g)| 总毛重(g)', '单据编号'],
  21. ['总值(USD)| 单价(USD/ct)', '状态'], ['内容 | 备注']],
  22. /// 是否空数据
  23. isEmpty: true,
  24. /// 数据信息
  25. bonds: <GuangZuan.GZBSFWOrder[]>[],
  26. /// 显示的值
  27. values: [{ up: [''], mid: [''], dwn: [''], width: 100 }]
  28. },
  29. /**
  30. * 返回上层视图
  31. */
  32. backToParent() {
  33. /// 返回上层视图
  34. wx.navigateBack()
  35. },
  36. onButtonPressed(e: any) {
  37. /// 获取对应的id
  38. const ids = (<string> e.target.id).split(' ')
  39. let id = (<string> e.target.id).split(' ')[0]
  40. const index = <number> <unknown>ids[1]
  41. switch (id) {
  42. case 'detail': /// 详情
  43. wx.navigateTo({
  44. url: "/mHome/pages/bond/detail/index?item="+JSON.stringify(this.data.bonds[index])
  45. })
  46. break;
  47. case 'confirmprepayment': /// 确认预付款
  48. wx.navigateTo({
  49. url: '/mHome/pages/bond/prepayment/index?item='+JSON.stringify(this.data.bonds[index])
  50. })
  51. break;
  52. case 'confirmpayment': /// 确认付款
  53. wx.navigateTo({
  54. url: '/mHome/pages/bond/payment/index?item='+JSON.stringify(this.data.bonds[index])
  55. })
  56. break;
  57. default:
  58. break;
  59. }
  60. },
  61. /**
  62. * tab触发事件
  63. */
  64. onTabChange(e: any) {
  65. /// 设置激活项
  66. this.setData({ active: e.detail.index })
  67. /// 查询保税服务单据
  68. this.queryGZBSFWOrder()
  69. },
  70. /**
  71. * 查询保税服务单据
  72. */
  73. queryGZBSFWOrder() {
  74. /// loding.....
  75. showLoading(() => {
  76. /// 发送查询
  77. queryGZBSFWOrder({
  78. data: {
  79. /// 模糊搜索
  80. userid: userid(),
  81. executestatus: this.data.active+1
  82. },
  83. /// 加载成功
  84. success: (res) => {
  85. if (res.code != 200) {
  86. /// 加载失败
  87. hideLoading(()=>{}, '加载失败...', 'error')
  88. return
  89. }
  90. hideLoading(() => {
  91. /// 数据赋值
  92. this.setData({
  93. bonds: res.data,
  94. /// 显示的值
  95. values: res.data.map(obj => {
  96. /// 宽度设置
  97. var width = 50.0
  98. if (obj.gzbsstatus === 4 || obj.gzbsstatus === 11) {
  99. width = 100.0
  100. }
  101. return {up: [obj.totalnetweigthct.toString()+' | '+
  102. obj.totalnetweightgm.toString()+' | '+
  103. obj.totalgrossweightgm.toString(),
  104. isnullstr(obj.orderno)],
  105. mid:[obj.totalamount.toString(),
  106. obj.priceper.toString(),
  107. getExecutestatus(obj.executestatus)],
  108. dwn: [isnullstr(obj.contentrange.toString())+' | '+ '--',
  109. ''],
  110. width: width}
  111. }),
  112. isEmpty: res.data.length === 0
  113. })
  114. })
  115. },
  116. fail: (emsg) => {
  117. hideLoading(()=>{}, '加载失败...'+emsg, 'error')
  118. },
  119. complete: () => {
  120. /// 停止下拉刷新
  121. wx.stopPullDownRefresh()
  122. }
  123. })
  124. })
  125. },
  126. /**
  127. * 保税服务操作
  128. */
  129. doBSFWOperator(operator: number, orderid: number) {
  130. /// loding.....
  131. showLoading(()=>{
  132. /// 参数信息
  133. const info = JSON.stringify({
  134. UserID: userid(),
  135. OperateID: loginid(),
  136. ClientType: clientType,
  137. ClientSerialNo: timetample().toString,
  138. OperateAccount: loginCode(),
  139. OrderID: orderid,
  140. OperateType: operator,
  141. Header: protoHeader(FunCode.BSFWMemberOperateReq, 66201)
  142. })
  143. /// 发送请求
  144. sendMsgToMQ({
  145. data: {
  146. data: encryptBody(info),
  147. funCodeReq: FunCode.BSFWMemberOperateReq,
  148. funCodeRsp: FunCode.BSFWMemberOperateRsp,
  149. isEncrypted: isEncrypted()
  150. },
  151. success: (res) => {
  152. /// 解析对象
  153. const data = JSON.parse(res.data.data)
  154. if (data.RetCode != 0) {
  155. hideLoading(() => {}, getErrorMsg(data.RetCode), 'error')
  156. return
  157. }
  158. /// 操作成功
  159. hideLoading(()=>{
  160. /// 重新获取数据
  161. this.queryGZBSFWOrder()
  162. })
  163. },
  164. fail: (emsg) => {
  165. /// 操作失败
  166. hideLoading(()=>{}, emsg, 'error')
  167. }
  168. })
  169. }, '操作请求中.....')
  170. },
  171. /**
  172. * 生命周期函数--监听页面加载
  173. */
  174. onLoad() {
  175. /// 查询保税服务单据
  176. this.queryGZBSFWOrder()
  177. },
  178. /**
  179. * 生命周期函数--监听页面初次渲染完成
  180. */
  181. onReady() {
  182. },
  183. /**
  184. * 生命周期函数--监听页面显示
  185. */
  186. onShow() {
  187. },
  188. /**
  189. * 生命周期函数--监听页面隐藏
  190. */
  191. onHide() {
  192. },
  193. /**
  194. * 生命周期函数--监听页面卸载
  195. */
  196. onUnload() {
  197. },
  198. /**
  199. * 页面相关事件处理函数--监听用户下拉动作
  200. */
  201. onPullDownRefresh() {
  202. /// 查询保税服务单据
  203. this.queryGZBSFWOrder()
  204. },
  205. /**
  206. * 页面上拉触底事件的处理函数
  207. */
  208. onReachBottom() {
  209. },
  210. /**
  211. * 用户点击右上角分享
  212. */
  213. onShareAppMessage() {
  214. }
  215. })