li.shaoyi hai 1 día
pai
achega
1f2ed13106

+ 2 - 2
src/packages/digital/components/field-currency/index.vue

@@ -2,14 +2,14 @@
     <Field v-bind="$attrs" :placeholder="t('common.choice')" arrow-direction="down" is-link readonly @click="showSheet = true">
         <template #input v-if="currencyItem">
             <app-image-icon :url="getCurrencyIconUrl(currencyItem.enumitemvalue)" size="small" />
-            <span>{{ currencyItem.label }}</span>
+            <span>{{ currencyItem.enumitemvalue }}</span>
         </template>
     </Field>
     <ActionSheet v-model:show="showSheet" :title="t('common.choice')" teleport="body">
         <CellGroup style="min-height: 200px;">
             <RadioGroup v-model="currencyId" v-if="currencyList.length">
                 <template v-for="(item, index) in currencyList" :key="index">
-                    <Cell size="large" :title="item.label" :border="false" clickable center
+                    <Cell size="large" :title="item.enumitemvalue" :border="false" clickable center
                         @click="onRadioClick(item.value)">
                         <template #icon>
                             <app-image-icon :url="getCurrencyIconUrl(item.enumitemvalue)" size="small"

+ 2 - 2
src/packages/digital/views/contract/components/position/detail/close/index.vue

@@ -42,7 +42,7 @@
                     <Field v-if="formData.PriceMode === EPriceMode.PRICEMODE_LIMIT" name="OrderPrice"
                         :rules="formRules.OrderPrice" :label="t('quote.goods.orderprice')">
                         <template #input>
-                            <app-stepper v-model.number="formData.OrderPrice" :min="0"
+                            <app-stepper v-model="formData.OrderPrice" :min="0"
                                 :decimal-length="selectedRow.decimalplace" :step="quote?.decimalvalue"
                                 :auto-fixed="false" />
                         </template>
@@ -50,7 +50,7 @@
                     <Cell :title="t('quote.goods.orderprice')" :value="t('digital.optimal')" v-else />
                     <Field name="OrderQty" :rules="formRules.OrderQty" :label="t('quote.goods.orderqty')">
                         <template #input>
-                            <app-stepper v-model.number="formData.OrderQty" :min="0" :max="maxQty" :auto-fixed="false"
+                            <app-stepper v-model="formData.OrderQty" :min="0" :max="maxQty" :auto-fixed="false"
                                 integer />
                         </template>
                     </Field>

+ 2 - 2
src/packages/digital/views/contract/components/position/detail/tpsl/index.vue

@@ -43,7 +43,7 @@
                     </Cell>
                     <Field name="TPPrice" :rules="formRules.TPPrice">
                         <template #input>
-                            <app-stepper v-model.number="formData.TPPrice"
+                            <app-stepper v-model="formData.TPPrice"
                                 :min="selectedRow.buyorsell === BuyOrSell.Sell ? quote?.decimalvalue : 0"
                                 :decimal-length="quote?.decimalplace" :step="quote?.decimalvalue"
                                 :disabled="!formData.TPFlag" />
@@ -59,7 +59,7 @@
                     </Cell>
                     <Field name="SLPrice" :rules="formRules.SLPrice">
                         <template #input>
-                            <app-stepper v-model.number="formData.SLPrice"
+                            <app-stepper v-model="formData.SLPrice"
                                 :min="selectedRow.buyorsell === BuyOrSell.Buy ? quote?.decimalvalue : 0"
                                 :decimal-length="quote?.decimalplace" :step="quote?.decimalvalue"
                                 :disabled="!formData.SLFlag" />

+ 2 - 2
src/packages/digital/views/contract/components/position/list/close/index.vue

@@ -35,7 +35,7 @@
                     <Field :label="t('quote.swap.orderprice')" :rules="formRules.OrderPrice"
                         v-if="formData.PriceMode === EPriceMode.PRICEMODE_LIMIT">
                         <template #input>
-                            <app-stepper v-model.number="formData.OrderPrice" :min="0" :decimal-length="quote?.decimalplace"
+                            <app-stepper v-model="formData.OrderPrice" :min="0" :decimal-length="quote?.decimalplace"
                                 :step="quote?.decimalvalue" />
                         </template>
                     </Field>
@@ -43,7 +43,7 @@
                         v-if="formData.PriceMode === EPriceMode.PRICEMODE_MARKET" />
                     <Field name="OrderQty" :rules="formRules.OrderQty" :label="t('quote.goods.orderqty')">
                         <template #input>
-                            <app-stepper v-model.number="formData.OrderQty" min="0.0" :max="selectedRow.enableqty"
+                            <app-stepper v-model="formData.OrderQty" min="0.0" :max="selectedRow.enableqty"
                                 :auto-fixed="false" integer />
                         </template>
                     </Field>

+ 2 - 2
src/packages/digital/views/contract/goods/detail/index.vue

@@ -49,7 +49,7 @@
                 <Field v-if="formData.PriceMode === PriceMode.Limit" name="OrderPrice" :rules="formRules.OrderPrice"
                     :label="`${t('digital.orderprice')}(${enumName})`" label-align="top">
                     <template #input>
-                        <app-stepper v-model.number="formData.OrderPrice" :min="0" :decimal-length="quote?.decimalplace"
+                        <app-stepper v-model="formData.OrderPrice" :min="0" :decimal-length="quote?.decimalplace"
                             :step="quote?.decimalvalue" />
                     </template>
                 </Field>
@@ -59,7 +59,7 @@
                 <Field name="OrderQty" :rules="formRules.OrderQty"
                     :label="`${t('quote.goods.orderqty')}(${quote?.goodscode})`" label-align="top">
                     <template #input>
-                        <app-stepper v-model.number="formData.OrderQty" :min="0" />
+                        <app-stepper v-model="formData.OrderQty" :min="0" />
                     </template>
                 </Field>
             </CellGroup>

+ 12 - 9
src/packages/digital/views/listing/goods/detail/index.vue

@@ -31,7 +31,7 @@
                 <Field name="OrderPrice" :rules="formRules.OrderPrice" :label="t('quote.goods.orderprice')"
                     label-align="top">
                     <template #input>
-                        <app-stepper v-model.number="formData.OrderPrice" :min="0" :decimal-length="quote?.decimalplace"
+                        <app-stepper v-model="orderPrice" :min="0" :decimal-length="quote?.decimalplace"
                             :step="quote?.decimalvalue" />
                     </template>
                 </Field>
@@ -39,8 +39,9 @@
             <CellGroup inset>
                 <Field :label="t('quote.goods.orderqty')" label-align="top" :rules="formRules.OrderQty">
                     <template #input>
-                        <app-stepper v-model.number="formData.OrderQty" :min="0"
-                            :decimal-length="baseAccount?.currencydecimalplace" :step="baseAccount?.currencydecimalplace" />
+                        <app-stepper v-model="formData.OrderQty" :min="0"
+                            :decimal-length="baseAccount?.currencydecimalplace"
+                            :step="baseAccount?.currencydecimalplace" />
                     </template>
                 </Field>
             </CellGroup>
@@ -150,6 +151,7 @@ const futuresStore = useFuturesStore()
 const spotAccountStore = useSpotAccountStore()
 const activeTab = shallowRef(0)
 const formRef = shallowRef<FormInstance>()
+const orderPrice = shallowRef('0')
 
 const formData = reactive<Partial<Proto.DigitalOrderReq>>({
     BuyOrSell: BuyOrSell.Buy,
@@ -172,9 +174,9 @@ const calculations = computed(() => {
     const sellFeeValue = futuresStore.getFeeValue(quote.value, 102)
 
     const { last = 0, agreeunit = 0 } = quote.value ?? {}
-    const { OrderPrice = 0, OrderQty = 0 } = formData
+    const { OrderQty = 0 } = formData
 
-    const price = formData.PriceMode === PriceMode.Market ? last : Number(OrderPrice)
+    const price = formData.PriceMode === PriceMode.Market ? last : Number(orderPrice.value)
     const amount = OrderQty * agreeunit
 
     // 预估金额
@@ -186,7 +188,7 @@ const calculations = computed(() => {
     // 买预估手续费
     const buyEstimatedFee = (buyFeeValue.FeeAlgorithm === 2 ? amount : estimatedAmount) * buyFeeValue.feeValue
     // 可买数量
-    const maxBuyQty = (price && maxBalance>buyEstimatedFee) ? (maxBalance - buyEstimatedFee) / (price * agreeunit) : 0
+    const maxBuyQty = (price && maxBalance > buyEstimatedFee) ? maxBalance / (price * agreeunit) : 0
 
     // 卖预估手续费
     const sellEstimatedFee = (sellFeeValue.FeeAlgorithm === 2 ? amount : estimatedAmount) * sellFeeValue.feeValue
@@ -194,7 +196,7 @@ const calculations = computed(() => {
     const maxSellQty = spotAccountStore.getAvailableBalance(baseAccount.value)
     // 可获金额
     const maxAmount = price * maxSellQty * agreeunit
-    
+
 
     return {
         estimatedAmount,
@@ -212,7 +214,7 @@ const formRules: { [key: string]: FieldRule[] } = {
     OrderPrice: [{
         message: t('quote.goods.pleaseenterorderprice'),
         validator: () => {
-            return Number(formData.OrderPrice) > 0
+            return Number(orderPrice.value) > 0
         }
     }],
     OrderQty: [{
@@ -240,6 +242,7 @@ const onSubmit = () => {
             formData.QuoteAccountID = Long.fromString(quoteAccountId)
             formData.GoodsID = quote.value?.goodsid
             formData.MarketID = quote.value?.marketid
+            formData.OrderPrice = Number(orderPrice.value)
 
             digitalOrder({
                 data: formData
@@ -263,7 +266,7 @@ const onSubmit = () => {
 onMounted(() => {
     if (quote.value) {
         subscribe.start(quote.value.goodscode)
-        formData.OrderPrice = quote.value.last
+        orderPrice.value = quote.value.last.toFixed(quote.value.decimalplace)
     }
 
     onActivated(() => {

+ 2 - 2
src/packages/digital/views/spot/goods/detail/index.vue

@@ -32,14 +32,14 @@
                 </Field>
                 <Field label="价格" :rules="formRules.OrderPrice" v-if="formData.PriceMode === PriceMode.Limit">
                     <template #input>
-                        <app-stepper v-model.number="formData.OrderPrice" :min="0" :decimal-length="quote?.decimalplace"
+                        <app-stepper v-model="formData.OrderPrice" :min="0" :decimal-length="quote?.decimalplace"
                             :step="quote?.decimalvalue" />
                     </template>
                 </Field>
                 <Cell title="价格" value="最优市价" v-if="formData.PriceMode === PriceMode.Market" />
                 <Field label="数量" :rules="formRules.OrderQty">
                     <template #input>
-                        <app-stepper v-model.number="formData.OrderQty" :min="0"
+                        <app-stepper v-model="formData.OrderQty" :min="0"
                             :decimal-length="baseAccount?.currencydecimalplace" />
                     </template>
                 </Field>

+ 2 - 2
src/packages/digital/views/wallet/deposit/index.vue

@@ -103,9 +103,9 @@ const formRules: { [key: string]: FieldRule[] } = {
     }],
 }
 
-const onCurrencyChange = (item: { label: string; }) => {
+const onCurrencyChange = (item: { enumitemvalue: string; }) => {
     state.tokenId = 0
-    state.currencyName = item?.label
+    state.currencyName = item?.enumitemvalue
     tokenItem.value = undefined
 }
 

+ 1 - 1
src/packages/digital/views/wallet/transfer/index.vue

@@ -28,7 +28,7 @@
                 <Cell :title="t('mine.setting.qty')" :value="`${ t('digital.available')} (${spotBalance})`" v-if="formData.DigitalTransferType === 4" />
                 <Field name="Amount" label-align="top" :rules="formRules.Amount">
                     <template #input>
-                        <app-stepper v-model.number="formData.Amount" :min="0" :decimal-length="contractAccount?.currencydecimalplace" />
+                        <app-stepper v-model="formData.Amount" :min="0" :decimal-length="contractAccount?.currencydecimalplace" />
                     </template>
                 </Field>
             </CellGroup>

+ 3 - 3
src/packages/digital/views/wallet/withdraw/index.vue

@@ -26,7 +26,7 @@
                     :value="`${t('digital.available')} (${formatDecimal(balance, accountItem?.currencydecimalplace)})`" />
                 <Field name="Amount" label-align="top" :rules="formRules.Amount">
                     <template #input>
-                        <app-stepper v-model.number="formData.Amount" :min="0" :max="balance"
+                        <app-stepper v-model="formData.Amount" :min="0" :max="balance"
                             :decimal-length="accountItem?.currencydecimalplace" />
                     </template>
                 </Field>
@@ -103,9 +103,9 @@ const formRules: { [key: string]: FieldRule[] } = {
     }],
 }
 
-const onCurrencyChange = (item: { label: string; }) => {
+const onCurrencyChange = (item: { enumitemvalue: string; }) => {
     state.tokenId = 0
-    state.currencyName = item?.label
+    state.currencyName = item?.enumitemvalue
     tokenItem.value = undefined
 }