|
@@ -76,6 +76,41 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
+ <!--大额转账弹窗 -->
|
|
|
+ <tui-modal :show="modal" :padding="'30rpx 30rpx'" @cancel="hideMobel(0)" :custom="true" fadeIn >
|
|
|
+ <view class="tui-modal-custom">
|
|
|
+ <view class="tui-prompt-title">大额银联转账信息</view>
|
|
|
+ <view class="tui-prompt-text">
|
|
|
+ <view class="tui-prompt-tips">请使用银行手机app或者网银输入以下信息进行转账。每次发起支付请求,收款账号都会变化,请使用最新的收款账号进行转账。</view>
|
|
|
+ <view class="tui-prompt-item">
|
|
|
+ <text class="text">户名:</text>
|
|
|
+ {{ bigPayInfo.receiveName }}
|
|
|
+ <view class="copy" @click.stop="copyClipboard(bigPayInfo.receiveName)"><text class="iconfont icon-fuzhi_o"></text></view>
|
|
|
+ </view>
|
|
|
+ <view class="tui-prompt-item">
|
|
|
+ <text class="text">收款账号:</text>
|
|
|
+ {{ bigPayInfo.receiveAccountNo }}
|
|
|
+ <view class="copy" @click.stop="copyClipboard(bigPayInfo.receiveAccountNo)"><text class="iconfont icon-fuzhi_o"></text></view>
|
|
|
+ </view>
|
|
|
+ <view class="tui-prompt-item">
|
|
|
+ <text class="text">银行:</text>
|
|
|
+ {{ bigPayInfo.accountName }}
|
|
|
+ </view>
|
|
|
+ <view class="tui-prompt-item">
|
|
|
+ <text class="text">收款方开户地:</text>
|
|
|
+ {{ bigPayInfo.areaInfo }}
|
|
|
+ </view>
|
|
|
+ <view class="tui-prompt-item">
|
|
|
+ <text class="text">收款网点:</text>
|
|
|
+ {{ bigPayInfo.accountName }}
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <view class="tui-prompt-flex">
|
|
|
+ <view class="btn btn-confirm" @click="handleClick">已完成转账,请点击</view>
|
|
|
+ <view class="btn btn-cancel" @click="hideMobel">关闭</view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ </tui-modal>
|
|
|
</view>
|
|
|
</template>
|
|
|
|
|
@@ -113,7 +148,10 @@
|
|
|
btnColor:'#09BB07',
|
|
|
discernReceipt:[],
|
|
|
showDigitKeyboard:false,
|
|
|
- payHttpUrl:''
|
|
|
+ payHttpUrl:'',
|
|
|
+ bigPayInfo:{},// 大额网银转账
|
|
|
+ mbOrderId:0, // 支付记录订单Id
|
|
|
+ modal:false,
|
|
|
}
|
|
|
},
|
|
|
onLoad(option) {
|
|
@@ -162,6 +200,11 @@
|
|
|
this.btnColor='#034582'
|
|
|
this.buttonText = '生成个人网银支付链接'
|
|
|
break
|
|
|
+ case '3':
|
|
|
+ this.payWay = 'UNIONPAY'
|
|
|
+ this.btnColor='#034582'
|
|
|
+ this.buttonText = '去转账'
|
|
|
+ break
|
|
|
}
|
|
|
this.GetPayOrderInfo()
|
|
|
},
|
|
@@ -181,18 +224,91 @@
|
|
|
},
|
|
|
buttonSubMit(){
|
|
|
switch(this.payType){
|
|
|
- case '0':
|
|
|
+ case '0':// 微信支付
|
|
|
+ // 友盟埋点收集微信支付
|
|
|
+ if(process.env.NODE_ENV != 'development'){
|
|
|
+ this.$uma.trackEvent('Um_Event_ConfirmWechatPay', {
|
|
|
+ Um_Key_PageName: '微信支付',
|
|
|
+ Um_Key_SourcePage: '线上支付',
|
|
|
+ Um_Key_PayName:`${this.buttonText}`,
|
|
|
+ Um_Key_PayOrderID:`${this.orderId}`
|
|
|
+ })
|
|
|
+ }
|
|
|
this.MiniWxPayFor()
|
|
|
break
|
|
|
- case '1':
|
|
|
+ case '1':// 企业网银
|
|
|
+ // 友盟埋点收集企业网银
|
|
|
+ if(process.env.NODE_ENV != 'development'){
|
|
|
+ this.$uma.trackEvent('Um_Event_ConfirmEbankPay', {
|
|
|
+ Um_Key_PageName: '企业网银',
|
|
|
+ Um_Key_SourcePage: '线上支付',
|
|
|
+ Um_Key_PayName:`${this.buttonText}`,
|
|
|
+ Um_Key_PayOrderID:`${this.orderId}`
|
|
|
+ })
|
|
|
+ }
|
|
|
this.BuildCatenate()
|
|
|
break
|
|
|
- case '2':
|
|
|
+ case '2':// 个人网银
|
|
|
+ // 友盟埋点收集个人网银
|
|
|
+ if(process.env.NODE_ENV != 'development'){
|
|
|
+ this.$uma.trackEvent('Um_Event_ConfirmAbankPay', {
|
|
|
+ Um_Key_PageName: '个人网银',
|
|
|
+ Um_Key_SourcePage: '线上支付',
|
|
|
+ Um_Key_PayName:`${this.buttonText}`,
|
|
|
+ Um_Key_PayOrderID:`${this.orderId}`
|
|
|
+ })
|
|
|
+ }
|
|
|
this.BuildCatenate()
|
|
|
break
|
|
|
+ case '3':// 大额支付
|
|
|
+ // 友盟埋点收集大额支付
|
|
|
+ if(process.env.NODE_ENV != 'development'){
|
|
|
+ this.$uma.trackEvent('Um_Event_ConfirmBigbankPay', {
|
|
|
+ Um_Key_PageName: '大额支付',
|
|
|
+ Um_Key_SourcePage: '线上支付',
|
|
|
+ Um_Key_PayName:`${this.buttonText}`,
|
|
|
+ Um_Key_PayOrderID:`${this.orderId}`
|
|
|
+ })
|
|
|
+ }
|
|
|
+ this.LargePayment()
|
|
|
+ break
|
|
|
}
|
|
|
},
|
|
|
- BuildCatenate(){
|
|
|
+ LargePayment(){// 大额银联
|
|
|
+ if(this.payAmount == 0){
|
|
|
+ this.$util.msg('请输入本次支付的金额',2000)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if(this.payAmount <=12){
|
|
|
+ this.$util.msg('网银支付的金额必须大于¥12.00',2000)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.PayService.PayOrderTransferUnion({payAmount:this.accMul(this.payAmount,100),orderId:this.orderId}).then(response =>{
|
|
|
+ this.bigPayInfo = JSON.parse(response.data.data.payInfo)
|
|
|
+ this.mbOrderId = response.data.data.mbOrderId
|
|
|
+ this.modal = true
|
|
|
+ console.log('PayInfo',this.bigPayInfo)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleClick(){// 查询是否支付成功
|
|
|
+ this.PayService.PayOrderFindOrderStatus({mbOrderId:this.mbOrderId}).then(response =>{
|
|
|
+ const data = response.data.data
|
|
|
+ const linkData = {
|
|
|
+ payAmount:this.payAmount,
|
|
|
+ orderId:this.orderId,
|
|
|
+ type:data.status === '1' ? 'success' : 'error'
|
|
|
+ }
|
|
|
+ if(data.status === '1'){
|
|
|
+ this.$api.navigateTo(`/pages/user/order/order-success?data=${JSON.stringify({ data: linkData })}`)
|
|
|
+ }else{
|
|
|
+ this.$api.navigateTo(`/pages/user/order/order-success-tips?data=${JSON.stringify({ data: linkData })}`)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ hideMobel(){
|
|
|
+ this.modal = false
|
|
|
+ },
|
|
|
+ BuildCatenate(){// 企业网银 个人网银
|
|
|
if(this.payAmount == 0){
|
|
|
this.$util.msg('请输入本次支付的金额',2000)
|
|
|
return
|
|
@@ -206,7 +322,7 @@
|
|
|
this.isShowTip = true
|
|
|
})
|
|
|
},
|
|
|
- MiniWxPayFor(){
|
|
|
+ MiniWxPayFor(){// 微信支付
|
|
|
authorize.getCode('weixin').then(wechatcode =>{
|
|
|
if(this.payAmount > 5000){
|
|
|
this.$util.modal('','本次支付金额已超出微信支付限额,请输入小于5千的金额进行支付','知道了','',false,() =>{})
|
|
@@ -228,15 +344,6 @@
|
|
|
orderId:this.orderId
|
|
|
}
|
|
|
this.PayService.WeChatMiniWxPay(params).then(response =>{
|
|
|
- // 友盟埋点收集微信支付
|
|
|
- if(process.env.NODE_ENV != 'development'){
|
|
|
- this.$uma.trackEvent('Um_Event_ConfirmWechatPay', {
|
|
|
- Um_Key_PageName: '微信支付',
|
|
|
- Um_Key_SourcePage: '线上支付',
|
|
|
- Um_Key_PayName:`${this.buttonText}`,
|
|
|
- Um_Key_PayOrderID:`${this.orderId}`
|
|
|
- })
|
|
|
- }
|
|
|
let PayInfo = JSON.parse(response.data.data.payInfo)
|
|
|
this.WxRequestPayment(PayInfo)
|
|
|
}).catch(error =>{
|
|
@@ -332,11 +439,22 @@
|
|
|
toFixedFn(text){//处理小数点后两位数
|
|
|
return Number(text).toFixed(2)
|
|
|
},
|
|
|
+ copyClipboard(data){
|
|
|
+ //复制账号
|
|
|
+ thorui.getClipboardData(data, (res) => {
|
|
|
+ if (res) {
|
|
|
+ this.$util.msg('已复制',2000)
|
|
|
+ } else {
|
|
|
+ this.$util.msg('复制失败',2000)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
clipboard(data) {//复制链接
|
|
|
+ console.log('data',data)
|
|
|
thorui.getClipboardData(data, (res) => {
|
|
|
if (res) {
|
|
|
this.isShowTip = false
|
|
|
- this.$util.msg('复制成功',2000,true,'success')
|
|
|
+ this.$util.msg('已复制',2000)
|
|
|
// 友盟埋点收集复制网银链接
|
|
|
if(process.env.NODE_ENV != 'development'){
|
|
|
this.$uma.trackEvent('Um_Event_CopyUnionPay', {
|
|
@@ -347,7 +465,7 @@
|
|
|
})
|
|
|
}
|
|
|
} else {
|
|
|
- this.$util.msg('复制失败',2000,true,'none')
|
|
|
+ this.$util.msg('复制失败',2000)
|
|
|
}
|
|
|
})
|
|
|
},
|
|
@@ -651,4 +769,70 @@
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ .tui-prompt-title{
|
|
|
+ width: 100%;
|
|
|
+ height: 44rpx;
|
|
|
+ line-height: 44rpx;
|
|
|
+ padding: 20rpx 0;
|
|
|
+ text-align: center;
|
|
|
+ color: #333333;
|
|
|
+ border-bottom: 1px solid #E2E7EF;
|
|
|
+ }
|
|
|
+ .tui-prompt-text{
|
|
|
+ padding-top: 20rpx;
|
|
|
+ .tui-prompt-tips{
|
|
|
+ width: 100%;
|
|
|
+ line-height: 36rpx;
|
|
|
+ font-size: $font-size-22;
|
|
|
+ color: #E15616;
|
|
|
+ text-align: justify;
|
|
|
+ margin-bottom: 24rpx;
|
|
|
+ }
|
|
|
+ .tui-prompt-item{
|
|
|
+ width: 100%;
|
|
|
+ line-height: 60rpx;
|
|
|
+ color: #333333;
|
|
|
+ font-size: $font-size-26;
|
|
|
+ .text{
|
|
|
+ font-weight: bold;
|
|
|
+ }
|
|
|
+ .copy{
|
|
|
+ height: 38rpx;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding: 0 24rpx;
|
|
|
+ text-align: center;
|
|
|
+ line-height: 36rpx;
|
|
|
+ display: inline-block;
|
|
|
+ .iconfont{
|
|
|
+ font-size: $font-size-40;
|
|
|
+ color: #666666;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .tui-prompt-flex{
|
|
|
+ width: 100%;
|
|
|
+ height: auto;
|
|
|
+ margin-top: 20rpx;
|
|
|
+ box-sizing: border-box;
|
|
|
+ padding: 0 35rpx;
|
|
|
+ .btn{
|
|
|
+ width: 100%;
|
|
|
+ line-height: 84rpx;
|
|
|
+ font-size: $font-size-26;
|
|
|
+ text-align: center;
|
|
|
+ color: #FFFFFF;
|
|
|
+ border-radius: 44rpx;
|
|
|
+ margin: 20rpx 0;
|
|
|
+ &.btn-cancel{
|
|
|
+ background: #FFFFFF;
|
|
|
+ color: #333333;
|
|
|
+ border: 1px solid #979797;
|
|
|
+ }
|
|
|
+ &.btn-confirm{
|
|
|
+ background: $btn-confirm;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
</style>
|