my_task.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. var app = getApp()
  2. var that;
  3. Page({
  4. data: {
  5. date: app.globalData.month,
  6. activeIndex: 1,
  7. page: 1,
  8. toList: [], // 放今天待完成
  9. list: [],
  10. showZp: false,//显示sx选择
  11. parameter: { //我指派的参数
  12. pt_id: 0,//类型
  13. status: 'running',//状态
  14. sort: 'publish',//排序
  15. },
  16. },
  17. onLoad(e) {
  18. that = this;
  19. if (e.index) {
  20. this.setData({
  21. activeIndex: e.index,
  22. })
  23. }
  24. dd.setNavigationBar({ title: "我的任务" });
  25. },
  26. onShow() {
  27. if (app.globalData.userData) {
  28. if (this.data.page == 1) {
  29. dd.hideLoading();
  30. that.getToDay();
  31. that.getData();
  32. }
  33. } else {
  34. app.login(app.globalData.corpId, function (is) {
  35. if (is) {
  36. that.getToDay();
  37. if (that.data.page == 1) {
  38. dd.hideLoading();
  39. that.getData();
  40. }
  41. } else {
  42. dd.reLaunch({
  43. url: '../noJurisdiction/noJurisdiction'
  44. })
  45. }
  46. })
  47. }
  48. },
  49. //显示选择员工
  50. selectSx() {
  51. this.setData({ showZp: true })
  52. },
  53. //关闭弹窗
  54. onClose() {
  55. this.setData({
  56. showZp: false,
  57. })
  58. },
  59. //选择筛选
  60. onConfirmSx(data) {
  61. this.setData({
  62. sxObj: data,
  63. page: 1,
  64. parameter: { //我指派的参数
  65. pt_id: data[0],//类型
  66. status: this.data.parameter.status,
  67. sort: data[2]
  68. }
  69. })
  70. this.getData();
  71. },
  72. //今天完成的任务
  73. getToDay() {
  74. app.$get('api/integral/work/list', { status: 'running', today: '1', page: '1', page_size: '50', sort: 'publish', source_type: 0, pt_id: 0 }).then((res) => {
  75. this.setData({
  76. toList: res.data.data.list
  77. })
  78. })
  79. },
  80. getData(is) {
  81. var parameter = this.data.parameter;
  82. var data = {
  83. page: that.data.page,
  84. page_size: 20,
  85. source_type: 0,//作来源种类 0-全部 1-直接指派(任务池领取以外的类型) 2-任务池领取 3-任务模板指派 4-每月绩效任务包
  86. pt_id: parameter.pt_id,//类型
  87. status: parameter.status,//工作状态 all-全部 running-进行中 complete-工作已完成 refuse-拒绝 reviewed-已审批 revocation-发布者撤回
  88. sort: parameter.sort,//排序种类 expire-过期时间倒序 publish-指派时间倒序
  89. }
  90. app.$get('api/integral/work/list', data).then((res) => {
  91. var data = res.data.data.list;
  92. data.forEach(item => {
  93. item.isCs = item.expire_time < app.globalData.allDate;
  94. })
  95. var list = that.data.list;
  96. data.forEach(element => {
  97. if (element.pt_id) {
  98. element.pt_name = app.getTypesItem(element.pt_id).name
  99. }
  100. });
  101. if (is) {
  102. if (data.length < 20) {
  103. this.setData({
  104. list: list.concat(data),
  105. isData: true
  106. })
  107. } else {
  108. this.setData({
  109. list: list.concat(data)
  110. })
  111. }
  112. } else {
  113. this.setData({
  114. list: data,
  115. isData: false
  116. })
  117. }
  118. })
  119. },
  120. activeItem(e) {
  121. var index = e.target.dataset.index;
  122. var status = "";
  123. if (index == 1) {
  124. status = "running"
  125. } else if (index == 2) {
  126. status = "complete"
  127. } else {
  128. status = "reviewed"
  129. }
  130. this.setData({
  131. activeIndex: index,
  132. page: 1,
  133. list: [],
  134. sxObj: [],
  135. parameter: {
  136. pt_id: 0,//类型
  137. status: status,//状态
  138. sort: 'publish',//排序
  139. }
  140. })
  141. this.getData();
  142. },
  143. openPerform(e) {
  144. var id = e.target.dataset.item.id;
  145. var is = e.target.dataset.is ? true : false
  146. dd.navigateTo({
  147. url: '../openPerform/openPerform?id=' + id + '&is=' + is
  148. })
  149. },
  150. //过滤List,通常用于删除了某条数据,刷新列表
  151. filtrationList(index, id) {
  152. if (index == 1) {
  153. this.getToDay()
  154. } else if (index == 2 && this.data.page != 1) {
  155. var list = this.data.list;
  156. for (let i in list) {
  157. if (list[i].id == id) {
  158. list.splice(i, 1)
  159. }
  160. }
  161. this.setData({ list: list })
  162. }
  163. },
  164. openDetail(e) {
  165. var id = e.target.dataset.item.id;
  166. dd.navigateTo({
  167. url: '../workDetail/workDetail?id=' + id
  168. })
  169. },
  170. //上啦加载
  171. onScrollToLower() {
  172. if (!that.data.isData) {
  173. this.setData({ page: ++that.data.page })
  174. this.getData(true);
  175. }
  176. },
  177. });