Commit 8feca395f8b277e79bdd04514b47148b5e2001d3

Authored by 前端开发-陈颖阳
1 parent fa67fb2b

OA 120221 签到积分和服务器时间不一致导致签到失败

Showing 1 changed file with 423 additions and 397 deletions
packageA/pages/checkin/checkin.js
@@ -2,405 +2,431 @@ @@ -2,405 +2,431 @@
2 var md5 = require("../../../utils/md5.js"); 2 var md5 = require("../../../utils/md5.js");
3 var ut = require("../../../utils/util.js"); 3 var ut = require("../../../utils/util.js");
4 const app = getApp(); 4 const app = getApp();
5 -const os=app.globalData.setting; 5 +const os = app.globalData.setting;
6 let self; 6 let self;
7 Page({ 7 Page({
8 8
9 - /**  
10 - * 页面的初始数据  
11 - */  
12 - data: {  
13 - year: '',  
14 - month: '',  
15 - day: '',  
16 - weekArr: ['日', '一', '二', '三', '四', '五', '六'],  
17 - dateArr: [],  
18 - n_dateArr:[], //本月的日期  
19 - s_dateArr:[], //上月的日期  
20 -  
21 - firstDay: '',  
22 - lastDay: '',  
23 - param: null,  
24 - clockNum: 3,  
25 -  
26 - res: null,  
27 - isShowRules: false,  
28 - isCheckIn: false,  
29 - checkInDays: 0, //连续签到天数  
30 - integral: 0, //积分  
31 - checkInNums: 0, //补签次数  
32 - isCheckInDay: '',  
33 -  
34 - flag: true,  
35 - isLogin: false,  
36 - imgUrl: app.globalData.setting.imghost,  
37 - show_no_integral:false  
38 -  
39 - },  
40 -  
41 - loadQd(callback) {  
42 - app.request.get('/api/weshop/qdrecord/getUser/'+ app.globalData.setting.stoid + '/' + app.globalData.user_id, {  
43 - success: function (res) {  
44 - if(res.data.code==0){  
45 - if(callback) callback();  
46 - self.setData({  
47 - res: res.data.data  
48 - });  
49 - self.loadCheckedRecord();  
50 - }else{  
51 - if(res.data.msg.indexOf('未开启签到')!=-1){  
52 - self.setData({ show_no_integral: true });  
53 - }else{  
54 - wx.showToast({  
55 - title: res.data.msg,  
56 - icon: 'none',  
57 - duration: 2000  
58 - })  
59 - }  
60 -  
61 - }  
62 - },  
63 - });  
64 - },  
65 -  
66 - /**  
67 - * 生命周期函数--监听页面加载  
68 - */  
69 - onLoad: function(options) {  
70 - console.log('执行onload');  
71 - self = this;  
72 - this.getDate();  
73 - this.setDate();  
74 - var res = wx.getSystemInfoSync();  
75 - this.setData({  
76 - param: res.windowHeight / 12,  
77 - })  
78 -  
79 - // 判断会员是否授权登录,  
80 - // 没有登录则跳转到登录页,  
81 - // 已登录则设置已登录状态,请求加载签到数据  
82 - this.isLogin().then(function() {  
83 - self.setData({  
84 - isLogin: true  
85 - });  
86 - self.loadQd();  
87 - });  
88 -  
89 - // 广告  
90 - getApp().request.promiseGet("/api/weshop/ad/page?pid=1205&store_id=" + os.stoid, {  
91 - data: {  
92 - enabled: 1  
93 - }  
94 - }).then(res => {  
95 - if(res.data.code==0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length>0){  
96 - var a = res.data.data.pageData;  
97 - var narr=[];  
98 - for(var i in a){  
99 - var tt = {  
100 - 'ad_code': os.imghost + a[i].ad_code,  
101 - 'media_link': '',  
102 - 'ad_weapplink':a[i].ad_weapplink  
103 - };  
104 - narr.push(tt);  
105 - }  
106 - self.setData({ad_data:narr});  
107 - }  
108 - });  
109 -  
110 -  
111 - },  
112 -  
113 - onShow() {  
114 - if(app.globalData.userInfo instanceof Object) {  
115 - if(this.data.isLogin) {  
116 - return;  
117 - } else {  
118 - this.setData({  
119 - isLogin: true  
120 - });  
121 - this.loadQd();  
122 - };  
123 - }  
124 - },  
125 -  
126 - onHide() {  
127 - console.log('执行onHide');  
128 - },  
129 -  
130 - // 是否登录  
131 - isLogin() {  
132 - return new Promise(function(resolve, reject) {  
133 - let user_info = getApp().globalData.userInfo;  
134 - if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {  
135 - wx.navigateTo({  
136 - url: '/packageE/pages/togoin/togoin',  
137 - })  
138 - return false;  
139 - } else {  
140 - resolve();  
141 - };  
142 - });  
143 - },  
144 -  
145 - // 点击"我的积分"和"去购物"进行跳转  
146 - goto(e) {  
147 - let url = e.target.dataset.url;  
148 - app.goto(url);  
149 - },  
150 -  
151 - // 点击显示签到规则  
152 - showRules() {  
153 - if(this.data.isShowRules) {  
154 - this.setData({  
155 - isShowRules: false  
156 - });  
157 - } else {  
158 - this.setData({  
159 - isShowRules: true  
160 - });  
161 - }  
162 - },  
163 -  
164 -  
165 - // 加载签到记录  
166 - loadCheckedRecord() {  
167 - let newDateArr=[];  
168 - let list;  
169 - let bqlist;  
170 - //--判断什么日子是签到的,上个月的--  
171 - if(this.data.res && this.data.res.qdsdaylist) {  
172 - list = this.data.res.qdsdaylist.split(',');  
173 - for(var i in this.data.s_dateArr){  
174 - var item=this.data.s_dateArr[i];  
175 - if(this.check_is_qd(item,list)){  
176 - item.isCheckIn = true;  
177 - }else{  
178 - item.isCheckIn = false;  
179 - }  
180 - }  
181 - }  
182 - newDateArr=newDateArr.concat(this.data.s_dateArr);  
183 - //--判断什么日子是签到的,这个月的--  
184 - if(this.data.res && this.data.res.qddaylist) {  
185 - list = this.data.res.qddaylist.split(',');  
186 - for(var i in this.data.n_dateArr){  
187 - var item=this.data.n_dateArr[i];  
188 - if(this.check_is_qd(item,list)){  
189 - item.isCheckIn = true;  
190 - }else{  
191 - item.isCheckIn = false;  
192 - }  
193 - }  
194 - }  
195 - newDateArr=newDateArr.concat(this.data.n_dateArr);  
196 -  
197 - //--判断什么日子是要补签的--  
198 - if(this.data.res && this.data.res.curbqdaynum) {  
199 - bqlist = this.data.res.curbqdaynum.split(',');  
200 - for(var i in newDateArr){  
201 - var item=newDateArr[i];  
202 - if(this.check_is_bq(item,bqlist)){  
203 - item.isBq = true;  
204 - }else{  
205 - item.isBq = false;  
206 - }  
207 - }  
208 - }  
209 - this.setData({  
210 - dateArr: newDateArr  
211 - });  
212 - },  
213 -  
214 -  
215 - //判断是不是同一个日期,签到的  
216 - check_is_qd(item,bqlist){  
217 - for(var i in bqlist){  
218 - var c_item=JSON.parse(JSON.stringify(item));  
219 - if(c_item.num<10) c_item.num="0"+c_item.num;  
220 - if(c_item.num==bqlist[i]){  
221 - return true;  
222 - }  
223 - }  
224 - return false;  
225 - },  
226 -  
227 - //判断是不是同一个日期,补签到的  
228 - check_is_bq(item,bqlist){  
229 - for(var i in bqlist){  
230 - if(item.date==bqlist[i]){  
231 - return true;  
232 - }  
233 - }  
234 - return false;  
235 - },  
236 -  
237 - // 点击签到  
238 - checkInToday() {  
239 - const self = this;  
240 - // 获取今天的签到状态  
241 - //let isCheckInToday = this.data.dateArr[this.data.day-1].isCheckIn;  
242 - var ck=this.data.day;  
243 - if(parseInt(ck)<10) ck="0"+ck;  
244 - var isCheckInToday=this.data.res.qddaylist.indexOf(ck);  
245 -  
246 - // 如果还没签到, 可以点击签到  
247 - if(isCheckInToday==-1) {  
248 -  
249 - var timeid=ut.gettimestamp();  
250 - var key = "rgqsqLYhw67sgaIQBF6dw9JK7CDKSS";  
251 - var str= app.globalData.setting.stoid+":"+app.globalData.user_id+":"+timeid+":"+key  
252 - var sign=md5(str);  
253 -  
254 - app.request.promisePost('/api/weshop/qdrecord/saveQd', {  
255 - data: {  
256 - store_id: app.globalData.setting.stoid,  
257 - user_id: app.globalData.user_id,  
258 - timeid:timeid,  
259 - sign:sign  
260 - }  
261 - }).then(res => {  
262 - // 改变签到状态,由false置为true  
263 - // let newDateArr = self.data.dateArr;  
264 - // newDateArr[self.data.day-1].isCheckIn = true;  
265 -  
266 - for(var i in self.data.dateArr) {  
267 - self.data.dateArr[i].isCheckIn=false;  
268 - self.data.dateArr[i].isBq=false;  
269 - }  
270 - self.setData({  
271 - dateArr: self.data.dateArr  
272 - });  
273 -  
274 - self.loadQd(function() {  
275 - wx.showToast({  
276 - title: self.data.res.qdintro,  
277 - icon: 'none',  
278 - duration: 1500,  
279 - success: function() {  
280 -  
281 - }  
282 - });  
283 - });  
284 -  
285 - })  
286 - }  
287 - },  
288 -  
289 -  
290 - // 补签  
291 - reCheckIn() {  
292 - var self = this;  
293 - // var i = 0;  
294 - console.log('补签~');  
295 - if(this.data.flag) {  
296 - this.data.flag = false;  
297 - app.request.promisePost('/api/weshop/qdrecord/saveBQd', {  
298 - data: {  
299 - store_id: app.globalData.setting.stoid,  
300 - user_id: app.globalData.user_id,  
301 - daynum: self.data.res.getBQIntegral1,  
302 - bqnum: self.data.res.getbqnum2,  
303 - bqintegral: self.data.res.getBQIntegral,  
304 - }  
305 - }).then(res => {  
306 - // 改变签到状态,由false置为true  
307 - // let newDateArr = self.data.dateArr;  
308 - // newDateArr[self.data.day-1].isCheckIn = true;  
309 - //var bqlist = self.data.res.curbqdaynum.split(',').sort();  
310 - //var list = [];  
311 - /*--  
312 - for(let item of bqlist) {  
313 - var date = new Date(item);  
314 - list.push(date.getDate());  
315 - }--*/  
316 -  
317 - for(var i in self.data.dateArr) {  
318 - self.data.dateArr[i].isCheckIn=false;  
319 - self.data.dateArr[i].isBq=false;  
320 - }  
321 - self.setData({  
322 - dateArr: self.data.dateArr  
323 - });  
324 - self.loadQd(function() {  
325 - self.data.flag = true;  
326 - wx.showToast({  
327 - title: '补签成功',  
328 - icon: 'success',  
329 - duration: 1500,  
330 - success: function() {  
331 -  
332 - }  
333 - });  
334 - });  
335 - })  
336 - }  
337 - },  
338 -  
339 - getDate: function() { //获取当月日期  
340 - var mydate = new Date();  
341 - var year = mydate.getFullYear();  
342 - var month = mydate.getMonth(); //0~11: 一月至十二月  
343 - var months = month + 1; //1~12:一月至十二月  
344 - this.data.year = year;  
345 - this.data.month = months;  
346 - this.data.day = mydate.getDate(); //获取当月日期: 1~31  
347 - var fist = new Date(year, month, 1);  
348 - this.data.firstDay = fist.getDay(); //获取当月第一天  
349 - var last = new Date(year, months, 0); //0表示当月最后一天  
350 - this.data.lastDay = last.getDate(); //获取当月最后一天  
351 -  
352 - this.setData({  
353 - year: this.data.year,  
354 - month: this.data.month,  
355 - day: this.data.day,  
356 - firstDay: this.data.firstDay,  
357 - lastDay: this.data.lastDay,  
358 - fist:fist  
359 - })  
360 - console.log("今天:" + this.data.day);  
361 - },  
362 -  
363 - setDate: function() {  
364 - var day;  
365 - for(var i=0;i<this.data.firstDay;i++){  
366 - //获取前几天的时间数组  
367 - var arr_d=this.getNextDate(this.data.fist,i-this.data.firstDay)  
368 - day = {num: arr_d[1],date:arr_d[0]};  
369 - this.data.s_dateArr.push(day);  
370 - }  
371 -  
372 - for (var i = 1; i < this.data.lastDay + 1; i++) {  
373 - var date=this.data.month+"";  
374 - if(this.data.month<10) date="0"+date;  
375 - if(i<10) {  
376 - date=date+"-0"+i;  
377 - }else{  
378 - date=date+"-"+i;  
379 - }  
380 - day = {num: i,date:date};  
381 - this.data.n_dateArr.push(day);  
382 - }  
383 - },  
384 -  
385 - //获取相隔是多少天的日期  
386 - getNextDate(date,day) {  
387 - var dd = date;  
388 - dd.setDate(dd.getDate() + day);  
389 - //var y = dd.getFullYear();  
390 - var m = dd.getMonth() + 1 < 10 ? "0" + (dd.getMonth() + 1) : dd.getMonth() + 1;  
391 - var d = dd.getDate() < 10 ? "0" + dd.getDate() : dd.getDate();  
392 - //return y + "-" + m + "-" + d;  
393 - return [m + "-" + d,dd.getDate()];  
394 - },  
395 - go_url(e){  
396 - let url=e.currentTarget.dataset.url;  
397 - if(url){  
398 - getApp().goto(url);  
399 - }  
400 - },  
401 -  
402 - back_to(){  
403 - wx.navigateBack();  
404 - } 9 + /**
  10 + * 页面的初始数据
  11 + */
  12 + data: {
  13 + year: '',
  14 + month: '',
  15 + day: '',
  16 + weekArr: ['日', '一', '二', '三', '四', '五', '六'],
  17 + dateArr: [],
  18 + n_dateArr: [], //本月的日期
  19 + s_dateArr: [], //上月的日期
  20 +
  21 + firstDay: '',
  22 + lastDay: '',
  23 + param: null,
  24 + clockNum: 3,
  25 +
  26 + res: null,
  27 + isShowRules: false,
  28 + isCheckIn: false,
  29 + checkInDays: 0, //连续签到天数
  30 + integral: 0, //积分
  31 + checkInNums: 0, //补签次数
  32 + isCheckInDay: '',
  33 +
  34 + flag: true,
  35 + isLogin: false,
  36 + imgUrl: app.globalData.setting.imghost,
  37 + show_no_integral: false
  38 +
  39 + },
  40 +
  41 + loadQd(callback) {
  42 + app.request.get('/api/weshop/qdrecord/getUser/' + app.globalData.setting.stoid + '/' + app.globalData.user_id, {
  43 + success: function (res) {
  44 + if (res.data.code == 0) {
  45 + if (callback) callback();
  46 + self.setData({
  47 + res: res.data.data
  48 + });
  49 + self.loadCheckedRecord();
  50 + } else {
  51 + if (res.data.msg.indexOf('未开启签到') != -1) {
  52 + self.setData({ show_no_integral: true });
  53 + } else {
  54 + wx.showToast({
  55 + title: res.data.msg,
  56 + icon: 'none',
  57 + duration: 2000
  58 + })
  59 + }
  60 +
  61 + }
  62 + },
  63 + });
  64 + },
  65 +
  66 + /**
  67 + * 生命周期函数--监听页面加载
  68 + */
  69 + onLoad: function (options) {
  70 + console.log('执行onload');
  71 + self = this;
  72 + this.getDate();
  73 + this.setDate();
  74 + var res = wx.getSystemInfoSync();
  75 + this.setData({
  76 + param: res.windowHeight / 12,
  77 + })
  78 +
  79 + // 判断会员是否授权登录,
  80 + // 没有登录则跳转到登录页,
  81 + // 已登录则设置已登录状态,请求加载签到数据
  82 + this.isLogin().then(function () {
  83 + self.setData({
  84 + isLogin: true
  85 + });
  86 + self.loadQd();
  87 + });
  88 +
  89 + // 广告
  90 + getApp().request.promiseGet("/api/weshop/ad/page?pid=1205&store_id=" + os.stoid, {
  91 + data: {
  92 + enabled: 1
  93 + }
  94 + }).then(res => {
  95 + if (res.data.code == 0 && res.data.data && res.data.data.pageData && res.data.data.pageData.length > 0) {
  96 + var a = res.data.data.pageData;
  97 + var narr = [];
  98 + for (var i in a) {
  99 + var tt = {
  100 + 'ad_code': os.imghost + a[i].ad_code,
  101 + 'media_link': '',
  102 + 'ad_weapplink': a[i].ad_weapplink
  103 + };
  104 + narr.push(tt);
  105 + }
  106 + self.setData({ ad_data: narr });
  107 + }
  108 + });
  109 +
  110 +
  111 + },
  112 +
  113 + onShow() {
  114 + if (app.globalData.userInfo instanceof Object) {
  115 + if (this.data.isLogin) {
  116 + return;
  117 + } else {
  118 + this.setData({
  119 + isLogin: true
  120 + });
  121 + this.loadQd();
  122 + };
  123 + }
  124 + },
  125 +
  126 + onHide() {
  127 + console.log('执行onHide');
  128 + },
  129 +
  130 + // 是否登录
  131 + isLogin() {
  132 + return new Promise(function (resolve, reject) {
  133 + let user_info = getApp().globalData.userInfo;
  134 + if (user_info == null || user_info.mobile == undefined || user_info.mobile == "" || user_info.mobile == null) {
  135 + wx.navigateTo({
  136 + url: '/packageE/pages/togoin/togoin',
  137 + })
  138 + return false;
  139 + } else {
  140 + resolve();
  141 + };
  142 + });
  143 + },
  144 +
  145 + // 点击"我的积分"和"去购物"进行跳转
  146 + goto(e) {
  147 + let url = e.target.dataset.url;
  148 + app.goto(url);
  149 + },
  150 +
  151 + // 点击显示签到规则
  152 + showRules() {
  153 + if (this.data.isShowRules) {
  154 + this.setData({
  155 + isShowRules: false
  156 + });
  157 + } else {
  158 + this.setData({
  159 + isShowRules: true
  160 + });
  161 + }
  162 + },
  163 +
  164 +
  165 + // 加载签到记录
  166 + loadCheckedRecord() {
  167 + let newDateArr = [];
  168 + let list;
  169 + let bqlist;
  170 + //--判断什么日子是签到的,上个月的--
  171 + if (this.data.res && this.data.res.qdsdaylist) {
  172 + list = this.data.res.qdsdaylist.split(',');
  173 + for (var i in this.data.s_dateArr) {
  174 + var item = this.data.s_dateArr[i];
  175 + if (this.check_is_qd(item, list)) {
  176 + item.isCheckIn = true;
  177 + } else {
  178 + item.isCheckIn = false;
  179 + }
  180 + }
  181 + }
  182 + newDateArr = newDateArr.concat(this.data.s_dateArr);
  183 + //--判断什么日子是签到的,这个月的--
  184 + if (this.data.res && this.data.res.qddaylist) {
  185 + list = this.data.res.qddaylist.split(',');
  186 + for (var i in this.data.n_dateArr) {
  187 + var item = this.data.n_dateArr[i];
  188 + if (this.check_is_qd(item, list)) {
  189 + item.isCheckIn = true;
  190 + } else {
  191 + item.isCheckIn = false;
  192 + }
  193 + }
  194 + }
  195 + newDateArr = newDateArr.concat(this.data.n_dateArr);
  196 +
  197 + //--判断什么日子是要补签的--
  198 + if (this.data.res && this.data.res.curbqdaynum) {
  199 + bqlist = this.data.res.curbqdaynum.split(',');
  200 + for (var i in newDateArr) {
  201 + var item = newDateArr[i];
  202 + if (this.check_is_bq(item, bqlist)) {
  203 + item.isBq = true;
  204 + } else {
  205 + item.isBq = false;
  206 + }
  207 + }
  208 + }
  209 + this.setData({
  210 + dateArr: newDateArr
  211 + });
  212 + },
  213 +
  214 +
  215 + //判断是不是同一个日期,签到的
  216 + check_is_qd(item, bqlist) {
  217 + for (var i in bqlist) {
  218 + var c_item = JSON.parse(JSON.stringify(item));
  219 + if (c_item.num < 10) c_item.num = "0" + c_item.num;
  220 + if (c_item.num == bqlist[i]) {
  221 + return true;
  222 + }
  223 + }
  224 + return false;
  225 + },
  226 +
  227 + //判断是不是同一个日期,补签到的
  228 + check_is_bq(item, bqlist) {
  229 + for (var i in bqlist) {
  230 + if (item.date == bqlist[i]) {
  231 + return true;
  232 + }
  233 + }
  234 + return false;
  235 + },
  236 +
  237 + // 点击签到
  238 + checkInToday() {
  239 + const self = this;
  240 +
  241 + getApp().request.get("/api/weshop/users/getServerTime", {
  242 + success: function (res) {
  243 + if (res.data.code == 0) {
  244 + var getnowtime = res.data.data;
  245 + if (!getnowtime) {
  246 + getApp().showWarning("获取服务时间失败");
  247 + return;
  248 + } else {
  249 + // 获取今天的签到状态
  250 + //let isCheckInToday = this.data.dateArr[this.data.day-1].isCheckIn;
  251 + var ck = self.data.day;
  252 + if (parseInt(ck) < 10) ck = "0" + ck;
  253 + var isCheckInToday = self.data.res.qddaylist.indexOf(ck);
  254 +
  255 + // 如果还没签到, 可以点击签到
  256 + if (isCheckInToday == -1) {
  257 +
  258 + var timeid = Date.parse(getnowtime)/1000;
  259 + var key = "rgqsqLYhw67sgaIQBF6dw9JK7CDKSS";
  260 + var str = app.globalData.setting.stoid + ":" + app.globalData.user_id + ":" + timeid + ":" + key
  261 + var sign = md5(str);
  262 +
  263 + app.request.promisePost('/api/weshop/qdrecord/saveQd', {
  264 + data: {
  265 + store_id: app.globalData.setting.stoid,
  266 + user_id: app.globalData.user_id,
  267 + timeid: timeid,
  268 + sign: sign
  269 + }
  270 + }).then(res2 => {
  271 + // 改变签到状态,由false置为true
  272 + // let newDateArr = self.data.dateArr;
  273 + // newDateArr[self.data.day-1].isCheckIn = true;
  274 + if (res2.data.code == 0) {
  275 + for (var i in self.data.dateArr) {
  276 + self.data.dateArr[i].isCheckIn = false;
  277 + self.data.dateArr[i].isBq = false;
  278 + }
  279 + self.setData({
  280 + dateArr: self.data.dateArr
  281 + });
  282 +
  283 + self.loadQd(function () {
  284 + wx.showToast({
  285 + title: self.data.res.qdintro,
  286 + icon: 'none',
  287 + duration: 1500,
  288 + success: function () {
  289 +
  290 + }
  291 + });
  292 + });
  293 + } else {
  294 + getApp().showWarning(res2.data.msg);
  295 + }
  296 +
  297 +
  298 +
  299 + })
  300 + }
  301 + }
  302 +
  303 + } else {
  304 + getApp().showWarning(res.data.msg);
  305 + }
  306 + }
  307 + })
  308 +
  309 + },
  310 +
  311 +
  312 + // 补签
  313 + reCheckIn() {
  314 + var self = this;
  315 + // var i = 0;
  316 + console.log('补签~');
  317 + if (this.data.flag) {
  318 + this.data.flag = false;
  319 + app.request.promisePost('/api/weshop/qdrecord/saveBQd', {
  320 + data: {
  321 + store_id: app.globalData.setting.stoid,
  322 + user_id: app.globalData.user_id,
  323 + daynum: self.data.res.getBQIntegral1,
  324 + bqnum: self.data.res.getbqnum2,
  325 + bqintegral: self.data.res.getBQIntegral,
  326 + }
  327 + }).then(res => {
  328 + // 改变签到状态,由false置为true
  329 + // let newDateArr = self.data.dateArr;
  330 + // newDateArr[self.data.day-1].isCheckIn = true;
  331 + //var bqlist = self.data.res.curbqdaynum.split(',').sort();
  332 + //var list = [];
  333 + /*--
  334 + for(let item of bqlist) {
  335 + var date = new Date(item);
  336 + list.push(date.getDate());
  337 + }--*/
  338 + if (res.data.code == 0) {
  339 + for (var i in self.data.dateArr) {
  340 + self.data.dateArr[i].isCheckIn = false;
  341 + self.data.dateArr[i].isBq = false;
  342 + }
  343 + self.setData({
  344 + dateArr: self.data.dateArr
  345 + });
  346 + self.loadQd(function () {
  347 + self.data.flag = true;
  348 + wx.showToast({
  349 + title: '补签成功',
  350 + icon: 'success',
  351 + duration: 1500,
  352 + success: function () {
  353 +
  354 + }
  355 + });
  356 + });
  357 + } else {
  358 + getApp().showWarning(res.data.msg);
  359 + }
  360 +
  361 + })
  362 + }
  363 + },
  364 +
  365 + getDate: function () { //获取当月日期
  366 + var mydate = new Date();
  367 + var year = mydate.getFullYear();
  368 + var month = mydate.getMonth(); //0~11: 一月至十二月
  369 + var months = month + 1; //1~12:一月至十二月
  370 + this.data.year = year;
  371 + this.data.month = months;
  372 + this.data.day = mydate.getDate(); //获取当月日期: 1~31
  373 + var fist = new Date(year, month, 1);
  374 + this.data.firstDay = fist.getDay(); //获取当月第一天
  375 + var last = new Date(year, months, 0); //0表示当月最后一天
  376 + this.data.lastDay = last.getDate(); //获取当月最后一天
  377 +
  378 + this.setData({
  379 + year: this.data.year,
  380 + month: this.data.month,
  381 + day: this.data.day,
  382 + firstDay: this.data.firstDay,
  383 + lastDay: this.data.lastDay,
  384 + fist: fist
  385 + })
  386 + console.log("今天:" + this.data.day);
  387 + },
  388 +
  389 + setDate: function () {
  390 + var day;
  391 + for (var i = 0; i < this.data.firstDay; i++) {
  392 + //获取前几天的时间数组
  393 + var arr_d = this.getNextDate(this.data.fist, i - this.data.firstDay)
  394 + day = { num: arr_d[1], date: arr_d[0] };
  395 + this.data.s_dateArr.push(day);
  396 + }
  397 +
  398 + for (var i = 1; i < this.data.lastDay + 1; i++) {
  399 + var date = this.data.month + "";
  400 + if (this.data.month < 10) date = "0" + date;
  401 + if (i < 10) {
  402 + date = date + "-0" + i;
  403 + } else {
  404 + date = date + "-" + i;
  405 + }
  406 + day = { num: i, date: date };
  407 + this.data.n_dateArr.push(day);
  408 + }
  409 + },
  410 +
  411 + //获取相隔是多少天的日期
  412 + getNextDate(date, day) {
  413 + var dd = date;
  414 + dd.setDate(dd.getDate() + day);
  415 + //var y = dd.getFullYear();
  416 + var m = dd.getMonth() + 1 < 10 ? "0" + (dd.getMonth() + 1) : dd.getMonth() + 1;
  417 + var d = dd.getDate() < 10 ? "0" + dd.getDate() : dd.getDate();
  418 + //return y + "-" + m + "-" + d;
  419 + return [m + "-" + d, dd.getDate()];
  420 + },
  421 + go_url(e) {
  422 + let url = e.currentTarget.dataset.url;
  423 + if (url) {
  424 + getApp().goto(url);
  425 + }
  426 + },
  427 +
  428 + back_to() {
  429 + wx.navigateBack();
  430 + }
405 431
406 }) 432 })