123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250 |
- <!-- 提现 -->
- <template>
- <view class="user-withdraw">
- <!-- Tabs -->
- <view class="withdraw-tabs">
- <u-tabs :list="tabsList" :is-scroll="true" :current="currentTab" :bold="true" height="100"
- font-size="30rpx" active-color="#333333" inactive-color="#666666" :bar-style="styleTabsBarStyle"
- @change="changeTab" />
- </view>
- <!-- 微信钱包 -->
- <view v-if="currentValue == 3" class="withdraw-wechat m-t-20 bg-white">
- <!-- Account -->
- <u-field label-width="160" label="微信账号" v-model="form.account" placeholder="请输入微信账号" />
- <!-- Name -->
- <u-field label-width="160" label="真实姓名" v-model="form.real_name" placeholder="请输入真实姓名" />
- <!-- Remark -->
- <u-field label-width="160" label="备注" v-model="form.remark" placeholder="(选填)" />
- <!-- 上传图片 -->
- <view class="flex-col m-t-20">
- <u-upload ref="uUpload" :header="{token: $store.getters.token}" :auto-upload="true" :show-progress="false" max-count="1" width="142" height="142" :custom-btn="true" :action="action" @on-success="onSuccess" @on-remove="onRemove" >
- <view slot="addBtn" class="flex-col col-center row-center">
- <view class="upload-image flex-col col-center row-center" >
- <u-icon name="/bundle/static/icon_camera_line.png" width="54" />
- </view>
-
- <view class="xs m-t-10">微信收款码</view>
- </view>
- </u-upload>
- </view>
- </view>
- <!-- 支付宝 -->
- <view v-else-if="currentValue == 4" class="withdraw-alipay m-t-20 bg-white">
- <!-- Account -->
- <u-field label-width="160" label="支付宝账号" v-model="form.account" placeholder="请输入支付宝账号" />
- <!-- Name -->
- <u-field label-width="160" label="真实姓名" v-model="form.real_name" placeholder="请输入真实姓名" />
- <!-- Remark -->
- <u-field label-width="160" label="备注" v-model="form.remark" placeholder="(选填)" />
- <!-- 上传图片 -->
- <view class="flex-col m-t-20">
- <u-upload ref="uUpload" :header="{token: $store.getters.token}" :auto-upload="true" :show-progress="false" max-count="1" width="142" height="142" :custom-btn="true" :action="action" @on-success="onSuccess" @on-remove="onRemove" >
- <view slot="addBtn" class="flex-col col-center row-center">
- <view class="upload-image flex-col col-center row-center" >
- <u-icon name="/bundle/static/icon_camera_line.png" width="54" />
- </view>
-
- <view class="xs m-t-10">支付宝收款码</view>
- </view>
- </u-upload>
- </view>
- </view>
-
- <!-- 银行卡 -->
- <view v-else-if="currentValue == 5" class="withdraw-alipay m-t-20 bg-white">
- <!-- Account -->
- <u-field label-width="160" label="银行卡账号" v-model="form.account" placeholder="请输入银行卡账号" />
- <!-- Name -->
- <u-field label-width="160" label="持卡人姓名" v-model="form.real_name" placeholder="请输入持卡人姓名" />
- <!-- Name -->
- <u-field label-width="160" label="提现银行" v-model="form.bank" placeholder="请输入银行名称" />
- <!-- Remark -->
- <u-field label-width="160" label="银行支行" v-model="form.subbank" placeholder="如:金湾支行" />
- <!-- Remark -->
- <u-field label-width="160" label="备注" v-model="form.remark" placeholder="(选填)" />
- </view>
-
- <!-- 提现金额 -->
- <view class="withdraw-money-wrap m-t-20 bg-white">
- <view class="flex withdraw-money p-b-20">
- <view class="flex flex-1">
- <text class="font-size-46 m-r-10 normal">¥</text>
- <u-input v-model="form.money" placeholder="0.00" :custom-style="{
- 'font-size': '66rpx'
- }" />
- </view>
- <view class="flex-col flex-1 text-right">
- <text class="xs primary" @tap="form.money=widthDrawConfig.able_withdraw">全部提现</text>
- <text class="xs muted m-t-10">可提现金额 ¥ {{widthDrawConfig.able_withdraw}}</text>
- </view>
- </view>
- <view class="muted xs m-t-30" v-if="widthDrawConfig.poundage_percent && currentValue != 1">提示:提现需扣除服务费{{widthDrawConfig.poundage_percent}}%</view>
- </view>
- <!-- 确认提交 -->
- <button class="withdraw-submit m-t-30 white br60" @tap="onSubmit" size="lg">确认提交</button>
- <!-- 提现记录 -->
- <router-link to="/bundle/pages/user_withdraw_code/user_withdraw_code">
- <view class="withdraw-log m-t-40 text-center muted">提现记录</view>
- </router-link>
- </view>
- </template>
- <script>
- import {
- applyWithdraw,
- getWithdrawConfig
- } from "@/api/user";
- import {
- trottle
- } from "@/utils/tools";
- import {
- baseURL
- } from '@/config/app';
- export default {
- data() {
- return {
- action: baseURL + '/api/file/formimage',
- currentTab: 0, // Tabs当前位置
- // Tabs 列表
- tabsList: [],
- // Tabs滑块样式
- styleTabsBarStyle: {
- bottom: '12rpx',
- width: '50rpx',
- height: '6rpx',
- background: 'green',
- borderRadius: '50px',
- backgroundImage: 'linear-gradient(to right, \#F79C0C, \#FF2C3C)'
- },
- // 表单数据
- form: {
- money: '', // 提现金额
- account: '', // 账户名称
- real_name: '', // 真实姓名
- money_qr_code: '', // 收款二维码
- bank: '', // 银行
- subbank: '', // 支行
- remark: '', // 备注
- },
- widthDrawConfig: {}
- }
- },
- onLoad() {
- this.getWithdrawConfigFun();
- this.onSubmit = trottle(this.onSubmit, 1000, this)
- },
- methods: {
- // 改变当前的Tabs位置
- changeTab(index) {
- this.currentTab = index;
- this.form = {
- money: '',
- account: '',
- real_name: '',
- money_qr_code: '',
- remark: '',
- bank: '',
- subbank: ''
- };
- },
- async getWithdrawConfigFun() {
- const {
- code,
- data
- } = await getWithdrawConfig()
- if (code == 1) {
- this.widthDrawConfig = data
- this.tabsList = data.type
- }
- },
- // 提交表单
- onSubmit() {
- const data = {
- ...this.form
- }
- data.type = this.currentValue
- if (!data.money) {
- this.$toast({
- title: '请输入提现金额'
- });
- return;
- }
- applyWithdraw(data).then(res => {
- if (res.code == 1) {
- this.$toast({
- title: '提交成功'
- }, {
- tab: 2,
- url: '/bundle/pages/widthdraw_result/widthdraw_result?id=' + res.data.id
- });
- }
- });
- },
- onSuccess(e) {
- console.log(e)
- this.form.money_qr_code = e.data.base_uri
- },
- onRemove(index) {
- this.form.money_qr_code = ""
- },
- },
- computed: {
- currentValue(val) {
- const {currentTab, tabsList} = this
- return tabsList[currentTab] ? tabsList[currentTab].value : ''
- }
- }
- }
- </script>
- <style lang="scss" scoped>
- .user-withdraw {
- padding: 20rpx 30rpx;
- .withdraw-tabs {
- border-radius: 10px;
- overflow: hidden;
- }
- .withdraw-money-wrap {
- padding: 50rpx 66rpx;
- border-radius: 10px;
- .withdraw-money {
- border-bottom: $-solid-border;
- }
- }
- .withdraw-wechat,
- .withdraw-alipay {
- padding: 0 36rpx 20rpx;
- border-radius: 10px;
- }
- .upload-image {
- width: 142rpx;
- height: 142rpx;
- border: 2rpx dashed #CCCCCC;
- border-radius: 5px;
- }
- .withdraw-submit {
- background: linear-gradient(11deg, #F95F2F, #FF2C3C);
- }
- ::v-deep .u-field {
- padding: 26rpx 0;
- }
- }
- </style>
|