const app = getApp() const util = require("../../../utils/jmsUtil.js"); const api = require('../../../api/jms.js'); import moment from 'moment' Page({ data: { timer: "", dayCalendar: { day: '', workerOrderInfoDTOList: [], workerName: '', //isCashout:false//是否可提现 }, currentMonth: moment(new Date()).format('YYYY-MM'), calcendarFold: true, stickShow: false, today: util.formetdate(new Date()), currentDay: util.formetdate(new Date()), isLeaveFold: true, orderDisable: true, orderDisable1: false, activeTab: 1, ticketList: [{}, {}], monthInfo: { recCode: '', fraName: '', workerName: '', isCashout: false, //是否可提现 }, workerDayInfoList: [], weekCalendar: [], wholeCalendar: [], myqr_show: false, myqr_url: '', myqr_blur: 0, //背景模糊值 options: [{ value: "rebuy", text: '复购码' },{ value: "coupon", text: '优惠券' }], itemValue:'' }, onPageScroll(e) { // console.log(e.scrollTop); // if(e.scrollTop > 200){ // this.setData({ // stickShow: true // }); // } else { // this.setData({ // stickShow: false // }); // } }, leaveFold() { let fold = this.data.isLeaveFold; this.setData({ isLeaveFold: !fold }); }, goCash() { wx.navigateTo({ url: '/pages/temp/cash/index', }) }, copyCode(e) { let code = this.data.monthInfo.recCode; wx.setClipboardData({ data: code, success: function (res) { wx.showToast({ title: '复制成功', icon: 'none', duration: 2000 }); } }) }, copyNum(e) { let bookno = e.currentTarget.dataset.bookno; console.log(bookno); wx.setClipboardData({ data: bookno, success: function (res) { wx.showToast({ title: '复制成功', icon: 'none', duration: 2000 }); } }) }, callUp(e) { let status = e.currentTarget.dataset.status; let phone = e.currentTarget.dataset.phone; if (status == '待履约' || status == '服务中') { wx.makePhoneCall({ phoneNumber: phone }); } }, openMap(e) { //打开地图 let status = e.currentTarget.dataset.status; let address = e.currentTarget.dataset.address; if (status == '待履约' || status == '服务中') { let lnglat = e.currentTarget.dataset.lnglat.split(','); let lng = ''; let lat = ""; if (lnglat.length > 0) { lng = Number(lnglat[0]); lat = Number(lnglat[1]); } console.log(lng, lat); wx.openLocation({ latitude: lat, longitude: lng, // name: address, address: address, scale: 28 }); } }, goSchedule() { wx.navigateTo({ url: '/pages/upgrade/scheduleCalc/scheduleCalc', }) }, goDetail(e) { let id = e.currentTarget.dataset.id; wx.navigateTo({ url: '/pages/upgrade/ticketDetail/ticketDetail?bookTradeNo=' + id, }); }, evalMaster(e) { let id = e.currentTarget.dataset.id; let workerno = e.currentTarget.dataset.workerno; this.setData({ evalMasterShow: true, star: 0, masterComment: '', bookTradeNo: id, workerNo: workerno }); }, onClickMsterOverlay() { this.setData({ evalMasterShow: false, }); }, onClickDiscipleOverlay() { this.setData({ evalDiscipleShow: false, }); }, onStarChange(event) { this.setData({ star: event.detail, }); }, onRadioChange(event) { this.setData({ radioDisciple: event.detail, }); }, bindMasterComment(e) { this.setData({ masterComment: e.detail.value }) }, bindDiscipleComment(e) { this.setData({ discipleComment: e.detail.value }) }, stop: function () { //阻止弹框冒泡和捕获的空事件,不要删除!!! }, submitEvalMaster() { if (this.data.star == 0) { wx.showToast({ title: '请选择评价星级', icon: 'none' }) } else if (this.data.masterComment == '') { wx.showToast({ title: '请输入跟单体会', icon: 'none' }) } else { util.request(api.discipleFeedback, { feedback: this.data.discipleComment, level: this.data.star, bookTradeNo: this.data.bookTradeNo, workerNo: this.data.workerNo }, 'GET').then(res => { if (res.errno === 0) { wx.showToast({ title: '评价成功', icon: 'none' }) this.setData({ evalMasterShow: false, }); this.getDayCalendar(); } else { wx.showToast({ title: res.errmsg, icon: 'none' }) } }); } }, evalDisciple(e) { let id = e.currentTarget.dataset.id; let workerno = e.currentTarget.dataset.workerno; this.setData({ evalDiscipleShow: true, radioDisciple: '通过', discipleComment: '', bookTradeNo: id, workerNo: workerno }); }, submitEvalDisciple() { if (this.data.radioDisciple == '') { wx.showToast({ title: '请选择是否通过', icon: 'none' }) } else if (this.data.discipleComment == '') { wx.showToast({ title: '请输入内容', icon: 'none' }) } else { util.request(api.masterFeedback, { remark: this.data.discipleComment, feedback: this.data.radioDisciple, bookTradeNo: this.data.bookTradeNo, workerNo: this.data.workerNo }, 'GET').then(res => { if (res.errno === 0) { wx.showToast({ title: '评价成功', icon: 'none' }) this.setData({ evalDiscipleShow: false, }); this.getDayCalendar(); } else { wx.showToast({ title: res.errmsg, icon: 'none' }) } }); } }, goProblemList(e) { // this.setData({ // navigateType: 1 // }) console.log( e.currentTarget.dataset); let booktradeno = e.currentTarget.dataset.booktradeno; wx.navigateTo({ url: '/pages/problem/list/list?bookTradeNo=' + booktradeno, }) }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { // let current=this.data.wholeCalendar.filter(item=>{return item.day==this.data.currentDay}); // if(current.length==0){ // return false; // } // let week=current[0].weekOfYear; // let weekCalendar=this.data.wholeCalendar.filter(item=>{ // return item.weekOfYear==week; // }); // this.setData({ // workerDayInfoList:weekCalendar, // weekCalendar:weekCalendar // }); this.getMonthCalender(false, 'first'); // this.getDayCalendar(); }, closeMyQr() { this.setData({ myqr_show: false, myqr_blur: 0 }); }, goSaveQrcode: function () { //保存二维码图片 let that = this; console.info(that.data.myqr_url); wx.downloadFile({ url: that.data.myqr_url, success: function (res) { if (res.statusCode === 200) { let img = res.tempFilePath; wx.saveImageToPhotosAlbum({ filePath: img, success(res) { that.closeMyQr(); wx.showModal({ title: '提示', showCancel: false, content: '此单复购专属二维码图片已保存到您的相册' }) }, fail(res) { wx.showModal({ title: '提示', showCancel: false, content: '网络或授权问题 图片保存失败 请重试' }) } }) } else wx.showModal({ title: '提示', showCancel: false, content: '网络或授权问题 图片保存失败 请重试' }) }, fail(res) { wx.showModal({ title: '提示', showCancel: false, content: '网络或授权问题 图片保存失败 请重试' }) } }) }, getCouponCode(e) { //优惠券 let bookno = e.currentTarget.dataset.bookno; util.request(api.getWorkerCouponCode, { bookTradeNo: bookno }, 'GET').then(res => { if (res.errno === 0) { wx.showToast({ title: '获取成功', icon: 'none' }) this.setData({ myqr_show: true, myqr_blur: 20, myqr_url: res.data }); wx.pageScrollTo({ scrollTop: 0, }); } else { wx.showToast({ title: res.errmsg, icon: 'none' }) } }); }, getQrCode(e) { //获取复购码 let bookno = e.currentTarget.dataset.bookno; util.request(api.getWorkerQrCode, { bookTradeNo: bookno }, 'GET').then(res => { if (res.errno === 0) { wx.showToast({ title: '获取成功', icon: 'none' }) this.setData({ myqr_show: true, myqr_blur: 20, myqr_url: res.data }); wx.pageScrollTo({ scrollTop: 0, }); } else { wx.showToast({ title: res.errmsg, icon: 'none' }) } }); }, /** * 生命周期函数--监听页面显示 */ onShow: function () { this.getDayCalendar(); let timer = setInterval(() => { console.log('定时刷新日历数据', new Date()); this.getMonthCalender(); this.getDayCalendar(); }, 2 * 60 * 1000); this.setData({ timer: timer }); }, onHide: function () { console.log('onHide'); clearInterval(this.data.timer); }, onUnload: function () { console.log('onunload'); clearInterval(this.data.timer); }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { this.getMonthCalender(); this.getDayCalendar(); }, getDayCalendar() { wx.showLoading({ title: '加载中...', }); util.request(api.dayCalender, { date: this.data.currentDay, }, 'GET').then(res => { console.log(res); wx.hideLoading(); if (res.errno === 0) { this.setData({ dayCalendar: res.data }); } }).catch(err => { wx.hideLoading(); }); }, getMonthCalender(flag, tag) { wx.showLoading({ title: '加载中...', }); util.request(api.monthCalender, { month: this.data.currentMonth, }, 'GET').then(res => { console.log(res); wx.hideLoading(); if (res.errno === 0) { this.setData({ monthInfo: res.data, wholeCalendar: res.data.workerDayInfoList }); if (flag) { this.setData({ calcendarFold: false, workerDayInfoList: this.data.wholeCalendar, }); } let current = this.data.wholeCalendar.filter(item => { return item.day == this.data.currentDay }); if (current.length == 0) { return false; } let week = current[0].weekOfYear; let weekCalendar = this.data.wholeCalendar.filter(item => { return item.weekOfYear == week; }); this.setData({ weekCalendar: weekCalendar }); if (tag == 'first') { this.setData({ workerDayInfoList: weekCalendar, }); } if (this.data.calcendarFold) { this.setData({ workerDayInfoList: weekCalendar, }); } else { this.setData({ workerDayInfoList: this.data.wholeCalendar, }); } } else { wx.showToast({ title: res.errmsg, duration: 3000, icon: 'none' }); } }).catch(err => { wx.hideLoading(); }); }, switchDay(e) { let day = e.currentTarget.dataset.day; this.setData({ currentDay: day }); this.getDayCalendar(); }, calcendarCollapse() { let calcendarFold = this.data.calcendarFold; if (calcendarFold) { this.setData({ workerDayInfoList: this.data.wholeCalendar, calcendarFold: !calcendarFold }); } else { this.setData({ workerDayInfoList: this.data.weekCalendar, calcendarFold: !calcendarFold }); } }, lastMonth() { console.log(this.data); let params = util.getYearMonth(this.data.currentMonth, '-'); this.setData({ currentMonth: params }); this.getMonthCalender(true); }, nextMonth() { let params = util.getYearMonth(this.data.currentMonth, '+'); console.log(params); this.setData({ currentMonth: params }); this.getMonthCalender(true); }, goIssueTicket() { wx.navigateTo({ url: '/pages/upgrade/issueTicket/issueTicket', }) }, arriveCus(e) { let status = e.currentTarget.dataset.status; let id = e.currentTarget.dataset.id; if (status == '待履约') { wx.showModal({ title: '', content: '确定已经到门?', success: res => { if (res.confirm) { util.request(api.ClockIn, { relationTradeNo: id, }, 'POST').then(res => { if (res.errno === 0) { wx.showToast({ title: '操作成功' }); this.getDayCalendar(); } else { wx.showToast({ title: res.errmsg, icon: 'none' }); // util.showErrorToast(res.errmsg); } }); } } }); } }, finishOrder(e) { let status = e.currentTarget.dataset.status; let id = e.currentTarget.dataset.id; if (status == '服务中') { wx.showModal({ title: '', content: '确定服务完成?', success: res => { if (res.confirm) { util.request(api.ServiceProvided, { relationTradeNo: id, }, 'POST').then(res => { if (res.errno === 0) { wx.showToast({ title: '操作成功' }); this.getDayCalendar(); } else { wx.showToast({ title: res.errmsg, icon: 'none' }); // util.showErrorToast(res.errmsg); } }); } } }); } }, exitLogin: function () { wx.showModal({ title: '', confirmColor: '#b4282d', content: '退出登录?', success: function (res) { if (!res.confirm) { return; } // util.request(api.AuthLogout, {}, 'POST'); app.globalData.hasLogin = false; wx.removeStorageSync('token'); wx.removeStorageSync('userInfo'); // wx.redirectTo({ // url: '/pages/temp/login/login' // }); wx.redirectTo({ url: '/pages/index/index' }); } }) }, supplyCode(e) { let bookno = e.currentTarget.dataset.bookno; if (bookno.startsWith('JZ')) { bookno = bookno.substr(2); } util.request(api.createMakeUpQRCode, { serviceId: bookno }, 'GET').then(res => { if (res.errno === 0) { let url = res.data; wx.previewImage({ current: url, // 当前显示图片的http链接 urls: [url] // 需要预览的图片http链接列表 }) } else { wx.showToast({ title: res.errmsg, icon: 'none' }) } }); }, supplyCode(e){ let bookno = e.currentTarget.dataset.bookno; if (bookno.startsWith('JZ')) { bookno = bookno.substr(2); } app.globalData.diffId=0; wx.navigateTo({ url: '/pages/serviceSupply/serviceSupply?bookno='+bookno, }); }, supplyRecord(e){ let bookno = e.currentTarget.dataset.bookno; if (bookno.startsWith('JZ')) { bookno = bookno.substr(2); } wx.navigateTo({ url: '/pages/supplyRecord/supplyRecord?bookno='+bookno, }); }, onReachBottom() { // if (this.data.totalPages > this.data.page) { // this.setData({ // page: this.data.page + 1 // }); // this.getGoodsList(); // } else { // wx.showToast({ // title: '没有更多商品了', // icon: 'none', // duration: 2000 // }); // return false; // } }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, })