提交
This commit is contained in:
332
甲情_甲意/miniprogram/pages/test/test.js
Normal file
332
甲情_甲意/miniprogram/pages/test/test.js
Normal file
@ -0,0 +1,332 @@
|
||||
import { url } from '../request';
|
||||
Page({
|
||||
data: {
|
||||
current: 0,
|
||||
businessName:'',
|
||||
items: [
|
||||
{
|
||||
title: '全部',
|
||||
},
|
||||
{
|
||||
title: '待支付',
|
||||
},
|
||||
{
|
||||
title: '待使用',
|
||||
},
|
||||
{
|
||||
title: '已完成',
|
||||
},
|
||||
{
|
||||
title: '已取消',
|
||||
},
|
||||
],
|
||||
dingdan:[],
|
||||
paymentStatuses: [
|
||||
{ paymentStatuses: '0', statue: '待支付' },
|
||||
{ paymentStatuses: '1', statue: '待使用' },
|
||||
{ paymentStatuses: '2', statue: '已取消' },
|
||||
{ paymentStatuses: '3', statue: '已退款' },
|
||||
{ paymentStatuses: '4', statue: '已完成' }
|
||||
]
|
||||
|
||||
},
|
||||
onLoad() {
|
||||
my.getStorage({
|
||||
key: 'userInfo',
|
||||
success: (res) => {
|
||||
const userInfo = res.data;
|
||||
this.setData({ id: userInfo.id });
|
||||
|
||||
if (userInfo) {
|
||||
my.request({
|
||||
url: url + '/api/orders/my/page',
|
||||
method: 'POST',
|
||||
data: {
|
||||
claimStatus: 0,
|
||||
current: 1,
|
||||
pageSize: 1000,
|
||||
userId: userInfo.id,
|
||||
userRole: 0,
|
||||
},
|
||||
headers: { 'content-type': 'application/json' },
|
||||
dataType: 'json',
|
||||
success: async (res) => {
|
||||
console.log(res,'rwssss');
|
||||
if (res.data.code === 0) {
|
||||
// 生成包含 appointmentId 的订单列表
|
||||
let orders = res.data.data.records.map(order => ({
|
||||
id:order.id,
|
||||
businessAvatar:order.businessVO.businessAvatar,
|
||||
serviceMode: order.serviceMode,
|
||||
businessName: order.businessVO.businessName || '未知店铺',
|
||||
commoditiesImage: order.orderItemsVOList[0].commoditiesVO.commoditiesImage || '',
|
||||
commoditiesName: order.orderItemsVOList[0].commoditiesVO.commoditiesName || '未知商品',
|
||||
orderNumber: order.orderNumber,
|
||||
totalPrice: order.totalPrice,
|
||||
paymentStatus: order.paymentStatus,
|
||||
status: '',
|
||||
appointmentId: order.appointmentId,
|
||||
phone:order.phone,
|
||||
username:order.userName,
|
||||
businessId:order.businessVO.id,
|
||||
quantity:order.orderItemsVOList.quantity,
|
||||
createTime:order.createTime
|
||||
}));
|
||||
|
||||
this.setData({ dingdan: orders }); // 初始化订单列表
|
||||
|
||||
// 提取所有 appointmentId 并获取详情
|
||||
const appointmentIds = res.data.data.records.map(order => order.appointmentId);
|
||||
appointmentIds.forEach(id => {
|
||||
this.fetchOrderDetail(id); // 逐个请求状态
|
||||
});
|
||||
|
||||
} else if (res.data.code === 40100) {
|
||||
my.alert({ content: '登录信息已过期,请重新登录' });
|
||||
my.navigateTo({ url: '/pages/denglu/denglu' });
|
||||
}
|
||||
},
|
||||
fail: (error) => {
|
||||
console.error('请求失败: ', JSON.stringify(error));
|
||||
my.alert({ content: '请求失败,请稍后重试' });
|
||||
},
|
||||
});
|
||||
} else {
|
||||
my.alert({
|
||||
content: '您未登录,请先登录。',
|
||||
success: () => my.navigateTo({ url: '/pages/denglu/denglu' }),
|
||||
});
|
||||
}
|
||||
},
|
||||
});
|
||||
},
|
||||
|
||||
fetchOrderDetail(appointmentId) {
|
||||
my.request({
|
||||
url: url + '/api/appointments/getAppointments',
|
||||
method: 'GET',
|
||||
data: { appointmentsId: appointmentId }, // 使用正确的参数名
|
||||
headers: { 'content-type': 'application/json' },
|
||||
dataType: 'json',
|
||||
success: (res) => {
|
||||
if (res.data.code === 0) {
|
||||
const status = res.data.data.status; // 根据实际接口返回调整
|
||||
// 更新对应订单的 status
|
||||
const updatedDingdan = this.data.dingdan.map(order => {
|
||||
return order.appointmentId === appointmentId
|
||||
? { ...order, status: status }
|
||||
: order;
|
||||
});
|
||||
this.setData({ dingdan: updatedDingdan });
|
||||
console.log(this.data.dingdan);
|
||||
}
|
||||
},
|
||||
fail: (error) => {
|
||||
console.error(`订单 ${appointmentId} 请求失败:`, JSON.stringify(error));
|
||||
}
|
||||
});
|
||||
},
|
||||
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(item){
|
||||
const id = item.target.dataset.num
|
||||
console.log(id);
|
||||
const orderId = id.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.onLoad()
|
||||
}
|
||||
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);
|
||||
},
|
||||
tuikuan(){
|
||||
my.alert({
|
||||
content:'退款申请已提交,等待商家同意'
|
||||
})
|
||||
},
|
||||
pay(item){
|
||||
console.log(item,'jashgdkhjashdkjashdkaskh');
|
||||
const id = item.target.dataset.num
|
||||
const ordernumber = id.orderNumber
|
||||
const commoditiesName = id.commoditiesName
|
||||
const commoditiesPrice = id.totalPrice
|
||||
const quantity =id.quantity
|
||||
const commoditiesImage =id.commoditiesImage
|
||||
console.log(orderid,ordernumber,commoditiesName,commoditiesPrice);
|
||||
const orderid = id.id
|
||||
my.navigateTo({
|
||||
url:`/pages/pay/pay?ordernumber=${ordernumber}
|
||||
&&commoditiesName=${commoditiesName}
|
||||
&&commoditiesPrice=${commoditiesPrice}
|
||||
&&quantity=${quantity}&&commoditiesImage=${commoditiesImage}
|
||||
&&orderid=${orderid}`
|
||||
})
|
||||
console.log(id,'id啊');
|
||||
console.log(orderid,'orderid');
|
||||
},
|
||||
xiangqing(item){
|
||||
const id = item.target.dataset.num
|
||||
console.log(id,'xiangqing');
|
||||
const ordernumber = id.orderNumber
|
||||
const createTime = id.createTime
|
||||
const phone = id.phone
|
||||
const userName = id.username
|
||||
const businessName =id.businessName
|
||||
const commoditiesName = id.commoditiesName;
|
||||
const commoditiesImage = id.commoditiesImage;
|
||||
const commoditiesPrice = id.totalPrice;
|
||||
const businessId = id.businessId
|
||||
const statues =id.paymentStatus
|
||||
console.log(statues,businessId,commoditiesPrice,commoditiesImage,commoditiesName,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}`
|
||||
})
|
||||
},
|
||||
// orderok(item){
|
||||
// const id = item.target.dataset.num
|
||||
// const orderId = id.id
|
||||
// console.log(orderId,'okroderid');
|
||||
// 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/success',
|
||||
// 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);
|
||||
// }
|
||||
|
||||
});
|
||||
|
Reference in New Issue
Block a user