Fix(订单列表):【商城小程序】待付款订单—立即付款,应直接跳出输入支付密码弹窗而不是订单详情页面
This commit is contained in:
@@ -100,7 +100,7 @@
|
|||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss">
|
<style lang="scss" scoped>
|
||||||
input {
|
input {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -130,7 +130,7 @@
|
|||||||
<template v-if="order._status._type == 0">
|
<template v-if="order._status._type == 0">
|
||||||
<view class="bnt cancelBnt v12-dark-text v12-dark-border" @click="cancelOrder(order)">取消订单</view>
|
<view class="bnt cancelBnt v12-dark-text v12-dark-border" @click="cancelOrder(order)">取消订单</view>
|
||||||
<view class="bnt cancelBnt v12-dark-text v12-dark-border" @click="addressTap(order)">修改地址</view>
|
<view class="bnt cancelBnt v12-dark-text v12-dark-border" @click="addressTap(order)">修改地址</view>
|
||||||
<view class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40" @click="goOrderDetails(order)">立即付款</view>
|
<view class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40" @click="subscribePay(order)">立即付款</view>
|
||||||
</template>
|
</template>
|
||||||
<template v-if="(order._status._type == 1 || order._status._type == 9) && order.isTickets==0">
|
<template v-if="(order._status._type == 1 || order._status._type == 9) && order.isTickets==0">
|
||||||
<view class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40" @click="goOrderDetails(order)">查看详情</view>
|
<view class="bnt bg-color-lightred v12-white v12-primary-text v12-primary-border v12-radius-40" @click="goOrderDetails(order)">查看详情</view>
|
||||||
@@ -159,9 +159,14 @@
|
|||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<u-modal :show="showExtend" title="确认延长收货时间?" content='每笔订单只能延长一次哦' showCancelButton
|
<u-modal
|
||||||
@cancel="showExtend=false" @confirm="doneDelay"></u-modal>
|
:show="showExtend"
|
||||||
|
title="确认延长收货时间?"
|
||||||
|
content='每笔订单只能延长一次哦'
|
||||||
|
showCancelButton
|
||||||
|
@cancel="showExtend=false"
|
||||||
|
@confirm="doneDelay">
|
||||||
|
</u-modal>
|
||||||
<view class="noCart" v-if="orderList.length === 0 && page > 1">
|
<view class="noCart" v-if="orderList.length === 0 && page > 1">
|
||||||
<view class="pictrue">
|
<view class="pictrue">
|
||||||
<image :src="webUrl+'/20240102232734472795.png'"/>
|
<image :src="webUrl+'/20240102232734472795.png'"/>
|
||||||
@@ -169,11 +174,20 @@
|
|||||||
</view>
|
</view>
|
||||||
<Loading :loaded="loaded" :loading="loading"></Loading>
|
<Loading :loaded="loaded" :loading="loading"></Loading>
|
||||||
<Payment v-model="pay" :types="payType" @checked="toPay" :balance="userInfo.nowMoney"></Payment>
|
<Payment v-model="pay" :types="payType" @checked="toPay" :balance="userInfo.nowMoney"></Payment>
|
||||||
|
<passkeyborad
|
||||||
|
:money="orderInfo.payPrice"
|
||||||
|
showMoney
|
||||||
|
:show="isShowPayPwdPop"
|
||||||
|
ref='payPwdPop'
|
||||||
|
@close="pwdPopClose"
|
||||||
|
@finish="pwdPopFinish"
|
||||||
|
></passkeyborad>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
import passkeyborad from '@/components/yzc-paykeyboard/yzc-paykeyboard'
|
||||||
import {getOrderData, getOrderList, orderDelay, editAddress} from "@/api/order";
|
import {getOrderData, getOrderList, orderDelay, editAddress} from "@/api/order";
|
||||||
import {cancelOrderHandle, payOrderHandle, takeOrderHandle} from "@/libs/order";
|
import {cancelOrderHandle, payOrderHandle, takeOrderHandle, yuePayOrderHandle} from "@/libs/order";
|
||||||
import Loading from "@/components/Loading";
|
import Loading from "@/components/Loading";
|
||||||
import Payment from "@/components/Payment";
|
import Payment from "@/components/Payment";
|
||||||
import {mapGetters} from "vuex";
|
import {mapGetters} from "vuex";
|
||||||
@@ -184,6 +198,7 @@ export default {
|
|||||||
mixins: [pageListenMixins],
|
mixins: [pageListenMixins],
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
isShowPayPwdPop: false,
|
||||||
inputStyle: {
|
inputStyle: {
|
||||||
height: '64rpx',
|
height: '64rpx',
|
||||||
},
|
},
|
||||||
@@ -223,18 +238,19 @@ export default {
|
|||||||
pay: false,
|
pay: false,
|
||||||
payType: ["yue", "weixin"],
|
payType: ["yue", "weixin"],
|
||||||
from: this.$deviceType,
|
from: this.$deviceType,
|
||||||
|
orderInfo: {},
|
||||||
showExtend: false,
|
showExtend: false,
|
||||||
delayId: null,
|
delayId: null,
|
||||||
pageKeyId: Object.freeze('userOrderIndex'),
|
pageKeyId: Object.freeze('userOrderIndex'),
|
||||||
keyword: '',
|
keyword: '',
|
||||||
_orderId: '',
|
_orderId: '',
|
||||||
addressId: ''
|
addressId: '',
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
Loading,
|
Loading,
|
||||||
Payment
|
Payment,
|
||||||
|
passkeyborad
|
||||||
},
|
},
|
||||||
computed: mapGetters(["userInfo"]),
|
computed: mapGetters(["userInfo"]),
|
||||||
onShow: function () {
|
onShow: function () {
|
||||||
@@ -288,6 +304,30 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
async toYuePay(payPwd) {
|
||||||
|
const that = this;
|
||||||
|
//网络请求
|
||||||
|
await yuePayOrderHandle(this.orderInfo.orderId, "yue", that.from, payPwd);
|
||||||
|
that.changeType();
|
||||||
|
this.payPassword = "";
|
||||||
|
},
|
||||||
|
pwdPopClose() {
|
||||||
|
this.isShowPayPwdPop = false;
|
||||||
|
},
|
||||||
|
pwdPopFinish(payPwd) {
|
||||||
|
this.payPassword = payPwd;
|
||||||
|
|
||||||
|
this.toYuePay(payPwd);
|
||||||
|
|
||||||
|
this.isShowPayPwdPop = false;
|
||||||
|
},
|
||||||
|
subscribePay(order) {
|
||||||
|
this.orderInfo = order
|
||||||
|
uni.requestSubscribeMessage({
|
||||||
|
tmplIds: ['7O3wKw7_D4t7yfSOlvecKuOQP8QEPY88uBx2FJg43HE', 'TSmTnGibZ8IxWCiRWOvLxha6-0u7tE-V1-WbDCiPkKU', '9Q6xLHe6HyjkU5Zn5k_2zxYPf2y4MxVyUbOSW8pcZRU'],
|
||||||
|
complete: () => this.pay = true
|
||||||
|
})
|
||||||
|
},
|
||||||
addressTap(order) {
|
addressTap(order) {
|
||||||
this._orderId = order.orderId
|
this._orderId = order.orderId
|
||||||
this.$yrouter.push({
|
this.$yrouter.push({
|
||||||
@@ -459,6 +499,9 @@ export default {
|
|||||||
this.page++;
|
this.page++;
|
||||||
this.loaded = res.data.length < this.limit;
|
this.loaded = res.data.length < this.limit;
|
||||||
this.loading = false;
|
this.loading = false;
|
||||||
|
}).finally(() => {
|
||||||
|
this.loading = false;
|
||||||
|
// console.log('???',this.loading);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
tapShowMore(order, index) {
|
tapShowMore(order, index) {
|
||||||
@@ -512,7 +555,7 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
paymentTap: function (order) {
|
paymentTap: function (order) {
|
||||||
var that = this;
|
const that = this;
|
||||||
if (
|
if (
|
||||||
!(order.combinationId > 0 || order.bargainId > 0 || order.seckillId > 0)
|
!(order.combinationId > 0 || order.bargainId > 0 || order.seckillId > 0)
|
||||||
) {
|
) {
|
||||||
@@ -533,7 +576,16 @@ export default {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
toPay() {
|
toPay(type) {
|
||||||
|
const that = this;
|
||||||
|
console.log(type, "支付方式");
|
||||||
|
//余额支付需要输入支付密码
|
||||||
|
if (type == "yue") {
|
||||||
|
this.isShowPayPwdPop = true;
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
payOrderHandle(this.orderInfo.orderId, type, that.from);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
toDelay(id) {
|
toDelay(id) {
|
||||||
|
|||||||
Reference in New Issue
Block a user