forked from angelo/web-retail-h5
feat(pay): 支付代码迁移
This commit is contained in:
parent
3a7a8a1ac3
commit
1044dc82a5
|
@ -0,0 +1,153 @@
|
||||||
|
<template>
|
||||||
|
<view class="quick-recharge-panel">
|
||||||
|
<view class="panel-title">请选择充值金额</view>
|
||||||
|
<view class="amount-grid">
|
||||||
|
<view
|
||||||
|
v-for="(amount, index) in amounts"
|
||||||
|
:key="index"
|
||||||
|
class="amount-item"
|
||||||
|
:class="{ selected: selectedIndex === index }"
|
||||||
|
@click="selectAmount(amount, index)"
|
||||||
|
>
|
||||||
|
<view class="amount-value">
|
||||||
|
<text class="amount-number">{{ formatAmount(amount) }}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'QuickRechargePanel',
|
||||||
|
props: {
|
||||||
|
// 预设金额数组
|
||||||
|
amounts: {
|
||||||
|
type: Array,
|
||||||
|
default: () => [100, 200, 500, 1000, 2000, 5000],
|
||||||
|
},
|
||||||
|
// 货币符号
|
||||||
|
currencySymbol: {
|
||||||
|
type: String,
|
||||||
|
default: '',
|
||||||
|
},
|
||||||
|
// 默认选中的索引
|
||||||
|
defaultSelected: {
|
||||||
|
type: Number,
|
||||||
|
default: -1,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
selectedIndex: this.defaultSelected,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
selectAmount(amount, index) {
|
||||||
|
this.selectedIndex = index
|
||||||
|
this.$emit('amount-selected', {
|
||||||
|
amount,
|
||||||
|
index,
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 清空选中状态
|
||||||
|
clear() {
|
||||||
|
this.selectedIndex = -1
|
||||||
|
},
|
||||||
|
// 格式化金额显示千分位
|
||||||
|
formatAmount(amount) {
|
||||||
|
return amount.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',')
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.quick-recharge-panel {
|
||||||
|
margin-top: 20rpx;
|
||||||
|
padding: 20rpx;
|
||||||
|
background: #fff;
|
||||||
|
border-radius: 20rpx;
|
||||||
|
box-shadow: 0px 2px 20rpx 0px rgba(204, 204, 204, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.panel-title {
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #333333;
|
||||||
|
margin-bottom: 30rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.amount-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(3, 1fr);
|
||||||
|
gap: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.amount-item {
|
||||||
|
position: relative;
|
||||||
|
padding: 24rpx 10rpx;
|
||||||
|
background: #f8f9fa;
|
||||||
|
border-radius: 16rpx;
|
||||||
|
text-align: center;
|
||||||
|
transition: all 0.3s ease;
|
||||||
|
cursor: pointer;
|
||||||
|
border: 2rpx solid transparent;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
transform: translateY(-2rpx);
|
||||||
|
box-shadow: 0px 4px 20rpx 0px rgba(0, 91, 172, 0.15);
|
||||||
|
}
|
||||||
|
|
||||||
|
&.selected {
|
||||||
|
background: linear-gradient(135deg, #005bac 0%, #0070d4 100%);
|
||||||
|
color: #fff;
|
||||||
|
border-color: #005bac;
|
||||||
|
box-shadow: 0px 4px 20rpx 0px rgba(0, 91, 172, 0.3);
|
||||||
|
|
||||||
|
.amount-value {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
&:active {
|
||||||
|
transform: translateY(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.amount-value {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
font-weight: 600;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
.currency-symbol {
|
||||||
|
font-size: 24rpx;
|
||||||
|
margin-right: 4rpx;
|
||||||
|
opacity: 0.8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.amount-number {
|
||||||
|
font-size: 52rpx;
|
||||||
|
font-weight: 700;
|
||||||
|
letter-spacing: 2rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 响应式设计
|
||||||
|
@media (max-width: 375px) {
|
||||||
|
.amount-grid {
|
||||||
|
grid-template-columns: repeat(3, 1fr);
|
||||||
|
}
|
||||||
|
|
||||||
|
.amount-item {
|
||||||
|
padding: 25rpx 15rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.amount-number {
|
||||||
|
font-size: 40rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -19,7 +19,7 @@ module.exports = vm => {
|
||||||
|
|
||||||
//#ifdef DEV_SERVER
|
//#ifdef DEV_SERVER
|
||||||
console.log('DEV_SERVER')
|
console.log('DEV_SERVER')
|
||||||
config.baseURL = 'http://t-bl.beida777.com/prod-api'
|
config.baseURL = 'http://192.168.0.86:8080'
|
||||||
//#endif
|
//#endif
|
||||||
|
|
||||||
//#ifdef QA_SERVER
|
//#ifdef QA_SERVER
|
||||||
|
|
|
@ -130,7 +130,7 @@ export default {
|
||||||
},
|
},
|
||||||
onLoad() {
|
onLoad() {
|
||||||
let params = {
|
let params = {
|
||||||
ifcz: true,
|
isRecharge: true,
|
||||||
}
|
}
|
||||||
this.topList[0].path =
|
this.topList[0].path =
|
||||||
'/pages/pay/index?paramsPost=' + JSON.stringify(params)
|
'/pages/pay/index?paramsPost=' + JSON.stringify(params)
|
||||||
|
@ -257,7 +257,7 @@ export default {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
let paramsPost = {
|
let paramsPost = {
|
||||||
ifcz: true,
|
isRecharge: true,
|
||||||
}
|
}
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: `${item.path}?paramsPost=${encodeURIComponent(JSON.stringify(paramsPost))}`,
|
url: `${item.path}?paramsPost=${encodeURIComponent(JSON.stringify(paramsPost))}`,
|
||||||
|
|
|
@ -6,193 +6,168 @@
|
||||||
-->
|
-->
|
||||||
<template>
|
<template>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="index_header">
|
<view class="index_header"> </view>
|
||||||
</view>
|
|
||||||
<view class="contxt">
|
<view class="contxt">
|
||||||
<template>
|
<template>
|
||||||
<view class="tit">{{'待支付金额'}}</view>
|
<view class="tit">{{ '待支付金额' }}</view>
|
||||||
<view class="tit1">
|
<view class="tit1">
|
||||||
¥{{ paramsPost.orderAmount | numberToCurrency }}
|
¥{{ paramsPost.orderAmount | numberToCurrency }}
|
||||||
</view>
|
</view>
|
||||||
<view class="tit2">{{'请在'}}
|
<view class="tit2"
|
||||||
<view class="tit3">{{ countDown }}</view>{{'内完成支付,否则订单将会被自动取消'}}
|
>{{ '请在' }} <view class="tit3">{{ countDown }}</view
|
||||||
|
>{{ '内完成支付,否则订单将会被自动取消' }}
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
<!-- 暂时隐藏 -->
|
<!-- 暂时隐藏 -->
|
||||||
<view v-if="false" class="kuang">
|
<view v-if="false" class="kuang">
|
||||||
|
<u-collapse
|
||||||
<u-collapse :value="activeNames"
|
:value="activeNames"
|
||||||
ref="collapse"
|
ref="collapse"
|
||||||
@open="change"
|
@open="change"
|
||||||
@close="close"
|
@close="close"
|
||||||
accordion
|
accordion
|
||||||
:border="false">
|
:border="false"
|
||||||
|
>
|
||||||
<u-collapse-item name="1">
|
<u-collapse-item name="1">
|
||||||
<view slot="title"
|
<view slot="title" class="pf">
|
||||||
class="pf"> <img src="@/static/images/under_pay.png"
|
<img src="@/static/images/under_pay.png" alt="" />
|
||||||
alt="" />
|
<view>{{ '在线支付' }}</view>
|
||||||
<view>{{'在线支付'}}</view>
|
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac"
|
<view class="flex_ac" v-show="this.payList.pay11">
|
||||||
v-show="this.payList.pay11">
|
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png"
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
alt="" />
|
<view>{{ '宝付微信支付' }}</view>
|
||||||
<view>{{'宝付微信支付'}}</view>
|
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red"
|
<u-radio activeColor="red" size="14" label="" :name="11">
|
||||||
size="14"
|
|
||||||
label=""
|
|
||||||
:name="11">
|
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac"
|
<view class="flex_ac" v-show="this.payList.pay12">
|
||||||
v-show="this.payList.pay12">
|
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png"
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
alt="" />
|
<view>{{ '宝付微信扫码' }}</view>
|
||||||
<view>{{'宝付微信扫码'}}</view>
|
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red"
|
<u-radio activeColor="red" size="14" label="" :name="12">
|
||||||
size="14"
|
|
||||||
label=""
|
|
||||||
:name="12">
|
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="flex_ac"
|
<view class="flex_ac" v-show="this.payList.pay13">
|
||||||
v-show="this.payList.pay13">
|
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png"
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
alt="" />
|
<view>{{ '汇付微信支付' }}</view>
|
||||||
<view>{{'汇付微信支付'}}</view>
|
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red"
|
<u-radio activeColor="red" size="14" label="" :name="13">
|
||||||
size="14"
|
|
||||||
label=""
|
|
||||||
:name="13">
|
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac1"
|
<view class="flex_ac1" v-show="this.payList.pay15">
|
||||||
v-show="this.payList.pay15">
|
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/jdBank.jpg"
|
<img src="@/static/images/jdBank.jpg" alt="" />
|
||||||
alt="" />
|
<view>{{ '汇付银行卡' }} ({{ '暂不支持信用卡' }})</view>
|
||||||
<view>{{'汇付银行卡'}} ({{ '暂不支持信用卡' }})</view>
|
|
||||||
</view>
|
</view>
|
||||||
<view class="pad">
|
<view class="pad">
|
||||||
<view v-for="(item, index) in hfList"
|
<view
|
||||||
:key="index"
|
v-for="(item, index) in hfList"
|
||||||
class="pay_flax flex_bet"
|
:key="index"
|
||||||
@click.prevent="selPayRadio('hf' + index)">
|
class="pay_flax flex_bet"
|
||||||
|
@click.prevent="selPayRadio('hf' + index)"
|
||||||
|
>
|
||||||
<view class="flax_i">
|
<view class="flax_i">
|
||||||
{{ item.bankName }} ({{ item.bankNo }})
|
{{ item.bankName }} ({{ item.bankNo }})
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red"
|
<u-radio
|
||||||
size="14"
|
activeColor="red"
|
||||||
label=''
|
size="14"
|
||||||
:name="'hf' + index">
|
label=""
|
||||||
|
:name="'hf' + index"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="pay_flax flax_i"
|
<view class="pay_flax flax_i" @click="bindBank('hf')">
|
||||||
@click="bindBank('hf')">
|
<img class="img1" src="@/static/images/addto.png" alt="" />
|
||||||
<img class="img1"
|
<view>{{ '绑定银行卡' }}</view>
|
||||||
src="@/static/images/addto.png"
|
|
||||||
alt="" />
|
|
||||||
<view>{{'绑定银行卡'}}</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac"
|
<view class="flex_ac" v-show="this.payList.pay32">
|
||||||
v-show="this.payList.pay32">
|
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png"
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
alt="" />
|
|
||||||
<view>通联微信支付</view>
|
<view>通联微信支付</view>
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red"
|
<u-radio activeColor="red" size="14" label="" :name="32">
|
||||||
size="14"
|
|
||||||
label=""
|
|
||||||
:name="32">
|
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac1"
|
<view class="flex_ac1" v-show="this.payList.pay33">
|
||||||
v-show="this.payList.pay33">
|
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/jdBank.jpg"
|
<img src="@/static/images/jdBank.jpg" alt="" />
|
||||||
alt="" />
|
<view>{{ '通联银行卡' }} ({{ '暂不支持信用卡' }})</view>
|
||||||
<view>{{'通联银行卡'}} ({{ '暂不支持信用卡' }})</view>
|
|
||||||
</view>
|
</view>
|
||||||
<view class="pad">
|
<view class="pad">
|
||||||
<view v-for="(item, index) in tlList"
|
<view
|
||||||
:key="index"
|
v-for="(item, index) in tlList"
|
||||||
class="pay_flax flex_bet"
|
:key="index"
|
||||||
@click.prevent="selPayRadio('tl' + index)">
|
class="pay_flax flex_bet"
|
||||||
|
@click.prevent="selPayRadio('tl' + index)"
|
||||||
|
>
|
||||||
<view class="flax_i">
|
<view class="flax_i">
|
||||||
{{ item.bankName }} ({{ item.bankNo }})
|
{{ item.bankName }} ({{ item.bankNo }})
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red"
|
<u-radio
|
||||||
size="14"
|
activeColor="red"
|
||||||
label=''
|
size="14"
|
||||||
:name="'tl' + index">
|
label=""
|
||||||
|
:name="'tl' + index"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="pay_flax flax_i"
|
<view class="pay_flax flax_i" @click="bindBank('tl')">
|
||||||
@click="bindBank('tl')">
|
<img class="img1" src="@/static/images/addto.png" alt="" />
|
||||||
<img class="img1"
|
<view>{{ '绑定银行卡' }}</view>
|
||||||
src="@/static/images/addto.png"
|
|
||||||
alt="" />
|
|
||||||
<view>{{'绑定银行卡'}}</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac1"
|
<view class="flex_ac1" v-show="this.payList.pay4">
|
||||||
v-show="this.payList.pay4">
|
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/jdBank.jpg"
|
<img src="@/static/images/jdBank.jpg" alt="" />
|
||||||
alt="" />
|
<view>{{ '京东银行卡' }} ({{ '暂不支持信用卡' }})</view>
|
||||||
<view>{{'京东银行卡'}} ({{ '暂不支持信用卡' }})</view>
|
|
||||||
</view>
|
</view>
|
||||||
<view class="pad">
|
<view class="pad">
|
||||||
<view v-for="(item, index) in jdList"
|
<view
|
||||||
:key="index"
|
v-for="(item, index) in jdList"
|
||||||
class="pay_flax flex_bet"
|
:key="index"
|
||||||
@click.prevent="selPayRadio('jd' + index)">
|
class="pay_flax flex_bet"
|
||||||
|
@click.prevent="selPayRadio('jd' + index)"
|
||||||
|
>
|
||||||
<view class="flax_i">
|
<view class="flax_i">
|
||||||
{{ item.bankName }} ({{ item.bankNo }})
|
{{ item.bankName }} ({{ item.bankNo }})
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red"
|
<u-radio
|
||||||
size="14"
|
activeColor="red"
|
||||||
label=''
|
size="14"
|
||||||
:name="'jd' + index">
|
label=""
|
||||||
|
:name="'jd' + index"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="pay_flax flax_i"
|
<view class="pay_flax flax_i" @click="bindBank('jd')">
|
||||||
@click="bindBank('jd')">
|
<img class="img1" src="@/static/images/addto.png" alt="" />
|
||||||
<img class="img1"
|
<view>{{ '绑定银行卡' }}</view>
|
||||||
src="@/static/images/addto.png"
|
|
||||||
alt="" />
|
|
||||||
<view>{{'绑定银行卡'}}</view>
|
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
</u-collapse-item>
|
</u-collapse-item>
|
||||||
|
|
||||||
</u-collapse>
|
</u-collapse>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
|
@ -200,60 +175,57 @@
|
||||||
<view class="footer_f">
|
<view class="footer_f">
|
||||||
<view class="footer">
|
<view class="footer">
|
||||||
<view class="footer_r">
|
<view class="footer_r">
|
||||||
<u-button type="success"
|
<u-button
|
||||||
class="uBtn"
|
type="success"
|
||||||
shape="circle"
|
class="uBtn"
|
||||||
:loading="isLoading"
|
shape="circle"
|
||||||
loadingText="支付中"
|
:loading="isLoading"
|
||||||
@tap="quickPay(ifcz)"
|
loadingText="支付中"
|
||||||
color="linear-gradient(to right, #005BAC, #005BAC )">{{'立即支付'}}
|
@tap="quickPay(isRecharge)"
|
||||||
|
color="linear-gradient(to right, #005BAC, #005BAC )"
|
||||||
|
>{{ '立即支付' }}
|
||||||
</u-button>
|
</u-button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<!-- 输入验证码,密码 -->
|
<!-- 输入验证码,密码 -->
|
||||||
<u-popup :show="isPw"
|
<u-popup :show="isPw" mode="center" closeable @close="closePw">
|
||||||
mode="center"
|
<view class="t_tit">{{ '支付验证' }}</view>
|
||||||
closeable
|
|
||||||
@close="closePw">
|
|
||||||
<view class="t_tit">{{'支付验证'}}</view>
|
|
||||||
<view class="box">
|
<view class="box">
|
||||||
|
<view class="c_tit">{{ '请输入短信验证码' }}</view>
|
||||||
|
|
||||||
<view class="c_tit">{{'请输入短信验证码'}}</view>
|
<u--input border="surround" v-model="codeValue"></u--input>
|
||||||
|
|
||||||
<u--input border="surround"
|
<u-button
|
||||||
v-model="codeValue"></u--input>
|
type="success"
|
||||||
|
class="uBtn"
|
||||||
<u-button type="success"
|
shape="circle"
|
||||||
class="uBtn"
|
:loading="isLoading"
|
||||||
shape="circle"
|
loadingText="支付中"
|
||||||
:loading="isLoading"
|
@tap="payPw()"
|
||||||
loadingText="支付中"
|
color="linear-gradient(to right, #005BAC, #005BAC )"
|
||||||
@tap="payPw()"
|
>{{ '立即支付' }}
|
||||||
color="linear-gradient(to right, #005BAC, #005BAC )">{{'立即支付'}} </u-button>
|
</u-button>
|
||||||
</view>
|
</view>
|
||||||
</u-popup>
|
</u-popup>
|
||||||
<!-- 成功 -->
|
<!-- 成功 -->
|
||||||
<u-modal :show="showSucce"
|
<u-modal
|
||||||
showConfirmButton
|
:show="showSucce"
|
||||||
:content='content'
|
showConfirmButton
|
||||||
confirmColor='#DE3932'
|
:content="content"
|
||||||
@confirm="reset"
|
confirmColor="#DE3932"
|
||||||
ref="uModal"
|
@confirm="reset"
|
||||||
:asyncClose="true"></u-modal>
|
ref="uModal"
|
||||||
|
:asyncClose="true"
|
||||||
|
></u-modal>
|
||||||
<!-- 二维码 -->
|
<!-- 二维码 -->
|
||||||
<u-popup :show="wxPopup"
|
<u-popup :show="wxPopup" mode="center" closeable @close="closewxPopup">
|
||||||
mode="center"
|
<view class="t_tit">{{ '微信支付' }}</view>
|
||||||
closeable
|
|
||||||
@close="closewxPopup">
|
|
||||||
<view class="t_tit">{{'微信支付'}}</view>
|
|
||||||
<view class="pay_code">
|
<view class="pay_code">
|
||||||
<div ref="qrCodeUrlWx"
|
<div ref="qrCodeUrlWx" class="qrcode"></div>
|
||||||
class="qrcode"></div>
|
|
||||||
</view>
|
</view>
|
||||||
</u-popup>
|
</u-popup>
|
||||||
<hiSuccess @successClose="successClose"
|
<hiSuccess @successClose="successClose" ref="hiSuccess"></hiSuccess>
|
||||||
ref="hiSuccess"></hiSuccess>
|
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -300,7 +272,7 @@ export default {
|
||||||
content: '支付成功',
|
content: '支付成功',
|
||||||
wxPopup: false,
|
wxPopup: false,
|
||||||
luckydrawData: {},
|
luckydrawData: {},
|
||||||
ifcz: false,
|
isRecharge: false,
|
||||||
czJe: '',
|
czJe: '',
|
||||||
tlList: [],
|
tlList: [],
|
||||||
}
|
}
|
||||||
|
@ -314,8 +286,8 @@ export default {
|
||||||
)
|
)
|
||||||
|
|
||||||
this.pkCountry = uni.getStorageSync('pkCountry')
|
this.pkCountry = uni.getStorageSync('pkCountry')
|
||||||
// if (this.paramsPost.ifcz) {
|
// if (this.paramsPost.isRecharge) {
|
||||||
// this.ifcz = this.paramsPost.ifcz
|
// this.isRecharge = this.paramsPost.isRecharge
|
||||||
// this.businessType = 3
|
// this.businessType = 3
|
||||||
// uni.setNavigationBarTitle({
|
// uni.setNavigationBarTitle({
|
||||||
// title: '充值'
|
// title: '充值'
|
||||||
|
@ -324,7 +296,7 @@ export default {
|
||||||
// uni.setNavigationBarTitle({
|
// uni.setNavigationBarTitle({
|
||||||
// title: '订单支付'
|
// title: '订单支付'
|
||||||
// });
|
// });
|
||||||
// this.ifcz = false
|
// this.isRecharge = false
|
||||||
// if (JSON.parse(options.paramsPost).orderType == 4) {
|
// if (JSON.parse(options.paramsPost).orderType == 4) {
|
||||||
this.orderCode = this.paramsPost.orderCode
|
this.orderCode = this.paramsPost.orderCode
|
||||||
// this.luckydrawData = this.paramsPost.luckydrawData
|
// this.luckydrawData = this.paramsPost.luckydrawData
|
||||||
|
@ -374,7 +346,7 @@ export default {
|
||||||
pkBaseId: this.luckydrawData.pkBaseId,
|
pkBaseId: this.luckydrawData.pkBaseId,
|
||||||
payNum: this.luckydrawData.payNum,
|
payNum: this.luckydrawData.payNum,
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then(res => {
|
||||||
if (res.code == 200) {
|
if (res.code == 200) {
|
||||||
this.orderData.orderAmount = res.data.toBePaidMoney
|
this.orderData.orderAmount = res.data.toBePaidMoney
|
||||||
this.payDetail = res.data
|
this.payDetail = res.data
|
||||||
|
@ -411,7 +383,7 @@ export default {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
fansOrder() {
|
fansOrder() {
|
||||||
api.fansOrder(this.orderCode).then((res) => {
|
api.fansOrder(this.orderCode).then(res => {
|
||||||
this.isLoading = false
|
this.isLoading = false
|
||||||
this.isPw = false
|
this.isPw = false
|
||||||
removeToken()
|
removeToken()
|
||||||
|
@ -436,7 +408,7 @@ export default {
|
||||||
pkSettleCountry: this.pkCountry,
|
pkSettleCountry: this.pkCountry,
|
||||||
}
|
}
|
||||||
this.isLoading = true
|
this.isLoading = true
|
||||||
url(obj).then((res) => {
|
url(obj).then(res => {
|
||||||
if (res.code == 200) {
|
if (res.code == 200) {
|
||||||
// this.isPw = false
|
// this.isPw = false
|
||||||
// this.$refs.hiSuccess.showSuccess(res.data)
|
// this.$refs.hiSuccess.showSuccess(res.data)
|
||||||
|
@ -481,7 +453,7 @@ export default {
|
||||||
payType: 3, //银行卡
|
payType: 3, //银行卡
|
||||||
bindCode: this.hfList[indexed].bindCode,
|
bindCode: this.hfList[indexed].bindCode,
|
||||||
}
|
}
|
||||||
api.unifiedorder(params).then((response) => {
|
api.unifiedorder(params).then(response => {
|
||||||
this.isBank = 'hf'
|
this.isBank = 'hf'
|
||||||
this.bindCode = this.hfList[indexed].bindCode
|
this.bindCode = this.hfList[indexed].bindCode
|
||||||
this.isPw = true
|
this.isPw = true
|
||||||
|
@ -497,7 +469,7 @@ export default {
|
||||||
payType: 3, //银行卡
|
payType: 3, //银行卡
|
||||||
bindCode: this.jdList[indexed].bindCode,
|
bindCode: this.jdList[indexed].bindCode,
|
||||||
}
|
}
|
||||||
api.unifiedorder(params).then((response) => {
|
api.unifiedorder(params).then(response => {
|
||||||
this.isBank = 'jd'
|
this.isBank = 'jd'
|
||||||
this.bindCode = this.jdList[indexed].bindCode
|
this.bindCode = this.jdList[indexed].bindCode
|
||||||
this.isPw = true
|
this.isPw = true
|
||||||
|
@ -512,7 +484,7 @@ export default {
|
||||||
payType: 3, //银行卡
|
payType: 3, //银行卡
|
||||||
bindCode: this.tlList[indexed].bindCode,
|
bindCode: this.tlList[indexed].bindCode,
|
||||||
}
|
}
|
||||||
api.unifiedorder(params).then((response) => {
|
api.unifiedorder(params).then(response => {
|
||||||
this.isBank = 'tl'
|
this.isBank = 'tl'
|
||||||
this.bindCode = this.tlList[indexed].bindCode
|
this.bindCode = this.tlList[indexed].bindCode
|
||||||
this.isPw = true
|
this.isPw = true
|
||||||
|
@ -530,7 +502,7 @@ export default {
|
||||||
payType: 2,
|
payType: 2,
|
||||||
appletFlag: 0,
|
appletFlag: 0,
|
||||||
}
|
}
|
||||||
api.unifiedorder(params).then((res) => {
|
api.unifiedorder(params).then(res => {
|
||||||
let url =
|
let url =
|
||||||
'https://cloud1-8gp1n6uofa17e2e2-1315820965.tcloudbaseapp.com/jump_mp.html?sign=8587800b05c859700944247c03eeae1c&t=1698224973&state=' +
|
'https://cloud1-8gp1n6uofa17e2e2-1315820965.tcloudbaseapp.com/jump_mp.html?sign=8587800b05c859700944247c03eeae1c&t=1698224973&state=' +
|
||||||
res.data
|
res.data
|
||||||
|
@ -547,7 +519,7 @@ export default {
|
||||||
payType: 2,
|
payType: 2,
|
||||||
appletFlag: 0,
|
appletFlag: 0,
|
||||||
}
|
}
|
||||||
api.unifiedorder(params).then((res) => {
|
api.unifiedorder(params).then(res => {
|
||||||
let url =
|
let url =
|
||||||
'https://cloud1-1gql8u3v1fe85a37-1322999719.tcloudbaseapp.com/jump_mp.html?sign=d77deffc9e8aecd2b721f8430c376370&t=1705374125&state=' +
|
'https://cloud1-1gql8u3v1fe85a37-1322999719.tcloudbaseapp.com/jump_mp.html?sign=d77deffc9e8aecd2b721f8430c376370&t=1705374125&state=' +
|
||||||
res.data
|
res.data
|
||||||
|
@ -562,7 +534,7 @@ export default {
|
||||||
payChannel: val,
|
payChannel: val,
|
||||||
payType: 2,
|
payType: 2,
|
||||||
}
|
}
|
||||||
api.unifiedorder(params).then((res) => {
|
api.unifiedorder(params).then(res => {
|
||||||
this.wxPopup = true
|
this.wxPopup = true
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
new QRCode(
|
new QRCode(
|
||||||
|
@ -593,7 +565,7 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getPayConfig() {
|
getPayConfig() {
|
||||||
api.payConfig().then((res) => {
|
api.payConfig().then(res => {
|
||||||
this.payList = res.data
|
this.payList = res.data
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
this.$refs.collapse.init()
|
this.$refs.collapse.init()
|
||||||
|
@ -602,7 +574,7 @@ export default {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getBankList() {
|
getBankList() {
|
||||||
api.jdBankList().then((res) => {
|
api.jdBankList().then(res => {
|
||||||
this.jdList = res.data
|
this.jdList = res.data
|
||||||
})
|
})
|
||||||
// api.hfBankList().then((res) => {
|
// api.hfBankList().then((res) => {
|
||||||
|
@ -623,7 +595,7 @@ export default {
|
||||||
orderCode: this.orderCode,
|
orderCode: this.orderCode,
|
||||||
pkSettleCountry: this.pkCountry,
|
pkSettleCountry: this.pkCountry,
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then(res => {
|
||||||
this.orderData = res.data
|
this.orderData = res.data
|
||||||
this.downTime()
|
this.downTime()
|
||||||
})
|
})
|
||||||
|
@ -645,13 +617,13 @@ export default {
|
||||||
orderCode: this.orderCode,
|
orderCode: this.orderCode,
|
||||||
pkSettleCountry: this.pkCountry,
|
pkSettleCountry: this.pkCountry,
|
||||||
})
|
})
|
||||||
.then((res) => {
|
.then(res => {
|
||||||
// this.payDetail = res.data
|
// this.payDetail = res.data
|
||||||
this.$set(this, 'payDetail', res.data)
|
this.$set(this, 'payDetail', res.data)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
reset() {
|
reset() {
|
||||||
this.$store.dispatch('GetInfo').then((res) => {
|
this.$store.dispatch('GetInfo').then(res => {
|
||||||
uni.reLaunch({
|
uni.reLaunch({
|
||||||
url: '/pages/index/index',
|
url: '/pages/index/index',
|
||||||
})
|
})
|
||||||
|
@ -669,7 +641,7 @@ export default {
|
||||||
// this.showSucce = true
|
// this.showSucce = true
|
||||||
this.fansOrder()
|
this.fansOrder()
|
||||||
} else {
|
} else {
|
||||||
api.payStatus(data).then((res) => {
|
api.payStatus(data).then(res => {
|
||||||
that.sucPay = res.data
|
that.sucPay = res.data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -710,7 +682,9 @@ export default {
|
||||||
|
|
||||||
.tit {
|
.tit {
|
||||||
font-size: 24px;
|
font-size: 24px;
|
||||||
font-family: PingFang SC-Semibold, PingFang SC;
|
font-family:
|
||||||
|
PingFang SC-Semibold,
|
||||||
|
PingFang SC;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
|
@ -719,7 +693,9 @@ export default {
|
||||||
|
|
||||||
.tit1 {
|
.tit1 {
|
||||||
font-size: 24px;
|
font-size: 24px;
|
||||||
font-family: PingFang SC-Semibold, PingFang SC;
|
font-family:
|
||||||
|
PingFang SC-Semibold,
|
||||||
|
PingFang SC;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
color: #e02b26;
|
color: #e02b26;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
@ -728,7 +704,9 @@ export default {
|
||||||
|
|
||||||
.tit2 {
|
.tit2 {
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
font-family: PingFang SC-Regular, PingFang SC;
|
font-family:
|
||||||
|
PingFang SC-Regular,
|
||||||
|
PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: #666666;
|
color: #666666;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
@ -755,7 +733,9 @@ export default {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
font-family: PingFang SC-Semibold, PingFang SC;
|
font-family:
|
||||||
|
PingFang SC-Semibold,
|
||||||
|
PingFang SC;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
|
|
||||||
|
@ -793,7 +773,9 @@ export default {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
font-family: PingFang SC-Regular, PingFang SC;
|
font-family:
|
||||||
|
PingFang SC-Regular,
|
||||||
|
PingFang SC;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
|
|
||||||
|
@ -915,14 +897,18 @@ export default {
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
color: #666;
|
color: #666;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
font-family: PingFang SC-Semibold, PingFang SC;
|
font-family:
|
||||||
|
PingFang SC-Semibold,
|
||||||
|
PingFang SC;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
color: #999;
|
color: #999;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tTit {
|
.tTit {
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
font-family: PingFang SC-Semibold, PingFang SC;
|
font-family:
|
||||||
|
PingFang SC-Semibold,
|
||||||
|
PingFang SC;
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
color: #666;
|
color: #666;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,21 @@
|
||||||
<template>
|
<template>
|
||||||
<view class="content">
|
<view class="content">
|
||||||
<view class="index_header"> </view>
|
|
||||||
<view class="contxt">
|
<view class="contxt">
|
||||||
<!-- 充值 -->
|
<!-- 充值 -->
|
||||||
<template v-if="ifcz">
|
<template v-if="isRecharge">
|
||||||
<div class="tit4">{{ '充值金额' }}</div>
|
<div class="tit4">充值金额</div>
|
||||||
<u-input class="czinputbox" v-model="czJe"></u-input>
|
<QuickRechargePanel
|
||||||
|
ref="quickRechargePanel"
|
||||||
|
:amounts="quickAmounts"
|
||||||
|
@amount-selected="onAmountSelected"
|
||||||
|
style="margin-bottom: 20rpx"
|
||||||
|
/>
|
||||||
|
<u-input
|
||||||
|
class="recharge-input"
|
||||||
|
fontSize="36"
|
||||||
|
v-model="rechargeAmount"
|
||||||
|
placeholder="或输入自定义金额"
|
||||||
|
></u-input>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<view class="tit">{{ '待支付金额' }}</view>
|
<view class="tit">{{ '待支付金额' }}</view>
|
||||||
|
@ -29,7 +39,9 @@
|
||||||
>
|
>
|
||||||
<u-collapse-item
|
<u-collapse-item
|
||||||
name="1"
|
name="1"
|
||||||
v-if="!ifcz && !isShare & (userInfo.memberCode != 'BF66886688')"
|
v-if="
|
||||||
|
!isRecharge && !isShare && userInfo.memberCode != 'BF66886688'
|
||||||
|
"
|
||||||
>
|
>
|
||||||
<view slot="title" class="pf">
|
<view slot="title" class="pf">
|
||||||
<img src="@/static/images/yhkzf.jpg" alt="" />
|
<img src="@/static/images/yhkzf.jpg" alt="" />
|
||||||
|
@ -167,64 +179,104 @@
|
||||||
</view>
|
</view>
|
||||||
</u-collapse-item>
|
</u-collapse-item>
|
||||||
<!-- 暂时隐藏在线支付 -->
|
<!-- 暂时隐藏在线支付 -->
|
||||||
<u-collapse-item name="2" v-if="onlinePay && false">
|
<u-collapse-item name="2" v-if="onlinePay">
|
||||||
<view slot="title" class="pf">
|
<view slot="title" class="pf">
|
||||||
<img src="@/static/images/under_pay.png" alt="" />
|
<img src="@/static/images/under_pay.png" alt="" />
|
||||||
<view>{{ '在线支付' }}</view>
|
<view>{{ '在线支付' }}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac" v-show="this.payList.pay11">
|
<view
|
||||||
|
class="flex_ac"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.BAO_FU_WECHAT]]"
|
||||||
|
>
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png" alt="" />
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
<view>{{ '宝付微信支付' }}</view>
|
<view>{{ '宝付微信支付' }}</view>
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red" size="14" label="" :name="11">
|
<u-radio
|
||||||
|
activeColor="red"
|
||||||
|
size="14"
|
||||||
|
label=""
|
||||||
|
:name="PAY_TYPE.BAO_FU_WECHAT"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac" v-show="this.payList.pay12">
|
<view
|
||||||
|
class="flex_ac"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.BAO_FU_WECHAT_SCAN]]"
|
||||||
|
>
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png" alt="" />
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
<view>{{ '宝付微信扫码' }}</view>
|
<view>{{ '宝付微信扫码' }}</view>
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red" size="14" label="" :name="12">
|
<u-radio
|
||||||
|
activeColor="red"
|
||||||
|
size="14"
|
||||||
|
label=""
|
||||||
|
:name="PAY_TYPE.BAO_FU_WECHAT_SCAN"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac" v-show="this.payList.pay13">
|
<view
|
||||||
|
class="flex_ac"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.HUI_FU_WECHAT]]"
|
||||||
|
>
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png" alt="" />
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
<view>{{ '汇付微信支付' }}</view>
|
<view>{{ '汇付微信支付' }}</view>
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red" size="14" label="" :name="13">
|
<u-radio
|
||||||
|
activeColor="red"
|
||||||
|
size="14"
|
||||||
|
label=""
|
||||||
|
:name="PAY_TYPE.HUI_FU_WECHAT"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<!-- 微信支付 -->
|
<!-- 微信支付 -->
|
||||||
<view class="flex_ac" v-show="this.payList.pay73">
|
<view
|
||||||
|
class="flex_ac"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.WECHAT_PAY]]"
|
||||||
|
>
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png" alt="" />
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
<view>{{ '微信支付' }}</view>
|
<view>{{ '微信支付' }}</view>
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red" size="14" label="" :name="73">
|
<u-radio
|
||||||
|
activeColor="red"
|
||||||
|
size="14"
|
||||||
|
label=""
|
||||||
|
:name="PAY_TYPE.WECHAT_PAY"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<!-- 支付宝支付 -->
|
<!-- 支付宝支付 -->
|
||||||
<view class="flex_ac" v-show="this.payList.pay74">
|
<view class="flex_ac" v-show="payList[PAY_AUTH[PAY_TYPE.ALI_PAY]]">
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i3.png" alt="" />
|
<img src="@/static/images/pay_i3.png" alt="" />
|
||||||
<view>{{ '支付宝支付' }}</view>
|
<view>{{ '支付宝支付' }}</view>
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red" size="14" label="" :name="74">
|
<u-radio
|
||||||
|
activeColor="red"
|
||||||
|
size="14"
|
||||||
|
label=""
|
||||||
|
:name="PAY_TYPE.ALI_PAY"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac1" v-show="this.payList.pay15">
|
<view
|
||||||
|
class="flex_ac1"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.HUI_FU_BANK_CARD]]"
|
||||||
|
>
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/jdBank.jpg" alt="" />
|
<img src="@/static/images/jdBank.jpg" alt="" />
|
||||||
<view>{{ '汇付银行卡' }} </view>
|
<view>{{ '汇付银行卡' }} </view>
|
||||||
|
@ -246,7 +298,7 @@
|
||||||
activeColor="red"
|
activeColor="red"
|
||||||
size="14"
|
size="14"
|
||||||
label=""
|
label=""
|
||||||
:name="'hf' + index"
|
:name="PAY_TYPE.HUI_FU_BANK_CARD + index"
|
||||||
>
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
|
@ -257,17 +309,28 @@
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac" v-show="this.payList.pay32">
|
<view
|
||||||
|
class="flex_ac"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.TONG_LIAN_WECHAT]]"
|
||||||
|
>
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/pay_i2.png" alt="" />
|
<img src="@/static/images/pay_i2.png" alt="" />
|
||||||
<view>通联微信支付</view>
|
<view>通联微信支付</view>
|
||||||
</view>
|
</view>
|
||||||
<u-radio-group v-model="whatPay">
|
<u-radio-group v-model="whatPay">
|
||||||
<u-radio activeColor="red" size="14" label="" :name="32">
|
<u-radio
|
||||||
|
activeColor="red"
|
||||||
|
size="14"
|
||||||
|
label=""
|
||||||
|
:name="PAY_TYPE.TONG_LIAN_WECHAT"
|
||||||
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac1" v-show="this.payList.pay4">
|
<view
|
||||||
|
class="flex_ac1"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.JING_DONG_BANK_CARD]]"
|
||||||
|
>
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/jdBank.jpg" alt="" />
|
<img src="@/static/images/jdBank.jpg" alt="" />
|
||||||
<view>{{ '京东银行卡' }}</view>
|
<view>{{ '京东银行卡' }}</view>
|
||||||
|
@ -287,7 +350,7 @@
|
||||||
activeColor="red"
|
activeColor="red"
|
||||||
size="14"
|
size="14"
|
||||||
label=""
|
label=""
|
||||||
:name="'jd' + index"
|
:name="PAY_TYPE.JING_DONG_BANK_CARD + index"
|
||||||
>
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
|
@ -298,7 +361,28 @@
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="flex_ac1" v-show="this.payList.pay33">
|
<view
|
||||||
|
class="flex_ac"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.JING_DONG_H5]]"
|
||||||
|
>
|
||||||
|
<view class="flex_ac_i">
|
||||||
|
<img src="@/static/images/jdBank.jpg" alt="" />
|
||||||
|
<view>京东收银台</view>
|
||||||
|
</view>
|
||||||
|
<u-radio-group v-model="whatPay">
|
||||||
|
<u-radio
|
||||||
|
activeColor="red"
|
||||||
|
size="14"
|
||||||
|
label=""
|
||||||
|
:name="PAY_TYPE.JING_DONG_H5"
|
||||||
|
>
|
||||||
|
</u-radio>
|
||||||
|
</u-radio-group>
|
||||||
|
</view>
|
||||||
|
<view
|
||||||
|
class="flex_ac1"
|
||||||
|
v-show="payList[PAY_AUTH[PAY_TYPE.TONG_LIAN_BANK_CARD]]"
|
||||||
|
>
|
||||||
<view class="flex_ac_i">
|
<view class="flex_ac_i">
|
||||||
<img src="@/static/images/jdBank.jpg" alt="" />
|
<img src="@/static/images/jdBank.jpg" alt="" />
|
||||||
<view>{{ '通联银行卡' }}</view>
|
<view>{{ '通联银行卡' }}</view>
|
||||||
|
@ -318,7 +402,7 @@
|
||||||
activeColor="red"
|
activeColor="red"
|
||||||
size="14"
|
size="14"
|
||||||
label=""
|
label=""
|
||||||
:name="'tl' + index"
|
:name="PAY_TYPE.TONG_LIAN_BANK_CARD + index"
|
||||||
>
|
>
|
||||||
</u-radio>
|
</u-radio>
|
||||||
</u-radio-group>
|
</u-radio-group>
|
||||||
|
@ -332,7 +416,7 @@
|
||||||
</u-collapse-item>
|
</u-collapse-item>
|
||||||
</u-collapse>
|
</u-collapse>
|
||||||
</view>
|
</view>
|
||||||
<view class="kuang" v-if="!ifcz">
|
<view class="kuang" v-if="!isRecharge">
|
||||||
<div v-show="specialArea == REGIEST_AREA.id">
|
<div v-show="specialArea == REGIEST_AREA.id">
|
||||||
<div class="tit4">{{ '注册会员信息' }}</div>
|
<div class="tit4">{{ '注册会员信息' }}</div>
|
||||||
<div class="quan">
|
<div class="quan">
|
||||||
|
@ -539,7 +623,7 @@
|
||||||
:loading="isLoading"
|
:loading="isLoading"
|
||||||
loadingText="支付中"
|
loadingText="支付中"
|
||||||
:disabled="payBtnDisabled"
|
:disabled="payBtnDisabled"
|
||||||
@tap="quickPay(ifcz)"
|
@tap="quickPay(isRecharge)"
|
||||||
color="linear-gradient(to right, #005BAC, #005BAC )"
|
color="linear-gradient(to right, #005BAC, #005BAC )"
|
||||||
>
|
>
|
||||||
{{ '立即支付' }}
|
{{ '立即支付' }}
|
||||||
|
@ -574,7 +658,12 @@
|
||||||
</view>
|
</view>
|
||||||
</u-popup>
|
</u-popup>
|
||||||
<!-- 支付宝二维码 -->
|
<!-- 支付宝二维码 -->
|
||||||
<u-popup :show="wxPopup1" mode="center" closeable @close="closewxPopup">
|
<u-popup
|
||||||
|
:show="aliQrCodeVisible"
|
||||||
|
mode="center"
|
||||||
|
closeable
|
||||||
|
@close="closewxPopup"
|
||||||
|
>
|
||||||
<view class="t_tit">{{ '支付宝支付' }}</view>
|
<view class="t_tit">{{ '支付宝支付' }}</view>
|
||||||
<view class="pay_code">
|
<view class="pay_code">
|
||||||
<div ref="qrCodeUrlWx" id="qrCodeUrlWx" class="qrcode"></div>
|
<div ref="qrCodeUrlWx" id="qrCodeUrlWx" class="qrcode"></div>
|
||||||
|
@ -607,16 +696,25 @@ import * as api from '@/config/pay.js'
|
||||||
import QRCode from 'qrcodejs2'
|
import QRCode from 'qrcodejs2'
|
||||||
import successDialog from '@/components/successDialog.vue'
|
import successDialog from '@/components/successDialog.vue'
|
||||||
import * as act from '@/config/activity.js'
|
import * as act from '@/config/activity.js'
|
||||||
|
import QuickRechargePanel from '@/components/QuickRechargePanel.vue'
|
||||||
|
import {
|
||||||
|
PAY_TYPE,
|
||||||
|
PAY_CHANEL,
|
||||||
|
PAY_REDIRECT_URL,
|
||||||
|
PAY_AUTH,
|
||||||
|
} from '@/util/constant'
|
||||||
import {
|
import {
|
||||||
REGIEST_AREA,
|
REGIEST_AREA,
|
||||||
UPGRADE_AREA,
|
UPGRADE_AREA,
|
||||||
REPURCHASE_AREA,
|
REPURCHASE_AREA,
|
||||||
REISSUE_AREA,
|
REISSUE_AREA,
|
||||||
} from '@/util/specialAreaMap'
|
} from '@/util/specialAreaMap'
|
||||||
var payStatus
|
let payStatus
|
||||||
|
let registerFlag = null
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
successDialog,
|
successDialog,
|
||||||
|
QuickRechargePanel,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -638,6 +736,10 @@ export default {
|
||||||
userInfo: '',
|
userInfo: '',
|
||||||
activeNames: 1,
|
activeNames: 1,
|
||||||
whatPay: '',
|
whatPay: '',
|
||||||
|
PAY_TYPE,
|
||||||
|
PAY_CHANEL,
|
||||||
|
PAY_REDIRECT_URL,
|
||||||
|
PAY_AUTH,
|
||||||
hfList: [],
|
hfList: [],
|
||||||
jdList: [],
|
jdList: [],
|
||||||
tlList: [],
|
tlList: [],
|
||||||
|
@ -650,10 +752,10 @@ export default {
|
||||||
sucPay: 0,
|
sucPay: 0,
|
||||||
content: '支付成功',
|
content: '支付成功',
|
||||||
wxPopup: false,
|
wxPopup: false,
|
||||||
wxPopup1: false,
|
aliQrCodeVisible: false,
|
||||||
luckydrawData: {},
|
luckydrawData: {},
|
||||||
ifcz: false,
|
isRecharge: false,
|
||||||
czJe: '',
|
rechargeAmount: '',
|
||||||
qrcodeimg: '',
|
qrcodeimg: '',
|
||||||
onlinePay: true,
|
onlinePay: true,
|
||||||
unBindCode: '',
|
unBindCode: '',
|
||||||
|
@ -661,26 +763,45 @@ export default {
|
||||||
UPGRADE_AREA,
|
UPGRADE_AREA,
|
||||||
REPURCHASE_AREA,
|
REPURCHASE_AREA,
|
||||||
REISSUE_AREA,
|
REISSUE_AREA,
|
||||||
|
quickAmounts: [399, 1995, 3990, 10000, 30000, 50000], // 快速充值金额选项
|
||||||
|
isQuickSelected: false, // 标记是否是快速选择触发的金额变化
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
payBtnDisabled() {
|
payBtnDisabled() {
|
||||||
if (this.ifcz) {
|
if (this.isRecharge) {
|
||||||
return !Object.values(this.payList).some(val => val)
|
return !Object.values(this.payList).some(val => val)
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
onLoad(options) {
|
watch: {
|
||||||
|
rechargeAmount(newVal, oldVal) {
|
||||||
|
// 当充值金额变化时,如果不是快速选择触发的,则清空快速选择状态
|
||||||
|
if (!this.isQuickSelected && newVal && this.$refs.quickRechargePanel) {
|
||||||
|
this.$refs.quickRechargePanel.clear()
|
||||||
|
}
|
||||||
|
// 重置标志位
|
||||||
|
this.isQuickSelected = false
|
||||||
|
},
|
||||||
|
},
|
||||||
|
onUnload() {
|
||||||
|
clearInterval(payStatus)
|
||||||
|
clearInterval(this?.clockTime)
|
||||||
|
},
|
||||||
|
async onLoad(options) {
|
||||||
this.paramsPost = JSON.parse(options.paramsPost)
|
this.paramsPost = JSON.parse(options.paramsPost)
|
||||||
console.log(
|
// 获取支付配置
|
||||||
'%c [ this.paramsPost ]-734',
|
await this.getPayConfig()
|
||||||
'font-size:13px; background:#777244; color:#bbb688;',
|
clearInterval(this.clockTime)
|
||||||
this.paramsPost
|
|
||||||
)
|
|
||||||
this.pkCountry = uni.getStorageSync('pkCountry')
|
this.pkCountry = uni.getStorageSync('pkCountry')
|
||||||
if (this.paramsPost.ifcz) {
|
if (this.paramsPost.isRecharge) {
|
||||||
this.ifcz = this.paramsPost.ifcz
|
this.activeNames = '2'
|
||||||
|
const auth = Object.keys(this.payList).find(key => this.payList[key])
|
||||||
|
this.whatPay = Object.keys(this.PAY_AUTH).find(
|
||||||
|
key => this.PAY_AUTH[key] === auth
|
||||||
|
)
|
||||||
|
this.isRecharge = this.paramsPost.isRecharge
|
||||||
this.businessType = 3
|
this.businessType = 3
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: '充值',
|
title: '充值',
|
||||||
|
@ -689,7 +810,7 @@ export default {
|
||||||
uni.setNavigationBarTitle({
|
uni.setNavigationBarTitle({
|
||||||
title: '订单支付',
|
title: '订单支付',
|
||||||
})
|
})
|
||||||
this.ifcz = false
|
this.isRecharge = false
|
||||||
if (JSON.parse(options.paramsPost).orderType == 4) {
|
if (JSON.parse(options.paramsPost).orderType == 4) {
|
||||||
this.orderCode = this.paramsPost.orderCode
|
this.orderCode = this.paramsPost.orderCode
|
||||||
this.luckydrawData = this.paramsPost.luckydrawData
|
this.luckydrawData = this.paramsPost.luckydrawData
|
||||||
|
@ -718,10 +839,6 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取支付配置
|
|
||||||
this.getPayConfig()
|
|
||||||
clearInterval(this.clockTime)
|
|
||||||
},
|
},
|
||||||
|
|
||||||
onShow() {
|
onShow() {
|
||||||
|
@ -729,6 +846,10 @@ export default {
|
||||||
// this.getBankList()
|
// this.getBankList()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
onAmountSelected(data) {
|
||||||
|
this.isQuickSelected = true // 标记这是快速选择触发的
|
||||||
|
this.rechargeAmount = data.amount.toString()
|
||||||
|
},
|
||||||
toUnBind() {
|
toUnBind() {
|
||||||
api
|
api
|
||||||
.unBind({
|
.unBind({
|
||||||
|
@ -772,7 +893,7 @@ export default {
|
||||||
},
|
},
|
||||||
closewxPopup() {
|
closewxPopup() {
|
||||||
this.wxPopup = false
|
this.wxPopup = false
|
||||||
this.wxPopup1 = false
|
this.aliQrCodeVisible = false
|
||||||
this.$refs.qrCodeUrlWx.innerHTML = ''
|
this.$refs.qrCodeUrlWx.innerHTML = ''
|
||||||
clearInterval(payStatus)
|
clearInterval(payStatus)
|
||||||
},
|
},
|
||||||
|
@ -801,11 +922,11 @@ export default {
|
||||||
let url, obj
|
let url, obj
|
||||||
// 银行卡
|
// 银行卡
|
||||||
if (this.isBank) {
|
if (this.isBank) {
|
||||||
if (this.isBank == 'hf') {
|
if (this.isBank == PAY_TYPE.HUI_FU_BANK_CARD) {
|
||||||
url = api.payConfirmHf
|
url = api.payConfirmHf
|
||||||
} else if (this.isBank == 'jd') {
|
} else if (this.isBank == PAY_TYPE.JING_DONG_BANK_CARD) {
|
||||||
url = api.payConfirmJd
|
url = api.payConfirmJd
|
||||||
} else if (this.isBank == 'tl') {
|
} else if (this.isBank == PAY_TYPE.TONG_LIAN_BANK_CARD) {
|
||||||
url = api.payConfirmTl
|
url = api.payConfirmTl
|
||||||
}
|
}
|
||||||
obj = {
|
obj = {
|
||||||
|
@ -877,7 +998,7 @@ export default {
|
||||||
this.$refs.successDialog.showSuccess(res.data || this.orderData)
|
this.$refs.successDialog.showSuccess(res.data || this.orderData)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (this.ifcz) {
|
if (this.isRecharge) {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
title: '充值成功',
|
title: '充值成功',
|
||||||
icon: 'none',
|
icon: 'none',
|
||||||
|
@ -901,204 +1022,119 @@ export default {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
quickPay(cz) {
|
async quickPay(isRecharge) {
|
||||||
if (cz) {
|
if (isRecharge) {
|
||||||
if (!this.czJe || this.czJe <= 0) {
|
if (!this.rechargeAmount || this.rechargeAmount <= 0) {
|
||||||
uni.showToast({
|
uni.showToast({
|
||||||
|
icon: 'none',
|
||||||
title: '请输入正确的充值金额',
|
title: '请输入正确的充值金额',
|
||||||
})
|
})
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
if (!this.whatPay) {
|
||||||
|
uni.showToast({
|
||||||
|
icon: 'none',
|
||||||
|
title: '请选择支付方式',
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (this.activeNames == 2) {
|
if (this.activeNames == 2) {
|
||||||
// 非银行卡
|
// 非银行卡
|
||||||
if (typeof this.whatPay == 'number') {
|
if (
|
||||||
if (cz) {
|
![
|
||||||
|
PAY_TYPE.HUI_FU_BANK_CARD,
|
||||||
|
PAY_TYPE.JING_DONG_BANK_CARD,
|
||||||
|
PAY_TYPE.TONG_LIAN_BANK_CARD,
|
||||||
|
].includes(this.whatPay.slice(0, 2))
|
||||||
|
) {
|
||||||
|
if (isRecharge) {
|
||||||
//充值
|
//充值
|
||||||
api
|
api
|
||||||
.preCharge({
|
.preCharge({
|
||||||
rechargeAmount: this.czJe,
|
rechargeAmount: this.rechargeAmount,
|
||||||
})
|
})
|
||||||
.then(res => {
|
.then(res => {
|
||||||
this.paramsPost = res.data
|
this.paramsPost = res.data
|
||||||
this.orderCode = res.orderCode
|
this.orderCode = res.orderCode
|
||||||
if (this.whatPay == 11) {
|
if (this.whatPay == PAY_TYPE.JING_DONG_H5) {
|
||||||
this.scanPayBfWxJump(5)
|
this.redirectPay(PAY_CHANEL[this.whatPay])
|
||||||
} else if (this.whatPay == 12) {
|
} else if (
|
||||||
this.scanPayBfWx(5)
|
[PAY_TYPE.BAO_FU_WECHAT, PAY_TYPE.HUI_FU_WECHAT].includes(
|
||||||
} else if (this.whatPay == 13) {
|
this.whatPay
|
||||||
this.scanPayBfWx(6)
|
)
|
||||||
} else if (this.whatPay == 32) {
|
) {
|
||||||
this.scanPayTlWxJump(3)
|
this.scanPayBfWx(PAY_CHANEL[this.whatPay])
|
||||||
} else if (this.whatPay == 73) {
|
} else if (this.whatPay == PAY_TYPE.TONG_LIAN_WECHAT) {
|
||||||
this.scanPayWx(7)
|
this.weChatPay(PAY_CHANEL[this.whatPay])
|
||||||
} else if (this.whatPay == 74) {
|
|
||||||
this.scanPayAl(7)
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
if (this.whatPay == 11) {
|
if ([PAY_TYPE.JING_DONG_H5].includes(this.whatPay)) {
|
||||||
this.scanPayBfWxJump(5)
|
this.redirectPay(PAY_CHANEL[this.whatPay])
|
||||||
} else if (this.whatPay == 12) {
|
} else if (
|
||||||
this.scanPayBfWx(5)
|
[PAY_TYPE.BAO_FU_WECHAT_SCAN, PAY_TYPE.HUI_FU_WECHAT].includes(
|
||||||
} else if (this.whatPay == 13) {
|
this.whatPay
|
||||||
this.scanPayBfWx(6)
|
)
|
||||||
} else if (this.whatPay == 32) {
|
) {
|
||||||
this.scanPayTlWxJump(3)
|
this.scanPayBfWx(PAY_CHANEL[this.whatPay])
|
||||||
} else if (this.whatPay == 73) {
|
} else if (this.whatPay == PAY_TYPE.WECHAT_PAY) {
|
||||||
this.scanPayWx(7)
|
this.scanPayWx(PAY_CHANEL[this.whatPay])
|
||||||
} else if (this.whatPay == 74) {
|
} else if (this.whatPay == PAY_TYPE.ALI_PAY) {
|
||||||
this.scanPayAl(7)
|
this.scanPayAl(PAY_CHANEL[this.whatPay])
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (this.whatPay.slice(0, 2) == 'hf') {
|
const indexed = this.whatPay.slice(2, 4)
|
||||||
let indexed = this.whatPay.slice(2, 4)
|
const payTypeEnum = this.whatPay.slice(0, 2)
|
||||||
if (!cz) {
|
const bankListMap = {
|
||||||
let params = {
|
[PAY_TYPE.HUI_FU_BANK_CARD]: this.hfList[indexed].bindCode,
|
||||||
businessType: this.businessType, //订单类型
|
[PAY_TYPE.JING_DONG_BANK_CARD]: this.jdList[indexed].bindCode,
|
||||||
businessCode: this.orderCode,
|
[PAY_TYPE.TONG_LIAN_BANK_CARD]: this.tlList[indexed].bindCode,
|
||||||
payChannel: 6, //汇付
|
}
|
||||||
payType: 3, //银行卡
|
this.bindCode = bankListMap[payTypeEnum]
|
||||||
bindCode: this.hfList[indexed].bindCode,
|
const params = {
|
||||||
}
|
businessType: isRecharge ? 3 : this.businessType, //订单类型
|
||||||
api.unifiedorder(params).then(response => {
|
payChannel: PAY_CHANEL[payTypeEnum],
|
||||||
this.isBank = 'hf'
|
payType: 3, //银行卡
|
||||||
this.bindCode = this.hfList[indexed].bindCode
|
bindCode: bankListMap[payTypeEnum],
|
||||||
this.isPw = true
|
}
|
||||||
|
if (!isRecharge) {
|
||||||
|
Object.assign(params, {
|
||||||
|
businessCode: this.orderCode,
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
try {
|
||||||
|
const orderCode = await this.preCharge()
|
||||||
|
Object.assign(params, {
|
||||||
|
businessCode: orderCode,
|
||||||
})
|
})
|
||||||
this.checkPayStatus(params)
|
this.orderCode = orderCode
|
||||||
} else {
|
} catch (error) {
|
||||||
api
|
uni.showToast({
|
||||||
.preCharge({
|
title: error,
|
||||||
rechargeAmount: this.czJe,
|
icon: 'none',
|
||||||
})
|
|
||||||
.then(res => {
|
|
||||||
let params = {
|
|
||||||
businessType: 3, //订单类型充值
|
|
||||||
businessCode: res.orderCode,
|
|
||||||
payChannel: 6, //汇付
|
|
||||||
payType: 3, //银行卡
|
|
||||||
bindCode: this.hfList[indexed].bindCode,
|
|
||||||
}
|
|
||||||
api.unifiedorder(params).then(response => {
|
|
||||||
this.isBank = 'hf'
|
|
||||||
this.bindCode = this.hfList[indexed].bindCode
|
|
||||||
this.orderCode = res.orderCode
|
|
||||||
|
|
||||||
this.isPw = true
|
|
||||||
})
|
|
||||||
})
|
|
||||||
this.checkPayStatus(params)
|
|
||||||
}
|
|
||||||
} else if (this.whatPay.slice(0, 2) == 'jd') {
|
|
||||||
let indexed = this.whatPay.slice(2, 4)
|
|
||||||
if (!cz) {
|
|
||||||
let params = {
|
|
||||||
businessType: this.businessType, //订单类型
|
|
||||||
businessCode: this.orderCode,
|
|
||||||
payChannel: 4, //京东
|
|
||||||
payType: 3, //银行卡
|
|
||||||
bindCode: this.jdList[indexed].bindCode,
|
|
||||||
}
|
|
||||||
api.unifiedorder(params).then(response => {
|
|
||||||
this.isBank = 'jd'
|
|
||||||
this.bindCode = this.jdList[indexed].bindCode
|
|
||||||
this.isPw = true
|
|
||||||
})
|
})
|
||||||
this.checkPayStatus(params)
|
return
|
||||||
} else {
|
|
||||||
api
|
|
||||||
.preCharge({
|
|
||||||
rechargeAmount: this.czJe,
|
|
||||||
})
|
|
||||||
.then(res => {
|
|
||||||
let params = {
|
|
||||||
businessType: 3, //订单类型充值
|
|
||||||
businessCode: res.orderCode,
|
|
||||||
payChannel: 4, //京东
|
|
||||||
payType: 3, //银行卡
|
|
||||||
bindCode: this.jdList[indexed].bindCode,
|
|
||||||
}
|
|
||||||
api.unifiedorder(params).then(response => {
|
|
||||||
this.isBank = 'jd'
|
|
||||||
this.bindCode = this.jdList[indexed].bindCode
|
|
||||||
this.orderCode = res.orderCode
|
|
||||||
this.isPw = true
|
|
||||||
})
|
|
||||||
})
|
|
||||||
this.checkPayStatus(params)
|
|
||||||
}
|
|
||||||
} else if (this.whatPay.slice(0, 2) == 'tl') {
|
|
||||||
let indexed = this.whatPay.slice(2, 4)
|
|
||||||
if (!cz) {
|
|
||||||
let params = {
|
|
||||||
businessType: this.businessType, //订单类型
|
|
||||||
businessCode: this.orderCode,
|
|
||||||
payChannel: 3, //通联
|
|
||||||
payType: 3, //银行卡
|
|
||||||
bindCode: this.tlList[indexed].bindCode,
|
|
||||||
}
|
|
||||||
api.unifiedorder(params).then(response => {
|
|
||||||
this.isBank = 'tl'
|
|
||||||
this.bindCode = this.tlList[indexed].bindCode
|
|
||||||
this.isPw = true
|
|
||||||
})
|
|
||||||
this.checkPayStatus(params)
|
|
||||||
} else {
|
|
||||||
api
|
|
||||||
.preCharge({
|
|
||||||
rechargeAmount: this.czJe,
|
|
||||||
})
|
|
||||||
.then(res => {
|
|
||||||
let params = {
|
|
||||||
businessType: 3, //订单类型充值
|
|
||||||
businessCode: res.orderCode,
|
|
||||||
payChannel: 3, //通联
|
|
||||||
payType: 3, //银行卡
|
|
||||||
bindCode: this.tlList[indexed].bindCode,
|
|
||||||
}
|
|
||||||
api.unifiedorder(params).then(response => {
|
|
||||||
this.isBank = 'tl'
|
|
||||||
this.bindCode = this.tlList[indexed].bindCode
|
|
||||||
this.orderCode = res.orderCode
|
|
||||||
this.isPw = true
|
|
||||||
})
|
|
||||||
})
|
|
||||||
this.checkPayStatus(params)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
api.unifiedorder(params).then(response => {
|
||||||
|
this.isBank = this.whatPay.slice(0, 2)
|
||||||
|
this.isPw = true
|
||||||
|
this.checkPayStatus(params)
|
||||||
|
})
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (cz) {
|
api.generate().then(res => {
|
||||||
//充值
|
uni.setStorageSync('mToken', res.msg)
|
||||||
api
|
})
|
||||||
.preCharge({
|
this.isBank = ''
|
||||||
rechargeAmount: this.czJe,
|
this.isPw = true
|
||||||
})
|
|
||||||
.then(res => {
|
|
||||||
this.paramsPost = res.data
|
|
||||||
this.orderCode = res.orderCode
|
|
||||||
if (this.whatPay == 12) {
|
|
||||||
this.scanPayBfWx(5)
|
|
||||||
} else if (this.whatPay == 13) {
|
|
||||||
this.scanPayBfWx(6)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.isBank = ''
|
|
||||||
this.isPw = true
|
|
||||||
} else {
|
|
||||||
api.generate().then(res => {
|
|
||||||
uni.setStorageSync('mToken', res.msg)
|
|
||||||
})
|
|
||||||
this.isBank = ''
|
|
||||||
this.isPw = true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
scanPayBfWx(val) {
|
scanPayBfWx(val) {
|
||||||
let params
|
let params
|
||||||
if (this.ifcz) {
|
if (this.isRecharge) {
|
||||||
params = {
|
params = {
|
||||||
businessType: 3, //订单类型充值
|
businessType: 3, //订单类型充值
|
||||||
businessCode: this.orderCode,
|
businessCode: this.orderCode,
|
||||||
|
@ -1142,7 +1178,7 @@ export default {
|
||||||
// 微信支付
|
// 微信支付
|
||||||
scanPayWx(val) {
|
scanPayWx(val) {
|
||||||
let params
|
let params
|
||||||
if (this.ifcz) {
|
if (this.isRecharge) {
|
||||||
params = {
|
params = {
|
||||||
businessType: 3, //订单类型充值
|
businessType: 3, //订单类型充值
|
||||||
businessCode: this.orderCode,
|
businessCode: this.orderCode,
|
||||||
|
@ -1183,10 +1219,66 @@ export default {
|
||||||
})
|
})
|
||||||
this.checkPayStatus(params)
|
this.checkPayStatus(params)
|
||||||
},
|
},
|
||||||
|
getPayAuthToken(payChannel) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
const extParam = {
|
||||||
|
isRecharge: !!this.isRecharge,
|
||||||
|
orderCode: this.orderCode,
|
||||||
|
specialArea: this.specialArea,
|
||||||
|
}
|
||||||
|
// 将extParam对象转换为JSON字符串,再转换为base64编码
|
||||||
|
const extParamBase64 = btoa(JSON.stringify(extParam))
|
||||||
|
const params = {
|
||||||
|
payChannel: payChannel,
|
||||||
|
payType: 2,
|
||||||
|
appletFlag: 0,
|
||||||
|
businessType: this.isRecharge ? 3 : this.businessType,
|
||||||
|
businessCode: this.orderCode,
|
||||||
|
extParam: extParamBase64,
|
||||||
|
}
|
||||||
|
api.unifiedorder(params).then(res => {
|
||||||
|
if (res.code === 200) {
|
||||||
|
resolve(res.data)
|
||||||
|
this.checkPayStatus(params)
|
||||||
|
} else {
|
||||||
|
uni.showToast({
|
||||||
|
title: res.msg,
|
||||||
|
icon: 'none',
|
||||||
|
})
|
||||||
|
reject(res.msg)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
redirectPay(payChannel) {
|
||||||
|
this.getPayAuthToken(payChannel).then(url => {
|
||||||
|
if (navigator.userAgent.includes('MicroMessenger')) {
|
||||||
|
window.location.href = url
|
||||||
|
} else {
|
||||||
|
window.open(url)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
weChatPay(payChannel) {
|
||||||
|
this.getPayAuthToken(payChannel)
|
||||||
|
.then(res => {
|
||||||
|
const url = PAY_REDIRECT_URL + '&state=' + res + '&payment=0'
|
||||||
|
window.open(url)
|
||||||
|
})
|
||||||
|
.catch(_ => {
|
||||||
|
const url = PAY_REDIRECT_URL + '&state=' + 'eroor' + '&payment=0'
|
||||||
|
// window.open(url)
|
||||||
|
window.location.href = url
|
||||||
|
uni.showToast({
|
||||||
|
title: url,
|
||||||
|
icon: 'none',
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
// 支付宝支付
|
// 支付宝支付
|
||||||
scanPayAl(val) {
|
scanPayAl(val) {
|
||||||
let params
|
let params
|
||||||
if (this.ifcz) {
|
if (this.isRecharge) {
|
||||||
params = {
|
params = {
|
||||||
businessType: 3, //订单类型充值
|
businessType: 3, //订单类型充值
|
||||||
businessCode: this.orderCode,
|
businessCode: this.orderCode,
|
||||||
|
@ -1202,7 +1294,7 @@ export default {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
api.unifiedorder(params).then(res => {
|
api.unifiedorder(params).then(res => {
|
||||||
this.wxPopup1 = true
|
this.aliQrCodeVisible = true
|
||||||
let that = this
|
let that = this
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
new QRCode(
|
new QRCode(
|
||||||
|
@ -1230,7 +1322,7 @@ export default {
|
||||||
// 宝付微信支付
|
// 宝付微信支付
|
||||||
scanPayBfWxJump(val) {
|
scanPayBfWxJump(val) {
|
||||||
let params
|
let params
|
||||||
if (this.ifcz) {
|
if (this.isRecharge) {
|
||||||
params = {
|
params = {
|
||||||
businessType: 3, //订单类型充值
|
businessType: 3, //订单类型充值
|
||||||
businessCode: this.orderCode,
|
businessCode: this.orderCode,
|
||||||
|
@ -1261,7 +1353,7 @@ export default {
|
||||||
// 通联微信支付
|
// 通联微信支付
|
||||||
scanPayTlWxJump(val) {
|
scanPayTlWxJump(val) {
|
||||||
let params
|
let params
|
||||||
if (this.ifcz) {
|
if (this.isRecharge) {
|
||||||
params = {
|
params = {
|
||||||
businessType: 3, //订单类型充值
|
businessType: 3, //订单类型充值
|
||||||
businessCode: this.orderCode,
|
businessCode: this.orderCode,
|
||||||
|
@ -1300,8 +1392,12 @@ export default {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getPayConfig() {
|
getPayConfig() {
|
||||||
api.payConfig().then(res => {
|
return new Promise((resolve, reject) => {
|
||||||
this.payList = res.data
|
api.payConfig().then(res => {
|
||||||
|
this.payList = res.data
|
||||||
|
console.log(this.payList)
|
||||||
|
resolve(res.data)
|
||||||
|
})
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getBankList() {
|
getBankList() {
|
||||||
|
@ -1370,18 +1466,17 @@ export default {
|
||||||
if (that.sucPay == 1) {
|
if (that.sucPay == 1) {
|
||||||
// 清除定时器
|
// 清除定时器
|
||||||
clearInterval(payStatus)
|
clearInterval(payStatus)
|
||||||
if (
|
this.wxPopup = false
|
||||||
[REGIEST_AREA.id, UPGRADE_AREA.id].includes(
|
this.aliQrCodeVisible = false
|
||||||
Number(this.specialArea)
|
this.showSucce = true
|
||||||
)
|
if ([REGIEST_AREA.id].includes(Number(this.specialArea))) {
|
||||||
) {
|
registerFlag = setTimeout(() => {
|
||||||
api.registerInfo(this.orderCode).then(res => {
|
api.registerInfo(this.orderCode).then(res => {
|
||||||
this.$refs.successDialog.showSuccess(res.data)
|
if (res.data) {
|
||||||
})
|
this?.$refs?.successDialog?.showSuccess(res.data)
|
||||||
} else {
|
}
|
||||||
this.wxPopup = false
|
})
|
||||||
this.wxPopup1 = false
|
}, 3000)
|
||||||
this.showSucce = true
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
api.payStatus(data).then(res => {
|
api.payStatus(data).then(res => {
|
||||||
|
@ -1418,8 +1513,7 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
.contxt {
|
.contxt {
|
||||||
margin-top: -220rpx;
|
padding: 40rpx 26rpx 0;
|
||||||
padding: 0 26rpx;
|
|
||||||
padding-bottom: 300rpx;
|
padding-bottom: 300rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1683,4 +1777,9 @@ export default {
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
padding-bottom: 15px;
|
padding-bottom: 15px;
|
||||||
}
|
}
|
||||||
|
.recharge-input {
|
||||||
|
::v-deep .uni-input-placeholder {
|
||||||
|
font-size: 48rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -189,7 +189,7 @@
|
||||||
shape="circle"
|
shape="circle"
|
||||||
:loading="isLoading"
|
:loading="isLoading"
|
||||||
loadingText="支付中"
|
loadingText="支付中"
|
||||||
@tap="quickPay(ifcz)"
|
@tap="quickPay(isRecharge)"
|
||||||
color="linear-gradient(to right, #005BAC, #005BAC )"
|
color="linear-gradient(to right, #005BAC, #005BAC )"
|
||||||
>{{ '立即支付' }}
|
>{{ '立即支付' }}
|
||||||
</u-button>
|
</u-button>
|
||||||
|
@ -262,7 +262,7 @@ export default {
|
||||||
content: '支付成功',
|
content: '支付成功',
|
||||||
wxPopup: false,
|
wxPopup: false,
|
||||||
luckydrawData: {},
|
luckydrawData: {},
|
||||||
ifcz: false,
|
isRecharge: false,
|
||||||
czJe: '',
|
czJe: '',
|
||||||
objTree: {},
|
objTree: {},
|
||||||
account: {},
|
account: {},
|
||||||
|
@ -273,8 +273,8 @@ export default {
|
||||||
title: '订单支付',
|
title: '订单支付',
|
||||||
})
|
})
|
||||||
// this.paramsPost = JSON.parse(options.paramsPost)
|
// this.paramsPost = JSON.parse(options.paramsPost)
|
||||||
// if (this.paramsPost.ifcz) {
|
// if (this.paramsPost.isRecharge) {
|
||||||
// this.ifcz = this.paramsPost.ifcz
|
// this.isRecharge = this.paramsPost.isRecharge
|
||||||
// this.businessType = 3
|
// this.businessType = 3
|
||||||
// uni.setNavigationBarTitle({
|
// uni.setNavigationBarTitle({
|
||||||
// title: '充值'
|
// title: '充值'
|
||||||
|
@ -284,7 +284,7 @@ export default {
|
||||||
// uni.setNavigationBarTitle({
|
// uni.setNavigationBarTitle({
|
||||||
// title: '订单支付'
|
// title: '订单支付'
|
||||||
// });
|
// });
|
||||||
// this.ifcz = false
|
// this.isRecharge = false
|
||||||
// if (JSON.parse(options.paramsPost).orderType == 4) {
|
// if (JSON.parse(options.paramsPost).orderType == 4) {
|
||||||
// this.orderCode = this.paramsPost.orderCode
|
// this.orderCode = this.paramsPost.orderCode
|
||||||
// this.luckydrawData = this.paramsPost.luckydrawData
|
// this.luckydrawData = this.paramsPost.luckydrawData
|
||||||
|
@ -417,7 +417,7 @@ export default {
|
||||||
},
|
},
|
||||||
scanPayBfWx(val) {
|
scanPayBfWx(val) {
|
||||||
let params
|
let params
|
||||||
if (this.ifcz) {
|
if (this.isRecharge) {
|
||||||
params = {
|
params = {
|
||||||
businessType: 3, //订单类型充值
|
businessType: 3, //订单类型充值
|
||||||
businessCode: this.orderCode,
|
businessCode: this.orderCode,
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,41 @@
|
||||||
|
export const PAY_REDIRECT_URL =
|
||||||
|
'https://cloud1-8g5amgy6c173b906-1362517604.tcloudbaseapp.com/bd-pay-web/jump-mp.html?sign=c2d1fa4dcee3f77accfd22b480128c02&t=1749175241'
|
||||||
|
|
||||||
|
export const PAY_TYPE = {
|
||||||
|
BAO_FU_WECHAT: 'BAO_FU_WECHAT',
|
||||||
|
BAO_FU_WECHAT_SCAN: 'BAO_FU_WECHAT_SCAN',
|
||||||
|
HUI_FU_WECHAT: 'HUI_FU_WECHAT',
|
||||||
|
HUI_FU_BANK_CARD: 'hf',
|
||||||
|
WECHAT_PAY: 'WECHAT_PAY',
|
||||||
|
ALI_PAY: 'ALI_PAY',
|
||||||
|
TONG_LIAN_WECHAT: 'TONG_LIAN_WECHAT',
|
||||||
|
TONG_LIAN_BANK_CARD: 'tl',
|
||||||
|
JING_DONG_BANK_CARD: 'jd',
|
||||||
|
JING_DONG_H5: 'JING_DONG_H5',
|
||||||
|
}
|
||||||
|
|
||||||
|
export const PAY_AUTH = {
|
||||||
|
[PAY_TYPE.BAO_FU_WECHAT]: 'pay11',
|
||||||
|
[PAY_TYPE.JING_DONG_H5]: 'pay5',
|
||||||
|
[PAY_TYPE.BAO_FU_WECHAT_SCAN]: 'pay12',
|
||||||
|
[PAY_TYPE.HUI_FU_WECHAT]: 'pay13',
|
||||||
|
[PAY_TYPE.WECHAT_PAY]: 'pay73',
|
||||||
|
[PAY_TYPE.ALI_PAY]: 'pay74',
|
||||||
|
[PAY_TYPE.TONG_LIAN_WECHAT]: 'pay32',
|
||||||
|
[PAY_TYPE.HUI_FU_BANK_CARD]: 'pay15',
|
||||||
|
[PAY_TYPE.TONG_LIAN_BANK_CARD]: 'pay33',
|
||||||
|
[PAY_TYPE.JING_DONG_BANK_CARD]: 'pay4',
|
||||||
|
}
|
||||||
|
|
||||||
|
export const PAY_CHANEL = {
|
||||||
|
[PAY_TYPE.BAO_FU_WECHAT]: 5,
|
||||||
|
[PAY_TYPE.JING_DONG_H5]: 4,
|
||||||
|
[PAY_TYPE.BAO_FU_WECHAT_SCAN]: 5,
|
||||||
|
[PAY_TYPE.HUI_FU_WECHAT]: 6,
|
||||||
|
[PAY_TYPE.WECHAT_PAY]: 7,
|
||||||
|
[PAY_TYPE.ALI_PAY]: 7,
|
||||||
|
[PAY_TYPE.TONG_LIAN_WECHAT]: 3,
|
||||||
|
[PAY_TYPE.HUI_FU_BANK_CARD]: 6,
|
||||||
|
[PAY_TYPE.TONG_LIAN_BANK_CARD]: 3,
|
||||||
|
[PAY_TYPE.JING_DONG_BANK_CARD]: 4,
|
||||||
|
}
|
Loading…
Reference in New Issue