You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
huazhiyu/pages/warehouse/pay.vue

376 lines
8.5 KiB

1 year ago
<template>
<view class="page">
<view class="priceNum">
<view class="num">
<view class="flag"></view>
1 year ago
<view class="text">{{num}}</view>
1 year ago
</view>
1 year ago
<image src="../../static/image/copy.png" mode="widthFix"
v-clipboard:copy="num"
    v-clipboard:success="(type) => onCopyResult('success')"
    v-clipboard:error="(type) => onCopyResult('error')"></image>
1 year ago
</view>
<view class="tabs">
<view :class="activeIndex==item.id?'tabsItem active':'tabsItem'" @click="getPay(item)" v-for="item in list4" :key="item.id">
{{item.name}}
</view>
1 year ago
1 year ago
</view>
<view >
<view class="yhk" v-show="activeIndex==1">
<view class="list-input">
<view class="title">
<text>姓名</text>
</view>
<view class="content">
1 year ago
<text>{{yhk.bank_realname}}</text>
1 year ago
<image
v-clipboard:copy="yhk.bank_realname"
    v-clipboard:success="(type) => onCopyResult('success')"
    v-clipboard:error="(type) => onCopyResult('error')"
src="../../static/image/copy.png" mode="widthFix"></image>
1 year ago
</view>
</view>
<view class="list-input">
<view class="title">
<text>预留手机号</text>
</view>
<view class="content">
1 year ago
<text>{{yhk.bank_mobile}}</text>
1 year ago
<image
v-clipboard:copy="yhk.bank_mobile"
    v-clipboard:success="(type) => onCopyResult('success')"
    v-clipboard:error="(type) => onCopyResult('error')"
src="../../static/image/copy.png" mode="widthFix"></image>
1 year ago
</view>
</view>
<view class="list-input">
<view class="title">
<text>卡号</text>
</view>
1 year ago
<view class="content" >
<text>{{yhk.bank_no}}</text>
<image
v-clipboard:copy="yhk.bank_no"
    v-clipboard:success="(type) => onCopyResult('success')"
    v-clipboard:error="(type) => onCopyResult('error')"
src="../../static/image/copy.png" mode="widthFix"></image>
1 year ago
</view>
</view>
<view class="list-input">
<view class="title">
<text>开户行</text>
</view>
<view class="content">
1 year ago
<text>{{yhk.bank_address}}</text>
1 year ago
<image
v-clipboard:copy="yhk.bank_address"
    v-clipboard:success="(type) => onCopyResult('success')"
    v-clipboard:error="(type) => onCopyResult('error')"
src="../../static/image/copy.png" mode="widthFix"></image>
1 year ago
</view>
</view>
</view>
<view class="zfb" v-show="activeIndex==2">
1 year ago
1 year ago
<image :src="zfburl" v-if="zfburl" mode="aspectFit" @click="uploadZfb"></image>
<image src="/static/image/up_img.png" v-else mode="aspectFit" @click="uploadZfb"></image>
1 year ago
</view>
<view class="zfb" v-show="activeIndex==3">
1 year ago
1 year ago
<image :src="wxurl" mode="aspectFit" v-if="wxurl" @click="uploadwx"></image>
<image src="/static/image/up_img.png" mode="aspectFit" v-else @click="uploadwx"></image>
1 year ago
1 year ago
</view>
<!-- <view class="yhk">
<view class="list-input">
<view class="title">
<text>手机号</text>
</view>
<view class="content">
<input type="text" disabled v-model="mobileForm.simplephone" placeholder="请输入手机号">
</view>
</view>
<view class="list-input">
<view class="title">
<text>验证码</text>
</view>
<view class="content">
<input type="text" v-model="mobileForm.code" placeholder="请输入验证码">
</view>
<view class="yzmBtn" v-show="!codeSend" @click="getCode">
获取验证码
</view>
<view class="yzmBtn" v-show="codeSend">
{{timeNum}}s后重试
</view>
</view>
</view> -->
<!-- <view class="saveBtn" :style="issave?'opacity:1':'opacity:0.4'" @click="issave?submitSave():''">
{{activeIndex==1?'保存银行卡':activeIndex==2?'保存支付宝二维码':activeIndex==3?'保存微信二维码':''}}
</view> -->
<view style="color: #999;font-size: 30rpx;text-align: center;margin-top:30rpx;" @click="show=true">
请您仔细阅读并理解委托寄售服务协议
</view>
</view>
<u-popup :show="show" mode="bottom" @close="close" round="10" >
<view style="padding:24rpx;max-height:calc(60vh);overflow: auto;">
<u-parse :content="content" style="margin-top:45px;"></u-parse>
</view>
</u-popup>
<u-toast ref="uToast"></u-toast>
</view>
</template>
<script>
import {getToken} from '@/common/auth.js'
1 year ago
import {orderDetail,privacyPolicy} from '@/common/api.js'
1 year ago
export default {
data() {
return {
1 year ago
num:0,
id:null,
1 year ago
show:false,
content:'',
activeIndex:1,
list4: [{
name: '银行卡',
id:1
}, {
name: '支付宝',
id:2
}, {
name: '微信',
id:3
}],
yhk:{
bank_realname:null,
bank_mobile:null,
bank_no:null,
bank_address:null,
},
zfburl:'',
wxurl:'',
};
},
onLoad(option) {
1 year ago
this.num = option.num;
this.id = option.id;
this.getOrderDetails()
1 year ago
this.getText()
},
methods:{
1 year ago
getPay(item){
this.activeIndex = item.id;
},
1 year ago
onCopyResult(type) {
    if (type==='success') {
this.$refs.uToast.show({
message:'复制成功'
})
    } else {
this.$refs.uToast.show({
message:'复制失败'
})
    }
},
1 year ago
getOrderDetails(){
orderDetail({id:this.id,custom: { auth: true }}).then(res=>{
Object.keys(this.yhk).forEach(item=>{
this.yhk[item] = res.data.seller[item]
})
this.zfburl = res.data.seller.alipay_image
this.wxurl = res.data.seller.wechat_image
})
},
1 year ago
close() {
this.show = false
},
getText(){
privacyPolicy({id:4}).then(res=>{
this.content = res.data.content
})
},
1 year ago
1 year ago
},
destroyed() {
1 year ago
1 year ago
},
watch:{
1 year ago
1 year ago
}
}
</script>
<style scoped lang="scss">
.page{
min-height:calc(100vh - 45px);
background-color: #f5f5f5;
padding:24rpx;
.priceNum{
padding:30rpx;
justify-content: center;
width:100%;
background-color: #ffffff;
border-radius: 10rpx;
display: flex;
align-items: center;
color:$base;
margin-bottom:20rpx;
.num{
display: flex;
align-items: center;
.text{
font-size: 40rpx;
}
}
image{
margin-left:10rpx;
width:30rpx;
height:auto;
}
}
.tabs{
height: 80rpx;
background-color: rgb(35, 96, 48);
padding: 6rpx;
border-radius: 5px;
display: flex;
.tabsItem{
flex:1;
text-align: center;
line-height: 70rpx;
font-size: 26rpx;
color: #ffffff;
}
.active{
background-color: #fff;
font-size: 30rpx;
font-weight: bold;
border-radius: 5px;
color: rgb(35, 96, 48);
}
}
.yhk{
width: 100%;
background-color: #FFFFFF;
margin-top:20rpx;
border-radius: 10px;
.list-input{
display: flex;
align-items: center;
padding: 0 4%;
height: 100rpx;
border-bottom: 2rpx solid #f6f6f6;
1 year ago
1 year ago
.title{
display: flex;
align-items: center;
width: 30%;
height: 100%;
text{
color: #236030;
font-size: 26rpx;
}
}
1 year ago
image{
margin-left:10rpx;
width:30rpx;
height:auto;
}
1 year ago
.content{
display: flex;
align-items: center;
width: 70%;
height: 100%;
1 year ago
justify-content: space-between;
1 year ago
input{
width: 100%;
height: 100%;
font-size: 26rpx;
color: #222222;
}
}
}
.yzmBtn{
background: rgb(35, 96, 48);
color: rgb(255, 255, 255);
margin-bottom: 5px;
padding: 0px;
width: 126px;
overflow: hidden;
font-size: 14px;
height: 38px;
line-height: 38px;
color: #fff;
text-align: center;
border-radius:10rpx;
}
}
.saveBtn{
background: rgb(35, 96, 48);
color: rgb(255, 255, 255);
border: 1px solid rgb(35, 96, 48);
overflow: hidden;
font-size: 28rpx;
height: 44px;
line-height: 44px;
text-align: center;
border-radius: 10rpx;
margin-top:50rpx;
}
.input-info{
padding: 0 6%;
.info{
display: flex;
align-items:center;
justify-content: space-between;
width: 100%;
height: 100rpx;
border-bottom: 2rpx solid #f6f6f6;
input{
width: 70%;
height: 100%;
font-size: 26rpx;
color: #222222;
}
.more{
display: flex;
align-items: center;
justify-content: flex-end;
width: 30%;
height: 100%;
.iconfont{
font-size: 34rpx;
}
.mo{
font-size: 26rpx;
padding-left: 20rpx;
margin-left: 10rpx;
border-left: 2rpx solid #EEEEEE;
}
}
}
}
}
.zfb{
text-align: center;
image{
width:200rpx;
height:200rpx;
margin:100rpx auto;
}
.mesInfo{
margin-top: 26rpx;
font-size: 26rpx;
color: #999;
}
}
</style>