From 0f6b38dfdfe93a1d630d984417af2fbb03c7e0ff Mon Sep 17 00:00:00 2001
From: PC-20250623MANY\Administrator <344137771@qq.com>
Date: Mon, 15 Sep 2025 15:29:26 +0800
Subject: [PATCH] 2
---
src/page/user/myOrder.vue | 276 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 264 insertions(+), 12 deletions(-)
diff --git a/src/page/user/myOrder.vue b/src/page/user/myOrder.vue
index 1377ecb..e3bc967 100644
--- a/src/page/user/myOrder.vue
+++ b/src/page/user/myOrder.vue
@@ -1,5 +1,79 @@
<template>
<div class="my_order">
+ <tab-head :title="$t('订单')" v-if="!Operation"></tab-head>
+
+ <div v-if="!Operation" style="padding: 0 0.3rem;">
+ <div class="tui-money">
+ <div class="normal flex-center">
+ <div>
+ <div class="text-xs">
+ {{ $t("浮動盈虧") }}
+ <van-icon name="eye-o" />
+ </div>
+ <div
+ class="price"
+ :style="
+ `color:${
+ moneyData.profitAndLoss > 0
+ ? 'red'
+ : moneyData.profitAndLoss < 0
+ ? 'green'
+ : ''
+ }`
+ "
+ >
+ {{ moneyData.symbol }} {{ moneyData.profitAndLoss }}
+ </div>
+ </div>
+ </div>
+ <div class="all-assets flex-between">
+ <div class="assets-item flex-center" style="align-items: start;">
+ <div class="all-size">{{ $t("總資產") }}</div>
+ <div class="big-size">
+ {{ moneyData.symbol }}{{ moneyData.totalMoney }}
+ </div>
+ </div>
+ <div class="assets-item flex-center">
+ <div class="all-size">
+ {{ $t("hj48") }}
+ </div>
+ <div class="big-size">
+ {{ moneyData.symbol }}{{ 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.symbol }}{{ moneyData.cumulativeProfitAndLoss }}
+ </div>
+ </div>
+ </div>
+ <div class="control flex-between">
+ <div
+ class="control-item flex-center"
+ @click="$router.push('/markets-list')"
+ >
+ <img src="@/assets/img/mr.png" />
+ <div class="action-item-text">{{ $t("gm") }}</div>
+ </div>
+ <div
+ class="control-item flex-center"
+ @click="$router.push('/markets-list')"
+ >
+ <img src="@/assets/img/mc.png" />
+ <div class="action-item-text">{{ $t("hj78") }}</div>
+ </div>
+ <div
+ class="control-item flex-center"
+ @click="$router.push('/Record')"
+ >
+ <img src="@/assets/img/pc.png" />
+ <div class="action-item-text">{{ $t("jl") }}</div>
+ </div>
+ </div>
+ </div>
+ </div>
+
<van-tabs v-model="active" title-inactive-color="#898a8e">
<van-tab
:title="$t('hj2')"
@@ -28,12 +102,12 @@
{{ i.orderDirection == "买涨" ? $t("gm") : $t("hj78") }}
</div>
</div>
- <div class="moli_orderTitle">
+ <!-- <div class="moli_orderTitle">
<span>{{ $t("订单号") }}</span>
<span style="margin-left: 1em;">{{ i.buyOrderId }}</span>
- </div>
- <div style="display:flex;flex-wrap:wrap;padding-bottom: .35rem;">
- <div class="tui-wrapItem flex-start">
+ </div> -->
+ <div style="display:flex;flex-wrap:wrap;padding:0 .3rem .35rem;">
+ <!-- <div class="tui-wrapItem flex-start">
<div>
{{ $t("Price") }}
</div>
@@ -78,19 +152,95 @@
<div style="margin-left: .25rem;">
{{ $moment(i.buyOrderTime).format("DD-MM-YYYY hh:mm:ss A") }}
</div>
+ </div> -->
+
+ <div class="tui-wrapItem" style="width: 25%;">
+ <div style="font-size: 0.28rem;margin-bottom: .25rem;">
+ {{ $t("MingCheng") }}/{{ $t("市值") }}
+ </div>
+ <div style="font-size: .4rem;">
+ {{ i.stockSpell }}
+ </div>
+ <div style="font-size: .28rem;">
+ {{ i.orderTotalPrice }}
+ </div>
+ </div>
+
+ <div class="tui-wrapItem" style="width: 22%;">
+ <div
+ style="font-size: 0.28rem;margin-bottom: .25rem;text-align: center;"
+ >
+ {{ $t("持股") }}/{{ $t("可卖") }}
+ </div>
+ <div style="font-size: .4rem;text-align: center;">
+ {{ i.orderNum }}
+ </div>
+ <div style="font-size: .28rem;text-align: center;">
+ {{ i.orderNum }}
+ </div>
+ </div>
+
+ <div class="tui-wrapItem" style="width: 25%;">
+ <div
+ style="font-size: 0.28rem;margin-bottom: .25rem;text-align: end;"
+ >
+ {{ $t("Current") }}/{{ $t("Cost") }}
+ </div>
+ <div style="font-size: .4rem;text-align: end;">
+ {{ i.now_price }}
+ </div>
+ <div style="font-size: .28rem;text-align: end;">
+ {{ i.buyOrderPrice }}
+ </div>
+ </div>
+
+ <div class="tui-wrapItem" style="width: 28%;">
+ <div
+ style="font-size: 0.28rem;margin-bottom: .25rem;text-align: end;"
+ >
+ {{ $t("盈虧") }}/{{ $t("hj141") }}
+ </div>
+ <div
+ style="font-size: .4rem;text-align: end;"
+ :style="
+ `color:${
+ i.profitAndLose < 0
+ ? 'green'
+ : i.profitAndLose > 0
+ ? 'red'
+ : ''
+ }`
+ "
+ >
+ {{ i.profitAndLose }}
+ </div>
+ <div
+ style="font-size: .28rem;text-align: end;"
+ :style="
+ `color:${
+ i.profitAndLose < 0
+ ? 'green'
+ : i.profitAndLose > 0
+ ? 'red'
+ : ''
+ }`
+ "
+ >
+ {{ i.profitAndLoseParent }}
+ </div>
</div>
</div>
<div class="jiaoyi-action flex-between" v-if="actIndex == index">
- <div class="action-item flex-center">
+ <div class="action-item flex-center" @click="goBuy(i, 1)">
<img src="@/assets/img/mr.png" />
<div class="action-item-text">{{ $t("gm") }}</div>
</div>
- <div class="action-item flex-center">
+ <div class="action-item flex-center" @click="goBuy(i, 0)">
<img src="@/assets/img/mc.png" />
<div class="action-item-text">{{ $t("hj78") }}</div>
</div>
- <div class="action-item flex-center">
+ <div class="action-item flex-center" @click="toDetails(i)">
<img src="@/assets/img/pc.png" />
<div class="action-item-text">{{ $t("平仓") }}</div>
</div>
@@ -197,8 +347,12 @@
</template>
<script>
+import tabHead from "@/components/tabHead.vue";
import * as api from "@/axios/api";
export default {
+ components: {
+ tabHead
+ },
data() {
return {
active: "0",
@@ -208,7 +362,8 @@
list: [], // 持仓数据
list2: [], // 平仓数据
actObj: {}, // 选择的持仓对象
- actIndex: null
+ actIndex: null,
+ moneyData: {} // 账户金额
};
},
watch: {
@@ -227,7 +382,9 @@
default: false
}
},
- created() {},
+ created() {
+ if (!this.Operation) this.getMoney();
+ },
methods: {
// 获取 持仓 数据
async getList(state = 0) {
@@ -244,9 +401,41 @@
}
},
open(i, index) {
- if (!this.Operation) return;
+ // if (!this.Operation) return;
this.actObj = i;
this.actIndex = index;
+ },
+ goBuy(i, index) {
+ // console.log("ddddd", i);
+ // return;
+ this.$router.push({
+ path: "/TradingBuy",
+ query: {
+ t: index,
+ code: i.stockCode,
+ m: i.now_price,
+ id: i.stockId,
+ name: i.stockName,
+ spell: i.stockSpell,
+ bayType: i.stockGid,
+ gid: i.stockGidJb
+ }
+ });
+ },
+ // 平仓跳转详情
+ toDetails(i) {
+ if (!i.positionSn) return;
+ this.$router.push({
+ path: "/Stockdetail",
+ query: { codes: i.positionSn }
+ });
+ },
+ // 获取账户金额
+ async getMoney() {
+ let data = await api.getMoney();
+ if (data.status === 0) {
+ this.moneyData = data.data[0];
+ }
}
}
};
@@ -269,6 +458,69 @@
width: 100%;
font-size: 0.3rem;
background-color: rgba(#000, 0.9);
+ .tui-money {
+ margin-top: 0.65rem;
+ margin-bottom: 0.3rem;
+ width: 100%;
+ background: linear-gradient(90deg, #585fb4, #48529e);
+ border-radius: 0.175rem;
+ .control {
+ width: 100%;
+ padding: 0.2rem 0.3rem;
+ .control-item {
+ width: 33%;
+ padding-top: 0.1rem;
+ flex-direction: column;
+ .action-item-text {
+ font-size: 0.3rem;
+ line-height: 0.3rem;
+ color: #aaa;
+ }
+ img {
+ width: 0.5rem;
+ height: 0.5rem;
+ margin-bottom: 0.3rem;
+ }
+ }
+ }
+ .all-assets {
+ width: 100%;
+ padding: 0.225rem 0.3rem 0.35rem;
+ justify-content: space-evenly;
+ border-bottom: #aaa solid 1px;
+ .assets-item {
+ width: 33%;
+ flex-shrink: 0;
+ flex-direction: column;
+ .big-size {
+ font-size: 0.35rem;
+ 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;
+ .price {
+ font-size: 0.825rem;
+ line-height: 0.825rem;
+ font-weight: 500;
+ padding-top: 0.3rem;
+ color: #fff;
+ }
+ .text-xs {
+ font-size: 0.45rem;
+ color: #c7c9e6;
+ text-align: center;
+ }
+ }
+ }
.mo_list {
padding: 0 0.35rem;
.mol_item {
@@ -298,10 +550,10 @@
}
}
.tui-wrapItem {
- padding: 0.175rem 0.3rem 0;
+ padding: 0.175rem 0rem 0;
color: #898a8e;
width: 54%;
- line-height: .4rem;
+ line-height: 0.4rem;
}
.moli_orderTitle {
padding: 0.3rem 0.3rem 0;
--
Gitblit v1.9.3