index.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. const _Http = getApp().globalData.http;
  2. import currency from "../../utils/currency";
  3. Page({
  4. data: {
  5. loading: true,
  6. active: 0,
  7. amount: 0,
  8. "content": {
  9. "isExport": 0,
  10. "pageNumber": 1,
  11. "pageSize": 20,
  12. "systemclient": "wechatsaletool",
  13. "where": {
  14. "condition": "",
  15. "status": [], //["新建","关闭"]
  16. "type": "", //订单类型
  17. "shoppingtype": "", //购物类型
  18. "begindate": "", //单据开始日期
  19. "enddate": "", //单据结束日期
  20. "begindate2": "", //审核开始日期
  21. "enddate2": "", //审核结束日期
  22. "saler_name": "" //业务员
  23. }
  24. }
  25. },
  26. async onLoad(options) {
  27. this.getList(true)
  28. let filter = [{
  29. label: "订单类型",
  30. index: null,
  31. showName: "value", //显示字段
  32. valueKey: "type", //返回Key
  33. selectKey: "value", //传参 代表选着字段 不传参返回整个选择对象
  34. value: "", //选中值
  35. list: [{
  36. value: '经销商订单'
  37. }, {
  38. value: '医院订单'
  39. }]
  40. }, {
  41. label: "购货类型",
  42. index: null,
  43. showName: "value", //显示字段
  44. valueKey: "shoppingtype", //返回Key
  45. selectKey: "value", //传参 代表选着字段 不传参返回整个选择对象
  46. value: "", //选中值
  47. list: await _Http.getTypes('purchasetype', _Http)
  48. }]
  49. this.setData({
  50. filter,
  51. insert: wx.getStorageSync('auth').newsale.options.some(v => v == 'insert'), //查询新增权限
  52. })
  53. },
  54. /* 处理筛选 */
  55. handleFilter({
  56. detail
  57. }) {
  58. detail.begindate2 = detail.periodstart || ''
  59. detail.enddate2 = detail.periodend || ''
  60. detail.begindate = detail.startdate || ''
  61. delete detail.periodstart;
  62. delete detail.periodend;
  63. delete detail.startdate;
  64. this.data.content.where = Object.assign(this.data.content.where, detail);
  65. this.getList(true);
  66. },
  67. /* 获取产品 */
  68. getList(init = false) {
  69. if (init.detail != undefined) init = init.detail;
  70. let content = this.data.content;
  71. if (init) content.pageNumber = 1;
  72. if (content.pageNumber > content.pageTotal) return;
  73. _Http.basic({
  74. "id": 20221111145202,
  75. content
  76. }).then(res => {
  77. console.log("订单列表", res)
  78. this.selectComponent('#ListBox').RefreshToComplete();
  79. /* 格式化价格 */
  80. if (res.data.length != 0) res.data = res.data.map(v => {
  81. v.showAmount = currency(v.amount, {
  82. symbol: "¥",
  83. precision: 2
  84. }).format();
  85. return v
  86. })
  87. this.setData({
  88. list: res.pageNumber == 1 ? res.data : this.data.list.concat(res.data),
  89. "content.pageNumber": res.pageNumber + 1,
  90. "content.pageTotal": res.pageTotal,
  91. "content.sort": res.sort,
  92. "content.total": res.total,
  93. loading: false,
  94. amount: currency(res.tips.amount, {
  95. symbol: "¥",
  96. precision: 2
  97. }).format()
  98. })
  99. })
  100. },
  101. /* 搜索 */
  102. onSearch({
  103. detail
  104. }) {
  105. this.setData({
  106. "content.where.condition": detail
  107. });
  108. this.getList(true)
  109. },
  110. /* 切换tabs */
  111. tabsChange(e) {
  112. let status = "";
  113. switch (e.detail.name) {
  114. case '全部':
  115. status = [];
  116. break;
  117. default:
  118. status = [e.detail.name]
  119. break;
  120. }
  121. this.setData({
  122. active: e.detail.title,
  123. "content.where.status": status
  124. });
  125. this.getList(true);
  126. },
  127. onReady() {
  128. this.setListHeight()
  129. },
  130. /* 设置页面高度 */
  131. setListHeight() {
  132. this.selectComponent("#ListBox").setHeight(".tips", this);
  133. },
  134. })