From 58b0f1e9bd03a472321acf1dfc4e89fc4ce9df7a Mon Sep 17 00:00:00 2001
From: PC-20250623MANY\Administrator <344137771@qq.com>
Date: Mon, 29 Sep 2025 01:14:10 +0800
Subject: [PATCH] 9.28更换api
---
src/page/user/account.vue | 596 +++++++++++++++++++----------------------------------------
1 files changed, 193 insertions(+), 403 deletions(-)
diff --git a/src/page/user/account.vue b/src/page/user/account.vue
index 07c1fb0..deae51b 100644
--- a/src/page/user/account.vue
+++ b/src/page/user/account.vue
@@ -1,237 +1,115 @@
<template>
<div class="account">
- <tab-head :leftShow="false">
- <template slot="left">
- <div class="user flex-start">
- <img src="@/assets/img/img_log_home.png" alt="" />
- <div>
- <p class="real_name">{{ userInfo.realName }}</p>
- <p class="phone">ID:{{ userInfo.phone }}</p>
+ <div class="tui-userInfo flex-between">
+ <div class="userinfo-box flex-start">
+ <img src="@/assets/img/avatar_.png" alt="" />
+ <div>{{ userInfo.phone }}</div>
+ </div>
+ <div class="tui-rightsetting flex-center">
+ <img src="@/assets/img/services.png" alt="" @click="$router.push('/webview')" />
+ <img src="@/assets/img/setting.png" alt="" @click="$router.push('/setting')" />
+ </div>
+ </div>
+
+ <div class="tui-money">
+ <div class="normal flex-between">
+ <div>
+ <div class="text-xs">{{ $t("hometips") }}</div>
+ <div class="price">
+ {{ moneyData.symbol }} {{ moneyData.totalMoney }}
</div>
</div>
- </template>
- </tab-head>
-
- <div class="wallet">
- <div class="wallet_title flex-start">
- <img src="@/assets/img/钱袋.png" alt="" />
- <span>{{ $t("hj244") }}</span>
</div>
-
- <div class="wallet_price flex-between">
- <span>{{ moneyData.symbol }} {{ moneyData.totalMoney }}</span>
- <span>{{ moneyData.symbol }} {{ moneyData.availableBalance }}</span>
+ <div class="normal flex-between">
+ <div>
+ <div class="text-xs">{{ $t("每週盈利") }}</div>
+ <div class="price" style="font-size: .6rem;">
+ {{ moneyData.symbol }} {{ weeklyProfit }}
+ </div>
+ </div>
</div>
-
- <div class="wallet_price_name flex-between">
- <span>{{ $t("hometips") }}</span>
- <span>{{ $t("hj48") }}</span>
+ <div class="normal flex-between">
+ <div>
+ <div class="text-xs">{{ $t("hj48") }}</div>
+ <div class="price" style="font-size: .3rem;">
+ {{ moneyData.symbol }} {{ moneyData.availableBalance }}
+ </div>
+ </div>
</div>
+ <div class="normal flex-between">
+ <div>
+ <div class="text-xs">{{ $t("平仓盈亏") }}</div>
+ <div class="price" style="font-size: .3rem;">
+ {{ moneyData.symbol }} {{ moneyData.cumulativeProfitAndLoss }}
+ </div>
+ </div>
+ </div>
+ <!-- <div class="all-assets flex-center">
+ <div class="assets-item flex-center">
+ <div class="all-size">{{ $t("hj48") }}</div>
+ <div class="big-size">{{ moneyData.availableBalance }}</div>
+ </div>
+ <div class="assets-item flex-center" style="align-items: end;">
+ <div class="all-size">{{ $t("平仓盈亏") }}</div>
+ <div class="big-size">{{ moneyData.cumulativeProfitAndLoss }}</div>
+ </div>
+ </div> -->
+ </div>
- <div class="wallet_record flex-center" @click="toPage('/Record')">
- <span>{{ $t("账户变动记录") }}</span>
- <van-icon name="play" size=".5em" />
+ <div class="tui-spendMoney flex-between-start">
+ <div class="tui-rightItem flex-center" @click="czts">
+ <img src="@/assets/img/account_1.png" />
+ <div class="text">{{ this.$t("hj172") }}</div>
+ </div>
+ <div class="tui-rightItem flex-center" v-for="i in tabs" :key="i.name" @click="toPage(i.path)">
+ <img :src="i.img" />
+ <div class="text">{{ i.name }}</div>
</div>
</div>
- <div class="account_tabs flex-between">
- <div class="tab flex-center" @click="toPage('/recharge')">
- <img src="@/assets/img/cz.png" alt="" />
- <span>{{ $t("hj172") }}</span>
- </div>
- <div class="tab flex-center" @click="toPage('/RechargeSure')">
- <img src="@/assets/img/tx.png" alt="" />
- <span>{{ $t("subdka") }}</span>
- </div>
- <div class="tab flex-center" @click="toPage('/rechargelist')">
- <img src="@/assets/img/jl.png" alt="" />
- <span>{{ $t("jl") }}</span>
- </div>
- </div>
-
- <div class="account_loan flex-between" @click="toPage('/loan')">
- <div class="loan_left">
- <p class="loan_left_title">{{ $t("待还款金额") }}</p>
- <p>$ {{ userInfo.refundAmount || 0 }}</p>
- </div>
- <div class="flex-end loan_right">
- {{ $t("我的贷款") }}
- <van-icon name="play" style="margin-left:.5em" />
- </div>
- </div>
-
- <div class="account_card">
- <div class="held_head flex-between">
- <div class="flex-center head_left" @click="toPage('/tradeNew')">
- <span>{{ $t("hj2") }}</span>
- <img src="@/assets/img/cc_ss.png" alt="" />
- </div>
- <div class="flex-center head_right" @click="toPage('/stockRecord')">
- <span>{{ $t("hj121") }}</span>
- <img src="@/assets/img/cc_jl.png" alt="" />
- </div>
- </div>
-
- <div class="held_item flex-between">
- <div class="item_left flex-start">
- <span class="held_icon">US</span>
- <p>{{ $t("Worth") }}</p>
- </div>
- <div class="item_right flex-end">
- {{ positionData.usMarketValue }} USD
- </div>
- </div>
-
- <div class="held_item flex-between">
- <div class="item_left flex-start">
- <span class="held_icon">US</span>
- <p>{{ $t("持仓收益") }}</p>
- </div>
- <div
- class="item_right flex-end"
- :class="{
- descend: positionData.usPositionEarnings < 0,
- rise: positionData.usPositionEarnings > 0
- }"
- >
- <img
- src="@/assets/img/rise.png"
- v-if="positionData.usPositionEarnings > 0"
- />
- <img
- src="@/assets/img/descend.png"
- alt=""
- v-else-if="positionData.usPositionEarnings < 0"
- />
- {{ positionData.usPositionEarnings }}
- ({{ positionData.usPositionEarningsParent }})
- </div>
- </div>
-
- <div class="held_item flex-between">
- <div class="item_left flex-start">
- <span class="held_icon2">HK</span>
- <p>{{ $t("Worth") }}</p>
- </div>
- <div class="item_right flex-end">
- {{ positionData.hkMarketValue }} HKD
- </div>
- </div>
-
- <div class="held_item flex-between">
- <div class="item_left flex-start">
- <span class="held_icon2">HK</span>
- <p>{{ $t("持仓收益") }}</p>
- </div>
- <div
- class="item_right flex-end"
- :class="{
- descend: positionData.hkPositionEarnings < 0,
- rise: positionData.hkPositionEarnings > 0
- }"
- >
- <img
- src="@/assets/img/rise.png"
- v-if="positionData.hkPositionEarnings > 0"
- />
- <img
- src="@/assets/img/descend.png"
- alt=""
- v-else-if="positionData.hkPositionEarnings < 0"
- />
- {{ positionData.hkPositionEarnings }}
- ({{ positionData.hkPositionEarningsParent }})
- </div>
- </div>
-
- <div class="held_item flex-between">
- <div class="item_left flex-start">
- <span class="held_icon2">IN</span>
- <p>{{ $t("Worth") }}</p>
- </div>
- <div class="item_right flex-end">
- {{ positionData.inMarketValue }} INR
- </div>
- </div>
-
- <div class="held_item flex-between">
- <div class="item_left flex-start">
- <span class="held_icon2">IN</span>
- <p>{{ $t("持仓收益") }}</p>
- </div>
- <div
- class="item_right flex-end"
- :class="{
- descend: positionData.inPositionEarnings < 0,
- rise: positionData.inPositionEarnings > 0
- }"
- >
- <img
- src="@/assets/img/rise.png"
- v-if="positionData.inPositionEarnings > 0"
- />
- <img
- src="@/assets/img/descend.png"
- alt=""
- v-else-if="positionData.inPositionEarnings < 0"
- />
- {{ positionData.inPositionEarnings }}
- ({{ positionData.inPositionEarningsParent }})
- </div>
- </div>
-
- <div class="held_item flex-between">
- <div class="item_left flex-start">
- <span class="held_icon2">TW</span>
- <p>{{ $t("Worth") }}</p>
- </div>
- <div class="item_right flex-end">
- {{ positionData.twMarketValue }} TWD
- </div>
- </div>
-
- <div class="held_item flex-between">
- <div class="item_left flex-start">
- <span class="held_icon2">TW</span>
- <p>{{ $t("持仓收益") }}</p>
- </div>
- <div
- class="item_right flex-end"
- :class="{
- descend: positionData.twPositionEarnings < 0,
- rise: positionData.twPositionEarnings > 0
- }"
- >
- <img
- src="@/assets/img/rise.png"
- v-if="positionData.twPositionEarnings > 0"
- />
- <img
- src="@/assets/img/descend.png"
- alt=""
- v-else-if="positionData.twPositionEarnings < 0"
- />
- {{ positionData.twPositionEarnings }}
- ({{ positionData.twPositionEarningsParent }})
- </div>
- </div>
- </div>
+ <!-- <my-order :Operation="true"></my-order> -->
</div>
</template>
<script>
+import { Toast } from "vant";
import tabHead from "@/components/tabHead.vue";
+import myOrder from "@/page/user/myOrder.vue";
import * as api from "@/axios/api";
export default {
name: "account",
components: {
- tabHead
+ tabHead,
+ myOrder
},
data() {
return {
userInfo: {}, // 用户信息
moneyData: {}, // 账户金额
- positionData: {} // 账户持仓数据
+ positionData: {}, // 账户持仓数据
+ weeklyProfit: 0, // 每周盈利数据
+ tabs: [
+ {
+ name: this.$t("hj177"),
+ img: require("@/assets/img/account_2.png"),
+ path: "/RechargeSure"
+ },
+ {
+ name: this.$t("hj168"),
+ img: require("@/assets/img/account_3.png"),
+ path: "/rechargelist"
+ },
+ {
+ name: this.$t("hj162"),
+ img: require("@/assets/img/account_4.png"),
+ path: "/cashlist"
+ },
+ {
+ name: this.$t("hj247"),
+ img: require("@/assets/img/account_5.png"),
+ path: "/banklist"
+ }
+ ]
};
},
methods: {
@@ -240,6 +118,13 @@
let data = await api.getMoney();
if (data.status === 0) {
this.moneyData = data.data[0];
+ }
+ },
+ // 获取账户每周盈利
+ async getWeeklyProfit() {
+ let data = await api.getWeeklyProfit();
+ if (data.status === 0) {
+ this.weeklyProfit = data.data;
}
},
// 获取账户持仓数据
@@ -265,229 +150,134 @@
toPage(url) {
if (!url) return;
this.$router.push(url);
+ },
+ // 充值提示
+ czts() {
+ Toast(this.$t("充值提示"));
}
},
created() {
this.getUserInfo();
this.getMoney();
- this.getMyPositionProfitAndLose();
+ this.getWeeklyProfit();
+ // this.getMyPositionProfitAndLose();
}
};
</script>
<style lang="less" scoped>
-@purple: #3d1152;
-@green: #c4d600;
-@red: #ee0a24;
-@dark_green: #07c160;
.account {
width: 100%;
min-height: 100vh;
- background: #fff;
- font-size: 10vw;
- padding-top: 0.2em;
- padding-bottom: 1.4rem;
- .account_loan {
- height: 2em;
- background-color: #e5eff7;
- width: 100%;
- padding: 0 0.5em 0.15em;
+ padding: 0 0.475rem;
- .loan_left {
- p {
- font-size: 0.4em;
- }
- .loan_left_title {
- font-size: 0.3em;
- color: #999;
- margin-bottom: 0.75em;
- }
- }
- .loan_right {
- font-size: 0.4em;
- }
- }
+ .tui-spendMoney {
+ font-size: 0.375rem;
+ margin-top: 0.3rem;
- .account_card {
- background-color: #f5f5f5;
- border-radius: 0.25em;
- width: 9.5em;
- margin: 0.25em auto 0;
-
- .held_item {
- padding: 0.42em 0;
- margin: 0 0.25em;
-
- &:not(:last-child) {
- border-bottom: 0.01em solid #ddd;
- }
-
- .item_left {
- font-size: 0.4em;
- font-weight: 300;
- color: #777;
-
- .held_icon {
- background: @green;
- }
-
- .held_icon2 {
- background: @dark_green;
- }
-
- .held_icon,
- .held_icon2 {
- border-radius: 0 26em 26em 0;
- color: #fff;
- padding: 0.1em 0.5em 0.1em 0.4em;
- margin-right: 0.3em;
- font-size: 0.8em;
- }
- }
-
- .item_right {
- font-size: 0.48em;
-
- img {
- width: 1em;
- margin-right: 0.3em;
- }
- }
-
- .rise {
- color: @dark_green;
- }
-
- .descend {
- color: @red;
- }
- }
-
- .held_head {
- height: 1.333em;
- box-shadow: 0 0.05333rem 0.26667rem #0000000d;
- .head_left,
- .head_right {
- width: 50%;
- height: 100%;
- }
- .head_left {
- color: @green;
- position: relative;
-
- &::after {
- content: " ";
- position: absolute;
- right: 0;
- top: 0.45em;
- height: 0.5em;
- width: 0.01em;
- background-color: #ddd;
- }
- }
- .head_right {
- color: @red;
- }
- img {
- width: 0.6em;
- margin-left: 0.1em;
- }
- span {
- font-size: 0.45em;
- font-weight: 600;
- }
- }
- }
-
- .account_tabs {
- box-shadow: 0 -0.26667rem 0.53333rem #1a00394d;
- width: 100%;
- padding: 0.4em 0.25em 0.5em;
- background-color: #f1f1f1;
-
- .tab {
- width: 33.33%;
+ .tui-rightItem {
+ padding: 0.4rem 0;
+ width: 20%;
+ border-radius: 0.325rem;
flex-direction: column;
+
+ .text {
+ width: 100%;
+ font-size: 0.3rem;
+ font-weight: 500;
+ padding-top: 0.15rem;
+ text-align: center;
+ color: #b1b2b3;
+ }
+
+ img {
+ width: 0.825rem;
+ height: 0.825rem;
+ }
+ }
+ }
+
+ .tui-money {
+ margin-top: 0.65rem;
+ background: linear-gradient(90deg, #585fb4, #48529e);
+ border-radius: 0.175rem;
+
+ .all-assets {
+ width: 100%;
+ padding: 0.225rem 0 0.35rem;
+ justify-content: space-evenly;
+
+ .assets-item {
+ width: 50%;
+ flex-shrink: 0;
+ flex-direction: column;
+ align-items: start;
+ padding: 0 0.3rem;
+
+ .big-size {
+ font-size: 0.4rem;
+ color: #fff;
+ padding-top: 0.15rem;
+ }
+
+ .all-size {
+ font-size: 0.35rem;
+ color: #c4c7e4;
+ }
+ }
+ }
+
+ .normal {
+ padding: 0.375rem 0;
+ margin: 0 0.375rem;
position: relative;
- &:not(:last-child)::after {
- content: " ";
- position: absolute;
- right: 0;
- top: 0.7em;
- height: 1em;
- width: 0.01em;
- background-color: #ddd;
+ .price {
+ font-size: 0.825rem;
+ // line-height: 0.825rem;
+ font-weight: 500;
+ padding-top: 0.3rem;
+ color: #fff;
}
- span {
- font-size: 0.42em;
- }
-
- img {
- width: 1.6em;
- margin-bottom: 0.3em;
+ .text-xs {
+ font-size: 0.3rem;
+ color: #c7c9e6;
}
}
}
- .wallet {
- width: 9.5em;
- margin: 0.2em auto 0;
- padding-top: 0.25em;
- background-color: @purple;
- border-radius: 0.25em 0.25em 0 0;
- color: #fff;
- .wallet_record {
- color: @green;
- margin-top: 0.5em;
- padding: 0.5em;
- border-top: 0.01em solid rgba(#fff, 0.1);
- span {
- font-size: 0.4em;
- }
- }
- .wallet_price_name {
- padding: 0 0.25em;
- span {
- font-size: 0.3em;
- }
- }
- .wallet_price {
- color: #f7b52b;
- padding: 0 0.25em;
- margin-bottom: 0.25em;
- span {
- font-size: 0.4em;
- }
- }
+ .tui-userInfo {
+ box-sizing: border-box;
+ padding-top: 0.95rem;
+ height: 2.1rem;
- .wallet_title {
- padding: 0 0.25em;
- margin-bottom: 0.25em;
- span {
- font-size: 0.5em;
- }
+ .tui-rightsetting {
img {
- width: 0.75em;
+ display: block;
+ width: 0.675rem;
+ height: 0.675rem;
+ margin: 0 0.175rem;
}
}
- }
- .user {
- img {
- width: 1.2em;
- height: 1.2em;
- border-radius: 50%;
- margin-right: 0.25em;
- }
- .real_name {
- font-size: 0.5em;
- }
- .phone {
- font-size: 0.4em;
- color: #999;
- margin-top: 0.1em;
+ .userinfo-box {
+ font-size: 0.5rem;
+ font-weight: 700;
+ color: #fff;
+ width: 70%;
+
+ &>div {
+ word-break: break-all;
+ word-wrap: break-word;
+ white-space: normal;
+ }
+
+ img {
+ width: 1.2rem;
+ height: 1.2rem;
+ margin-right: 0.35rem;
+ }
}
}
}
--
Gitblit v1.9.3