From 90c9e69c786b60bdb8ed00cb2a30d0d1c1b0d457 Mon Sep 17 00:00:00 2001
From: lxf <1371462558@qq.com>
Date: Fri, 20 Jun 2025 15:31:02 +0800
Subject: [PATCH] style

---
 src/components/perpetual-open/index.vue |  191 +++++++++++++++++++++++++++++++----------------
 1 files changed, 127 insertions(+), 64 deletions(-)

diff --git a/src/components/perpetual-open/index.vue b/src/components/perpetual-open/index.vue
index 5fc3f40..78a231f 100644
--- a/src/components/perpetual-open/index.vue
+++ b/src/components/perpetual-open/index.vue
@@ -161,7 +161,7 @@
             <input
               :placeholder="
                 selectIndex == 1
-                  ? $t('张数')
+                  ? $t('手数')
                   : $t('最少') + initFutrue && initFutrue.para
                   ? $t('最小金额') + initFutrue.para[paraIndex].buy_min
                   : ''
@@ -191,25 +191,52 @@
           </div>
           <template v-if="selectIndex == 1">
             <div class="mt-40 mb-30 w-full flex justify-between items-center">
-              <span class="font-22 font-400 text-grey">{{
-                $t("可开张数")
-              }}</span>{{form.lever_rate}}
-              <span class="font-22 font-400 textColor" v-if="form.lever_rate==25">
-				{{Math.floor((initFutrue.amount-(initFutrue.amount *  0.0375))/initData.amount)}}
-                {{ $t("张") }}
+              <span class="font-22 font-400 text-grey">
+                {{ $t("可开") }}{{ $t("手数") }}
+                <!-- {{initFutrue.amount / (initData.amount + 0.0375) * form.lever_rate }}  //  -->
+                <!-- {{ initFutrue.amount }} // 余额 -->
               </span>
-			  <span class="font-22 font-400 textColor" v-if="form.lever_rate==50">
-			  				{{Math.floor((initFutrue.amount-(initFutrue.amount *  0.075))/initData.amount)}}
-			    {{ $t("张") }}
-			  </span>
-			  <span class="font-22 font-400 textColor" v-if="form.lever_rate==100">
-			  				{{Math.floor((initFutrue.amount-(initFutrue.amount *  0.15))/initData.amount)}}
-			    {{ $t("张") }}
-			  </span>
-			  <span class="font-22 font-400 textColor" v-if="form.lever_rate==200">
-			  				{{Math.floor((initFutrue.amount-(initFutrue.amount *  0.30))/initData.amount)}}
-			    {{ $t("张") }}
-			  </span>
+              {{ form.lever_rate }}
+              <span
+                class="font-22 font-400 textColor"
+                v-if="form.lever_rate == 25"
+              >
+                {{
+                  Math.floor(initFutrue.amount / (initData.amount + 0.0375)) *
+                  form.lever_rate
+                }}
+                {{ $t("手数") }}
+              </span>
+              <span
+                class="font-22 font-400 textColor"
+                v-if="form.lever_rate == 50"
+              >
+                {{
+                  Math.floor(initFutrue.amount / (initData.amount + 0.075)) *
+                  form.lever_rate
+                }}
+                {{ $t("手数") }}
+              </span>
+              <span
+                class="font-22 font-400 textColor"
+                v-if="form.lever_rate == 100"
+              >
+                {{
+                  Math.floor(initFutrue.amount / (initData.amount + 0.15)) *
+                  form.lever_rate
+                }}
+                {{ $t("手数") }}
+              </span>
+              <span
+                class="font-22 font-400 textColor"
+                v-if="form.lever_rate == 200"
+              >
+                {{
+                  Math.floor(initFutrue.amount / (initData.amount + 0.3)) *
+                  form.lever_rate
+                }}
+                {{ $t("手数") }}
+              </span>
             </div>
             <!-- <vue-slider v-bind="options" v-model="form.amount"></vue-slider> -->
             <!-- <vue-slider class="mainBox" v-bind="options" :marks="marks" v-model="form.volume" :hide-label="true"  width="90%"
@@ -237,38 +264,42 @@
             <div class="flex justify-between mt-30">
               <div class="text-grey">{{ $t("合约金额") }}</div>
               <div class="textColor">
-                {{ ((initData.amount * (form.amount / 1) * form.lever_rate)).toFixed(4)}} USDT
+                {{ (form.amount * initData.amount).toFixed(4) }}
+                USDT
               </div>
             </div>
             <div class="flex justify-between mt-30">
               <div class="text-grey">{{ $t("保证金") }}</div>
               <div class="textColor">
-                {{ ((initData.amount * (form.amount / 1)) | nan).toFixed(4) }} USDT
+                {{
+                  ((form.amount * initData.amount) / form.lever_rate).toFixed(4)
+                }}
+                USDT
               </div>
             </div>
             <div class="flex justify-between mt-30">
               <div class="text-grey">{{ $t("建仓手续费") }}</div>
-			  <!-- {{
+              <!-- {{
 			    userInfo.perpetual_contracts_status === "1"
 			      ? initData.fee * (form.amount / 1)
 			      : (initData.fee * (form.amount / 1) * form.lever_rate) | nan
 			  }} -->
-              <div class="textColor" v-if="form.lever_rate==25">
-							{{ ((initData.amount * (form.amount / 1)) *  0.0375).toFixed(4)}}
+              <div class="textColor" v-if="form.lever_rate == 25">
+                {{ (initData.amount * (form.amount / 1) * 0.0375).toFixed(4) }}
                 USDT
               </div>
-			  <div class="textColor" v-if="form.lever_rate==50">
-			  				{{ ((initData.amount * (form.amount / 1))*  0.075).toFixed(4)}}
-			    USDT
-			  </div>
-			  <div class="textColor" v-if="form.lever_rate==100">
-			  				{{ ((initData.amount * (form.amount / 1))*  0.15).toFixed(4)}}
-			    USDT
-			  </div>
-			  <div class="textColor" v-if="form.lever_rate==200">
-			  				{{ ((initData.amount * (form.amount / 1)) * 0.30).toFixed(4)}}
-			    USDT
-			  </div>
+              <div class="textColor" v-if="form.lever_rate == 50">
+                {{ (initData.amount * (form.amount / 1) * 0.075).toFixed(4) }}
+                USDT
+              </div>
+              <div class="textColor" v-if="form.lever_rate == 100">
+                {{ (initData.amount * (form.amount / 1) * 0.15).toFixed(4) }}
+                USDT
+              </div>
+              <div class="textColor" v-if="form.lever_rate == 200">
+                {{ ((form.amount * 0.3) / form.lever_rate).toFixed(4) }}
+                USDT
+              </div>
             </div>
           </template>
           <div
@@ -709,6 +740,18 @@
           // 倍数
           obj.lever = [
             {
+              id: 25,
+              lever_rate: 25,
+            },
+            {
+              id: 50,
+              lever_rate: 50,
+            },
+            {
+              id: 100,
+              lever_rate: 100,
+            },
+            {
               id: 200,
               lever_rate: 200,
             },
@@ -748,10 +791,10 @@
           title: this.$t("市价"),
           type: "1",
         },
-        {
-          title: this.$t("限价"),
-          type: "2",
-        },
+        // {
+        //   title: this.$t("限价"),
+        //   type: "2",
+        // },
       ],
       form: {
         symbol: "", // 币种
@@ -762,7 +805,7 @@
         stop_price_profit: "",
         stop_price_loss: "",
         price: "",
-        amount: "", // 数量
+        amount: 0, // 数量
         para_id: "", // 交割周琦id
       },
       focus: false,
@@ -806,10 +849,10 @@
         title: this.$t("市价"),
         type: "1",
       },
-      {
-        title: this.$t("限价"),
-        type: "2",
-      },
+      // {
+      //   title: this.$t("限价"),
+      //   type: "2",
+      // },
     ];
     this.title = this.selectData[0].title;
     this.type = this.selectData[0].type;
@@ -818,30 +861,50 @@
   methods: {
     //获取张数
     getAmount(val) {
-      this.form.amount = val;
-	  // if(this.form.lever_rate==25){
-		 //  this.form.amount = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.0375))/this.initData.amount)
-	  // }else if(this.form.lever_rate==50){
-		 //  this.form.amount = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.0375))/this.initData.amount)
-	  // }else if(this.form.lever_rate==100){
-		 //  this.form.amount = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.15))/this.initData.amount)
-	  // }else{
-		 //  this.form.amount = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.3))/this.initData.amount)
-	  // }
+      this.form.amount = val || 0;
+      // if(this.form.lever_rate==25){
+      //  this.form.amount = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.0375))/this.initData.amount)
+      // }else if(this.form.lever_rate==50){
+      //  this.form.amount = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.0375))/this.initData.amount)
+      // }else if(this.form.lever_rate==100){
+      //  this.form.amount = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.15))/this.initData.amount)
+      // }else{
+      //  this.form.amount = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.3))/this.initData.amount)
+      // }
     },
     // 获取张数,数据转换
     getVolumnByLever() {
       let vol;
       // vol = this.initOpen.volume / 1;
-	  if(this.form.lever_rate==25){
-	  		  vol = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.0375))/this.initData.amount)
-	  }else if(this.form.lever_rate==50){
-	  		  vol = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.0375))/this.initData.amount)
-	  }else if(this.form.lever_rate==100){
-	  		  vol = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.15))/this.initData.amount)
-	  }else{
-	  		  vol = Math.floor((this.initFutrue.amount-(this.initFutrue.amount *  0.3))/this.initData.amount)
-	  }
+      if (this.form.lever_rate == 25) {
+        vol =
+          Math.floor(
+            // (this.initFutrue.amount - this.initFutrue.amount * 0.0375) /
+            //   this.initData.amount
+            this.initFutrue.amount / (this.initData.amount + 0.0375)
+          ) * this.form.lever_rate;
+      } else if (this.form.lever_rate == 50) {
+        vol =
+          Math.floor(
+            // (this.initFutrue.amount - this.initFutrue.amount * 0.0375) /
+            //   this.initData.amount
+            this.initFutrue.amount / (this.initData.amount + 0.075)
+          ) * this.form.lever_rate;
+      } else if (this.form.lever_rate == 100) {
+        vol =
+          Math.floor(
+            // (this.initFutrue.amount - this.initFutrue.amount * 0.15) /
+            //   this.initData.amount
+            this.initFutrue.amount / (this.initData.amount + 0.15)
+          ) * this.form.lever_rate;
+      } else {
+        vol =
+          Math.floor(
+            // (this.initFutrue.amount - this.initFutrue.amount * 0.3) /
+            //   this.initData.amount
+            this.initFutrue.amount / (this.initData.amount + 0.3)
+          ) * this.form.lever_rate;
+      }
       return Math.floor(vol);
     },
 

--
Gitblit v1.9.3