From e01cee0f0c5c5c2eb2d8595eadb3c7a9df2a37fc Mon Sep 17 00:00:00 2001
From: 李凌 <344137771@qq.com>
Date: Wed, 21 Jan 2026 16:37:01 +0800
Subject: [PATCH] 1
---
src/i18n/Deutsch.js | 6 +
src/i18n/Portuguese.js | 6 +
src/i18n/korean.js | 6 +
src/views/ICO/icoRecord.vue | 80 ++++++++++++++++---
src/components/Transform/trade-order-area/index.vue | 20 +++++
src/i18n/th.js | 6 +
src/i18n/fa.js | 6 +
src/i18n/Italy.js | 6 +
src/i18n/Japanese.js | 6 +
src/views/ICO/ico.vue | 10 +-
src/i18n/vi.js | 6 +
src/components/fx-footer/index.vue | 12 +-
src/views/homePage/index.vue | 5
src/i18n/cn.js | 6 +
src/i18n/en.js | 6 +
src/i18n/zhcn.js | 6 +
src/i18n/Spanish.js | 6 +
17 files changed, 172 insertions(+), 27 deletions(-)
diff --git a/src/components/Transform/trade-order-area/index.vue b/src/components/Transform/trade-order-area/index.vue
index c543156..1a4c523 100644
--- a/src/components/Transform/trade-order-area/index.vue
+++ b/src/components/Transform/trade-order-area/index.vue
@@ -91,6 +91,7 @@
import TradeApi from "@/service/trading.js";
import { strToArr } from '@/utils/utis'
import { mapGetters } from "vuex";
+import { getStorage, setStorage } from '@/utils/index.js';
// import PopupConfirmOrder from '@/components/popup-confirm-order'
export default {
name: "perpetualPosition",
@@ -136,6 +137,8 @@
this.title = this.selectData[0].title
this.type = this.selectData[0].type
this.form.order_price_type = 'opponent'
+ // 检查是否有从其他页面传递的卖出参数
+ this.checkSellParams()
},
watch: {
initOpen: { // 处理滚动条初始值
@@ -191,9 +194,26 @@
this.title = this.selectData[0].title
this.type = this.selectData[0].type
this.form.order_price_type = 'opponent'
+ // 检查是否有从其他页面传递的卖出参数
+ this.checkSellParams()
},
methods: {
strToArr,
+ // 检查是否有从其他页面传递的卖出参数
+ checkSellParams() {
+ const sellParams = getStorage('tradeSellParams')
+ if (sellParams && sellParams.mode === 'close' && sellParams.volume) {
+ // 切换到卖出模式
+ this.changeTab('close')
+ // 设置数量
+ this.$nextTick(() => {
+ this.form.volume = sellParams.volume
+ this.isTotal = false
+ })
+ // 清除存储的参数
+ window.localStorage.removeItem('tradeSellParams')
+ }
+ },
checkIsTotal(val) {
this.isTotal = val
this.percentageVal = 0
diff --git a/src/components/fx-footer/index.vue b/src/components/fx-footer/index.vue
index ab54bc0..18a072c 100644
--- a/src/components/fx-footer/index.vue
+++ b/src/components/fx-footer/index.vue
@@ -21,10 +21,10 @@
</template>
</van-tabbar-item>
- <van-tabbar-item name="STO" to="/ICO/ico">
- <span :class="[active === 'STO' ? 'active' : '']">STO</span>
+ <van-tabbar-item name="ICO" to="/ICO/ico">
+ <span :class="[active === 'ICO' ? 'active' : '']">ICO</span>
<template #icon="props">
- <img :src="props.active ? icon.sto.active : icon.sto.inactive" />
+ <img :src="props.active ? icon.ICO.active : icon.ICO.inactive" />
</template>
</van-tabbar-item>
@@ -115,7 +115,7 @@
} else if (route.path == "/documentation/index") {
active.value = 'documentation'
} else if (route.path == "/ICO/ico") {
- active.value = 'sto'
+ active.value = 'ICO'
}
let quotesStore = useQuotesStore()
@@ -137,7 +137,7 @@
} else if (route.path == "/documentation/index") {
active.value = 'documentation'
} else if (route.path == "/ICO/ico") {
- active.value = 'sto'
+ active.value = 'ICO'
}
})
// 底部列表
@@ -158,7 +158,7 @@
// active: new URL('@/assets/imgs/footer/news-active.png', import.meta.url),
// inactive: new URL('@/assets/imgs/footer/news.png', import.meta.url),
// },
- sto: {
+ ICO: {
active: new URL('@/assets/imgs/footer/sto-active.png', import.meta.url),
inactive: new URL('@/assets/imgs/footer/sto.png', import.meta.url),
},
diff --git a/src/i18n/Deutsch.js b/src/i18n/Deutsch.js
index 232c142..2d32dae 100644
--- a/src/i18n/Deutsch.js
+++ b/src/i18n/Deutsch.js
@@ -2870,4 +2870,10 @@
"DXCN白皮书":'DXCN-Whitepaper',
"发售": "Verkauf",
"资格": "Qualifikation",
+ "中签时间": "Zuteilungszeit",
+ "发行价": "Ausgabepreis",
+ "利润": "Gewinn",
+ "申购总额": "Gesamter Zeichnungsbetrag",
+ "现价总额": "Gesamter aktueller Preis",
+ "利润百分比": "Gewinnprozentsatz",
}
\ No newline at end of file
diff --git a/src/i18n/Italy.js b/src/i18n/Italy.js
index efc2e31..87c7f01 100644
--- a/src/i18n/Italy.js
+++ b/src/i18n/Italy.js
@@ -2960,4 +2960,10 @@
"DXCN白皮书":'Libro bianco DXCN',
"发售": "Vendita",
"资格": "Qualifica",
+ "中签时间": "Ora di assegnazione",
+ "发行价": "Prezzo di emissione",
+ "利润": "Profitto",
+ "申购总额": "Importo totale di sottoscrizione",
+ "现价总额": "Prezzo corrente totale",
+ "利润百分比": "Percentuale di profitto",
}
\ No newline at end of file
diff --git a/src/i18n/Japanese.js b/src/i18n/Japanese.js
index 8521994..4ec9d74 100644
--- a/src/i18n/Japanese.js
+++ b/src/i18n/Japanese.js
@@ -2728,4 +2728,10 @@
"DXCN白皮书":'DXCNホワイトペーパー',
"发售": "発売",
"资格": "資格",
+ "中签时间": "抽選時間",
+ "发行价": "発行価格",
+ "利润": "利益",
+ "申购总额": "申込総額",
+ "现价总额": "現在価格総額",
+ "利润百分比": "利益率",
}
\ No newline at end of file
diff --git a/src/i18n/Portuguese.js b/src/i18n/Portuguese.js
index 7fa8669..b4b4017 100644
--- a/src/i18n/Portuguese.js
+++ b/src/i18n/Portuguese.js
@@ -679,4 +679,10 @@
"DXCN白皮书":'Livro Branco do DXCN',
"发售": "Venda",
"资格": "Qualificação",
+ "中签时间": "Hora de alocação",
+ "发行价": "Preço de emissão",
+ "利润": "Lucro",
+ "申购总额": "Valor total da subscrição",
+ "现价总额": "Preço atual total",
+ "利润百分比": "Percentagem de lucro",
}
\ No newline at end of file
diff --git a/src/i18n/Spanish.js b/src/i18n/Spanish.js
index c67c913..91d24c3 100644
--- a/src/i18n/Spanish.js
+++ b/src/i18n/Spanish.js
@@ -2643,4 +2643,10 @@
"DXCN白皮书":'Libro blanco de DXCN',
"发售": "Venta",
"资格": "Calificación",
+ "中签时间": "Hora de asignación",
+ "发行价": "Precio de emisión",
+ "利润": "Beneficio",
+ "申购总额": "Importe total de suscripción",
+ "现价总额": "Precio actual total",
+ "利润百分比": "Porcentaje de beneficio",
}
\ No newline at end of file
diff --git a/src/i18n/cn.js b/src/i18n/cn.js
index c0d815a..484fa8f 100644
--- a/src/i18n/cn.js
+++ b/src/i18n/cn.js
@@ -2849,4 +2849,10 @@
"DXCN白皮书":'DXCN白皮書',
"发售": "發售",
"资格": "資格",
+ "中签时间": "中籤時間",
+ "发行价": "發行價",
+ "利润": "利潤",
+ "申购总额": "申購總額",
+ "现价总额": "現價總額",
+ "利润百分比": "利潤百分比",
}
diff --git a/src/i18n/en.js b/src/i18n/en.js
index 0df39dd..9e3bf10 100644
--- a/src/i18n/en.js
+++ b/src/i18n/en.js
@@ -2824,4 +2824,10 @@
"DXCN白皮书":'DXCN White Paper',
"发售": "Sale",
"资格": "Qualification",
+ "中签时间": "Allocation Time",
+ "发行价": "Issue Price",
+ "利润": "Profit",
+ "申购总额": "Total Subscription Amount",
+ "现价总额": "Total Current Price",
+ "利润百分比": "Profit Percentage",
}
\ No newline at end of file
diff --git a/src/i18n/fa.js b/src/i18n/fa.js
index 81fb5c6..71c52c5 100644
--- a/src/i18n/fa.js
+++ b/src/i18n/fa.js
@@ -2767,4 +2767,10 @@
"DXCN白皮书":'Livre blanc du DXCN',
"发售": "Vente",
"资格": "Qualification",
+ "中签时间": "Heure d'allocation",
+ "发行价": "Prix d'émission",
+ "利润": "Profit",
+ "申购总额": "Montant total de souscription",
+ "现价总额": "Prix actuel total",
+ "利润百分比": "Pourcentage de profit",
}
\ No newline at end of file
diff --git a/src/i18n/korean.js b/src/i18n/korean.js
index 598ca93..a3d7178 100644
--- a/src/i18n/korean.js
+++ b/src/i18n/korean.js
@@ -2864,4 +2864,10 @@
"DXCN白皮书":'DXCN 백서',
"发售": "판매",
"资格": "자격",
+ "中签时间": "배정 시간",
+ "发行价": "발행가",
+ "利润": "이익",
+ "申购总额": "청약 총액",
+ "现价总额": "현재가 총액",
+ "利润百分比": "이익률",
}
\ No newline at end of file
diff --git a/src/i18n/th.js b/src/i18n/th.js
index 9136fe9..809ca30 100644
--- a/src/i18n/th.js
+++ b/src/i18n/th.js
@@ -2834,4 +2834,10 @@
"DXCN白皮书":'เอกสารไวท์เปเปอร์ของ DXCN',
"发售": "ขาย",
"资格": "คุณสมบัติ",
+ "中签时间": "เวลาการจัดสรร",
+ "发行价": "ราคาออก",
+ "利润": "กำไร",
+ "申购总额": "จำนวนเงินสมัครซื้อทั้งหมด",
+ "现价总额": "ราคาปัจจุบันรวม",
+ "利润百分比": "เปอร์เซ็นต์กำไร",
}
\ No newline at end of file
diff --git a/src/i18n/vi.js b/src/i18n/vi.js
index 3533730..1b3e4ea 100644
--- a/src/i18n/vi.js
+++ b/src/i18n/vi.js
@@ -2814,4 +2814,10 @@
"DXCN白皮书":'Sách trắng DXCN',
"发售": "Bán",
"资格": "Tư cách",
+ "中签时间": "Thời gian phân bổ",
+ "发行价": "Giá phát hành",
+ "利润": "Lợi nhuận",
+ "申购总额": "Tổng số tiền đăng ký mua",
+ "现价总额": "Tổng giá hiện tại",
+ "利润百分比": "Tỷ lệ lợi nhuận",
}
\ No newline at end of file
diff --git a/src/i18n/zhcn.js b/src/i18n/zhcn.js
index 333bc9c..28350b3 100644
--- a/src/i18n/zhcn.js
+++ b/src/i18n/zhcn.js
@@ -2829,4 +2829,10 @@
"DXCN白皮书":'DXCN白皮书',
"发售": "发售",
"资格": "資格",
+ "中签时间": "中签时间",
+ "发行价": "发行价",
+ "利润": "利润",
+ "申购总额": "申购总额",
+ "现价总额": "现价总额",
+ "利润百分比": "利润百分比",
}
\ No newline at end of file
diff --git a/src/views/ICO/ico.vue b/src/views/ICO/ico.vue
index b278d6c..b394c17 100644
--- a/src/views/ICO/ico.vue
+++ b/src/views/ICO/ico.vue
@@ -2,11 +2,11 @@
<div class="ico">
<fx-header :showLeft="false">
<template v-slot:title>
- <div>STO</div>
+ <div>ICO</div>
</template>
- <!-- <template v-slot:right>
+ <template v-slot:right>
<van-icon name="todo-list-o" @click="$router.push('/ICO/icoRecord')" />
- </template> -->
+ </template>
</fx-header>
<div class="ico_list">
@@ -41,9 +41,9 @@
<van-progress :percentage="i.progressRate || 0" track-color="#ccc" />
</div>
</div>
- <!-- <div class="item_3 flex justify-center">
+ <div class="item_3 flex justify-center">
<van-button type="default" round size="large" @click="openBuy(i)">{{$t('申购')}}</van-button>
- </div> -->
+ </div>
</div>
</div>
diff --git a/src/views/ICO/icoRecord.vue b/src/views/ICO/icoRecord.vue
index 4b4847d..5579fb5 100644
--- a/src/views/ICO/icoRecord.vue
+++ b/src/views/ICO/icoRecord.vue
@@ -2,7 +2,7 @@
<div class="icoRecord">
<fx-header>
<template v-slot:title>
- <div>{{$t('申购记录')}}</div>
+ <div>{{ $t('申购记录') }}</div>
</template>
</fx-header>
@@ -16,7 +16,7 @@
</van-tabs>
<div class="icoRecord_list">
- <div class="icoRecord_item mb-5" v-for="(item,index) in recordLIst" :key="index">
+ <div class="icoRecord_item mb-5" v-for="(item, index) in recordLIst" :key="index">
<div class="item_1">
{{ item.symbol }} ({{ item.name }})
</div>
@@ -32,6 +32,38 @@
<div>{{ $t('中签数量') }}</div>
<div>{{ item.ballotNumber }}</div>
</div>
+
+ <div class="item_2 flex justify-between">
+ <div>{{ $t('中签时间') }}</div>
+ <div>{{ item.endTime }}</div>
+ </div>
+ <div class="item_2 flex justify-between">
+ <div>{{ $t('发行价') }}</div>
+ <div>{{ item.issuePrice }}</div>
+ </div>
+ <div class="item_2 flex justify-between">
+ <div>{{ $t('现价') }}</div>
+ <div>{{ item.currentPrice }}</div>
+ </div>
+ <div class="item_2 flex justify-between">
+ <div>{{ $t('利润') }}</div>
+ <div>{{ item.profit }}</div>
+ </div>
+ <div class="item_2 flex justify-between">
+ <div>{{ $t('申购总额') }}</div>
+ <div>{{ item.subscriptionTotalAmount }}</div>
+ </div>
+ <div class="item_2 flex justify-between">
+ <div>{{ $t('现价总额') }}</div>
+ <div>{{ item.currentTotalPrice }}</div>
+ </div>
+ <div class="item_2 flex justify-between">
+ <div>{{ $t('利润百分比') }}</div>
+ <div>{{ item.profitPercent ? (item.profitPercent + '%') : '0' }}</div>
+ </div>
+ <div class="item_3" v-if="item.status == 5">
+ <van-button type="primary" block round @click="goToSell(item)">{{ $t('卖出') }}</van-button>
+ </div>
</div>
</div>
</div>
@@ -42,7 +74,10 @@
import { showToast } from 'vant'
import { _icoRecordList } from "@/service/ico.api.js";
import { useI18n } from "vue-i18n";
+import { useRouter } from "vue-router";
+import { setStorage } from "@/utils/index.js";
const { t } = useI18n()
+const router = useRouter()
// tab切换
const active = ref('0');
@@ -56,7 +91,7 @@
let opt = {
status: active.value
}
- if(opt.status == '0') delete opt.status
+ if (opt.status == '0') delete opt.status
_icoRecordList(opt).then((res) => {
console.log(res);
recordLIst.value = res.records
@@ -88,38 +123,57 @@
}
return str
}
+
+// 跳转到卖出页面
+const goToSell = (item) => {
+ // 将卖出参数存储到 localStorage,供交易页面读取
+ setStorage('tradeSellParams', {
+ volume: item.ballotNumber || '0',
+ mode: 'close' // 卖出模式
+ })
+ if (item.symbol) {
+ router.push(`/cryptos/trade/${item.symbol}`)
+ } else {
+ showToast(t('交易对信息错误'))
+ }
+}
</script>
<style lang="scss" scoped>
-.icoRecord{
+.icoRecord {
padding: 0rem 1.2rem 2rem 1.2rem;
font-size: 1.5rem;
- .icoRecord_list{
+ .icoRecord_list {
padding: 1rem 0rem;
- .icoRecord_item{
- background-color: #eee;
- padding:.5rem 1rem;
+
+ .icoRecord_item {
+ background-color: #333;
+ padding: .5rem 1rem;
border: #aaa solid 1px;
border-radius: 1rem;
- .item_1{
+
+ .item_1 {
padding: 1rem .5rem;
border-bottom: #ccc solid 1px;
font-size: 2rem;
font-weight: 700;
}
- .item_2{
+
+ .item_2 {
padding: 1rem .5rem;
border-bottom: #ccc solid 1px;
font-size: 1.6rem;
font-weight: 500;
- &>div:last-child{
+ &>div:last-child {
color: #999;
}
}
- .item_3{
- padding: .5rem;
+
+ .item_3 {
+ padding: 1rem .5rem;
+ margin-top: 1rem;
}
}
}
diff --git a/src/views/homePage/index.vue b/src/views/homePage/index.vue
index 031b536..1cc2d70 100644
--- a/src/views/homePage/index.vue
+++ b/src/views/homePage/index.vue
@@ -131,12 +131,11 @@
// { key: 9, name: t('闪兑'), icon: new URL('@/assets/imgs/home/home_8.png', import.meta.url), path: '/cryptos/exchangePage' },
// { key: 9, name: t('划转'), icon: new URL('@/assets/imgs/home/home_8.png', import.meta.url), path: '/my/transfer' },
// { key: 10, name: t('更多'), icon: new URL('@/assets/imgs/home/home_9.png', import.meta.url) },
-
- // { key: 11, name: "STO", icon: new URL('@/assets/imgs/home/home_1.png', import.meta.url), path: '/ICO/ico' },
// { key: 12, name: "C2C", icon: new URL('@/assets/imgs/home/home_1.png', import.meta.url), path: '/wantBuy' },
// { key: 13, name: t('质押'), icon: new URL('@/assets/imgs/home/home_1.png', import.meta.url), path: '' },
{ key: 14, name: t('onLineService'), icon: new URL('@/assets/imgs/home/home_10.png', import.meta.url), path: '/customerService' },
// { key: 15, name: 'DXCM PDF', icon: new URL('@/assets/imgs/home/home_1.png', import.meta.url), path: 'https://www.dexm-whitepaper.com/' },
+ { key: 11, name: "ICO", icon: new URL('@/assets/imgs/home/home_1.png', import.meta.url), path: '/ICO/ico' },
]
// 获取公告数据
@@ -365,7 +364,7 @@
width: 100%;
.grid_item {
- width: 33%;
+ width: 25%;
color: $tab-c;
font-size: 1.6rem;
--
Gitblit v1.9.3