修复支付的一些问题

This commit is contained in:
jerry
2025-08-15 17:46:48 +08:00
parent 05f7738dff
commit f43f563ea8
2 changed files with 30 additions and 20 deletions

View File

@@ -79,7 +79,7 @@ export default (props = {}) => {
case 'alipaymini':
alipaymini(params, orderInfo)
case 'offline_pay':
offlinePay(params,orderInfo)
offlinePay(params, orderInfo)
}
}
@@ -146,8 +146,8 @@ export default (props = {}) => {
// payError(orderInfo)
// });
// } else {
await Taro.requestPayment(weappOrderInfo)
paySuccess(params, orderInfo)
await Taro.requestPayment(weappOrderInfo)
paySuccess(params, orderInfo)
// }
} catch (e) {
Taro.hideLoading()
@@ -177,6 +177,14 @@ export default (props = {}) => {
const wxpayjsPay = async (params, orderInfo) => {
// const $instance = getCurrentInstance()
const { order_id, code } = router.params
if (!code) {
// 微信客户端code授权
const loc = window.location
// const url = `${loc.protocol}//${loc.host}/pages/cart/cashier-result?order_id=${orderId}`
const url = `${loc.protocol}//${loc.host}/pages/cart/cashier-weapp?order_id=${orderId}`
let { redirect_url } = await api.wx.getredirecturl({ url })
window.location.href = redirect_url
}
const { open_id } = await api.wx.getOpenid({ code })
const { pay_channel } = params
const { pay_type, order_type = 'normal' } = orderInfo
@@ -220,10 +228,10 @@ export default (props = {}) => {
console.log(`wxpayh5Pay res:`, res)
const loc = window.location
const redirect_url = `${loc.protocol}//${loc.host}${cashierResultUrl}?order_id=${order_id}`
if(!res.mweb_url){
if (!res.mweb_url) {
//积分抵扣了所有金额,订单直接支付完成了
window.location.href = redirect_url
}else{
} else {
window.location.href = `${res.mweb_url}&redirect_url=${encodeURIComponent(redirect_url)}`
}
@@ -355,7 +363,7 @@ export default (props = {}) => {
order_type: order_type
})
paySuccess(params, orderInfo)
} catch(e) {
} catch (e) {
payError(orderInfo)
}
}
@@ -380,19 +388,19 @@ export default (props = {}) => {
}
const offlinePay = async (params, orderInfo) => {
console.log('offlinePay',params, orderInfo,isTradeDetaiPage())
console.log('offlinePay', params, orderInfo, isTradeDetaiPage())
const { pay_channel, pay_type } = params
const { order_id, order_type, has_check} = orderInfo
await api.cashier.getPayment({
pay_type,
pay_channel,
order_id,
order_type: order_type
})
const { order_id, order_type, has_check } = orderInfo
await api.cashier.getPayment({
pay_type,
pay_channel,
order_id,
order_type: order_type
})
if (isTradeDetaiPage()) {
Taro.navigateTo({url:`/pages/cart/offline-transfer?isDetail=true&order_id=${order_id}&has_check=${has_check}`})
}else{
Taro.redirectTo({url:'/pages/cart/offline-transfer?order_id='+order_id})
Taro.navigateTo({ url: `/pages/cart/offline-transfer?isDetail=true&order_id=${order_id}&has_check=${has_check}` })
} else {
Taro.redirectTo({ url: '/pages/cart/offline-transfer?order_id=' + order_id })
}

View File

@@ -80,10 +80,12 @@ function CashierWeApp(props) {
}
const handlePay = async () => {
if(source){
params.source = source
const { source } = $instance.router.params
let _params = { ...params }
if (source) {
_params.source = source
}
cashierPayment(params, orderInfo)
cashierPayment(_params, orderInfo)
}
return (
<View className='cashier-weapp'>