Handy_Cao 2 gadi atpakaļ
vecāks
revīzija
4697495121

+ 3 - 41
src/packages/mobile/views/swap/detail/components/listing/Index.vue

@@ -29,7 +29,7 @@
             <Field name="MarketMaxSub" :rules="formRules.MarketMaxSub" label="点差" v-if="priceMove === 3">
                 <template #input>
                     <div class="g-qty-group__stepper">
-                        <Stepper v-model="formData.MarketMaxSub" theme="round" button-size="22" :auto-fixed="false"
+                        <Stepper v-model="formData.MarketMaxSub" theme="round" :max="maxspread" :min="minspread" button-size="22" :auto-fixed="false"
                         :step="0.01" @change="calculateListingAmount"/>
                     </div>
                 </template>
@@ -92,7 +92,6 @@ import { useOrder } from '@/business/trade'
 import { fullloading, dialog } from '@/utils/vant'
 import { useRequest } from '@/hooks/request'
 import { queryTjmdTodayAccountMargin } from '@/services/api/swap'
-import { queryWrMarketTradeConfig } from '@/services/api/goods'
 import { useAccountStore, useFuturesStore, useUserStore } from '@/stores'
 import { EPriceMode, EListingSelectType, EDelistingType, EBuildType, EValidType, EOrderOperateType } from '@/constants/client'
 import AppPopup from '@mobile/components/base/popup/index.vue'
@@ -126,18 +125,14 @@ const amount = shallowRef(0.0)
 const priceMove = shallowRef(EPriceMode.PRICEMODE_LIMIT)
 /// 交易下单
 const { formData, formSubmit } = useOrder()
-/// 最大基差范围上限
-const maxBasis = shallowRef(1000.0)
-/// 最小基差范围下限
-const minBasis = shallowRef(1000.0)
 // 商品盘面
 const quote = futuresStore.getGoodsQuote(props.item.refgoodsid) ?? {}
 /// 保证金参数设置
 const margin = shallowRef<Model.TjmdTodayAccountMarginRsp>()
 /// 商品信息
 const goods = computed(() => futuresStore.getGoods(props.item.goodsid) ) 
-/// 市场交易参数配置
-const config = shallowRef<Model.WrMarketTradeConfigRsp>()
+/// 上下点差范围
+const { maxspread = 1000, minspread = -1000 } = futuresStore.getGoods(props.item.goodsid) ?? {} 
 /// 估算价
 const estimateprice = shallowRef(quote.value?.last ?? 0.0)
 /// 买卖方向
@@ -159,22 +154,6 @@ useRequest(queryTjmdTodayAccountMargin, {
     }
 })
 
-/// 查询市场交易参数配置
-useRequest(queryWrMarketTradeConfig, {
-    params: {
-        marketid: userStore.getMarketId('TRADEMODE_TJMD')
-    },
-    onSuccess: (res) => {
-        /// 数据赋值
-        if (res.data.length != 0) {
-            /// 获取参数
-            config.value = res.data[0]
-            /// 计算基差范围
-            calculateBasis()
-        }
-    }
-})
-
 /// 计算挂牌金额
 const calculateListingAmount = () => {
     /// 如果保证金配置存在的情况下
@@ -215,23 +194,6 @@ const onRadioChange = (value: number) => {
     calculateListingAmount()
 }
 
-/// 计算基差范围
-const calculateBasis = () => {
-     /// 获取配置
-     if (config.value) {
-        const { basisdownratio, basisupratio} = config.value
-        const { preclose = 0 } = quote.value ?? {}
-        console.log(basisdownratio, basisupratio, preclose)
-         /* 基差范围大小
-           基差价格可以为负或为0
-           基差范围:
-           最大值=基差取值上限百分比*关联期货合约昨收价
-           最小值= -1 * 基差取值下限百分比*关联期货合约昨收价 */
-        maxBasis.value = basisupratio*preclose
-        minBasis.value = -1.0*basisdownratio*preclose
-     }
-}
-
 // 提交挂牌
 const onSubmit = () => {
     /// 买卖方向

+ 1 - 1
src/packages/mobile/views/swap/list/Index.vue

@@ -125,7 +125,7 @@ const rowClick = (row: Model.QuoteGoodsListRsp) => {
     if (userStore.hasAuth) {
         const list = protocolList.value.filter(e => { return e.protocolstatus === 4 })
         if (userStore.userInfo.usertype != 2 && list.length === 0) {
-            showToast('请前往‘我的’-’合同签署‘,进行签署相应的合同!')
+            showToast('请先前往通过“我的”-“合同签署”功能菜单签署相应的合同!')
         } else {
             setGlobalUrlParams(row)
             router.push({ name: 'swap-detail' })

+ 2 - 41
src/packages/pc/views/market/trade/swap/detail/listing/index.vue

@@ -20,7 +20,7 @@
                     @change="calculateListingAmount" />
             </el-form-item>
             <el-form-item v-if="priceMove === 3" prop="MarketMaxSub" label="点差">
-                <el-input-number placeholder="请输入" :min="minBasis" :maxBasis="maxBasis" :precision="2"
+                <el-input-number placeholder="请输入" :min="minspread" :maxBasis="maxspread" :precision="2"
                     v-model="formData.MarketMaxSub" @change="calculateListingAmount" />
             </el-form-item>
             <el-form-item prop="OrderQty" label="挂牌数量">
@@ -67,7 +67,6 @@ import { useAccountStore, useFuturesStore, useUserStore } from '@/stores'
 import { useRequest } from '@/hooks/request'
 import { queryTjmdTodayAccountMargin } from '@/services/api/swap'
 import AppDrawer from '@pc/components/base/drawer/index.vue'
-import { queryWrMarketTradeConfig } from '@/services/api/goods'
 
 const props = defineProps({
     quoteGoods: {
@@ -86,10 +85,6 @@ const priceMove = shallowRef(EPriceMode.PRICEMODE_LIMIT)
 const amount = shallowRef(0.0)
 /// 履约保证金
 const permargin = shallowRef(0.0)
-/// 最大基差范围上限
-const maxBasis = shallowRef(1000.0)
-/// 最小基差范围下限
-const minBasis = shallowRef(-1000.0)
 
 const { formData, formSubmit, loading } = useOrder()
 const show = shallowRef(true)
@@ -97,6 +92,7 @@ const refresh = shallowRef(false)
 const formRef = shallowRef<FormInstance>()
 const qtyStepList = [1, 5, 10, 20, 30, 50] // 数量步长列表
 const qtyStep = shallowRef(qtyStepList[0]) // 数量步长
+const { maxspread = 1000, minspread = -1000 } = futuresStore.getGoods(props.quoteGoods.goodsid) ?? {}
 
 // 商品盘面
 const quote = futuresStore.getGoodsQuote(props.quoteGoods.refgoodsid) ?? {}
@@ -106,8 +102,6 @@ const estimateprice = shallowRef(quote.value?.last ?? 0.0)
 const margin = shallowRef<Model.TjmdTodayAccountMarginRsp>()
 /// 商品信息
 const goods = computed(() => futuresStore.getGoods(props.quoteGoods.goodsid))
-/// 市场交易参数配置
-const config = shallowRef<Model.WrMarketTradeConfigRsp>()
 
 /// 查询交易保证金信息
 useRequest(queryTjmdTodayAccountMargin, {
@@ -125,22 +119,6 @@ useRequest(queryTjmdTodayAccountMargin, {
     }
 })
 
-/// 查询市场交易参数配置
-useRequest(queryWrMarketTradeConfig, {
-    params: {
-        marketid: userStore.getMarketId('TRADEMODE_TJMD')
-    },
-    onSuccess: (res) => {
-        /// 数据赋值
-        if (res.data.length != 0) {
-            /// 获取参数
-            config.value = res.data[0]
-            /// 计算基差范围
-            calculateBasis()
-        }
-    }
-})
-
 const formRules: FormRules = {
     OrderPrice: [{
         required: true,
@@ -210,23 +188,6 @@ const calculateListingAmount = () => {
     }
 }
 
-/// 计算基差范围
-const calculateBasis = () => {
-    /// 获取配置
-    if (config.value) {
-        const { basisdownratio, basisupratio } = config.value
-        const { preclose = 0 } = quote.value ?? {}
-        console.log(basisdownratio, basisupratio, preclose)
-        /* 基差范围大小
-          基差价格可以为负或为0
-          基差范围:
-          最大值=基差取值上限百分比*关联期货合约昨收价
-          最小值= -1 * 基差取值下限百分比*关联期货合约昨收价 */
-        maxBasis.value = basisupratio * preclose
-        minBasis.value = -1.0 * basisdownratio * preclose
-    }
-}
-
 const onCancel = (isRefresh = false) => {
     show.value = false
     refresh.value = isRefresh

+ 1 - 1
src/packages/pc/views/market/trade/swap/index.vue

@@ -120,7 +120,7 @@ const onRowClick = (row: Model.QuoteGoodsListRsp) => {
     if (userStore.hasAuth) {
         const list = protocolList.value.filter(e => { return e.protocolstatus === 4 })
         if (userStore.userInfo.usertype != 2 && list.length === 0) {
-            ElMessage('请前往手机App进入‘我的’-’合同签署‘功能,进行签署相应的合同!')
+            ElMessage('请先前往手机App通过“我的”-“合同签署”功能菜单签署相应的合同!')
         } else {
             futuresStore.selectedGoodsId = row.refgoodsid
             selectedRow.value = row

+ 2 - 0
src/types/model/goods.d.ts

@@ -45,9 +45,11 @@ declare namespace Model {
         modifierid: number;//修改人
         marketmarginalgorithm:number; // 保证金计算方式
         marketmarginvalue:number; // 即市保证金值
+        maxspread: number // 点差上限(46)
         modifystatus: number;//变更状态 - 1:未变更 2:变更中 3:待审核 4:已审核
         modifytime: string;//修改时间
         mindeliverylot: number;//最小交收手数(50模式)
+        minspread: number // 点差下限(46)
         outerdealmode: number;//外部成交方式[通道交易]- 1:净头寸 2:开平 3:平今
         outgoodscode: string;//商品代码(外部)
         qtydecimalplace: number;//成交量小数位