his.ts 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. // mMine/pages/myperformance/his/his.ts
  2. import Toast from "../../../../miniprogram_npm/@vant/weapp/toast/toast"
  3. import { queryMyPerformanc } from "../../../../services/api/orders/index"
  4. import { getPerformancestatus, getSteptype, userid } from "../../../../services/utils"
  5. import { isnullstr } from "../../../../utils/util"
  6. Page({
  7. /**
  8. * 页面的初始数据
  9. */
  10. data: {
  11. /// tab激活索引
  12. active: 0,
  13. /// tabs
  14. tabs: [{id: 0, name: '买履约'}, {id: 1, name: '卖履约'}],
  15. /// 是否空数据
  16. isEmpty: false,
  17. /// 当前页签
  18. page: 1,
  19. /// 列头
  20. titles: [['价格', '已付金额', '剩余冻结金额', '当前步骤', '剩余天数'],
  21. ['形状 | 颜色 | 重量 | 对手方', '状态']],
  22. /// 查询数据
  23. datas: <GuangZuan.MyPerformanc[]>[],
  24. /// 显示的值
  25. values: [{ up: [''], dwn: [''] }],
  26. /// 左滑宽度
  27. width: 50
  28. },
  29. /// 查询我的履约
  30. queryMyPerformanc(buyOrSell: number) {
  31. /// loding.....
  32. Toast.loading({ message: '数据请求中....' })
  33. /// 发送请求
  34. queryMyPerformanc({
  35. data: {
  36. userid: userid(),
  37. buyorsell: buyOrSell,
  38. ishis: true,
  39. page: this.data.page
  40. },
  41. success: (res) => {
  42. if (res.code != 200) {
  43. Toast.fail({ message: '查询失败,原因:'+res.msg })
  44. return
  45. }
  46. /// 查询成功
  47. this.setData({
  48. datas: res.data,
  49. /// 显示的值
  50. values: res.data.map(obj => {
  51. return {up: [obj.zscurrencytypedisplayunit+obj.price.toString(),
  52. (this.data.active == 0 ? obj.buypaidamount : obj.sellreceivedamount).toString(),
  53. (this.data.active == 0 ? obj.buyerfreezeamount : obj.sellerfreezeamount).toString(),
  54. getSteptype(obj.steptypeid),
  55. obj.remaindays.toString()],
  56. dwn: [isnullstr(obj.zsshapetypedisplay)+' | '+
  57. isnullstr(obj.zscolortype1display)+' | '+
  58. '--'+' | '+
  59. isnullstr(obj.accountname),
  60. getPerformancestatus(obj.performancestatus)]}
  61. })
  62. })
  63. },
  64. fail: (emsg) => {
  65. /// showToast
  66. Toast.fail({ message: '查询失败,原因:'+emsg })
  67. },
  68. complete: () => {
  69. /// hideLoading
  70. Toast.clear()
  71. /// 判断数据是否为空
  72. this.setData({ isEmpty: this.data.datas.length == 0 })
  73. /// 停止下拉刷新
  74. wx.stopPullDownRefresh()
  75. }
  76. })
  77. },
  78. /**
  79. * tabbar点击事件
  80. */
  81. onTabChange(e: any) {
  82. console.log(e)
  83. /// 设置激活项
  84. this.setData({ active: e.detail.index })
  85. /// 查询履约数据
  86. this.queryMyPerformanc(this.data.active)
  87. },
  88. /**
  89. * 返回上层视图
  90. */
  91. backToParent() {
  92. /// 返回上层视图
  93. wx.navigateBack()
  94. },
  95. /**
  96. * 按钮点击响应事件
  97. */
  98. onButtonPressed(e: any) {
  99. /// 获取对应的id
  100. const ids = (<string> e.target.id).split(' ')
  101. let id = (<string> e.target.id).split(' ')[0]
  102. const index = <number> <unknown>ids[1]
  103. switch (id) {
  104. case "detail": /// 详情
  105. wx.navigateTo({
  106. url: '/mMine/pages/myperformance/detail/detail?id='+JSON.stringify(this.data.datas[index])
  107. })
  108. break;
  109. default:
  110. break;
  111. }
  112. },
  113. /**
  114. * 生命周期函数--监听页面加载
  115. */
  116. onLoad() {
  117. /// 查询我的买履约
  118. this.queryMyPerformanc(0)
  119. },
  120. /**
  121. * 生命周期函数--监听页面初次渲染完成
  122. */
  123. onReady() {
  124. },
  125. /**
  126. * 生命周期函数--监听页面显示
  127. */
  128. onShow() {},
  129. /**
  130. * 生命周期函数--监听页面隐藏
  131. */
  132. onHide() {
  133. },
  134. /**
  135. * 生命周期函数--监听页面卸载
  136. */
  137. onUnload() {
  138. },
  139. /**
  140. * 页面相关事件处理函数--监听用户下拉动作
  141. */
  142. onPullDownRefresh() {
  143. /// 设置页签
  144. this.setData({ page: 1 })
  145. /// 查询我的买卖履约
  146. this.queryMyPerformanc(this.data.active)
  147. },
  148. /**
  149. * 页面上拉触底事件的处理函数
  150. */
  151. onReachBottom() {
  152. /// 设置页签
  153. this.setData({ page: this.data.page+1 })
  154. /// 查询我的买卖履约
  155. this.queryMyPerformanc(this.data.active)
  156. },
  157. /**
  158. * 用户点击右上角分享
  159. */
  160. onShareAppMessage() {
  161. }
  162. })