const { default: api } = require("../../js/api"); // pages/historyOrderAfter/historyOrderAfter.js Page({ /** * 页面的初始数据 */ data: { date:'', startDate:'', endDate:'', orders:[ { order:{ nozzle:5, status:'已授权', statusColor:'#bbe06e', oilName:"92#", volume:20.0, amount:46.8, payAmount:46.8, discount:0.00, time:'2024-11-24 09:08', }, bottonText2:'请尽快提枪' }, ] }, /** 获取当前日期 */ getNowDate(){ const date = new Date(); // 获取当前日期 const year = date.getFullYear(); // 获取年份 const month = String(date.getMonth() + 1).padStart(2, '0'); // 获取月份,补零 const day = String(date.getDate()).padStart(2, '0'); // 获取日期,补零 return `${year}-${month}-${day}`; // 拼接成 yyyy-MM-dd 格式 }, /** 获取上个月日期 */ getLastMouthDate(){ const currentDate = new Date(); // 获取当前日期 const year = currentDate.getFullYear(); // 当前年份 const month = currentDate.getMonth(); // 当前月份(0-11) const day = currentDate.getDate(); // 当前日期 // 计算一个月前的日期 const oneMonthAgoDate = new Date(year, month - 1, day); // 处理跨年问题(如果当前月份是 1 月,month - 1 会是 0,即上一年的 12 月) // 无需额外处理,Date 对象会自动处理 // 格式化日期为 YYYY-MM-DD const formattedDate = `${oneMonthAgoDate.getFullYear()}-${String(oneMonthAgoDate.getMonth() + 1).padStart(2, '0')}-${String(oneMonthAgoDate.getDate()).padStart(2, '0')}`; return formattedDate; }, /** 计算倒计时,倒计时结束后发起取消授权 */ startCountdow(){ this.timer = setInterval(() => { const countDownZeroOrders = [] const orders = this.data.orders.map(order => { if(order.countdown && order.countdown != '0') { const currentCountDown = (Number(order.countdown) - 1); order.countdown = currentCountDown.toString(); if(currentCountDown <= 0) countDownZeroOrders.push(order) } return order }) this.setData({ orders:orders }) this.toUnAnthorization(countDownZeroOrders) },1000); }, /** 结束倒计时 */ endCountDown(){ if(this.timer) { clearInterval(this.timer) this.timer = null } }, /** 发送取消授权 */ toUnAnthorization(orders) { console.log(orders) }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { const today = this.getNowDate(); const lastMouthDay = this.getLastMouthDate(); this.setData({ date:today, startDate:today, endDate:lastMouthDay }); // this.startCountdow(); }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { this.endCountDown() }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { }, /** 日期选择器选择时间 */ bindDateChange(date) { this.setData({ date: date.detail.value }); console.log(date) }, /** 组件按钮一点击事件 */ onOrderButtonClick1(event){ console.log(event) }, /** 组件按钮二点击事件 */ onOrderButtonClick2(event){ console.log(event) }, /** 获取订单 */ getOrder(){ api.request_GetMiniProgramTransactionsUnpaidQuery(null).then(res => { console.log("未支付订单",res) }).catch(err => { console.log("获取未支付订单失败",err) }) } })