<template>
|
<div>
|
<van-nav-bar :placeholder="true" :safe-area-inset-top="true" :title="$t('充值中心')" left-arrow
|
@click-left="onClickLeft">
|
<template #right>
|
<van-icon @click="$router.push('/rechargelist')" name="orders-o" size="20" />
|
</template>
|
</van-nav-bar>
|
<main>
|
<div>
|
|
|
<template>
|
|
<!-- @click="rechargeAccountShow = true" -->
|
|
<!-- close-on-click-action -->
|
<!-- @select="rechargeAccountSelect" -->
|
<div class="list_title">
|
<div class="list_top">{{$t('线上充值')}}</div>
|
<div class="list_xx">
|
<div class="list_xx_box" v-for="(item,index) in czlist" :key="index" @click="clicktype(item)">{{item}}
|
</div>
|
</div>
|
</div>
|
<div class="main-title">{{ $t("請選擇充值金額") }}</div>
|
<div class="white-input">
|
<input type="number" :value="value" @input="inputValue" />
|
<span class="myr"> {{ rechargeAccountData.symbolCode }}</span>
|
</div>
|
|
<div class="bottom-text">
|
<div class="balance" style="margin-top: 10px">
|
<div>{{ $t("最小充值金額") }}</div>
|
<div class="balance-text" style="margin-bottom: 0px">
|
<!-- {{ paymentSelectData.channelMinLimit }}
|
{{ rechargeAccountData.symbolCode }} -->
|
100000
|
</div>
|
</div>
|
<div class="division"></div>
|
|
</div>
|
<!-- :disabled="butFlg" -->
|
<div style="font-size: 12px;margin-top: 20px;color: #939298;">
|
{{$t('tips333')}}
|
</div>
|
<div style="font-size: 12px;margin-top: 10px;color: #939298;line-height: 16px;">
|
{{$t('tips111')}}
|
</div>
|
<div style="font-size: 12px;margin-top: 10px;color: #939298;line-height: 16px;">
|
{{$t('tips222')}}
|
</div>
|
<!-- <div style="display: flex;justify-content: space-between;align-items: center;margin-top: 20px;">
|
<div class="payclass" @click="paytype=1" :style="paytype==1?'border: 1px solid #185546;':'border: 1px solid #e5e8ed;'">Pay 1</div>
|
<div class="payclass" @click="paytype=2" :style="paytype==2?'border: 1px solid #185546;':'border: 1px solid #e5e8ed;'">Pay 2</div>
|
</div> -->
|
<van-button class="but" type="primary" style="margin-top: 1.04rem; margin-bottom: 1.04rem"
|
@click="selCzFns">{{ $t("hj172") }}</van-button>
|
<van-dialog v-model="dialogVisible" :title="$t('请联系客服进行充值服务')" show-cancel-button :confirm-button-text="$t('联系客服')"
|
:cancel-button-text="$t('qx')" @confirm="onConfirm" @cancel="onCancel">
|
</van-dialog>
|
</template>
|
</div>
|
</main>
|
</div>
|
</template>
|
|
<script>
|
import {
|
ActionSheet
|
} from "vant";
|
import ClipboardJS from "clipboard";
|
import apiUrl from "@/axios/api.url.js";
|
import {
|
siteGetPayInfo,
|
selCzFn,
|
thirdPartyRecharge
|
} from "../../axios/api";
|
import {
|
Notify
|
} from "vant";
|
import {
|
rechargeAccountActions
|
} from "@/utils/rechargeActions";
|
// baseURL
|
export default {
|
components: {
|
ActionSheet,
|
[Notify.Component.name]: Notify.Component
|
},
|
mounted() {
|
this.getPayInfos();
|
},
|
// getPayInfo
|
data() {
|
return {
|
dialogVisible: false,
|
loading: false,
|
butFlg: true,
|
admin: apiUrl.baseURL,
|
value: 0,
|
rechargeSelect: {},
|
paymentSelectData: {},
|
rechargeAccountData: {},
|
show: false,
|
actions: [{
|
name: this.$t("銀行卡充值"),
|
key: "YHK"
|
}],
|
paymentShow: false,
|
paymentActions: [],
|
rechargeAccountShow: false,
|
rechargeAccountActions: rechargeAccountActions,
|
showBtn: true,
|
imgStatus: false,
|
paytype: 1,
|
form: {
|
img1key: "",
|
},
|
czlist: ['500000', '1000000', '1500000', '2000000', '2500000', '3000000']
|
};
|
},
|
methods: {
|
clicktype(e) {
|
this.value = e
|
},
|
judgeValue() {
|
console.log(this.form.img1key, this.value);
|
if (this.form.img1key && this.value) {
|
this.butFlg = false;
|
} else {
|
this.butFlg = true;
|
}
|
},
|
inputValue(e) {
|
this.value = e.target.value;
|
this.judgeValue();
|
},
|
async selCzFns() {
|
// const res = await thirdPartyRecharge({
|
// tradeAmoun: this.value,
|
// type:this.paytype
|
// });
|
// console.log(res);
|
// if (res.status == 0) {
|
// window.open(res.data);
|
// }else{
|
// Notify(res.msg);
|
// }
|
// if (!this.value) {
|
// return Notify(this.$t("hj171"));
|
// }
|
// if (!this.form.img1key) {
|
// return Notify(this.$t("请上传文件"));
|
// }
|
if(this.value<100000){
|
return Notify(this.$t("最小充值金額")+100000);
|
}
|
const res = await selCzFn({
|
// payTypeId: this.paymentSelectData.id,
|
payAmt: this.value,
|
// img: this.form.img1key,
|
});
|
if (res.status === 0) {
|
// Notify({
|
// type: "success",
|
// message: this.$t("请联系客服")
|
// });
|
this.dialogVisible = !this.dialogVisible
|
// setTimeout(() => {
|
// this.$router.push("/rechargelist");
|
// }, 500);
|
}
|
// Notify("请上传文件");
|
// return Notify(this.$t("请上传文件"));
|
},
|
// 点击确认按钮时的事件
|
onConfirm() {
|
this.dialogVisible = false;
|
window.open('https://lin.ee/7I7cvGD', '_blank');
|
console.log("已确认操作");
|
},
|
// 点击取消按钮时的事件
|
onCancel() {
|
this.dialogVisible = false;
|
console.log("已取消操作");
|
},
|
async getPayInfos() {
|
const res = await siteGetPayInfo();
|
if (res.status === 0) {
|
res.data.map((item) => {
|
item.name = item.channelAccount;
|
});
|
this.paymentActions = res.data;
|
}
|
console.log(res);
|
},
|
handleAvatarSuccess(res, file) {
|
this.imgStatus = false;
|
this.form.img1key = res.data.url;
|
this.loading = false;
|
this.judgeValue();
|
},
|
beforeAvatarUpload(file) {
|
this.loading = true;
|
this.judgeValue();
|
this.imgStatus = true;
|
},
|
handleError() {
|
this.loading = false;
|
this.imgStatus = false;
|
},
|
// upload
|
async afterRead(file) {
|
let formData = new FormData();
|
formData.append("file", file.file || file.raw);
|
// console.log(formData);
|
const res = await upload({
|
file: formData
|
});
|
// console.log(res);
|
},
|
copyText(e, data) {
|
var clipboard = new ClipboardJS(".copy-button", {
|
text: () => data,
|
});
|
|
clipboard.on("success", () => {
|
clipboard.destroy();
|
});
|
|
clipboard.onClick(e);
|
},
|
onClickLeft() {
|
this.$router.push("/user");
|
},
|
select(e) {
|
this.rechargeSelect = e;
|
},
|
rechargeAccountSelect(e) {
|
this.rechargeAccountData = e;
|
},
|
paymentSelect(e) {
|
this.paymentSelectData = e;
|
this.rechargeAccountActions.map((item) => {
|
if (item.key === e.assetsType) {
|
this.rechargeAccountData = item;
|
}
|
});
|
},
|
},
|
};
|
</script>
|
|
<style lang="less" scoped>
|
/deep/.van-dialog__header--isolated{
|
padding: 0.444444rem;
|
}
|
.list_xx_box {
|
padding: 10px 20px;
|
border: 1px solid #d4d4d4;
|
border-radius: 8px;
|
font-size: 20px;
|
width: 160px;
|
text-align: center;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
margin-bottom: 10px;
|
font-weight: 500;
|
}
|
|
.list_xx {
|
display: flex;
|
flex-wrap: wrap;
|
justify-content: space-between;
|
}
|
|
.list_top {
|
font-size: 24px;
|
margin-bottom: 20px;
|
font-weight: bold;
|
}
|
|
.list_title {
|
display: flex;
|
flex-direction: column;
|
margin-top: 20px;
|
}
|
|
.payclass {
|
width: 150px;
|
height: 40px;
|
border-radius: 5px;
|
border: 1px solid #e5e8ed;
|
text-align: center;
|
line-height: 40px;
|
}
|
|
.but {
|
width: 100%;
|
color: #ffffff;
|
background-color: #185546;
|
border-radius: 8px;
|
height: 66px;
|
font-size: 22px;
|
}
|
|
.bottom-text {
|
width: 100%;
|
background-color: #fff;
|
padding: 0.26667rem 0.37333rem;
|
box-sizing: border-box;
|
margin-top: 0.26667rem;
|
|
// margin-bottom: 80px;
|
.balance {
|
display: flex;
|
justify-content: space-between;
|
color: #181818;
|
font-family: PingFang SC;
|
font-size: 0.32rem;
|
font-style: normal;
|
font-weight: 500;
|
box-sizing: border-box;
|
|
.balance-text {
|
color: #181818;
|
font-family: PingFang SC;
|
font-size: 0.32rem;
|
font-style: normal;
|
font-weight: 500;
|
line-height: 0.37333rem;
|
margin-bottom: 0.37333rem;
|
}
|
}
|
|
.division {
|
width: 100%;
|
height: 0.02667rem;
|
flex-shrink: 0;
|
background-color: #e5e8ed;
|
margin: 0.37333rem 0;
|
}
|
|
.upload-text {
|
color: #181818;
|
font-family: PingFang SC;
|
font-size: 0.32rem;
|
font-style: normal;
|
font-weight: 500;
|
}
|
}
|
|
/deep/ .van-nav-bar__content {
|
height: 65px;
|
}
|
|
/deep/ .van-nav-bar__title {
|
font-family: "DINPro";
|
width: 100%;
|
height: 1.17333rem;
|
display: flex;
|
justify-content: center;
|
align-items: center;
|
font-style: normal;
|
font-weight: 500;
|
font-size: 0.48rem;
|
color: #14181f;
|
}
|
|
/deep/ .van-cell {
|
list-style: none;
|
width: 100%;
|
margin-top: 0.26667rem;
|
background: #fff;
|
border-radius: 0.10667rem;
|
list-style: none;
|
border: none;
|
font-family: Arial, sans-serif;
|
font-style: normal;
|
font-weight: 500;
|
font-size: 0.37333rem;
|
line-height: 0.53333rem;
|
padding: 0.32rem 0.4rem;
|
box-sizing: border-box;
|
margin-top: 0.26667rem;
|
box-shadow: 0 0.16rem 0.32rem #eaeaea99;
|
}
|
|
main {
|
padding: 0 0.4rem 0.53333rem;
|
box-sizing: border-box;
|
}
|
|
.main-title {
|
font-style: normal;
|
font-weight: 400;
|
font-size: 0.37333rem;
|
color: #8c9fad;
|
margin-top: 0.53333rem;
|
}
|
|
.white-input {
|
width: 100%;
|
background: #fff;
|
border-radius: 0.10667rem;
|
list-style: none;
|
border: none;
|
font-family: Arial, sans-serif;
|
font-style: normal;
|
font-weight: 500;
|
font-size: 0.37333rem;
|
line-height: 0.53333rem;
|
padding: 0.32rem 0.4rem;
|
-webkit-box-sizing: border-box;
|
box-sizing: border-box;
|
margin-top: 0.26667rem;
|
-webkit-box-shadow: 0 0.16rem 0.32rem #eaeaea99;
|
box-shadow: 0 0.16rem 0.32rem #eaeaea99;
|
display: flex;
|
justify-content: space-between;
|
}
|
|
.fuzhi {
|
font-size: 28px;
|
cursor: pointer;
|
}
|
|
.myr {
|
color: rgb(150, 151, 153);
|
}
|
|
/deep/ .el-upload__input {
|
display: none !important;
|
}
|
|
/deep/ .avatar-uploader {
|
width: 2.740741rem;
|
height: 2.740741rem;
|
}
|
</style>
|