sectionRanking.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  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. },
  39. onShow() {
  40. if (app.globalData.userData) {
  41. if (that.data.page == 1) {
  42. dd.hideLoading();
  43. that.getData();
  44. }
  45. } else {
  46. app.login(app.globalData.corpId, function (is) {
  47. if (is) {
  48. if (that.data.page == 1) {
  49. dd.hideLoading();
  50. that.getData();
  51. }
  52. } else {
  53. dd.reLaunch({
  54. url: '../../noJurisdiction/noJurisdiction'
  55. })
  56. }
  57. },function(){})
  58. }
  59. },
  60. getData(is) {
  61. var data = {
  62. pt_id:that.data.pt_id,
  63. dept_id:that.data.dept_id,
  64. page: that.data.page,
  65. rule: that.data.rule_id,
  66. sort:that.data.sort,
  67. position:that.data.position,
  68. page_size:20
  69. }
  70. if(that.data.dateIndex=='1'){
  71. data.year=that.data.year;
  72. }else if(that.data.dateIndex=='2'){
  73. data.quarter=that.data.quarter
  74. }else if(that.data.dateIndex=='4'){
  75. data.start_date=that.data.custom.start_date
  76. data.end_date=that.data.custom.end_date
  77. }else{
  78. data.month=that.data.month||app.globalData.month;
  79. }
  80. app.$get('api/integral/statistics/ranking',data,'application/vnd.test.v2+json').then((res) => {
  81. var data = res.data.data.list;
  82. if (is) {
  83. if (data.length == 0) {
  84. this.setData({
  85. isData: true
  86. })
  87. return;
  88. }
  89. var list = that.data.list;
  90. this.setData({
  91. list: list.concat(data)
  92. })
  93. } else {
  94. this.setData({list:[]});
  95. this.setData({
  96. list: data,
  97. isData: false
  98. })
  99. }
  100. })
  101. },
  102. //上啦加载
  103. onScrollToLower() {
  104. if(!that.data.isData){
  105. this.setData({ page: ++that.data.page })
  106. this.getData(true);
  107. }
  108. },
  109. // //打开兴趣
  110. // openDetail(e) {
  111. // var item = e.target.dataset.item;
  112. // console.log(item)
  113. // dd.navigateTo({
  114. // url: '../prizeBuckleDetail/prizeBuckleDetail?id=' + item.employee_id
  115. // })
  116. // },
  117. //显示规则组件
  118. selectRule() {
  119. this.setData({
  120. popupCx: 'container__mask',
  121. showRuleTwo: true
  122. })
  123. },
  124. //显示选择时间组件
  125. selectDate() {
  126. this.setData({
  127. popupCx: 'container__mask',
  128. showDate: true
  129. })
  130. },
  131. //显示选择员工
  132. selectSx() {
  133. this.setData({
  134. popupCx: 'container__mask',
  135. showSx: true
  136. })
  137. },
  138. //选择时间
  139. onConfirmDate(data) {
  140. this.setData({
  141. dateObj: data,
  142. })
  143. if (data.type == '1') {
  144. this.setData({
  145. selectDateVal:data.date,
  146. year:data.date,
  147. dateIndex:data.type
  148. })
  149. } else if(data.type == '2'){
  150. this.setData({
  151. selectDateVal:data.date+'季度',
  152. quarter: data.date,
  153. dateIndex:data.type
  154. })
  155. } else if(data.type == '4'){
  156. this.setData({
  157. selectDateVal: data.date.start_date + '--' + data.date.end_date,
  158. custom: data.date,
  159. dateIndex:data.type
  160. })
  161. }else{
  162. this.setData({
  163. selectDateVal: data.date,
  164. month:data.date,
  165. dateIndex:data.type
  166. })
  167. }
  168. this.setData({page:1})
  169. this.getData();
  170. },
  171. //关闭弹窗
  172. onClose() {
  173. this.setData({
  174. showDate: false,
  175. showSx: false,
  176. showRuleTwo: false,
  177. showTissue: false,
  178. popupCx: ''
  179. })
  180. },
  181. //选择筛选
  182. onConfirmSx(data) {
  183. console.log(data)
  184. this.setData({sxObj:data, sort:data[1],position:data[0],pt_id:data[2],page:1})
  185. this.getData();
  186. },
  187. //选择规则
  188. onConfirmRule(data) {
  189. this.setData({
  190. rule_id: data.id ? data.id : '',
  191. page: 1,
  192. ruleVal: data.name
  193. })
  194. this.getData();
  195. },
  196. //显示部门选择组件
  197. selectTissue() {
  198. this.setData({ showTissue: !this.data.showTissue,popupCx: 'container__mask', })
  199. },
  200. //选择部门
  201. onConfirmTissue(data) {
  202. this.setData({ dept_id: data.id,page:1,TissueVal:data.name })
  203. this.getData();
  204. },
  205. });