diff --git a/libs/order.js b/libs/order.js index eb89768..dde6d5c 100644 --- a/libs/order.js +++ b/libs/order.js @@ -1,204 +1,224 @@ -import { cancelOrder, takeOrder, delOrder, payOrder } from "@/api/order"; -import dialog from "@/utils/dialog"; -import { weappPay } from "@/libs/wechat"; - -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) { - } - } - }) - }); -} - -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); - }); - }); -} - -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); - }); - } - }); - }); -} - -// 使用订单号进行支付 -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, - }); - }); - }); -} - -// 处理调用支付接口的逻辑 -// @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; - } - }) -} - -export function subscribeMessage() { - // 调用订阅 - 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 - }, - }); - } +import { + cancelOrder, + takeOrder, + delOrder, + payOrder +} from "@/api/order"; +import dialog from "@/utils/dialog"; +import { + weappPay +} from "@/libs/wechat"; + +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) {} + } + }) + }); +} + +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); + }); + }); +} + +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); + }); + } + }); + }); +} + +// 使用订单号进行支付 +export async function payOrderHandle(orderId, type, from) { + 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) { + 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) + } + }) +} + + +export function goOrderDetails(id, type) { + // 创建订单时跳转到详情 + if (type == 'create') { + console.log(_router) + _router.replace({ + path: "/pages/order/OrderDetails/index", + query: { + id + }, + }); + } } diff --git a/pages/Loading/index.vue b/pages/Loading/index.vue index 2ba68b5..e3d6683 100644 --- a/pages/Loading/index.vue +++ b/pages/Loading/index.vue @@ -40,6 +40,8 @@ if (!url) { url = handleUrlParam(getCurrentPageUrlWithArgs()) } + console.log(url) + console.log('判断是否是分销') // 判断是否是分销 if (url) { let urlSpread = parseInt(url.spread);