sectionRanking.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. var app = getApp()
  2. var that;
  3. Page({
  4. data: {
  5. date: app.globalData.month,
  6. minuteIndex: 0,//条件选择
  7. minuteArray: [
  8. { id: 0, name: '总分' },
  9. { id: 1, name: '加班' },
  10. { id: 2, name: '迟到' },
  11. ],
  12. showDate: false,//是否显示时间组件
  13. selectDateVal: app.globalData.month,
  14. showSx: false,//显示sx选择
  15. sxVal: '筛选',
  16. showRuleTwo: false,//显示规则组件
  17. ruleVal: "规则分类",
  18. showTissue: false,//显示部门组件
  19. TissueVal: '全公司',
  20. sort:'DESC',
  21. position:'all',
  22. year:app.globalData.year,
  23. page:1,
  24. dateIndex:'3',
  25. popupCx: '',
  26. pt_id:'3',
  27. },
  28. onShareAppMessage() {
  29. return {
  30. title: '阶段排名',
  31. desc: '积分排名有变动了,快来看看!',
  32. path: 'pages/statistics/sectionRanking/sectionRanking'
  33. };
  34. },
  35. onLoad() {
  36. that = this;
  37. dd.setNavigationBar({ title: "阶段排名" });
  38. this.getData();
  39. },
  40. onShow() {
  41. if (app.globalData.userData) {
  42. if (that.data.page == 1) {
  43. dd.hideLoading();
  44. that.getData();
  45. }
  46. } else {
  47. app.login(app.globalData.corpId, function (is) {
  48. if (is) {
  49. if (that.data.page == 1) {
  50. dd.hideLoading();
  51. that.getData();
  52. }
  53. } else {
  54. dd.reLaunch({
  55. url: '../noJurisdiction/noJurisdiction'
  56. })
  57. }
  58. },function(){})
  59. }
  60. },
  61. getData(is) {
  62. var data = {
  63. pt_id:that.data.pt_id,
  64. dept_id:that.data.dept_id,
  65. page: that.data.page,
  66. rule_id: that.data.rule_id,
  67. sort:that.data.sort,
  68. position:that.data.position,
  69. page_size:20
  70. }
  71. if(that.data.dateIndex=='1'){
  72. data.year=that.data.year;
  73. }else if(that.data.dateIndex=='2'){
  74. data.quarter=that.data.quarter
  75. }else if(that.data.dateIndex=='4'){
  76. data.start_date=that.data.custom.start_date
  77. data.end_date=that.data.custom.end_date
  78. }else{
  79. data.month=that.data.month||app.globalData.month;
  80. }
  81. app.$get('api/integral/statistics/ranking',data,'application/vnd.test.v2+json').then((res) => {
  82. var data = res.data.data.list;
  83. if (is) {
  84. if (data.length == 0) {
  85. this.setData({
  86. isData: true
  87. })
  88. return;
  89. }
  90. var list = that.data.list;
  91. this.setData({
  92. list: list.concat(data)
  93. })
  94. } else {
  95. this.setData({list:[]});
  96. this.setData({
  97. list: data,
  98. isData: false
  99. })
  100. }
  101. })
  102. },
  103. //上啦加载
  104. onScrollToLower() {
  105. if(!that.data.isData){
  106. this.setData({ page: ++that.data.page })
  107. this.getData(true);
  108. }
  109. },
  110. // //打开兴趣
  111. // openDetail(e) {
  112. // var item = e.target.dataset.item;
  113. // console.log(item)
  114. // dd.navigateTo({
  115. // url: '../prizeBuckleDetail/prizeBuckleDetail?id=' + item.employee_id
  116. // })
  117. // },
  118. //显示规则组件
  119. selectRule() {
  120. this.setData({
  121. popupCx: 'container__mask',
  122. showRuleTwo: true
  123. })
  124. },
  125. //显示选择时间组件
  126. selectDate() {
  127. this.setData({
  128. popupCx: 'container__mask',
  129. showDate: true
  130. })
  131. },
  132. //显示选择员工
  133. selectSx() {
  134. this.setData({
  135. popupCx: 'container__mask',
  136. showSx: true
  137. })
  138. },
  139. //选择时间
  140. onConfirmDate(data) {
  141. this.setData({
  142. dateObj: data,
  143. })
  144. if (data.type == '1') {
  145. this.setData({
  146. selectDateVal:data.date,
  147. year:data.date,
  148. dateIndex:data.type
  149. })
  150. } else if(data.type == '2'){
  151. this.setData({
  152. selectDateVal:data.date+'季度',
  153. quarter: data.date,
  154. dateIndex:data.type
  155. })
  156. } else if(data.type == '4'){
  157. this.setData({
  158. selectDateVal: data.date.start_date + '--' + data.date.end_date,
  159. custom: data.date,
  160. dateIndex:data.type
  161. })
  162. }else{
  163. this.setData({
  164. selectDateVal: data.date,
  165. month:data.date,
  166. dateIndex:data.type
  167. })
  168. }
  169. this.setData({page:1})
  170. this.getData();
  171. },
  172. //关闭弹窗
  173. onClose() {
  174. this.setData({
  175. showDate: false,
  176. showSx: false,
  177. showRuleTwo: false,
  178. showTissue: false,
  179. popupCx: ''
  180. })
  181. },
  182. //选择筛选
  183. onConfirmSx(data) {
  184. console.log(data)
  185. this.setData({sxObj:data, sort:data[1],position:data[0],pt_id:data[2],page:1})
  186. this.getData();
  187. },
  188. //选择规则
  189. onConfirmRule(data) {
  190. this.setData({
  191. rule_id: data.id ? data.id : '',
  192. page: 1,
  193. ruleVal: data.name
  194. })
  195. this.getData();
  196. },
  197. //显示部门选择组件
  198. selectTissue() {
  199. this.setData({ showTissue: !this.data.showTissue,popupCx: 'container__mask', })
  200. },
  201. //选择部门
  202. onConfirmTissue(data) {
  203. this.setData({ dept_id: data.id,page:1,TissueVal:data.name })
  204. this.getData();
  205. },
  206. });