<template>
|
<div class="wrapper">
|
<van-nav-bar
|
:title="$t('yeb')"
|
:right-text="$t('jl')"
|
left-arrow
|
fixed
|
@click-left="handleBackClick"
|
@click-right="go_yebs"
|
/>
|
<div class="main">
|
<div class="ul" v-for="(item, i) in yebinfo" :key="i + '_' + item.id">
|
<div class="li">
|
<div class="li-left">
|
<h3>{{ item.title }}</h3>
|
<div class="li-cont">
|
<div class="li-info li-1">
|
<span class="li-label">{{ $t("周期") + ":" }}</span>
|
<span class="li-value"
|
>{{ item.returnTime }} {{ $t("天") }}</span
|
>
|
</div>
|
<div class="li-info">
|
<span class="li-label">{{ $t("ll") + ":" }}</span>
|
<span class="li-value">{{ item.returnOfRate }}%</span>
|
</div>
|
</div>
|
</div>
|
<div class="li-btn-box">
|
<div class="btn" @click="handlePurchase(i, item)">
|
{{ $t("gm") }}
|
</div>
|
</div>
|
</div>
|
</div>
|
</div>
|
<van-dialog
|
width="90%"
|
v-model="showPurchase"
|
:title="$t('yeb') + $t('gm')"
|
show-cancel-button
|
:confirmButtonText="$t('qr')"
|
:cancelButtonText="$t('qx')"
|
@confirm="tosubmit(1, form.account1)"
|
>
|
<div class="dialog-box">
|
<van-field
|
v-model="activeObj.availableBalance"
|
type="text"
|
:label="$t('ky') + $t('ye')"
|
:placeholder="$t('ky') + $t('ye')"
|
readonly
|
:border="false"
|
/>
|
<van-field
|
v-model="form.account1"
|
type="number"
|
name="amt"
|
:label="$t('gm') + $t('sl')"
|
:placeholder="$t('gm') + $t('sl')"
|
:border="false"
|
>
|
<template #button>
|
<span @click="selectAll1">{{ $t("hj160") }}</span>
|
</template>
|
</van-field>
|
</div>
|
</van-dialog>
|
</div>
|
</template>
|
|
<script>
|
import * as api from "@/axios/api";
|
import { Notify } from "vant";
|
|
export default {
|
components: {},
|
data() {
|
return {
|
selected: "1", // 选中
|
typeindex: "",
|
form: {
|
account1: "",
|
account2: "",
|
account3: "",
|
account4: "",
|
password: "",
|
},
|
userInfo: {
|
realName: "",
|
},
|
yebinfo: [],
|
showPurchase: false,
|
activeObj: {},
|
gmObj: {},
|
};
|
},
|
watch: {},
|
computed: {},
|
created() {
|
this.getProductSetting();
|
},
|
mounted() {
|
if (this.$route.query.type) {
|
this.selected = this.$route.query.type + "";
|
}
|
this.getUserInfo();
|
this.getYebInfo();
|
this.getMoneys();
|
},
|
methods: {
|
// 获取帐户资产
|
async getMoneys() {
|
const res = await api.getMoney();
|
if (res.status === 0) {
|
console.log(res.data);
|
let obj = res.data.filter((item) => item.accectType == "IN")[0];
|
obj.availableBalance = Number(obj.availableBalance).toFixed(2);
|
// console.log(Number(obj.availableBalance).toFixed(2));
|
obj.availableBalance = this.$toLocaleString(
|
obj.availableBalance,
|
false
|
);
|
this.activeObj = obj;
|
// console.log(obj, "0000000", this.tabsArr);
|
}
|
},
|
// 购买弹窗控制
|
handlePurchase(e, item) {
|
console.log(e);
|
this.typeindex = e + 1;
|
this.gmObj = item;
|
this.showPurchase = true;
|
},
|
go_yebs() {
|
this.$router.push("/yebs");
|
},
|
async getProductSetting() {
|
let data = await api.getProductSetting();
|
console.log(data);
|
if (data.status === 0) {
|
this.$store.state.settingForm = data.data;
|
if (!this.$store.state.settingForm.indexDisplay) {
|
this.selected = "3";
|
}
|
} else {
|
this.$message.error(data.msg);
|
}
|
},
|
handleBackClick() {
|
this.$router.go(-1);
|
},
|
selectAll1() {
|
// 选择全部
|
this.form.account1 = this.$store.state.userInfo.enableAmt;
|
},
|
selectAll2() {
|
// 选择全部
|
this.form.account2 = this.$store.state.userInfo.enableIndexAmt;
|
},
|
selectAll3() {
|
// 选择全部
|
this.form.account3 = this.$store.state.userInfo.enableAmt;
|
},
|
selectAll4() {
|
// 选择全部
|
this.form.account4 = this.$store.state.userInfo.enableFuturesAmt;
|
},
|
isInteger(obj) {
|
return obj % 1 === 0;
|
},
|
async tosubmit(id, money) {
|
if (!this.isInteger(money)) {
|
Notify({ type: "warning", message: this.$t("regpInt") });
|
return;
|
}
|
// 融资转指数
|
let opt = {
|
// amt: this.selected === '1' ? this.form.account1 : this.selected === '2' ? this.form.account2 : this.selected === '3' ? this.form.account3 : this.form.account4,
|
// type: this.selected // 1 融资转指数 2 指数转融资
|
eId: this.gmObj.id,
|
money: money,
|
};
|
let data1 = await api.BuyYeb(opt);
|
console.log(data1, "====");
|
if (data1.status === 0) {
|
Notify({ type: "success", message: data1.data });
|
this.$router.push("/yebs");
|
} else {
|
Notify({ type: "warning", message: data1.data });
|
}
|
},
|
async getUserInfo() {
|
// 获取用户信息
|
let data = await api.getUserInfo();
|
if (data.status === 0) {
|
this.$store.state.userInfo = data.data;
|
} else {
|
Notify({ type: "warning", message: data.data });
|
}
|
},
|
async getYebInfo() {
|
// 获取用户信息
|
let data = await api.getYebInfo();
|
|
if (data.status === 0) {
|
this.yebinfo = data.data;
|
this.$store.state.yebinfo = data.data;
|
} else {
|
Notify({ type: "warning", message: data.data });
|
}
|
},
|
},
|
};
|
</script>
|
<style lang="less" scoped>
|
/deep/ .van-nav-bar {
|
height: 64px !important;
|
background: linear-gradient(to bottom, #45acff, #287df5);
|
.van-nav-bar__content {
|
height: 64px !important;
|
}
|
.van-nav-bar__title,
|
.van-nav-bar__text {
|
color: #ffffff;
|
font-size: 24px;
|
}
|
.van-icon {
|
color: #ffffff;
|
font-size: 24px;
|
}
|
}
|
.wrapper {
|
width: 100%;
|
height: 100%;
|
background: #f1f2f6;
|
.main {
|
margin-top: 64px;
|
height: calc(100% - 84px);
|
overflow-y: auto;
|
.ul {
|
margin: 15px;
|
padding: 20px;
|
border: 1px solid #eeeeee;
|
background: #ffffff;
|
border-radius: 8px;
|
.li {
|
font-size: 18px;
|
display: flex;
|
justify-content: space-between;
|
.li-left {
|
h3 {
|
display: flex;
|
padding-bottom: 20px;
|
}
|
.li-cont {
|
display: flex;
|
.li-1 {
|
margin-right: 20px;
|
}
|
}
|
}
|
.li-btn-box {
|
display: flex;
|
align-items: center;
|
.btn {
|
color: #287df5;
|
font-size: 18px;
|
}
|
}
|
}
|
}
|
}
|
}
|
/deep/ .van-dialog__header {
|
font-size: 24px;
|
margin-bottom: 15px;
|
}
|
.dialog-box {
|
padding: 10px;
|
margin: 20px 0;
|
// background: rgb(245, 245, 245);
|
.van-field {
|
font-size: 18px;
|
color: #666666;
|
margin-top: 20px;
|
}
|
}
|
</style>
|