源文件
This commit is contained in:
164
jeepay-ui-uapp-agent/pageApply/components/signing.vue
Normal file
164
jeepay-ui-uapp-agent/pageApply/components/signing.vue
Normal file
@@ -0,0 +1,164 @@
|
||||
<template>
|
||||
<!-- 自主签约 -->
|
||||
<view class="box wx-open">
|
||||
<view class="first-title">
|
||||
<text>电子合同签约</text>
|
||||
<view class="submit-btn" @tap="getSignInfo(true)">刷新</view>
|
||||
</view>
|
||||
<view class="tips">如需使用支付功能,请完成以下签约和授权</view>
|
||||
|
||||
<view class="state">
|
||||
<text>签约状态</text>
|
||||
<view>{{ vdata.bizSignInfo.state || '异常[' + vdata.bizSignInfo.errInfo + ']' }}</view>
|
||||
</view>
|
||||
|
||||
<template v-if="vdata.bizSignInfo.signUrl">
|
||||
<view class="second-title">电子合同签约地址和二维码:</view>
|
||||
<view style="margin-top: 20rpx;white-space: pre-wrap; word-wrap: break-word; color: #3981ff" @click="toContract()">
|
||||
{{ vdata.bizSignInfo.signUrl }}
|
||||
</view>
|
||||
<view style="display: flex;justify-content: center;margin-bottom: 20rpx">
|
||||
<image :src="drawQRcode(vdata.bizSignInfo.signUrl)" class="wx-img" />
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<view class="state" style="margin-top: 40rpx;">
|
||||
<text style="white-space: nowrap; margin-right: 10rpx">商户确认状态</text>
|
||||
<view>{{ vdata.wxOpenInfo.state || '异常[' + vdata.wxOpenInfo.errInfo + ']' }}</view>
|
||||
</view>
|
||||
|
||||
<template v-if="vdata.wxOpenInfo.signUrl">
|
||||
<view class="second-title">
|
||||
<text>微信开户意愿确认:</text>
|
||||
<view class="submit-btn" @tap="getWxInfo(true)">刷新</view>
|
||||
</view>
|
||||
<view style="color:#666666;font-size: 25rpx;margin-top: 20rpx">商户联系人使用已绑定银行卡的微信扫下面的二维码:</view>
|
||||
|
||||
<view style="display: flex;justify-content: center;">
|
||||
<image v-if="vdata.wxOpenInfo.imgType == 'qrContent'" :src="drawQRcode(vdata.wxOpenInfo.signUrl)" class="wx-img" />
|
||||
|
||||
<image v-else :src="'data:image/jpg;base64,' + vdata.wxOpenInfo.signUrl" mode="" class="wx-img" />
|
||||
</view>
|
||||
<view style="color:#666666;font-size: 25rpx;margin-top: 20rpx">(温馨提示:自助认证不限制谁来操作认证,但建议是商户联系人进行认证,以免后期需要扫码找不到微信认证管理员)</view>
|
||||
</template>
|
||||
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref, reactive, onMounted, inject } from 'vue'
|
||||
import JeePayForm from '@/components/applyComponents/JeePayForm.vue' // 通用左右结构布局
|
||||
import JeepayUpLoad from '@/components/JeepayUpLoad/JeepayUpLoad.vue' // 图片上传
|
||||
import qrcode from '@/util/qrcode.js'
|
||||
import { $getMchApplymentChannelSignInfo, $getMchApplymentWxOpenInfo } from '@/http/apiManager.js'
|
||||
|
||||
const channelInfo = inject('channelInfo')
|
||||
|
||||
onMounted(() => {
|
||||
if (['2', '5'].includes(channelInfo.state)) {
|
||||
getWxInfo()
|
||||
getSignInfo()
|
||||
}
|
||||
})
|
||||
|
||||
const vdata = reactive({
|
||||
bizSignInfo: {}, // 电子合同状态查询
|
||||
wxOpenInfo: {}, // 微信开户意愿信息
|
||||
isRefresh: false, // 是否点击了刷新按钮
|
||||
})
|
||||
|
||||
// 电子合同状态查询
|
||||
const getSignInfo = (flag = false) => {
|
||||
vdata.isRefresh = flag
|
||||
$getMchApplymentChannelSignInfo(channelInfo.applyId).then(({bizData}) => {
|
||||
vdata.bizSignInfo = bizData
|
||||
if (vdata.isRefresh) {
|
||||
uni.showToast({title: '已刷新', icon: 'none'})
|
||||
vdata.isRefresh = false
|
||||
}
|
||||
}).catch(err => vdata.isRefresh = false)
|
||||
}
|
||||
|
||||
// 微信开户意愿查询
|
||||
const getWxInfo = (flag = false) => {
|
||||
vdata.isRefresh = flag
|
||||
$getMchApplymentWxOpenInfo(channelInfo.applyId).then(({bizData}) => {
|
||||
vdata.wxOpenInfo = bizData
|
||||
if (vdata.isRefresh) {
|
||||
uni.showToast({title: '已刷新', icon: 'none'})
|
||||
vdata.isRefresh = false
|
||||
}
|
||||
}).catch(err => vdata.isRefresh = false)
|
||||
}
|
||||
|
||||
// 跳转至电子合同页 盛付通 富友 会用到
|
||||
const toContract = () => {
|
||||
uni.navigateTo({ url: '../../components/contract?url=' + vdata.bizSignInfo.signUrl })
|
||||
}
|
||||
|
||||
// 制作图片
|
||||
const drawQRcode = url => {
|
||||
return qrcode.drawImg(url, {
|
||||
typeNumber: 4, // 密度
|
||||
errorCorrectLevel: 'Q', // 纠错等级
|
||||
size: 175, // 白色边框
|
||||
})
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.flex {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.box {
|
||||
height: auto;
|
||||
transition: .3s;
|
||||
position: relative;
|
||||
border-radius: 20rpx;
|
||||
background: #f5f6fc;
|
||||
padding: 10rpx 40rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
// 微信签约
|
||||
.wx-open {
|
||||
margin-top: 30rpx;
|
||||
padding: 40rpx;
|
||||
.first-title {
|
||||
font-size: 28rpx;
|
||||
color: #18191d;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.tips {
|
||||
font-size: 25rpx;
|
||||
color: #7e7e80;
|
||||
margin: 20rpx 0 40rpx;
|
||||
}
|
||||
.state {
|
||||
margin-bottom: 30rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.second-title {
|
||||
font-size: 27rpx;
|
||||
color: #000;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.wx-img {
|
||||
width: 300rpx;
|
||||
height: 300rpx;
|
||||
margin: 30rpx 0 20rpx ;
|
||||
}
|
||||
}
|
||||
.submit-btn {
|
||||
border-radius: 0.3125rem;
|
||||
background: #3981FF;
|
||||
color: #fff;
|
||||
padding: 0.15625rem 0.46875rem;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user