my_sp.js 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. var app = getApp()
  2. var that;
  3. Page({
  4. data: {
  5. date: app.globalData.month,
  6. page: 1,
  7. toList: [], // 放今天待完成
  8. list: [],
  9. showZp: false,//显示sx选择
  10. parameter: { //我指派的参数
  11. pt_id: 0,//类型
  12. status: 'running',//状态
  13. sort: 'publish',//排序
  14. },
  15. showStaff: false,//显示员工选择
  16. staffVal: '执行人',
  17. minuteIndex: 0,//条件选择
  18. minuteArray: [
  19. { id: 0, name: '待完成' },
  20. { id: 1, name: '待审批' },
  21. { id: 2, name: '已审批' },
  22. ],
  23. popupCx: '',
  24. config: {},
  25. },
  26. onLoad(e) {
  27. that = this;
  28. this.setData({
  29. config: app.globalData.config
  30. })
  31. dd.setNavigationBar({ title: "我审批的" });
  32. },
  33. onShow() {
  34. if (app.globalData.userData) {
  35. if (this.data.page == 1) {
  36. dd.hideLoading();
  37. that.getData();
  38. }
  39. } else {
  40. app.login(app.globalData.corpId, function (is) {
  41. if (is) {
  42. if (that.data.page == 1) {
  43. dd.hideLoading();
  44. that.getData();
  45. }
  46. } else {
  47. dd.reLaunch({
  48. url: '../../noJurisdiction/noJurisdiction'
  49. })
  50. }
  51. },function(){})
  52. }
  53. },
  54. onReset() {
  55. this.setData({
  56. page: 1,
  57. isVal: false,
  58. searchName: ''
  59. })
  60. this.getData(this.data.activeIndex);
  61. },
  62. bindKeyInput(e) {
  63. this.setData({
  64. page: 1,
  65. isVal: e.detail.value ? true : false,
  66. searchName: e.detail.value ? e.detail.value : '',
  67. })
  68. this.getData(this.data.activeIndex);
  69. },
  70. //显示选择员工
  71. selectStaff() {
  72. this.setData({
  73. popupCx: 'container__mask',
  74. showStaff: true
  75. })
  76. },
  77. selectSx() {
  78. this.setData({ showZp: true })
  79. },
  80. //选择员工
  81. onConfirmStaff(data) {
  82. if (!data) {
  83. this.setData({ staffVal: '执行人', employee_ids: '', page: 1 })
  84. this.getData();
  85. return false;
  86. }
  87. if (data.length > 0) {
  88. if (data.length > 1) {
  89. var str = "";
  90. var arr = [];
  91. data.forEach((item) => {
  92. str += item.name + ','
  93. arr.push(item.id);
  94. })
  95. var employee_ids = arr.join(',');
  96. this.setData({ staffVal: str.substring(0, str.length - 1), employee_ids: employee_ids, page: 1 })
  97. } else {
  98. this.setData({ staffVal: data[0].name, employee_ids: [data[0].id], page: 1 })
  99. }
  100. } else {
  101. this.setData({ staffVal: '执行人', employee_ids: [], page: 1 })
  102. }
  103. this.getData();
  104. },
  105. //关闭弹窗
  106. onClose() {
  107. this.setData({
  108. showZp: false,
  109. showStaff: false,
  110. popupCx: ''
  111. })
  112. },
  113. //选择筛选
  114. onConfirmSx(data) {
  115. this.setData({
  116. sxObj: data,
  117. page: 1,
  118. parameter: { //我指派的参数
  119. pt_id: data[0],//类型
  120. status: this.data.parameter.status,
  121. sort: data[2]
  122. }
  123. })
  124. this.getData();
  125. },
  126. getData(is) {
  127. var parameter = this.data.parameter;
  128. var data = {
  129. page: that.data.page,
  130. page_size: 20,
  131. source_type: 0,//作来源种类 0-全部 1-直接指派(任务池领取以外的类型) 2-任务池领取 3-任务模板指派 4-每月绩效任务包
  132. pt_id: parameter.pt_id,//类型
  133. status: parameter.status,//工作状态 all-全部 running-进行中 complete-工作已完成 refuse-拒绝 reviewed-已审批 revocation-发布者撤回
  134. sort: parameter.sort,//排序种类 expire-过期时间倒序 publish-指派时间倒序
  135. employee_id:this.data.employee_ids,
  136. content:that.data.searchName,
  137. }
  138. app.$get('api/integral/work/list/reviewer', data).then((res) => {
  139. var data = res.data.data.list;
  140. data.forEach(item => {
  141. item.isCs = item.expire_time < app.globalData.allDate;
  142. })
  143. if(that.data.page==1){
  144. this.setData({
  145. list: []
  146. })
  147. }
  148. var list = that.data.list;
  149. data.forEach(element => {
  150. if (element.pt_id) {
  151. element.pt_name = app.getTypesItem(element.pt_id).name
  152. }
  153. });
  154. if (is) {
  155. if (data.length < 20) {
  156. this.setData({
  157. list: list.concat(data),
  158. isData: true
  159. })
  160. } else {
  161. this.setData({
  162. list: list.concat(data)
  163. })
  164. }
  165. } else {
  166. this.setData({
  167. list: data,
  168. isData: false
  169. })
  170. }
  171. })
  172. },
  173. openDetail2(e){
  174. var id = e.target.dataset.item.review_id;
  175. dd.navigateTo({
  176. url: '../../workbench/approveDetail/approveDetail?id=' + id
  177. })
  178. },
  179. activeItem(e) {
  180. var index = Number(e.detail.value)+1;
  181. var status = "";
  182. if (index == 1) {
  183. status = "running"
  184. } else if (index == 2) {
  185. status = "complete"
  186. } else {
  187. status = "reviewed"
  188. }
  189. this.setData({
  190. minuteIndex: e.detail.value,
  191. page: 1,
  192. list: [],
  193. sxObj: [],
  194. parameter: {
  195. pt_id: 0,//类型
  196. status: status,//状态
  197. sort: 'publish',//排序
  198. }
  199. })
  200. this.getData();
  201. },
  202. openPerform(e) {
  203. var id = e.target.dataset.item.id;
  204. var is = e.target.dataset.is ? true : false
  205. dd.navigateTo({
  206. url: '../openPerform/openPerform?id=' + id + '&is=' + is
  207. })
  208. },
  209. //过滤List,通常用于删除了某条数据,刷新列表
  210. filtrationList(index, id) {
  211. if (index == 1) {
  212. } else if (index == 2 && this.data.page != 1) {
  213. var list = this.data.list;
  214. for (let i in list) {
  215. if (list[i].review_id == id) {
  216. list.splice(i, 1)
  217. }
  218. }
  219. this.setData({ list: list })
  220. }
  221. },
  222. openDetail(e) {
  223. var id = e.target.dataset.item.id;
  224. dd.navigateTo({
  225. url: '../workDetail/workDetail?id=' + id
  226. })
  227. },
  228. //上啦加载
  229. onScrollToLower() {
  230. if (!that.data.isData) {
  231. this.setData({ page: ++that.data.page })
  232. this.getData(true);
  233. }
  234. },
  235. });