231 lines
5.6 KiB
Vue
231 lines
5.6 KiB
Vue
<template>
|
||
<view class="body">
|
||
<view class="header">
|
||
<view class="container">
|
||
<view class="icon">
|
||
<u-image height="60" width="60"
|
||
src="https://yuledui.oss-cn-qingdao.aliyuncs.com/merch_manage/img/credit_card_icon.png"></u-image>
|
||
</view>
|
||
<view class="title">
|
||
结算银行卡设置
|
||
</view>
|
||
</view>
|
||
</view>
|
||
<view class="line"></view>
|
||
|
||
<view class="content">
|
||
<u-form :model="form" :rules="rules" ref="uForm" :errorType="errorType">
|
||
<!-- <u-form-item
|
||
label-width="260"
|
||
:label-position="labelPosition"
|
||
label="自动识别银行卡号:(拍照或上传图片)"
|
||
prop="bank_name"
|
||
>
|
||
<image
|
||
class="u-avatar-demo"
|
||
@click="bankUpImg"
|
||
:src="bankImgUp"
|
||
style="width:120rpx;"
|
||
mode="widthFix"
|
||
></image>
|
||
</u-form-item> -->
|
||
<u-form-item label-width="200" :label-position="labelPosition" label="收款人姓名:" prop="bank_name">
|
||
<u-input :border="border" placeholder="请输入收款人姓名" v-model="form.bank_name" :disabled='true'></u-input>
|
||
</u-form-item>
|
||
<u-form-item label-width="200" :label-position="labelPosition" label="收款卡号:" prop="bank_no">
|
||
<u-input :border="border" placeholder="请输入收款卡号" v-model="form.bank_no" :disabled='true'></u-input>
|
||
</u-form-item>
|
||
<u-form-item label-width="200" :label-position="labelPosition" label="确认收款卡号:" prop="bank_no">
|
||
<u-input :border="border" placeholder="请再次输入收款卡号" v-model="form.bank_no2" :disabled='true'></u-input>
|
||
</u-form-item>
|
||
<u-form-item label-width="200" :label-position="labelPosition" label="银行:" prop="bank_com">
|
||
<u-input :border="border" placeholder="请输入银行" v-model="form.bank_com" :disabled='true'></u-input>
|
||
</u-form-item>
|
||
</u-form>
|
||
</view>
|
||
|
||
<!-- <view style="margin-top: 60rpx;">
|
||
<u-button
|
||
:disabled="false"
|
||
class="button"
|
||
@click="submit"
|
||
>保存设置</u-button>
|
||
</view> -->
|
||
|
||
</view>
|
||
</template>
|
||
|
||
<script>
|
||
let that = {}
|
||
export default {
|
||
data() {
|
||
return {
|
||
showInfo: false,
|
||
form: {
|
||
payType: '提现到银行',
|
||
payTypeValue: 2,
|
||
},
|
||
bankImgUp: 'http://yuledui.oss-cn-qingdao.aliyuncs.com/merch_manage/img/bank_card_setting/take_photo.png', // 银行卡照片OCR
|
||
openAutoPay: true,
|
||
border: false,
|
||
showPayType: false,
|
||
labelPosition: 'left',
|
||
errorType: ['message'],
|
||
rules: {
|
||
bank_name: [{
|
||
required: true,
|
||
message: '请输入姓名',
|
||
trigger: 'blur',
|
||
},
|
||
{
|
||
min: 3,
|
||
max: 5,
|
||
message: '姓名长度在3到5个字符',
|
||
trigger: ['change', 'blur'],
|
||
},
|
||
{
|
||
// 此为同步验证,可以直接返回true或者false,如果是异步验证,稍微不同,见下方说明
|
||
validator: (rule, value, callback) => {
|
||
return this.$u.test.chinese(value);
|
||
},
|
||
message: '姓名必须为中文',
|
||
trigger: ['change', 'blur'],
|
||
},
|
||
]
|
||
}
|
||
};
|
||
},
|
||
onLoad: function() {
|
||
that = this
|
||
// that.init();
|
||
},
|
||
methods: {
|
||
init() {
|
||
getApp().globalData.util.request({
|
||
s: 'Merch.Mershop_Bank.getBankCard',
|
||
}).then(res => {
|
||
if (res.data.ret == 200) {
|
||
that.form = res.data.data;
|
||
that.form.bank_no2 = res.data.data.bank_no
|
||
}
|
||
})
|
||
},
|
||
submit() {
|
||
if (that.form.bank_no !== that.form.bank_no2) {
|
||
uni.showModal({
|
||
title: '提示',
|
||
content: '两次输入的卡号不一致'
|
||
});
|
||
return
|
||
}
|
||
getApp().globalData.util.request({
|
||
s: 'Merch.Mershop_Bank.updateBankCard',
|
||
bank_com: that.form.bank_com,
|
||
bank_no: that.form.bank_no,
|
||
bank_name: that.form.bank_name,
|
||
}).then(res => {
|
||
uni.showModal({
|
||
title: '提示',
|
||
content: res.data.data.res_msg,
|
||
showCancel: false,
|
||
success: function(res) {
|
||
if (res.confirm) {
|
||
console.log('用户点击确定');
|
||
}
|
||
}
|
||
})
|
||
})
|
||
},
|
||
selectColor(items) {
|
||
if (items[0].value == 'no') {
|
||
that.openAutoPay = false
|
||
} else {
|
||
that.openAutoPay = true
|
||
}
|
||
},
|
||
bankUpImg() {
|
||
getApp().globalData.util.upload().then(success => {
|
||
that.bankImgUp = success
|
||
that.getBankOCR(that.bankImgUp)
|
||
})
|
||
},
|
||
// 银行卡识别OCR
|
||
getBankOCR: function(fileUrl) {
|
||
uni.showLoading({
|
||
title: '识别中'
|
||
})
|
||
uni.request({
|
||
url: 'https://yld.angyakeji.com/www/src/tools/aliyun/ocr.php',
|
||
data: {
|
||
fileUrl: fileUrl,
|
||
type: 'bankcard'
|
||
},
|
||
complete: (res) => {
|
||
uni.hideLoading()
|
||
if (res.data && res.data.Data) {
|
||
let fres = res.data.Data
|
||
that.$set(that.form, 'bank_com', fres.BankName)
|
||
that.$set(that.form, 'bank_no', fres.CardNumber)
|
||
that.$set(that.form, 'bank_no2', fres.CardNumber)
|
||
}
|
||
},
|
||
})
|
||
},
|
||
}
|
||
}
|
||
</script>
|
||
|
||
|
||
<style lang="scss" scoped>
|
||
.header {
|
||
height: 80rpx;
|
||
display: flex;
|
||
flex-direction: column;
|
||
justify-content: center;
|
||
|
||
.container {
|
||
display: flex;
|
||
flex-direction: row;
|
||
justify-content: center;
|
||
|
||
.title {
|
||
padding-left: 20rpx;
|
||
font-size: 36rpx;
|
||
font-weight: 600;
|
||
letter-spacing: 10rpx;
|
||
}
|
||
}
|
||
}
|
||
|
||
.body {
|
||
margin-top: 0rpx;
|
||
|
||
.payinfo {
|
||
width: 90%;
|
||
margin: 0 auto;
|
||
}
|
||
}
|
||
|
||
.line {
|
||
width: 100%;
|
||
height: 10rpx;
|
||
background: #f0ecec;
|
||
}
|
||
|
||
.content {
|
||
margin: 30rpx;
|
||
background: #ffffff;
|
||
box-shadow: 0px 4px 10px 0px rgba(183, 182, 182, 0.5);
|
||
border-radius: 10px;
|
||
padding-left: 30rpx;
|
||
padding-right: 30rpx;
|
||
}
|
||
|
||
.button {
|
||
width: 90%;
|
||
font-size: 40rpx;
|
||
background-color: #ed6d00;
|
||
color: #ffffff;
|
||
letter-spacing: 10rpx;
|
||
}
|
||
</style> |