Merge branch 'ma'

This commit is contained in:
mabo
2021-06-25 18:47:48 +08:00
13 changed files with 184 additions and 69 deletions

View File

@@ -215,7 +215,7 @@ export default {
color: 'green'
}
},
params.row.money
this.$options.filters.unitPrice(params.row.money, '+ ¥')
)
]);
} else if (params.row.money < 0) {
@@ -227,7 +227,7 @@ export default {
color: 'red'
}
},
params.row.money
this.$options.filters.unitPrice(0 - params.row.money, '- ¥')
)
]);
}
@@ -252,7 +252,10 @@ export default {
},
{
title: '充值金额',
key: 'rechargeMoney'
key: 'rechargeMoney',
render: (h, params) => {
return h('div', [h('span', this.$options.filters.unitPrice(params.row.rechargeMoney, '¥'))]);
}
},
{
title: '支付状态',
@@ -281,7 +284,9 @@ export default {
{
title: '提现金额',
key: 'applyMoney',
width: 120
render: (h, params) => {
return h('div', [h('span', this.$options.filters.unitPrice(params.row.applyMoney, '¥'))]);
}
},
{
title: '提现状态',
@@ -392,9 +397,10 @@ export default {
if (valid) {
recharge(this.formData).then((res) => {
if (res.message === 'success') {
// TODO 根据返回的值跳转到收银台进行支付,一下是输出sn
console.warn(res.result.rechargeSn);
this.modal = false;
this.$router.push({
path: '/payment',
query: { orderType: 'RECHARGE', sn: res.result.rechargeSn }
});
}
});
}

View File

@@ -6,7 +6,8 @@
</div>
<div class="pay-btn">
<Button type="primary" @click="$router.push('/')">继续逛逛</Button>
<Button type="info" @click="$router.push('home/myOrder')">查看订单</Button>
<Button type="info" v-if="$route.query.orderType ==='RECHARGE'" @click="$router.push('/home/MoneyManagement')">查看余额</Button>
<Button type="info" v-else @click="$router.push('/home/myOrder')">查看订单</Button>
</div>
</div>
</template>

View File

@@ -5,31 +5,64 @@
<div class="head-left">
<div class="left-tips">订单提交成功请尽快付款</div>
<div class="left-tips-time">请您尽快完成支付否则订单会被自动取消</div>
<div class="left-tips-count-down">
<mv-count-down :startTime="startTime" class="count-down"
:endTime="endTime"
:endText="endText"
:dayTxt="'天'"
:hourTxt="'小时'"
:minutesTxt="'分钟'"
:secondsTxt="'秒'"
:isStart="isStart"></mv-count-down>
</div>
</div>
<div class="head-right">
<div>应付金额 <span class="price">{{payDetail.price | unitPrice}}</span></div>
<div>应付金额 <span class="price">{{ payDetail.price | unitPrice }}</span></div>
</div>
</div>
<div class="wrapper-box">
<div class="-box-item" @click="handlePay('ALIPAY')">
<img src="https://ss3.bdstatic.com/yrwDcj7w0QhBkMak8IuT_XF5ehU5bvGh7c50/logopic/a9936a369e82e0c6c42112674a5220e8_fullsize.jpg" alt="">
<div v-if="support.includes('ALIPAY')" class="-box-item" @click="handlePay('ALIPAY')">
<img
src="https://ss3.bdstatic.com/yrwDcj7w0QhBkMak8IuT_XF5ehU5bvGh7c50/logopic/a9936a369e82e0c6c42112674a5220e8_fullsize.jpg"
alt="">
<span>支付宝</span>
</div>
<div class="-box-item" @click="handlePay('WECHAT')">
<img src="https://dss1.bdstatic.com/6OF1bjeh1BF3odCf/it/u=3774939867,2826752539&fm=74&app=80&f=JPEG&size=f121,121?sec=1880279984&t=796e842a5ef2d16d9edc872d6f1147ef" alt="">
<div v-if="support.includes('WECHAT')" class="-box-item" @click="handlePay('WECHAT')">
<img
src="https://dss1.bdstatic.com/6OF1bjeh1BF3odCf/it/u=3774939867,2826752539&fm=74&app=80&f=JPEG&size=f121,121?sec=1880279984&t=796e842a5ef2d16d9edc872d6f1147ef"
alt="">
<span>微信</span>
</div>
<div v-if="support.includes('WALLET') && $route.query.orderType !== 'RECHARGE'" class="-box-item" @click="handlePay('WALLET')">
<Icon custom="icomoon icon-wallet" size="60"/>
<span>余额支付</span>
<span>当前剩余({{ walletValue | unitPrice('¥') }})</span>
</div>
</div>
<BaseFooter></BaseFooter>
</div>
</template>
<script>
import { tradeDetail } from '@/api/pay.js';
import {tradeDetail, pay} from '@/api/pay.js';
import MvCountDown from 'mv-count-down'
import {Message} from 'view-design';
export default {
components: {
MvCountDown
},
data () {
return {
payDetail: {}, // 支付详情
qrcode: '' // 支付二维码
support: [], // 支持配送方式
walletValue: 0, // 当前余额
qrcode: '', // 支付二维码
startTime: new Date().getTime(), // 开始时间(时间戳)
endTime: 0, // 完成的时间(时间戳)
endText: '订单已超时取消', // 倒计时完成的提示文本
isStart: false // 控制倒计时开始的时机(异步请求完成开启)
};
},
methods: {
@@ -39,15 +72,45 @@ export default {
tradeDetail(params).then(res => {
if (res.success) {
this.payDetail = res.result;
this.endTime = this.payDetail.autoCancel
this.isStart = true
this.support = this.payDetail.support
this.walletValue = this.payDetail.walletValue
}
});
},
// 支付
handlePay (way) {
// 余额支付则直接跳转
if (way === 'WALLET') {
// 如果待支付金额大于余额,则报错
if (this.payDetail.price > this.walletValue) {
Message.error('余额不足以支付当前订单,如需充值请前往会员中心');
return;
}
}
const params = this.$route.query;
params.paymentMethod = way;
params.paymentClient = 'NATIVE';
params.price = this.payDetail.price;
this.$router.push({path: '/qrpay', query: params});
if (way === 'WALLET') {
this.$Modal.confirm({
title: '支付确认',
content: '<p>确认使用余额支付吗?</p>',
onOk: () => {
pay(params).then(res => {
if (res.success) {
this.$Message.warning(res.message)
this.$router.push('/payDone');
} else {
this.$Message.warning(res.message)
}
})
}
});
} else {
this.$router.push({path: '/qrpay', query: params});
}
}
},
mounted () {
@@ -56,64 +119,83 @@ export default {
};
</script>
<style scoped lang="scss">
.head-left{
font-weight: bold;
.head-left {
font-weight: bold;
}
.left-tips{
font-size: 21px;
.left-tips {
font-size: 21px;
}
.-box-item{
margin-right: 30px;
display: flex;
font-size: 21px;
font-weight: bold;
align-items: center;
margin: 20px 20px;
cursor: pointer;
@include content_color($light_content_color);
&:hover{color: $theme_color;}
.-box-item {
display: flex;
font-size: 18px;
font-weight: bold;
align-items: center;
margin: 20px 20px;
cursor: pointer;
@include content_color($light_content_color);
>span{
margin-left: 10px;
}
>img{
border-radius: 10px;
width: 60px;
height: 60px;
}
&:hover {
color: $theme_color;
}
> span {
margin-left: 15px;
}
> img {
border-radius: 10px;
width: 60px;
height: 60px;
}
}
.left-tips-time{
font-size: 16px;
.left-tips-time {
font-size: 16px;
}
.wrapper-head{
display: flex;
align-items: center;
justify-content: space-between;
line-height: 1.75;
.left-tips-count-down {
font-size: 10px;
color: red;
}
.wrapper-head {
display: flex;
align-items: center;
justify-content: space-between;
line-height: 1.75;
}
.wrapper-head,
.wrapper-box {
padding: 20px 40px;
width: 1200px;
margin: 20px auto;
}
.wrapper-box {
@include white_background_color();
height: auto;
display: flex;
}
.wrapper {
width: 100%;
height: 100%;
}
.price{
font-size: 18px;
font-weight: bold;
color: $theme_color;
.price {
font-size: 18px;
font-weight: bold;
color: $theme_color;
}
.head-right{
font-weight: bold;
.head-right {
font-weight: bold;
font-size: 18px;
}
.count-down{
font-size: 16px!important;
}
</style>

View File

@@ -70,7 +70,7 @@ export default {
payCallback(params).then(res => {
if (res.result) {
clearInterval(this.interval);
this.$router.push('/payDone');
this.$router.push({path: '/payDone', query: {orderType: this.$route.query.orderType}});
}
});
}