index.js 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. const _Http = getApp().globalData.http;
  2. Page({
  3. data: {
  4. tabs: [{
  5. title: "我收到的",
  6. id: "Receive"
  7. }, {
  8. title: "我发出的",
  9. id: "SendOut"
  10. }],
  11. active: "Receive",
  12. filterShow: false,
  13. filtratelist: [{
  14. label: "模板类型",
  15. index: null,
  16. showName: "reportname", //显示字段
  17. valueKey: "sys_workreportmodelid", //返回Key
  18. selectKey: "sys_workreportmodelid", //传参 代表选着字段 不传参返回整个选择对象
  19. value: "", //选中值
  20. list: []
  21. }, {
  22. label: "阅读状态",
  23. index: null,
  24. showName: "name", //显示字段
  25. valueKey: "readstatus", //返回Key
  26. selectKey: "value", //传参 代表选着字段 不传参返回整个选择对象
  27. value: "", //选中值
  28. list: [{
  29. name: "全部",
  30. value: ""
  31. }, {
  32. name: "已读",
  33. value: "1"
  34. }, {
  35. name: "未读",
  36. value: "0"
  37. }]
  38. }, {
  39. label: "时间筛选",
  40. index: null,
  41. showName: "name", //显示字段
  42. valueKey: "date", //返回Key
  43. selectKey: "value", //传参 代表选着字段 不传参返回整个选择对象
  44. value: "", //选中值
  45. list: [{
  46. name: "今日",
  47. value: "today"
  48. }, {
  49. name: "最近三天",
  50. value: "lastthreedays"
  51. }, {
  52. name: "最近一周",
  53. value: "lastWeek"
  54. }]
  55. }],
  56. isread: {
  57. label: "阅读状态",
  58. index: null,
  59. showName: "name", //显示字段
  60. valueKey: "readstatus", //返回Key
  61. selectKey: "value", //传参 代表选着字段 不传参返回整个选择对象
  62. value: "", //选中值
  63. list: [{
  64. name: "全部",
  65. value: ""
  66. }, {
  67. name: "已读",
  68. value: "1"
  69. }, {
  70. name: "未读",
  71. value: "0"
  72. }]
  73. },
  74. where: {
  75. condition: "",
  76. }
  77. },
  78. onLoad(options) {
  79. getApp().globalData.Language.getLanguagePackage(this, '工作汇报')
  80. this.getList();
  81. },
  82. onChange(e) {
  83. let list = this.selectComponent("#Yl_Filtrate1").data.list;
  84. if (e.detail.name == 'SendOut') {
  85. this.data.isread = list[1];
  86. this.setData({
  87. filtratelist: list.filter(v => v.label != '阅读状态')
  88. })
  89. } else {
  90. list.splice(1, 0, this.data.isread)
  91. this.setData({
  92. filtratelist: list
  93. })
  94. }
  95. this.setData({
  96. active: e.detail.name
  97. });
  98. this.getList();
  99. },
  100. getList(init = false) {
  101. if (init.detail != undefined) init = init.detail;
  102. this.selectComponent("#" + this.data.active).getList(init);
  103. this.getModel();
  104. },
  105. updateList() {
  106. let Receive = this.selectComponent("#Receive");
  107. if (Receive) {
  108. let content = JSON.parse(JSON.stringify(Receive.data.content))
  109. content.pageSize = (content.pageNumber - 1) * content.pageSize;
  110. content.pageNumber = 1;
  111. _Http.basic({
  112. "id": '20230524103102',
  113. content
  114. }).then(res => {
  115. console.log("Receive更新列表", res)
  116. if (res.code != '0') Receive.setData({
  117. list: res.data
  118. })
  119. })
  120. }
  121. let SendOut = this.selectComponent("#SendOut");
  122. if (SendOut) {
  123. let Scontent = JSON.parse(JSON.stringify(SendOut.data.content))
  124. Scontent.pageSize = (Scontent.pageNumber - 1) * Scontent.pageSize;
  125. Scontent.pageNumber = 1;
  126. _Http.basic({
  127. "id": "20230524102802",
  128. content: Scontent
  129. }).then(res => {
  130. console.log("SendOut更新列表", res)
  131. if (res.code != '0') SendOut.setData({
  132. list: res.data
  133. })
  134. })
  135. }
  136. },
  137. /* 获取模版列表 */
  138. getModel() {
  139. _Http.basic({
  140. "id": "20230524091902",
  141. "content": {
  142. "hrid": wx.getStorageSync('userMsg').hrid
  143. }
  144. }).then(res => {
  145. console.log("可创建模版列表", res)
  146. if (res.code != '1') return wx.showToast({
  147. title: res.msg,
  148. icon: 'none',
  149. mask: true
  150. })
  151. this.setData({
  152. modelList: res.data,
  153. "filtratelist[0].list": res.data
  154. })
  155. })
  156. },
  157. /* 新建汇报 */
  158. newData(e, i = 0) {
  159. wx.navigateTo({
  160. url: '/packageA/report/insert?model=' + JSON.stringify(this.data.modelList[i]),
  161. })
  162. },
  163. /* Picker选择器选择新建模版 */
  164. onPickerSelected(e) {
  165. this.newData("", e.detail.value)
  166. },
  167. /* 搜索 */
  168. onSearch({
  169. detail
  170. }) {
  171. if (this.data.where.condition == detail) return;
  172. this.data.where.condition = detail;
  173. this.selectComponent("#" + this.data.active).getList(true);
  174. },
  175. /* 筛选 */
  176. handleFilter({
  177. detail
  178. }) {
  179. detail.condition = this.data.where.condition;
  180. detail.today = 0
  181. detail.lastthreedays = 0
  182. detail.lastWeek = 0
  183. if (detail.date) detail[detail.date] = 1;
  184. detail.begindate = detail.startdate || ''
  185. this.data.where = detail;
  186. this.selectComponent("#" + this.data.active).getList(true);
  187. },
  188. onClick() {
  189. this.setData({
  190. filterShow: true
  191. })
  192. }
  193. })