Commit 7c3725fa910deb62c49423ea0c0631a446db9ba4
Merge branch 'dev_oa_chen8' into dev
Showing
1 changed file
with
423 additions
and
397 deletions
packageA/pages/checkin/checkin.js
| ... | ... | @@ -2,405 +2,431 @@ |
| 2 | 2 | var md5 = require("../../../utils/md5.js"); |
| 3 | 3 | var ut = require("../../../utils/util.js"); |
| 4 | 4 | const app = getApp(); |
| 5 | -const os=app.globalData.setting; | |
| 5 | +const os = app.globalData.setting; | |
| 6 | 6 | let self; |
| 7 | 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 | }) | ... | ... |