jiaqingjiayi-xiaochengxu/甲情_甲意/miniprogram/pages/wodedingdan/wodedingdan.js
2025-01-21 21:56:53 +08:00

245 lines
7.0 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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}`
})
}
});