优化细节
This commit is contained in:
374
libs/order.js
374
libs/order.js
@ -1,204 +1,224 @@
|
||||
import { cancelOrder, takeOrder, delOrder, payOrder } from "@/api/order";
|
||||
import {
|
||||
cancelOrder,
|
||||
takeOrder,
|
||||
delOrder,
|
||||
payOrder
|
||||
} from "@/api/order";
|
||||
import dialog from "@/utils/dialog";
|
||||
import { weappPay } from "@/libs/wechat";
|
||||
import {
|
||||
weappPay
|
||||
} from "@/libs/wechat";
|
||||
|
||||
import { _router } from '@/utils'
|
||||
import {
|
||||
_router
|
||||
} from '@/utils'
|
||||
|
||||
export function cancelOrderHandle(orderId) {
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.showModal({
|
||||
title: '提示',
|
||||
content: '确认取消该订单?',
|
||||
success(res) {
|
||||
if (res.confirm) {
|
||||
cancelOrder(orderId)
|
||||
.then(res => {
|
||||
uni.showToast({
|
||||
title: '取消成功', icon: 'success', duration: 2000
|
||||
});
|
||||
resolve(res);
|
||||
})
|
||||
.catch(err => {
|
||||
uni.showToast({
|
||||
title: '取消失败', icon: 'none', duration: 2000
|
||||
});
|
||||
reject(err);
|
||||
});
|
||||
} else if (res.cancel) {
|
||||
}
|
||||
}
|
||||
})
|
||||
});
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.showModal({
|
||||
title: '提示',
|
||||
content: '确认取消该订单?',
|
||||
success(res) {
|
||||
if (res.confirm) {
|
||||
cancelOrder(orderId)
|
||||
.then(res => {
|
||||
uni.showToast({
|
||||
title: '取消成功',
|
||||
icon: 'success',
|
||||
duration: 2000
|
||||
});
|
||||
resolve(res);
|
||||
})
|
||||
.catch(err => {
|
||||
uni.showToast({
|
||||
title: '取消失败',
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
});
|
||||
reject(err);
|
||||
});
|
||||
} else if (res.cancel) {}
|
||||
}
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
export function takeOrderHandle(orderId) {
|
||||
return new Promise((resolve, reject) => {
|
||||
takeOrder(orderId)
|
||||
.then(res => {
|
||||
uni.showToast({
|
||||
title: '收货成功', icon: 'success', duration: 2000
|
||||
});
|
||||
resolve(res);
|
||||
})
|
||||
.catch(err => {
|
||||
uni.showToast({
|
||||
title: '收货失败', icon: 'none', duration: 2000
|
||||
});
|
||||
reject(err);
|
||||
});
|
||||
});
|
||||
return new Promise((resolve, reject) => {
|
||||
takeOrder(orderId)
|
||||
.then(res => {
|
||||
uni.showToast({
|
||||
title: '收货成功',
|
||||
icon: 'success',
|
||||
duration: 2000
|
||||
});
|
||||
resolve(res);
|
||||
})
|
||||
.catch(err => {
|
||||
uni.showToast({
|
||||
title: '收货失败',
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
});
|
||||
reject(err);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
export function delOrderHandle(orderId) {
|
||||
return new Promise((resolve, reject) => {
|
||||
dialog.confirm({
|
||||
mes: "确认删除该订单?",
|
||||
opts() {
|
||||
delOrder(orderId)
|
||||
.then(res => {
|
||||
uni.showToast({
|
||||
title: '删除成功', icon: 'success', duration: 2000
|
||||
});
|
||||
resolve(res);
|
||||
})
|
||||
.catch(err => {
|
||||
uni.showToast({
|
||||
title: '删除失败', icon: 'none', duration: 2000
|
||||
});
|
||||
reject(err);
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
return new Promise((resolve, reject) => {
|
||||
dialog.confirm({
|
||||
mes: "确认删除该订单?",
|
||||
opts() {
|
||||
delOrder(orderId)
|
||||
.then(res => {
|
||||
uni.showToast({
|
||||
title: '删除成功',
|
||||
icon: 'success',
|
||||
duration: 2000
|
||||
});
|
||||
resolve(res);
|
||||
})
|
||||
.catch(err => {
|
||||
uni.showToast({
|
||||
title: '删除失败',
|
||||
icon: 'none',
|
||||
duration: 2000
|
||||
});
|
||||
reject(err);
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// 使用订单号进行支付
|
||||
export async function payOrderHandle(orderId, type, from) {
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.showLoading({
|
||||
title: "支付中",
|
||||
mask: true
|
||||
});
|
||||
payOrder(orderId, type, from)
|
||||
.then(async res => {
|
||||
await handleOrderPayResults(res.data, type)
|
||||
resolve()
|
||||
})
|
||||
.catch(err => {
|
||||
reject()
|
||||
uni.hideLoading()
|
||||
uni.showToast({
|
||||
title: err.msg || err.response.data.msg || err.response.data.message || '订单支付失败',
|
||||
icon: "none",
|
||||
duration: 2000,
|
||||
});
|
||||
});
|
||||
});
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.showLoading({
|
||||
title: "支付中",
|
||||
mask: true
|
||||
});
|
||||
payOrder(orderId, type, from)
|
||||
.then(async res => {
|
||||
console.log(res)
|
||||
await handleOrderPayResults(res.data, type)
|
||||
resolve()
|
||||
})
|
||||
.catch(err => {
|
||||
reject()
|
||||
uni.hideLoading()
|
||||
uni.showToast({
|
||||
title: err.msg || err.response.data.msg || err.response.data.message || '订单支付失败',
|
||||
icon: "none",
|
||||
duration: 2000,
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
// 处理调用支付接口的逻辑
|
||||
// @type create(创建订单)||pay(支付订单)
|
||||
export function handleOrderPayResults(data, type, payType) {
|
||||
console.log(data, type, payType)
|
||||
|
||||
console.log(data, type)
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.hideLoading()
|
||||
switch (data.status) {
|
||||
// 订单号已存在
|
||||
case "ORDER_EXIST":
|
||||
resolve()
|
||||
break;
|
||||
// 取消支付
|
||||
case "EXTEND_ORDER":
|
||||
uni.showToast({
|
||||
title: data.msg,
|
||||
icon: "none",
|
||||
duration: 2000,
|
||||
});
|
||||
resolve()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
break;
|
||||
case "PAY_DEFICIENCY":
|
||||
break;
|
||||
// 支付出错
|
||||
case "PAY_ERROR":
|
||||
uni.showToast({
|
||||
title: data.msg,
|
||||
icon: "none",
|
||||
duration: 2000,
|
||||
});
|
||||
reject()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
break;
|
||||
// 未传递支付环境
|
||||
case "SUCCESS":
|
||||
uni.showToast({
|
||||
title: data.msg || data.payMsg,
|
||||
icon: "none",
|
||||
duration: 2000,
|
||||
});
|
||||
resolve()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
break;
|
||||
// H5支付
|
||||
case "WECHAT_H5_PAY":
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
console.log(data)
|
||||
setTimeout(() => {
|
||||
resolve()
|
||||
// #ifdef H5
|
||||
// "https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx15171343713577e9f3a418b0865ef90000&package=2547890641"
|
||||
// location.href = data.result.jsConfig.mweb_url;
|
||||
// #endif
|
||||
}, 100);
|
||||
break;
|
||||
// 小程序支付
|
||||
case "WECHAT_PAY":
|
||||
weappPay(data.result.jsConfig).finally(() => {
|
||||
resolve()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
}).then(res => {
|
||||
// #ifdef MP-WEIXIN
|
||||
subscribeMessage()
|
||||
// #endif
|
||||
})
|
||||
break;
|
||||
// APP支付
|
||||
case "WECHAT_APP_PAY":
|
||||
weappPay(data.result.jsConfig).finally(() => {
|
||||
resolve()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
})
|
||||
break;
|
||||
}
|
||||
})
|
||||
return new Promise((resolve, reject) => {
|
||||
uni.hideLoading()
|
||||
switch (data.status) {
|
||||
// 订单号已存在
|
||||
case "ORDER_EXIST":
|
||||
resolve()
|
||||
break;
|
||||
// 取消支付
|
||||
case "EXTEND_ORDER":
|
||||
uni.showToast({
|
||||
title: data.msg,
|
||||
icon: "none",
|
||||
duration: 2000,
|
||||
});
|
||||
resolve()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
break;
|
||||
case "PAY_DEFICIENCY":
|
||||
break;
|
||||
// 支付出错
|
||||
case "PAY_ERROR":
|
||||
uni.showToast({
|
||||
title: data.msg,
|
||||
icon: "none",
|
||||
duration: 2000,
|
||||
});
|
||||
reject()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
break;
|
||||
// 未传递支付环境
|
||||
case "SUCCESS":
|
||||
uni.showToast({
|
||||
title: data.msg || data.payMsg,
|
||||
icon: "none",
|
||||
duration: 2000,
|
||||
});
|
||||
resolve()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
break;
|
||||
// H5支付
|
||||
case "WECHAT_H5_PAY":
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
console.log(data)
|
||||
setTimeout(() => {
|
||||
resolve()
|
||||
// #ifdef H5
|
||||
// "https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx15171343713577e9f3a418b0865ef90000&package=2547890641"
|
||||
// location.href = data.result.jsConfig.mweb_url;
|
||||
// #endif
|
||||
}, 100);
|
||||
break;
|
||||
// 小程序支付
|
||||
case "WECHAT_PAY":
|
||||
weappPay(data.result.jsConfig).finally(() => {
|
||||
resolve()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
}).then(res => {
|
||||
// #ifdef MP-WEIXIN
|
||||
subscribeMessage()
|
||||
// #endif
|
||||
})
|
||||
break;
|
||||
// APP支付
|
||||
case "WECHAT_APP_PAY":
|
||||
weappPay(data.result.jsConfig).finally(() => {
|
||||
resolve()
|
||||
goOrderDetails(data.result.orderId, type)
|
||||
})
|
||||
break;
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
export function subscribeMessage() {
|
||||
// 调用订阅
|
||||
console.log('调用订阅')
|
||||
uni.requestSubscribeMessage({
|
||||
tmplIds: ['W5r2c2kzhbq8uxStkPAVx_sk-5aapMFCqe7b7KU5jXI', '2CB_1UyQrbnlyjJa5syraqJ3cfztPPDOAHe3DEXpMjg', 'vuztugw9VbKbKJDAAVePkjqPpT5mdoREpd4Aq7EGPRU'],
|
||||
success(res) {
|
||||
console.log(res)
|
||||
},
|
||||
fail(error){
|
||||
console.log(error)
|
||||
}
|
||||
})
|
||||
// 调用订阅
|
||||
console.log('调用订阅')
|
||||
uni.requestSubscribeMessage({
|
||||
tmplIds: ['W5r2c2kzhbq8uxStkPAVx_sk-5aapMFCqe7b7KU5jXI', '2CB_1UyQrbnlyjJa5syraqJ3cfztPPDOAHe3DEXpMjg',
|
||||
'vuztugw9VbKbKJDAAVePkjqPpT5mdoREpd4Aq7EGPRU'
|
||||
],
|
||||
success(res) {
|
||||
console.log(res)
|
||||
},
|
||||
fail(error) {
|
||||
console.log(error)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
export function goOrderDetails(id, type) {
|
||||
// 创建订单时跳转到详情
|
||||
if (type == 'create') {
|
||||
console.log(_router)
|
||||
_router.replace({
|
||||
path: "/pages/order/OrderDetails/index",
|
||||
query: {
|
||||
id
|
||||
},
|
||||
});
|
||||
}
|
||||
// 创建订单时跳转到详情
|
||||
if (type == 'create') {
|
||||
console.log(_router)
|
||||
_router.replace({
|
||||
path: "/pages/order/OrderDetails/index",
|
||||
query: {
|
||||
id
|
||||
},
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -40,6 +40,8 @@
|
||||
if (!url) {
|
||||
url = handleUrlParam(getCurrentPageUrlWithArgs())
|
||||
}
|
||||
console.log(url)
|
||||
console.log('判断是否是分销')
|
||||
// 判断是否是分销
|
||||
if (url) {
|
||||
let urlSpread = parseInt(url.spread);
|
||||
|
Reference in New Issue
Block a user