my_task.js 3.8 KB

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