bills.js 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. const _Http = getApp().globalData.http;
  2. Component({
  3. options: {
  4. addGlobalClass: true
  5. },
  6. data: {
  7. content: {
  8. nocache: true,
  9. type: 0,
  10. dataid: 0,
  11. pageNumber: 1,
  12. pageSize: 20,
  13. dataType: "10",
  14. dateType: '月',
  15. where: {
  16. dateType: '月',
  17. begindate: "",
  18. enddate: ""
  19. }
  20. },
  21. showFiltrete: false,
  22. filtratelist: [{
  23. label: "时间筛选",
  24. index: 2,
  25. default: 2,
  26. showName: "name", //显示字段
  27. valueKey: "dateType", //返回Key
  28. value: "value", //选中值
  29. selectKey: "value",
  30. interrupt: true,
  31. relevance: "dateRange",
  32. list: [{
  33. name: "本日",
  34. value: "日"
  35. }, {
  36. name: "本周",
  37. value: "周"
  38. }, {
  39. name: "本月",
  40. value: "月",
  41. }, {
  42. name: "本年",
  43. value: "年"
  44. }]
  45. }]
  46. },
  47. lifetimes: {
  48. attached: function () {
  49. getApp().globalData.Language.getLanguagePackage(this)
  50. this.selectComponent("#Yl_Filtrate1").getMonthRange()
  51. }
  52. },
  53. methods: {
  54. handleFilter({
  55. detail
  56. }) {
  57. if (detail.name == "reset") {
  58. this.selectComponent("#Yl_Filtrate1").getMonthRange()
  59. this.setData({
  60. 'filtratelist[0].index': 2
  61. })
  62. }
  63. this.setData({
  64. "content.dateType": detail.dateType,
  65. "content.where.dateType": detail.dateType,
  66. "content.where.begindate": detail.startdate,
  67. "content.where.enddate": detail.enddate,
  68. });
  69. this.getList(true);
  70. },
  71. interrupt({
  72. detail
  73. }) {
  74. if (detail.data.label == "时间筛选") {
  75. switch (detail.item.name) {
  76. case '本日':
  77. this.selectComponent("#Yl_Filtrate1").queryDays(1)
  78. break;
  79. case '本周':
  80. this.selectComponent("#Yl_Filtrate1").getWeekRange()
  81. break;
  82. case '本月':
  83. this.selectComponent("#Yl_Filtrate1").getMonthRange()
  84. break;
  85. case '本年':
  86. this.selectComponent("#Yl_Filtrate1").getYearRange()
  87. break;
  88. }
  89. }
  90. },
  91. init(type, dataid) {
  92. if (this.data.content.dataid != dataid) {
  93. this.setData({
  94. 'content.dataid': dataid,
  95. 'content.type': type,
  96. list: []
  97. });
  98. this.getList(true);
  99. }
  100. },
  101. getList(init = false) {
  102. if (init.detail != undefined) init = init.detail;
  103. let content = JSON.parse(JSON.stringify(this.data.content));
  104. if (init) {
  105. content.pageNumber = 1;
  106. content.pageTotal = 1;
  107. }
  108. if (content.pageNumber > content.pageTotal) return;
  109. content.sort = [{
  110. sortid: 208,
  111. sorted: 1,
  112. reversed: 0
  113. }]
  114. _Http.basic({
  115. "id": 20230617143104,
  116. content
  117. }).then(res => {
  118. console.log(content.dataType + "项目", res)
  119. if (this.data.content.dataType != content.dataType) return;
  120. this.selectComponent("#ListBox").setHeight(".head", this);
  121. this.selectComponent('#ListBox').RefreshToComplete();
  122. if (res.code != '1') return wx.showToast({
  123. title: res.msg,
  124. icon: "none"
  125. });
  126. content.pageNumber = res.pageNumber + 1;
  127. content.pageTotal = res.pageTotal;
  128. this.setData({
  129. list: res.pageNumber == 1 ? res.data : this.data.list.concat(res.data),
  130. content
  131. })
  132. })
  133. },
  134. changeDataType(e) {
  135. const id = e.target.id;
  136. if (!id || this.data.content.dataType == id) return;
  137. this.setData({
  138. "content.dataType": e.target.id,
  139. list: []
  140. });
  141. this.getList(true)
  142. },
  143. openFiltrete() {
  144. this.setData({
  145. showFiltrete: true
  146. })
  147. },
  148. callphonenumber(e) {
  149. const {
  150. phonenumber
  151. } = e.currentTarget.dataset;
  152. if (!phonenumber) return;
  153. wx.makePhoneCall({
  154. phoneNumber: phonenumber
  155. })
  156. }
  157. }
  158. })