import { url } from '../request'; Page({ data: { current: 0, businessName:'', items: [ { title: '全部', }, { title: '待支付', }, { title: '待使用', }, { title: '已完成', }, { title: '已取消', }, { title: '预约', }, { title: '退款', }, ], dingdan:[], paymentStatuses: [ { paymentStatuses: '0', statue: '待支付' }, { paymentStatuses: '1', statue: '待使用' }, { paymentStatuses: '2', statue: '已取消' }, { paymentStatuses: '3', statue: '已退款' }, { paymentStatuses: '4', statue: '已完成' } ] }, onShow() { my.getStorage({ key: 'userInfo', success: (res) => { const userInfo = res.data; this.setData({ id: userInfo.id, // 获取 id }); if (userInfo && userInfo.cookie) { my.request({ url: url + '/api/orders/my/page', method: 'POST', data: { claimStatus: 0, current: 1, endTime: "", id: "", pageSize: 1000, paymentStatus: "", sortField: "", sortOrder: "", startTime: "", userId: userInfo.id, userRole: 0, }, headers: { 'content-type': 'application/json', 'Cookie': userInfo.cookie, }, dataType: 'json', success: (res) => { if (res.data.code === 0) { // 在成功返回数据后,修改数据结构 const updatedDingdan = res.data.data.records.map(item => { // 遍历 orderItemsVOList,为每个商品添加 orderNumber item.orderItemsVOList = item.orderItemsVOList.map(orderItem => { orderItem.commoditiesVO.orderNumber = item.orderNumber; // 添加 orderNumber return orderItem; }); return item; }); // 更新数据到页面 this.setData({ dingdan: updatedDingdan, }); } else if (res.data.code === 40100) { my.alert({ content: '登录信息已过期,请重新登录', }); my.navigateTo({ url: '/pages/denglu/denglu', }); } console.log(res); console.log(this.data.dingdan); }, fail: (error) => { console.error('请求失败: ', JSON.stringify(error)); my.alert({ content: '请求失败,请稍后重试' }); }, }); } else { my.alert({ content: '您未登录,请先登录。', success: () => { my.navigateTo({ url: '/pages/denglu/denglu', }); }, }); } }, }); }, onSwipeChange(e) { this.setData({ current: e.detail.current, }); }, onChange(current) { this.setData({ current, }); }, handleChange(current) { this.setData({ current, }); }, onPlus() { this.alert('plus'); }, alert(content) { my.alert({ title: content, }); }, getPaymentStatusText(status) { const statusObj = this.paymentStatuses.find(item => item.paymentStatuses === status.toString()); return statusObj ? statusObj.statue : '未知状态'; // 如果找不到对应状态,返回 '未知状态' }, quxiao(e){ const orderId = e.currentTarget.dataset.id; console.log(orderId,'zheshiorderid'); my.getStorage({ key: 'userInfo', success: (res) => { const userInfo = res.data; this.setData({ id: userInfo.id, // 获取 id }); if (userInfo && userInfo.cookie) { my.request({ url: url + '/api/orders/cancel', method: 'POST', data: { id:orderId, userId: this.data.id }, headers: { 'content-type': 'application/json', 'Cookie': userInfo.cookie, }, dataType: 'json', success: (res) => { if(res.data.code===0){ my.showToast({ content: '订单已取消', }); this.onShow() } else if(res.data.code===40100){ my.alert({ content: '登录信息已过期,请重新登录' }); my.navigateTo({ url:'/pages/denglu/denglu' }) } console.log(res); console.log(this.data.dingdan); }, fail: (error) => { console.error('请求失败: ', JSON.stringify(error)); my.alert({ content: '请求失败,请稍后重试' }); }, }); } else { my.alert({ content: '您未登录,请先登录。', success: () => { my.navigateTo({ url: '/pages/denglu/denglu', }); }, }); } }, }); console.log(orderId,this.data.id); }, pay(item){ const id = item.target.dataset.num const ordernumber = id.commoditiesVO.orderNumber const commoditiesName = id.commoditiesVO.commoditiesName const commoditiesPrice = id.commoditiesVO.commoditiesPrice const quantity =id.quantity const commoditiesImage =id.commoditiesVO.commoditiesImage console.log(id,ordernumber,commoditiesName,commoditiesPrice); my.navigateTo({ url:`/pages/pay/pay?ordernumber=${ordernumber} &&commoditiesName=${commoditiesName} &&commoditiesPrice=${commoditiesPrice} &&quantity=${quantity}&&commoditiesImage=${commoditiesImage}` }) }, xiangqing(item){ const id = item.target.dataset.num console.log(id); const message = id.orderItemsVOList const ordernumber = id.orderNumber const createTime = id.createTime const phone = id.phone const userName = id.userName const businessName =id.businessVO.businessName const commoditiesName = message[0].commoditiesVO.commoditiesName; const commoditiesImage = message[0].commoditiesVO.commoditiesImage; const commoditiesPrice = message[0].commoditiesVO.commoditiesPrice; const businessId = id.businessVO.id const statues =id.paymentStatus console.log(statues,businessId,commoditiesPrice,commoditiesImage,commoditiesName,message,ordernumber,createTime,phone,userName,businessName); my.navigateTo({ url:`/pages/dingdanxiangqing/dingdanxiangqing?ordernumber=${ordernumber} &&createTime=${createTime}&&phone=${phone}&&userName=${userName} &&businessName=${businessName}&&commoditiesName=${commoditiesName}&&commoditiesImage=${commoditiesImage} &&commoditiesPrice=${commoditiesPrice}&&businessId=${businessId} &&statues=${statues}` }) } });