From f3c40298d1ef0e3424483d99854c9bef3f92573a Mon Sep 17 00:00:00 2001
From: lxf <1371462558@qq.com>
Date: Tue, 15 Jul 2025 11:34:49 +0800
Subject: [PATCH] 货币交易翻译

---
 src/i18n/Deutsch.js                                 |    2 
 src/i18n/korean.js                                  |    2 
 src/i18n/th.js                                      |    2 
 src/i18n/fa.js                                      |    2 
 src/i18n/Italy.js                                   |    2 
 src/views/cryptos/TrendDetails/index.vue            |   15 +++--
 src/i18n/Japanese.js                                |    2 
 src/i18n/vi.js                                      |    2 
 src/i18n/cn.js                                      |    2 
 src/i18n/en.js                                      |    2 
 src/i18n/zhcn.js                                    |    2 
 src/components/trade/etf-ex-nav/index.vue           |    4 
 src/views/cryptos/DeliveryContractHistory/index.vue |    8 +-
 src/components/Transform/contract-header/index.vue  |   77 +++++++++++++------------
 src/components/trade/us-stock-ex-nav/index.vue      |    2 
 15 files changed, 67 insertions(+), 59 deletions(-)

diff --git a/src/components/Transform/contract-header/index.vue b/src/components/Transform/contract-header/index.vue
index 6058049..f5e146d 100644
--- a/src/components/Transform/contract-header/index.vue
+++ b/src/components/Transform/contract-header/index.vue
@@ -6,16 +6,18 @@
         <div class="flex justify-start pt-45 before">
           <div class="flex items-center ">
             <img src="@/assets/image/icon_back.png" class="w-35 h-35 back" alt="" @click="jump()">
-            <img src="@/assets/theme/dark/image/black-convert.png" alt="convert-img" class="w-35 h-35" @click="onSidebar">
+            <img src="@/assets/theme/dark/image/black-convert.png" alt="convert-img" class="w-35 h-35"
+              @click="onSidebar">
             <div class="flex pl-21 textColor" @click="onSidebar">
               <div class="font-35">{{ symbolName.toUpperCase() || '--' }}</div>
               <div class="ml-15 font-28">{{ title }}</div>
             </div>
-            <div class="pl-10 w-160  font-28" :class="{ 'text-green': range > 0, 'text-red': range <= 0 }">{{ range || '--' }}%</div>
-              <!-- 右上角小图标 -->
+            <div class="pl-10 w-160  font-28" :class="{ 'text-green': range > 0, 'text-red': range <= 0 }">{{ range ||
+              '--' }}%</div>
+            <!-- 右上角小图标 -->
             <img src="@/assets/image/kline.png" class="w-44 h-44 right" alt="" @click="klineJump()">
-			<img src="../../../assets/image/public/record.png" alt="record-img" class="w-64 h-35 pr-30 record-img"
-			  @click="goHistory" />
+            <img src="../../../assets/image/public/record.png" alt="record-img" class="w-64 h-35 pr-30 record-img"
+              @click="goHistory" />
           </div>
           <!-- <div class="flex items-center">
                         <img src="../../assets/image/public/k-line.png" alt="line-img" class="w-38 h-35"
@@ -23,13 +25,13 @@
                     </div> -->
         </div>
         <!-- v-if="!selectIndex==2" -->
-        <div class="flex justify-between  pt-34" >
+        <div class="flex justify-between  pt-34">
           <!-- <button class="tabBtn w-368 h-74 lh-74 border-none  rounded"
             :class="selectIndex == 1 ? 'select-active' : 'no-select'" @click="changeTab(1)">
             {{ $t('永续合约') }}</button> -->
           <!-- <button class="tabBtn w-368 h-74 lh-74 border-none  rounded"
             :class="selectIndex == 2 ? 'select-one-active' : 'no-select'" @click="changeTab(2)">
-            {{ queryType == 'cryptos' ? $t('交割合约') : $t('期货交易') }}</button> -->
+            {{ queryType == 'cryptos' ? $t('交割合约') : $t('货币交易') }}</button> -->
         </div>
       </div>
     </div>
@@ -38,7 +40,7 @@
       <div class="pl-42 border-b-color pt-48 pb-48">
         <div class="textColor">
           <span class="font-bold font-45 mr-12">{{ title }} {{ $t('合约') }}</span>
-          <span class="font-30">/{{ 'USD'}} </span>
+          <span class="font-30">/{{ 'USD' }} </span>
         </div>
       </div>
       <div class="pl-42 pr-40 font-28">
@@ -62,8 +64,9 @@
           </div>
           <div class="text-right">
             <div class="textColor font-28">{{ item.close }}</div>
-            <div class="mt-10 font-28" :class="item.change_ratio_str > 0 ? 'text-green' : 'text-red'">{{ item.change_ratio_str
-            }}%</div>
+            <div class="mt-10 font-28" :class="item.change_ratio_str > 0 ? 'text-green' : 'text-red'">{{
+              item.change_ratio_str
+              }}%</div>
           </div>
         </div>
       </div>
@@ -78,7 +81,7 @@
 import { useQuotesStore } from '@/store/quotes.store';
 import { THEME } from '@/config/theme'
 import { setStorage, getStorage } from '@/utils/utis'
-import { _getCoinList } from '@/service/quotes.api'; 
+import { _getCoinList } from '@/service/quotes.api';
 export default {
   name: "contractHeader",
   props: {
@@ -146,21 +149,21 @@
     }
   },
   methods: {
-	  goHistory() {
-	    if (this.$store.state.user.userInfo.token) {
-	      let type = 'cryptos'
-	      if (this.$route.query.type) {
-	        type = this.$route.query.type
-	      }
-	      const url = this.topIndex / 1 === 1 ? '/cryptos/perpetualHistory' : '/cryptos/deliveryContractHistory'
-	      this.$router.push({
-	        path: url, query: { symbol: this.symbol, type: type }
-	      });
-	    } else {
-	      this.$router.push('/login')
-	    }
-	  
-	  },
+    goHistory() {
+      if (this.$store.state.user.userInfo.token) {
+        let type = 'cryptos'
+        if (this.$route.query.type) {
+          type = this.$route.query.type
+        }
+        const url = this.topIndex / 1 === 1 ? '/cryptos/perpetualHistory' : '/cryptos/deliveryContractHistory'
+        this.$router.push({
+          path: url, query: { symbol: this.symbol, type: type }
+        });
+      } else {
+        this.$router.push('/login')
+      }
+
+    },
     onRoute(item) {
       if (this.$route.params.symbol !== item.symbol) {
         this.$router.push(`/cryptos/perpetualContract/${item.symbol}?selectIndex=${this.selectIndex}`)
@@ -174,10 +177,10 @@
     async onSidebar() { // 侧边栏打开
       // console.log('侧边栏打开: ', this.selectIndex)
       // if (this.selectIndex == 2) {
-       // 优先用本地缓存的 coins
-       let arr = getStorage('qoutes')
-     let coninArr = ''
-     console.log('arr:', arr)
+      // 优先用本地缓存的 coins
+      let arr = getStorage('qoutes')
+      let coninArr = ''
+      console.log('arr:', arr)
 
       if (arr && arr.length) {
         // 如果本地有 coins,优先用本地
@@ -188,15 +191,15 @@
         // 如果本地没有 coins,拉取接口
         const quotesData = await _getCoinList()
         console.log('quotesData:', quotesData)
-          quotesData.forEach(item => {
-            coninArr += item.symbol + ','
-          })
-          setStorage('qoutes', { coins: quotesData }) // 存到本地
+        quotesData.forEach(item => {
+          coninArr += item.symbol + ','
+        })
+        setStorage('qoutes', { coins: quotesData }) // 存到本地
       }
       this.coins = coninArr
-        // const quotesData = JSON.parse(localStorage.getItem('qoutes'));
-        // this.coins = quotesData.coins || [];
-        // this.coins = quotesData.coins.map(item => item.symbol)
+      // const quotesData = JSON.parse(localStorage.getItem('qoutes'));
+      // this.coins = quotesData.coins || [];
+      // this.coins = quotesData.coins.map(item => item.symbol)
       // } else {
       //   this.coins = this.coinList.map(item => item.symbol);
       // }
diff --git a/src/components/trade/etf-ex-nav/index.vue b/src/components/trade/etf-ex-nav/index.vue
index c8b2d52..2e7df09 100644
--- a/src/components/trade/etf-ex-nav/index.vue
+++ b/src/components/trade/etf-ex-nav/index.vue
@@ -36,7 +36,7 @@
           path: `/cryptos/perpetualContract/${val[0].symbol}?type=indices&selectIndex=1`
         },
         {
-          name: this.$t('期货交易'),
+          name: this.$t('货币交易'),
           icon: new URL('@/assets/image/etfNav/icon03.png', import.meta.url),
           path: `/cryptos/perpetualContract/${val[0].symbol}?type=indices&selectIndex=2`
         },
@@ -62,7 +62,7 @@
           path: `/cryptos/perpetualContract/GlobalETF500?type=indices&selectIndex=1`
         },
         {
-          name: this.$t('期货交易'),
+          name: this.$t('货币交易'),
           icon: new URL('@/assets/image/etfNav/icon03.png', import.meta.url),
           path: `/cryptos/perpetualContract/GlobalETF500?type=indices&selectIndex=2`
         },
diff --git a/src/components/trade/us-stock-ex-nav/index.vue b/src/components/trade/us-stock-ex-nav/index.vue
index ec55bc5..4ca94ba 100644
--- a/src/components/trade/us-stock-ex-nav/index.vue
+++ b/src/components/trade/us-stock-ex-nav/index.vue
@@ -36,7 +36,7 @@
           path: `/cryptos/perpetualContract/${val[0].symbol}?type=US-stocks&selectIndex=1`
         },
         {
-          name: this.$t('期货交易'),
+          name: this.$t('货币交易'),
           icon: new URL('@/assets/image/etfNav/icon03.png', import.meta.url),
           path: `/cryptos/perpetualContract/${val[0].symbol}?type=US-stocks&selectIndex=2`
         },
diff --git a/src/i18n/Deutsch.js b/src/i18n/Deutsch.js
index 48363ef..150751a 100644
--- a/src/i18n/Deutsch.js
+++ b/src/i18n/Deutsch.js
@@ -2726,7 +2726,7 @@
     logIn: "Transaktion nach Anmeldung",
     idBackImg: "Bitte laden Sie Zertifikatsinformationen hoch",
     '生成实时数据失败': "Live-Daten konnten nicht generiert werden",
-    '期货交易': "Futures-Handel",
+    '货币交易': "Währungshandel",
     '休市': "Markt geschlossen",
     '交易中': "Handel",
     'Asia/Shanghai': "Peking-Zeit",
diff --git a/src/i18n/Italy.js b/src/i18n/Italy.js
index c441b72..4f8ece1 100644
--- a/src/i18n/Italy.js
+++ b/src/i18n/Italy.js
@@ -2816,7 +2816,7 @@
     logIn: "Fai trading dopo aver effettuato l'accesso",
     idBackImg: "Carica le informazioni sul certificato",
     '生成实时数据失败': "Impossibile generare dati in tempo reale",
-    '期货交易': "Futures Trading",
+    '货币交易': "Trading di valute",
     '休市': "Chiusura del mercato",
     '交易中': "In transito",
     'Asia/Shanghai': "Ora di Pechino",
diff --git a/src/i18n/Japanese.js b/src/i18n/Japanese.js
index 293199d..d93a4a7 100644
--- a/src/i18n/Japanese.js
+++ b/src/i18n/Japanese.js
@@ -2583,7 +2583,7 @@
     logIn: "ログインして取引する",
     idBackImg: "証明書情報をアップロードしてください",
     '生成实时数据失败': "ライブデータの生成に失敗しました",
-    '期货交易': "先物取引",
+    '货币交易': "通貨取引",
     '请输入谷歌验证码': "Google 確認コードを入力してください",
     '休市': "休業",
     '交易中': "取引中",
diff --git a/src/i18n/cn.js b/src/i18n/cn.js
index 9ef5a0b..a3557e4 100644
--- a/src/i18n/cn.js
+++ b/src/i18n/cn.js
@@ -2692,7 +2692,7 @@
     logIn: "登錄後進行交易",
     idBackImg: "請上傳證件信息",
     '生成实时数据失败': "生成實時數據失敗",
-    '期货交易': "期貨交易",
+    '货币交易': "貨幣交易",
     '请输入谷歌验证码': "請輸入谷歌驗證碼",
     '休市': "休市",
     '交易中': "交易中",
diff --git a/src/i18n/en.js b/src/i18n/en.js
index c9633af..47464c1 100644
--- a/src/i18n/en.js
+++ b/src/i18n/en.js
@@ -2680,7 +2680,7 @@
     logIn: "Log in",
     idBackImg: "Please upload certificate information",
     '生成实时数据失败': "Failed to generate live data",
-    '期货交易': "Futures trading",
+    '货币交易': "Currency Trading",
     '请输入谷歌验证码': "Please enter the Google verification code",
     '休市': "Closed",
     '交易中': "Trading",
diff --git a/src/i18n/fa.js b/src/i18n/fa.js
index 0ef42e0..d598a23 100644
--- a/src/i18n/fa.js
+++ b/src/i18n/fa.js
@@ -2622,7 +2622,7 @@
     logIn: "Trader après la connexion",
     idBackImg: "Veuillez télécharger les informations du certificat",
     '生成实时数据失败': "Échec de la génération de données en direct",
-    '期货交易': "Trading de contrats à terme",
+    '货币交易': "Transaction de devise",
     '请输入谷歌验证码': "Veuillez saisir le code de vérification Google",
     '休市': "Fermé",
     '交易中': "En cours de transaction",
diff --git a/src/i18n/korean.js b/src/i18n/korean.js
index 3fdb413..bfd1a6f 100644
--- a/src/i18n/korean.js
+++ b/src/i18n/korean.js
@@ -2719,7 +2719,7 @@
     logIn: "무역에 로그인",
     idBackImg: "인증서 정보를 업로드하십시오",
     '生成实时数据失败': "라이브 데이터를 생성하지 못했습니다.",
-    '期货交易': "선물 거래",
+    '货币交易': "화폐 거래",
     '请输入谷歌验证码': "Google 인증 코드를 입력하세요.",
     '休市': "휴장",
     '交易中': "거래 중",
diff --git a/src/i18n/th.js b/src/i18n/th.js
index 9b6b18f..5193c97 100644
--- a/src/i18n/th.js
+++ b/src/i18n/th.js
@@ -2691,7 +2691,7 @@
     logIn: "ซื้อขายหลังจากเข้าสู่ระบบ",
     idBackImg: "โปรดอัปโหลดข้อมูลใบรับรอง",
     '生成实时数据失败': "สร้างข้อมูลสดไม่สำเร็จ",
-    '期货交易': "การซื้อขายสินค้าอนาคต",
+    '货币交易': "การซื้อขายสกุลเงิน",
     '请输入谷歌验证码': "โปรดป้อนรหัสยืนยันของ Google",
     '休市': "ตลาดหยุด",
     '交易中': "การซื้อขาย",
diff --git a/src/i18n/vi.js b/src/i18n/vi.js
index 63a2442..3b1ab07 100644
--- a/src/i18n/vi.js
+++ b/src/i18n/vi.js
@@ -2670,7 +2670,7 @@
     logIn: "Đăng nhập để giao dịch",
     idBackImg: "Vui lòng tải lên thông tin chứng chỉ",
     '生成实时数据失败': "Không thể tạo dữ liệu trực tiếp",
-    '期货交易': "Giao dịch hợp đồng tương lai",
+    '货币交易': "Giao dịch tiền tệ",
     '休市': "Đóng cửa",
     '交易中': "Đang giao dịch",
     'Asia/Shanghai': "Giờ Trung Quốc",
diff --git a/src/i18n/zhcn.js b/src/i18n/zhcn.js
index 4123a81..6f8223e 100644
--- a/src/i18n/zhcn.js
+++ b/src/i18n/zhcn.js
@@ -2685,7 +2685,7 @@
     logIn: "登录后进行交易",
     idBackImg: "请上传证件信息",
     '生成实时数据失败': "生成实时数据失败",
-    '期货交易': "期货交易",
+    '货币交易': "货币交易",
     "请输入谷歌验证码": "请输入谷歌验证码",
     '休市': "休市",
     '交易中': "交易中",
diff --git a/src/views/cryptos/DeliveryContractHistory/index.vue b/src/views/cryptos/DeliveryContractHistory/index.vue
index 24e527c..1652476 100644
--- a/src/views/cryptos/DeliveryContractHistory/index.vue
+++ b/src/views/cryptos/DeliveryContractHistory/index.vue
@@ -1,7 +1,7 @@
 <template>
   <div id="cryptos">
     <div class="DeliveryContractHistory px-10 font-28">
-      <assets-head :title="routeType == 'cryptos' ? $t('交割合约历史') : $t('期货交易')" :backFunc="() => {
+      <assets-head :title="routeType == 'cryptos' ? $t('交割合约历史') : $t('货币交易')" :backFunc="() => {
         if ($route.query.goback) {
           $router.push({
             path: '/cryptos/funds',
@@ -29,7 +29,8 @@
             <van-icon name="arrow-down" />
             <div class="select-data" v-if="isAll">
               <div class="select-item" @click.stop="selectItem(item2)" v-for="(item2, index) in currencyList"
-                :key="index">{{ routeType == 'indices' ? item2.name : item2.symbol.toUpperCase() || item2.symbol }}</div>
+                :key="index">{{ routeType == 'indices' ? item2.name : item2.symbol.toUpperCase() || item2.symbol }}
+              </div>
             </div>
           </div>
         </div>
@@ -38,7 +39,8 @@
             :finished-text="dataList.orders.length ? $t('已经全部加载完毕') : ''" @load="onLoad" :offset="30" class="px-20">
             <futrue-hold-list v-if="type === 'orders'" :list-data="dataList.orders">
             </futrue-hold-list>
-            <div class="flex flex-col justify-center pt-50 pb-20 items-center" v-if="!dataList.orders.length && !loading">
+            <div class="flex flex-col justify-center pt-50 pb-20 items-center"
+              v-if="!dataList.orders.length && !loading">
               <img src="@/assets/image/assets-center/no-data.png" alt="" class="w-100 h-100 no-data-img" />
               <p class="text-grey mt-10">{{ $t('暂无记录') }}</p>
             </div>
diff --git a/src/views/cryptos/TrendDetails/index.vue b/src/views/cryptos/TrendDetails/index.vue
index 6a68978..b8860d4 100644
--- a/src/views/cryptos/TrendDetails/index.vue
+++ b/src/views/cryptos/TrendDetails/index.vue
@@ -8,7 +8,7 @@
         <div class="w-368 h-80 mr-32 font-28 flex justify-center items-center rounded box-border tabBtn"
           :class="tab === '1' ? 'activeBtn' : ''" @click="onTab('1')">{{ $t('永续合约') }}</div>
         <div class="w-368 h-80  font-28 flex justify-center items-center rounded box-border tabBtn"
-          :class="tab === '2' ? 'activeBtn' : ''" @click="onTab('2')">{{ queryType == 'cryptos' ? $t('交割合约') : $t('期货交易')
+          :class="tab === '2' ? 'activeBtn' : ''" @click="onTab('2')">{{ queryType == 'cryptos' ? $t('交割合约') : $t('货币交易')
           }}</div>
       </div> -->
       <!-- 数据区 -->
@@ -43,7 +43,8 @@
                   <p>{{ quote.low || '--' }}</p>
                 </div>
                 <div class="flex w-1/2 flex-col justify-between w-220 mt-20">
-                  <p class="text-grey">{{ queryType == 'cryptos' ? $t('24h成交额') + '(USDT)' : $t('24h成交额') + '(USD)' }}</p>
+                  <p class="text-grey">{{ queryType == 'cryptos' ? $t('24h成交额') + '(USDT)' : $t('24h成交额') + '(USD)' }}
+                  </p>
                   <p>{{ (quote.volume * 1).toFixed(2) || '--' }}</p>
                 </div>
               </div>
@@ -72,7 +73,7 @@
                     <p>{{ $t('买入') }}</p>
                     <p class="flex  justify-between  font-22">
                       <span style="margin-right: -10px;">{{ $t('价格') }}{{ queryType == 'cryptos' ? '(USDT)' : '(USD)'
-                      }}</span>
+                        }}</span>
                       <span class="buy-title">{{ $t('数量') }}({{ symbolData.toUpperCase() }})</span>
                     </p>
                   </li>
@@ -114,7 +115,8 @@
                   <span class="flex-1">{{ $t('时间') }}</span>
                   <span class="flex-1">{{ $t('方向') }}</span>
                   <span class="flex-1">{{ $t('价格') }}{{ queryType == 'cryptos' ? '(USDT)' : '(USD)' }}</span>
-                  <span class="flex-1 flex justify-center buy-title">{{ $t('数量') }}({{ symbolData.toUpperCase() }})</span>
+                  <span class="flex-1 flex justify-center buy-title">{{ $t('数量') }}({{ symbolData.toUpperCase()
+                    }})</span>
                 </li>
                 <li v-for="(item, index) in deals" :key="item.ts + item.price + item.amount || index"
                   class="flex  justify-between mt-30">
@@ -213,8 +215,9 @@
         </div>
       </div>
       <van-popup v-model:show="show" class="rounded-2xl" :key="initFutrue.session_token">
-        <popup-confirm-order :paras="initFutrue.para" :symbol="symbol" :direction="direction" :balance="initFutrue.amount"
-          :price="quote.close" @close="onClose" @confirm="onOrderConfirm" v-if="popType === 'confirm'" />
+        <popup-confirm-order :paras="initFutrue.para" :symbol="symbol" :direction="direction"
+          :balance="initFutrue.amount" :price="quote.close" @close="onClose" @confirm="onOrderConfirm"
+          v-if="popType === 'confirm'" />
         <popup-delivery showBtns :detailData="detailData" :key="detailData.order_no" @close="onClose"
           @continueToBuy="order()" @timeEnd="handleTimeEnd" :price="quote.close" v-else />
       </van-popup>

--
Gitblit v1.9.3