561 lines
14 KiB
Vue
561 lines
14 KiB
Vue
<template>
|
|
<view>
|
|
<view class="d-b-c top-nav">
|
|
<!-- <view class="top-item active" @click="gotoPage('/pages/user/my-wallet/recharge')">{{$t('MN_F_T_87')}}</view> -->
|
|
<!-- <view class="top-item active" @click="onpenPopFunc">{{
|
|
$t("fn_064")
|
|
}}</view> -->
|
|
<view class="top-item active">{{ $t("MY_WAL_1") }}</view>
|
|
<view
|
|
class="top-item"
|
|
@click="gotoPage('/pages/user/my-wallet/recoilDetails')"
|
|
>{{ $t("fn_297") }}</view
|
|
>
|
|
<view
|
|
class="top-item"
|
|
@click="gotoPage('/pages/user/rechargeApplication/index')"
|
|
>{{ $t("fn_139") }}</view
|
|
>
|
|
<view
|
|
class="top-item"
|
|
@click="gotoPage('/pages/user/rechargeMatch/index')"
|
|
>{{ $t("fn_157") }}</view
|
|
>
|
|
<view
|
|
class="top-item"
|
|
@click="pageSubmit('/pages/user/my-wallet/cash-apply', 1)"
|
|
>{{ $t("MY_WAL_5") }}
|
|
</view>
|
|
<view
|
|
class="top-item"
|
|
@click="pageSubmit('/pages/user/my-wallet/transfer', 2)"
|
|
>{{ $t("MY_WAL_6") }}</view
|
|
>
|
|
</view>
|
|
<view class="wallet-list">
|
|
<!-- <scroll-view scroll-y="true" :style="'height:'+scrollviewHigh+'px'"> -->
|
|
<view class="wallet-item" v-for="(item, index) in list" :key="index">
|
|
<image
|
|
class="wallet-item-bg"
|
|
src="/static/bg/wallet-bg.png"
|
|
mode=""
|
|
></image>
|
|
<view class="pr wallet-item-box" style="z-index: 1">
|
|
<view class="wallet-item-top gray3">
|
|
<view class="d-b-c ww100 mb10">
|
|
<view class="d-s-c">
|
|
<view class="f32 fb">{{ item.pkAccountVal }}</view>
|
|
<image
|
|
@click="hideSubmit(index)"
|
|
v-if="item.open"
|
|
class="eyes-icon"
|
|
src="/static/icon/eyes-open-b.png"
|
|
mode=""
|
|
></image>
|
|
<image
|
|
@click="showSubmit(index)"
|
|
v-else
|
|
class="eyes-icon"
|
|
src="/static/icon/eyes-close-b.png"
|
|
mode=""
|
|
></image>
|
|
</view>
|
|
<view
|
|
style="color: #1d46d2"
|
|
@click="
|
|
gotoPage(
|
|
'/pages/user/my-wallet/detailed?pkAccount=' +
|
|
item.pkAccountId
|
|
)
|
|
"
|
|
v-if="!item.isShow"
|
|
>{{ $t("MY_WAL_2") }}</view
|
|
>
|
|
</view>
|
|
<view class="mb6"
|
|
>{{ $t("MN_F_T_280") }}({{ currencyIcon() }})</view
|
|
>
|
|
<view class="f32">{{
|
|
item.open ? toThousands(item.balance, 2, true) : "****"
|
|
}}</view>
|
|
</view>
|
|
<view class="wallet-item-bottom gray3">
|
|
<view class="d-b-c mb16">
|
|
<view>{{ $t("MY_WAL_8") }}({{ currencyIcon() }})</view>
|
|
<view>{{
|
|
item.open ? toThousands(item.availableBalance, 2, true) : "****"
|
|
}}</view>
|
|
</view>
|
|
<view class="d-b-c">
|
|
<view class="d-s-c">
|
|
<text class="mr20"
|
|
>{{ $t("MY_WAL_9") }}({{ currencyIcon() }})</text
|
|
>
|
|
<u-icon
|
|
name="info-circle-fill"
|
|
width="28rpx"
|
|
height="28rpx"
|
|
color="#3d3d3d"
|
|
@click="showTips(item)"
|
|
></u-icon>
|
|
</view>
|
|
<view>{{
|
|
item.open
|
|
? toThousands(item.unavailableBalance, 2, true)
|
|
: "****"
|
|
}}</view>
|
|
</view>
|
|
<view class="d-b-c mb16 mt10" v-if="item.isWithdrawal == 0">
|
|
<view>{{ $t("MY_WAL_13") }}({{ currencyIcon() }})</view>
|
|
<view>{{
|
|
item.open ? toThousands(item.withdrawBalance, 2, true) : "****"
|
|
}}</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<!-- 没有记录 -->
|
|
<view class="d-c-c p30" v-if="list.length == 0 && !loading">
|
|
<text class="iconfont icon-wushuju"></text>
|
|
<text class="cont">{{ $t("w_0405") }}</text>
|
|
</view>
|
|
<!-- <uni-load-more v-else :loadingType="loadingType"></uni-load-more> -->
|
|
<!-- </scroll-view> -->
|
|
</view>
|
|
<popInput
|
|
:title="$t('MY_WAL_21')"
|
|
type="text"
|
|
:password="true"
|
|
:placeholder="$t('PER_DA_50')"
|
|
:isShow="showPop"
|
|
@close="closeFunc"
|
|
></popInput>
|
|
<Popup :show="isPopup" :width="660" :padding="0" @hidePopup="hidePopupFunc">
|
|
<view class="d-e-c ww100">
|
|
<view class="p20" @click="hidePopupFunc(true)"
|
|
><text class="icon iconfont icon-guanbi"></text
|
|
></view>
|
|
</view>
|
|
<view class="ww100 box-s-b" style="padding: 0 60rpx 48rpx 60rpx">
|
|
<view class="goodsDiag">
|
|
<view class="goodsDiag-title d-c-c">{{ $t("fn_064") }}</view>
|
|
<view class="dis_a">
|
|
<view class="d-b-s mb20">
|
|
<view class="flex-label f28 gray3">{{ $t("CK_KS_17") }}</view>
|
|
<view class="flex-1"
|
|
><u-number-box
|
|
integer
|
|
v-model="exchangeNum"
|
|
:min="1"
|
|
></u-number-box>
|
|
</view>
|
|
</view>
|
|
<view class="d-b-s mb20">
|
|
<view class="flex-label f28 gray3"
|
|
>{{ $t("fn_020") }}({{ currencyIcon() }})</view
|
|
>
|
|
<view class="flex-1 f36 fb">{{
|
|
formatNum(redeemparams.redeemPoints * exchangeNum)
|
|
}}</view>
|
|
</view>
|
|
<view class="d-b-s mb20">
|
|
<view class="flex-label f28 gray3"
|
|
>{{ $t("fn_021") }}({{ currencyIcon() }})</view
|
|
>
|
|
<view class="flex-1 f36 fb">{{
|
|
formatNum(redeemparams.redeemIncome * exchangeNum)
|
|
}}</view>
|
|
</view>
|
|
<view class="d-b-s">
|
|
<view class="flex-label f28 gray3"
|
|
>{{ $t("w_0331") }}({{ currencyIcon() }})</view
|
|
>
|
|
<view class="flex-1">
|
|
<text class="f36 fb domation">{{
|
|
formatNum(redeemparams.payAmount * exchangeNum)
|
|
}}</text>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
<button class="s-pop-btn d-c-c" @click="gotoExcahnge">
|
|
{{ $t("MN_F_32") }}
|
|
</button>
|
|
</view>
|
|
</Popup>
|
|
</view>
|
|
</template>
|
|
|
|
<script>
|
|
import Popup from "@/components/uni-popup.vue";
|
|
import popInput from "@/components/pop-input.vue";
|
|
export default {
|
|
components: {
|
|
popInput,
|
|
Popup,
|
|
},
|
|
data() {
|
|
return {
|
|
open_xj: false,
|
|
open_jj: false,
|
|
open_xf: false,
|
|
open_jf: false,
|
|
list: [],
|
|
showPop: false,
|
|
page: "",
|
|
loading: false,
|
|
userinfo: {
|
|
pkSettleCountry: "",
|
|
},
|
|
isPopup: false,
|
|
redeemparams: {
|
|
redeemPoints: "",
|
|
redeemIncome: "",
|
|
payAmount: "",
|
|
},
|
|
exchangeNum: 1,
|
|
};
|
|
},
|
|
onShow() {
|
|
this.getData();
|
|
this.getInfo();
|
|
},
|
|
methods: {
|
|
gotoExcahnge() {
|
|
this.isPopup = false;
|
|
this.gotoPage(
|
|
"/pages/index/tree-recharge?type=1&num=" +
|
|
this.exchangeNum +
|
|
"&unitprice=" +
|
|
this.redeemparams.payAmount
|
|
);
|
|
},
|
|
onpenPopFunc(e) {
|
|
let self = this;
|
|
self._get("member/api/recharge/show-recoil", {}, function (res) {
|
|
if (res.code == 200) {
|
|
self.redeemparams = res.data;
|
|
}
|
|
});
|
|
this.isPopup = true;
|
|
},
|
|
hidePopupFunc(e) {
|
|
if (e) {
|
|
}
|
|
this.exchangeNum = 1;
|
|
this.isPopup = false;
|
|
},
|
|
getData() {
|
|
let self = this;
|
|
if (self.loading) {
|
|
return;
|
|
}
|
|
self.loading = true;
|
|
self._get(
|
|
"member/api/wallet/balance",
|
|
{},
|
|
function (res) {
|
|
self.list = res.data.memberWalletBalanceVOList;
|
|
// self.codeimg = res.img;
|
|
},
|
|
{},
|
|
() => {
|
|
self.loading = false;
|
|
}
|
|
);
|
|
},
|
|
showSubmit(e) {
|
|
let self = this;
|
|
// self.list[e].open = true;
|
|
self.$set(self.list[e], "open", true);
|
|
},
|
|
hideSubmit(e) {
|
|
let self = this;
|
|
// self.list[e].open = false;
|
|
self.$set(self.list[e], "open", false);
|
|
},
|
|
pageSubmit(e, n) {
|
|
let self = this;
|
|
// self.showPop = true;
|
|
self.page = e;
|
|
// self.showPop = false;
|
|
// self.gotoPage(self.page);
|
|
self.authData(n);
|
|
},
|
|
getInfo() {
|
|
let self = this;
|
|
self._get("member/api/member/get-info", {}, (res) => {
|
|
self.userinfo = res.data;
|
|
});
|
|
},
|
|
isWithdraw() {
|
|
let self = this;
|
|
self._get("member/api/withdraw/is-withdraw", {}, (res) => {
|
|
if (res.code == 1) {
|
|
uni.showModal({
|
|
title: self.$t("w_0034"),
|
|
content: res.msg,
|
|
});
|
|
} else {
|
|
self.gotoPage(self.page);
|
|
}
|
|
});
|
|
},
|
|
/* 营业执照 */
|
|
authData2(n) {
|
|
let self = this;
|
|
self._get(
|
|
"member/api/business/license/is-exist",
|
|
{
|
|
businessModule: n,
|
|
},
|
|
function (res) {
|
|
if (res.code == 200) {
|
|
console.log(res);
|
|
if (res.flag == "Y") {
|
|
if (n == 1) {
|
|
self.isWithdraw();
|
|
} else {
|
|
self.gotoPage(self.page);
|
|
}
|
|
} else {
|
|
uni.showModal({
|
|
title: self.$t("w_0034"),
|
|
content: self.$t("CK_KS_79"),
|
|
success(e) {
|
|
if (e.confirm) {
|
|
self.gotoPage("/pages/user/set/bind/businessLicense");
|
|
}
|
|
},
|
|
});
|
|
}
|
|
} else {
|
|
uni.showToast({
|
|
title: res.msg,
|
|
duration: 1000,
|
|
icon: "none",
|
|
});
|
|
}
|
|
}
|
|
);
|
|
},
|
|
/* 实名认证 */
|
|
authData(n) {
|
|
let self = this;
|
|
if (n == 1) {
|
|
self.isWithdraw();
|
|
} else {
|
|
self.gotoPage(self.page);
|
|
}
|
|
return;
|
|
if (!self.userinfo.pkSettleCountry) {
|
|
return;
|
|
}
|
|
if (self.userinfo.pkSettleCountry != 1) {
|
|
self.gotoPage(self.page);
|
|
return;
|
|
}
|
|
self._get(
|
|
"member/api/authentication/is-auth",
|
|
{
|
|
businessModule: n,
|
|
},
|
|
function (res) {
|
|
if (res.code == 200) {
|
|
console.log(res);
|
|
if (res.flag == "Y") {
|
|
self.authData2(n);
|
|
} else {
|
|
uni.showModal({
|
|
title: self.$t("w_0034"),
|
|
content: self.$t("MY_WAL_50"),
|
|
success(e) {
|
|
if (e.confirm) {
|
|
self.gotoPage("/pages/user/set/bind/real-name");
|
|
}
|
|
},
|
|
});
|
|
}
|
|
} else {
|
|
uni.showToast({
|
|
title: res.msg,
|
|
duration: 1000,
|
|
icon: "none",
|
|
});
|
|
}
|
|
}
|
|
);
|
|
},
|
|
closeFunc(e) {
|
|
let self = this;
|
|
// console.log(e);
|
|
if (e) {
|
|
self.passwordSubmit(e);
|
|
} else if (e != null) {
|
|
uni.showToast({
|
|
title: self.$t("PER_DA_50"),
|
|
duration: 1000,
|
|
icon: "none",
|
|
});
|
|
} else {
|
|
self.showPop = false;
|
|
}
|
|
},
|
|
passwordSubmit(e) {
|
|
let self = this;
|
|
self._post(
|
|
"userCheck/checkPwd",
|
|
{
|
|
pwd2: e,
|
|
},
|
|
function (res) {
|
|
if (res.code == 200) {
|
|
self.showPop = false;
|
|
self.gotoPage(self.page);
|
|
} else {
|
|
uni.showToast({
|
|
title: res.msg,
|
|
duration: 1000,
|
|
icon: "none",
|
|
});
|
|
}
|
|
}
|
|
);
|
|
},
|
|
showTips(e) {
|
|
uni.showToast({
|
|
title: `${this.$t("MY_WAL_10")}:${e.lockAccount} ${this.$t(
|
|
"MY_WAL_11"
|
|
)}:${e.transferAccount} ${this.$t("MY_WAL_12")}:${e.withdrawAccount}`,
|
|
icon: "none",
|
|
});
|
|
},
|
|
},
|
|
};
|
|
</script>
|
|
|
|
<style lang="scss">
|
|
.top-nav {
|
|
height: 116rpx;
|
|
background-color: #fff;
|
|
padding: 0 22rpx;
|
|
position: sticky;
|
|
/* #ifndef H5 */
|
|
top: 0;
|
|
/* #endif */
|
|
/* #ifdef H5 */
|
|
top: 44px;
|
|
/* #endif */
|
|
left: 0;
|
|
z-index: 20;
|
|
overflow-x: auto;
|
|
|
|
.top-item {
|
|
min-width: 204rpx;
|
|
white-space: nowrap;
|
|
padding: 0 40rpx;
|
|
height: 60rpx;
|
|
background: #fff;
|
|
border: 1rpx solid #999;
|
|
border-radius: 30rpx;
|
|
box-sizing: border-box;
|
|
font-size: 30rpx;
|
|
text-align: center;
|
|
line-height: 60rpx;
|
|
color: #999999;
|
|
flex-shrink: 0;
|
|
margin-right: 20rpx;
|
|
}
|
|
|
|
.top-item.active {
|
|
background: #fb3024;
|
|
border: 1rpx solid #fb3024;
|
|
color: #fff;
|
|
}
|
|
}
|
|
|
|
.wallet-list {
|
|
padding: 32rpx 0;
|
|
}
|
|
|
|
.wallet-item {
|
|
width: 704rpx;
|
|
min-height: 346rpx;
|
|
border-radius: 25rpx;
|
|
position: relative;
|
|
overflow: hidden;
|
|
margin: 0 auto;
|
|
margin-bottom: 30rpx;
|
|
|
|
.wallet-item-bg {
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
z-index: 0;
|
|
width: 704rpx;
|
|
height: 380rpx;
|
|
}
|
|
|
|
.wallet-item-box {
|
|
position: relative;
|
|
z-index: 1;
|
|
padding: 0 19rpx 0 20rpx;
|
|
|
|
.eyes-icon {
|
|
display: block;
|
|
width: 40rpx;
|
|
height: 40rpx;
|
|
margin-left: 20rpx;
|
|
}
|
|
|
|
.wallet-item-top {
|
|
height: 208rpx;
|
|
padding-top: 36rpx;
|
|
box-sizing: border-box;
|
|
border-bottom: 1rpx solid #fff;
|
|
border-color: rgba(255, 255, 255, 0.45);
|
|
}
|
|
|
|
.wallet-item-bottom {
|
|
color: #333;
|
|
padding: 30rpx 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
.flex-label {
|
|
width: 200rpx;
|
|
word-break: break-all;
|
|
margin-right: 30rpx;
|
|
}
|
|
|
|
.u-number-box {
|
|
width: 100%;
|
|
justify-content: space-between;
|
|
}
|
|
|
|
.goodsDiag {
|
|
margin-bottom: 50rpx;
|
|
}
|
|
|
|
.goodsDiag-title {
|
|
font-size: 36rpx;
|
|
font-weight: bold;
|
|
color: #333333;
|
|
margin-bottom: 60rpx;
|
|
}
|
|
|
|
.u-number-box::v-deep .u-number-box__input {
|
|
flex: 1;
|
|
}
|
|
|
|
.s-pop-btn {
|
|
width: 264rpx;
|
|
height: 76rpx;
|
|
background: #fb3024;
|
|
border-radius: 38rpx;
|
|
color: #fff;
|
|
margin: 0 auto;
|
|
}
|
|
</style>
|