|
@@ -1,56 +1,123 @@
|
|
|
<template>
|
|
|
<view class="content">
|
|
|
+ <view class="flex nav-list">
|
|
|
+ <view class="item" v-for="(item,index) in navList" :class="{'action': current == index}"
|
|
|
+ @click="changeNavT(index)">
|
|
|
+ {{item.tit}}
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
<view class="" style="height: 20rpx;">
|
|
|
|
|
|
</view>
|
|
|
<view class="tab">
|
|
|
- <view class="bd-wrap flex">
|
|
|
- <view class="bg-name">
|
|
|
- 真实姓名:
|
|
|
+ <template v-if="current == 0">
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 真实姓名:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入真实姓名" class="val-ipt" v-model="bankInfo.fullname"
|
|
|
+ ref="name" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- <view class="bg-val">
|
|
|
- <input type="text" value="" placeholder="请输入真实姓名" class="val-ipt" v-model="bankInfo.fullname" ref="name" />
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 手机号:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入手机号" class="val-ipt" v-model="bankInfo.phone"
|
|
|
+ ref="phone" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- </view>
|
|
|
- <view class="bd-wrap flex">
|
|
|
- <view class="bg-name">
|
|
|
- 手机号:
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 银行卡号:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入银行卡号" class="val-ipt" v-model="bankInfo.bankno"
|
|
|
+ ref="address" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- <view class="bg-val">
|
|
|
- <input type="text" value="" placeholder="请输入手机号" class="val-ipt" v-model="bankInfo.phone" ref="phone" />
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 开户行:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入开户行" class="val-ipt" v-model="bankInfo.bank"
|
|
|
+ ref="storenamae" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- </view>
|
|
|
- <view class="bd-wrap flex">
|
|
|
- <view class="bg-name">
|
|
|
- 银行卡号:
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 所属支行:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入所属支行" class="val-ipt" v-model="bankInfo.subbranch"
|
|
|
+ ref="storenamae" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- <view class="bg-val">
|
|
|
- <input type="text" value="" placeholder="请输入银行卡号" class="val-ipt" v-model="bankInfo.bankno"
|
|
|
- ref="address" />
|
|
|
+ </template>
|
|
|
+ <template v-if="current == 1">
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 真实姓名:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入真实姓名" class="val-ipt" v-model="aliInfo.fullname"
|
|
|
+ ref="name" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- </view>
|
|
|
- <view class="bd-wrap flex">
|
|
|
- <view class="bg-name">
|
|
|
- 开户行:
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 支付宝账号:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入支付宝账号" class="val-ipt" v-model="aliInfo.alino"
|
|
|
+ ref="name" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- <view class="bg-val">
|
|
|
- <input type="text" value="" placeholder="请输入开户行" class="val-ipt" v-model="bankInfo.bank"
|
|
|
- ref="storenamae" />
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 收款码:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <image v-if="!aliInfo.qr" src="../../static/img/add.png" mode="" @click="upimg(1)"></image>
|
|
|
+ <image v-else :src="aliInfo.qr" mode="" @click="upimg(1)"></image>
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- </view>
|
|
|
- <view class="bd-wrap flex" >
|
|
|
- <view class="bg-name">
|
|
|
- 所属支行:
|
|
|
+ </template>
|
|
|
+ <template v-if="current == 2">
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 真实姓名:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入真实姓名" class="val-ipt" v-model="wxInfo.fullname"
|
|
|
+ ref="name" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- <view class="bg-val">
|
|
|
- <input type="text" value="" placeholder="请输入所属支行" class="val-ipt" v-model="bankInfo.subbranch"
|
|
|
- ref="storenamae" />
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 微信账号:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <input type="text" value="" placeholder="请输入微信账号" class="val-ipt" v-model="wxInfo.wxno"
|
|
|
+ ref="name" />
|
|
|
+ </view>
|
|
|
</view>
|
|
|
- </view>
|
|
|
-
|
|
|
+ <view class="bd-wrap flex">
|
|
|
+ <view class="bg-name">
|
|
|
+ 收款码:
|
|
|
+ </view>
|
|
|
+ <view class="bg-val">
|
|
|
+ <image v-if="!wxInfo.qr" src="../../static/img/add.png" mode="" @click="upimg(2)"></image>
|
|
|
+ <image v-else :src="wxInfo.qr" mode="" @click="upimg(2)"></image>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ </template>
|
|
|
</view>
|
|
|
<view class="btm-btn" @click="bank">
|
|
|
- 确认
|
|
|
+ {{current == 0? '保存银行卡信息': (current == 1? '保存支付宝信息': '保存微信信息')}}
|
|
|
</view>
|
|
|
</view>
|
|
|
</template>
|
|
@@ -62,18 +129,49 @@
|
|
|
import {
|
|
|
getLevelList,
|
|
|
bank,
|
|
|
- bankInfo
|
|
|
+ bankInfo,
|
|
|
+ setWx,
|
|
|
+ setAli,
|
|
|
+ getAli,
|
|
|
+ getWx
|
|
|
} from '@/api/user.js'
|
|
|
import {
|
|
|
mapState,
|
|
|
mapMutations
|
|
|
} from 'vuex';
|
|
|
+ import { upload } from '@/api/order.js';
|
|
|
export default {
|
|
|
components: {
|
|
|
pickerAddress
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
+ current: 0,
|
|
|
+ navList: [{
|
|
|
+ tit: '银行卡',
|
|
|
+ info: {},
|
|
|
+ }, {
|
|
|
+ tit: '支付宝',
|
|
|
+ info: {}
|
|
|
+ },
|
|
|
+ {
|
|
|
+ tit: '微信',
|
|
|
+ info: {}
|
|
|
+ }
|
|
|
+ ],
|
|
|
+ type: 1,
|
|
|
+ aliInfo: {
|
|
|
+ fultname: '',
|
|
|
+ alino: '',
|
|
|
+ qr: '',
|
|
|
+ id: 0
|
|
|
+ },
|
|
|
+ wxInfo: {
|
|
|
+ fultname: '',
|
|
|
+ wxno: '',
|
|
|
+ qr: '',
|
|
|
+ id: 0
|
|
|
+ },
|
|
|
bankInfo: {
|
|
|
fullname: '',
|
|
|
phone: '',
|
|
@@ -85,6 +183,12 @@
|
|
|
};
|
|
|
},
|
|
|
onLoad(opt) {
|
|
|
+
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ current(n, o) {
|
|
|
+
|
|
|
+ }
|
|
|
},
|
|
|
onShow() {
|
|
|
this.getbankInfo()
|
|
@@ -96,14 +200,42 @@
|
|
|
...mapState('user', ['userInfo'])
|
|
|
},
|
|
|
methods: {
|
|
|
+ upimg(type) {
|
|
|
+ let that = this
|
|
|
+ upload({
|
|
|
+ file: ''
|
|
|
+ })
|
|
|
+ .then(e => {
|
|
|
+ console.log(e,'e')
|
|
|
+ if(type == 1) {
|
|
|
+ that.aliInfo.qr = e[0].url
|
|
|
+ }else {
|
|
|
+ that.wxInfo.qr = e[0].url
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch(e => {});
|
|
|
+ },
|
|
|
+ changeNavT(index) {
|
|
|
+ if (index == this.current) {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ this.current = index
|
|
|
+ },
|
|
|
getbankInfo() {
|
|
|
bankInfo().then(res => {
|
|
|
console.log(res);
|
|
|
- if(res.data && res.data.id) {
|
|
|
+ if (res.data && res.data.id) {
|
|
|
this.bankInfo = res.data
|
|
|
- uni.setNavigationBarTitle({
|
|
|
- title:'修改银行卡信息'
|
|
|
- })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ getAli().then(res => {
|
|
|
+ if (res.data && res.data.id) {
|
|
|
+ this.aliInfo = res.data
|
|
|
+ }
|
|
|
+ })
|
|
|
+ getWx().then(res => {
|
|
|
+ if (res.data && res.data.id) {
|
|
|
+ this.wxInfo = res.data
|
|
|
}
|
|
|
})
|
|
|
},
|
|
@@ -119,39 +251,68 @@
|
|
|
},
|
|
|
bank() {
|
|
|
let that = this
|
|
|
+ let setInfo,qdata;
|
|
|
if (that.loading) {
|
|
|
return
|
|
|
}
|
|
|
- if (that.bankInfo.fullname == '') {
|
|
|
- return that.$api.msg('请输入您的姓名')
|
|
|
- }
|
|
|
- if (that.bankInfo.phone == '') {
|
|
|
- return that.$api.msg('请输入手机号')
|
|
|
- }
|
|
|
- if (that.bankInfo.bankno == '') {
|
|
|
- return that.$api.msg('请输入银行卡号')
|
|
|
- }
|
|
|
- if (that.bankInfo.bank == '') {
|
|
|
- return that.$api.msg('请输入银行')
|
|
|
- }
|
|
|
- if (that.bankInfo.subbranch == '') {
|
|
|
- return that.$api.msg('请输入所属支行')
|
|
|
+ if (that.current == 0) {
|
|
|
+ // 校验银行卡
|
|
|
+ setInfo = bank
|
|
|
+ if (that.bankInfo.fullname == '') {
|
|
|
+ return that.$api.msg('请输入您的姓名')
|
|
|
+ }
|
|
|
+ if (that.bankInfo.phone == '') {
|
|
|
+ return that.$api.msg('请输入手机号')
|
|
|
+ }
|
|
|
+ if (that.bankInfo.bankno == '') {
|
|
|
+ return that.$api.msg('请输入银行卡号')
|
|
|
+ }
|
|
|
+ if (that.bankInfo.bank == '') {
|
|
|
+ return that.$api.msg('请输入银行')
|
|
|
+ }
|
|
|
+ if (that.bankInfo.subbranch == '') {
|
|
|
+ return that.$api.msg('请输入所属支行')
|
|
|
+ }
|
|
|
+ qdata = that.bankInfo
|
|
|
+ } else if (that.current == 1) {
|
|
|
+ //校验支付宝
|
|
|
+ setInfo = setAli
|
|
|
+ if (that.aliInfo.fullname == '') {
|
|
|
+ return that.$api.msg('请输入您的姓名')
|
|
|
+ }
|
|
|
+ if (that.aliInfo.wxno == '') {
|
|
|
+ return that.$api.msg('请输入支付宝账号')
|
|
|
+ }
|
|
|
+ if (that.aliInfo.qr == '') {
|
|
|
+ return that.$api.msg('请上传支付宝收款码')
|
|
|
+ }
|
|
|
+
|
|
|
+ qdata = that.aliInfo
|
|
|
+
|
|
|
+ } else if (that.current == 2) {
|
|
|
+ //校验微信
|
|
|
+ setInfo = setWx
|
|
|
+ if (that.wxInfo.fullname == '') {
|
|
|
+ return that.$api.msg('请输入您的姓名')
|
|
|
+ }
|
|
|
+ if (that.wxInfo.wxno == '') {
|
|
|
+ return that.$api.msg('请输入微信账号')
|
|
|
+ }
|
|
|
+ if (that.wxInfo.qr == '') {
|
|
|
+ return that.$api.msg('请上传微信收款码')
|
|
|
+ }
|
|
|
+ qdata = that.wxInfo
|
|
|
}
|
|
|
+
|
|
|
that.loading = true
|
|
|
- bank(that.bankInfo).then(res => {
|
|
|
+
|
|
|
+
|
|
|
+ setInfo(qdata).then(res => {
|
|
|
console.log(res);
|
|
|
uni.showToast({
|
|
|
title: '提交成功',
|
|
|
duration: 2000
|
|
|
});
|
|
|
- setTimeout(() => {
|
|
|
- // uni.switchTab({
|
|
|
- // url: '/pages/user/user'
|
|
|
- // })
|
|
|
- uni.navigateBack()
|
|
|
- that.loading = false
|
|
|
- }, 1500)
|
|
|
-
|
|
|
}).catch(err => {
|
|
|
console.log('err');
|
|
|
that.loading = false
|
|
@@ -207,6 +368,11 @@
|
|
|
padding-left: 10rpx;
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ image {
|
|
|
+ width: 150rpx;
|
|
|
+ height: 150rpx;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -217,10 +383,27 @@
|
|
|
color: #FFFFFF;
|
|
|
text-align: center;
|
|
|
line-height: 82rpx;
|
|
|
-
|
|
|
+
|
|
|
width: 560rpx;
|
|
|
height: 80rpx;
|
|
|
background: #FA2740;
|
|
|
border-radius: 40rpx;
|
|
|
}
|
|
|
+
|
|
|
+ .nav-list {
|
|
|
+ justify-content: space-around;
|
|
|
+ background-color: #fff;
|
|
|
+ font-weight: 500;
|
|
|
+ color: #333333;
|
|
|
+
|
|
|
+ .item {
|
|
|
+ padding: 28rpx 20rpx 16rpx;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ .action {
|
|
|
+ color: #EC5A54;
|
|
|
+ border-bottom: 2px solid red;
|
|
|
+ }
|
|
|
+ }
|
|
|
</style>
|