Quellcode durchsuchen

Merge branch 'master' of http://47.101.159.18:3000/Muchinfo/THJ_Mobile

li.shaoyi vor 3 Jahren
Ursprung
Commit
1fd226d85e

+ 154 - 0
public/proto/thj.proto

@@ -640,4 +640,158 @@ message WRListingCancelOrderRsp {
 	optional uint64 CancelQty = 8; // 撤单数量
 	optional string OrderTime = 9; // 接受撤单的时间
 	optional string ClientSerialNo = 10; // 客户端流水号
+}
+
+// 仓单出库提单明细数据
+message WROutInDetail {
+	optional string LadingBillID = 1; // 提单ID
+	optional uint64 SubNum = 2; // 提单子单号
+	optional uint64 Qty = 3; // 子提单总数量
+	optional uint64 OutQty = 4; // 预约数量
+}
+
+// 仓单出库申请
+message WROutApplyReq {
+	optional MessageHead Header = 1;
+	optional uint64 ClientSerialID = 2; // 客户端唯一ID
+	optional uint64 WRStandardID = 3; // 仓单标准ID
+	optional uint64 WarehouseID = 4; // 仓库ID
+	optional uint64 UserID = 5; // 申请人ID
+	optional uint64 AccountID = 6; // 申请人账户ID
+	optional string Mobile = 7; // 申请人手机号
+	optional string AppointmentDate = 8; // 预约出库时间(格式:20200101)
+	optional uint32 AppointmentModel = 9; // 预约方式:1-物流,2-自送,3-自提
+	optional uint64 CountryID = 10; // 国家
+	optional uint64 ProvinceID = 11; // 省
+	optional uint64 DistrictID = 12; // 区
+	optional uint64 CityID = 13; // 市
+	optional string Address = 14; // 详细地址
+	optional string ContactName = 15; // 收货人提货人
+	optional string ContactNum = 16; // 收货人提货人手机
+	optional string AppointmentRemark = 17; // 预约备注
+	optional uint64 CreatorID = 18; // 创建人ID
+	repeated WROutInDetail WROutInDetails = 19; // 仓单出库提单明细数据
+}
+
+// 仓单出库申请响应
+message WROutApplyRsp {
+	optional MessageHead Header = 1; // 消息头
+	optional int32 RetCode = 2; // 返回码
+	optional string RetDesc = 3; // 描述信息
+	optional uint64 ClientSerialID = 4; // 客户端唯一ID
+}
+
+// 要素类型明细
+message DGFactoryItems {
+	optional uint64 DGFactoryItemTypeID = 1; // 要素项类型ID
+	optional uint64 DGFactoryItemID = 2; // 预约要素项类型值
+	optional uint32 ItemTypeMode = 3; // 要素项类型模式
+}
+
+// 仓单贸易浮动价商品配置信息
+message WRGoodsInfo {
+	optional uint32 GoodsID = 1; // 配置商品ID
+	optional string GoodsCode = 2; // 配置商品代码
+	optional double PriceFactor = 3; // 商品价格系数
+	optional double PriceMove = 4; // 商品升贴水值
+	optional double WeightRatio = 5; // 商品重量系数
+}
+
+// 持仓单挂牌请求
+message HdWROrderReq {
+	optional MessageHead Header = 1;
+	optional uint64 LadingBillId = 2; // 提单id(wrholdlb的LadingBillId字段),卖的时候填写
+	required string TradeDate = 3; // 交易日
+	optional uint64 SubNum = 4; // 提单子单号(wrholdlb的SubNum字段),卖的时候填写
+	optional uint64 WRFactorTypeId = 5; // 仓单要素ID(wrholdlb的WRFactorTypeId字段),卖的时候填写
+	required uint32 UserID = 6; // 用户ID
+	required uint64 AccountID = 7; // 资金账号
+	optional uint32 IsSpecified = 8; // 是否指定对手
+	repeated uint64 MatchAccIDs = 9; // 仓单贸易对手用户ID集合(指定对手时填写)
+	required uint64 OrderQty = 10; // 委托数量(可挂部分数据量)
+	required uint32 DeliveryGoodsID = 11; // 交割商品商品ID
+	optional uint32 WRPriceType = 12; // 价格方式
+	optional double FixedPrice = 13; // 固定价格
+	repeated WRGoodsInfo WRTradeGoods = 14; // 仓单贸易商品配置集合(浮动价时填写)
+	optional double PriceFactor = 15; // 价格系数(浮动价时填写)-[挂牌]
+	optional double PriceMove = 16; // 升贴水(浮动价时填写)
+	optional uint32 TimevalidType = 17; // 时间有效类型
+	optional string ValidTime = 18; // 有效期限
+	optional double FirstRatio = 19; // 首付比例
+	optional int64 PerformanceTemplateID = 20; // 履约计划模板ID
+	optional uint32 OrderSrc = 21; // 委托来源
+	optional string ClientSerialNo = 22; // 客户端流水号
+	optional string ClientOrderTime = 23; // 客户端委托时间
+	optional uint32 ClientType = 24; // 终端类型
+	optional uint64 OperatorID = 25; // 操作员账号ID
+	optional uint32 BuyOrSell = 26; // 买卖方向
+	optional uint32 PriceDisplayMode = 27; // 浮动价显示方式
+	optional uint32 CanBargain = 28; // 挂牌是否可议价0:不可1:可-摘牌是否议价
+	optional string Attachment1 = 29; // 附件1
+	optional string Attachment2 = 30; // 附件2
+	optional string Remark = 31; // 备注
+	optional uint64 ApplyID = 32; // 申请ID
+	optional uint32 CanPart = 33; // 是否允许部份摘牌0:不允许;1:允许
+	repeated string MatchAccIDsString = 34; // 仓单贸易对手用户ID集合(指定对手时填写)
+	optional string DeliveryMonth = 35; // 交收月
+	optional uint32 HasWr = 36; // 是否有仓单-0:没有仓单1:有仓单
+	optional uint32 WRStandardID = 37; // 现货品种ID
+	repeated DGFactoryItems FactoryItems = 38; // 要素类型明细集合(没有仓单要素ID填写)
+	optional uint64 DelistMinQty = 39; // 起摘数量
+	optional uint32 MarginFlag = 40; // 挂牌是否指定保证金0:否1:是
+	optional uint32 MarginAlgorithm = 41; // 指定保证金方式1:比率2:固定
+	optional double MarginValue = 42; // 指定保证金设置值
+	optional uint32 AllFriendsFlag = 43; // 是否全好友可见0:否1:是
+}
+
+// 持仓单挂牌应答
+message HdWROrderRsp {
+	optional MessageHead Header = 1; // 消息头
+	optional int32 RetCode = 2; // 返回码
+	optional string RetDesc = 3; // 描述信息
+	optional uint32 UserID = 4; // 用户ID
+	optional uint64 AccountID = 5; // 资金账号
+	optional uint64 WRTradeOrderID = 6; // 仓单贸易委托单ID
+	optional uint64 FreezeQty = 7; // 冻结数量
+	optional string OrderTime = 8; // 接收委托交易的时间
+	optional string ClientSerialNo = 9; // 客户端流水号
+}
+
+// 持仓单摘牌请求
+message HdWRDealOrderReq {
+	optional MessageHead Header = 1;
+	optional uint32 UserID = 2; // 用户ID
+	optional uint64 AccountID = 3; // 资金账号
+	optional uint64 RelatedWRTradeOrderID = 4; // 关联委托单号(摘牌委托关联挂牌委托单ID)
+	optional uint32 WRTransferUserID = 5; // 仓单受让用户
+	optional uint64 OrderQty = 6; // 委托数量
+	optional uint32 OrderSrc = 7; // 委托来源
+	optional string ClientSerialNo = 8; // 客户端流水号
+	optional string ClientOrderTime = 9; // 客户端委托时间
+	optional uint32 ClientType = 10; // 终端类型
+	optional uint64 OperatorID = 11; // 操作员账号ID
+	optional uint32 BuyOrSell = 12; // 买卖方向
+	optional uint64 ApplyID = 13; // 申请ID
+	optional uint64 LadingBillId = 14; // 提单id(wrholdlb的LadingBillId字段),卖的时候填写
+	optional uint64 SubNum = 15; // 提单子单号(wrholdlb的SubNum字段),卖的时候填写
+	optional uint64 WRFactorTypeId = 16; // 仓单要素ID(wrholdlb的WRFactorTypeId字段),卖的时候填写
+	optional string TradeDate = 17; // 交易日
+	optional string DeliveryMonth = 18; // 交收月
+	optional uint32 HasWr = 19; // 是否有仓单-0:没有仓单1:有仓单
+	optional uint32 IsFinancing = 20; // 是否融资购买(买摘牌时有效)-0:否1:是
+	optional uint64 ProductDetailID = 21; // 金融机构产品组合ID(融资购买时有效)
+}
+
+// 持仓单摘牌应答
+message HdWRDealOrderRsp {
+	optional MessageHead Header = 1; // 消息头
+	optional int32 RetCode = 2; // 返回码
+	optional string RetDesc = 3; // 描述信息
+	optional uint32 UserID = 4; // 用户ID
+	optional uint64 AccountID = 5; // 资金账号
+	optional uint64 WRTradeOrderID = 6; // 仓单贸易委托单ID
+	optional uint64 RelatedWRTradeOrderID = 7; // 关联委托单号(摘牌委托关联挂牌委托单ID)
+	optional double FreezeAmount = 8; // 冻结货款
+	optional string OrderTime = 9; // 接收委托交易的时间
+	optional string ClientSerialNo = 10; // 客户端流水号
 }

+ 1 - 1
src/business/order/index.ts

@@ -57,7 +57,7 @@ export function useQueryWrOutInApply() {
                 userid: getUserId(),
                 begindate: begindate,
                 enddate: enddate,
-                page: pageIndex.value,
+                page: 1,
                 pagesize: pageSize.value,
             },
             success: (res) => {

+ 27 - 11
src/business/trade/index.ts

@@ -4,6 +4,8 @@ import { ClientType, OrderSrc } from '@/constants/client'
 import { useLoginStore } from '@/stores'
 import { spotPresaleDestingOrder, spotPresalePlayment, wrListingCancelOrder, spotPresaleDeliveryConfirm, spotPresaleBreachOfContractConfirm, spotPresaleBreachOfContractApply } from '@/services/api/trade'
 import { formatDate } from "@/filters";
+import { useNavigation } from '@/hooks/navigation'
+import Long from 'long'
 
 // 采购摘牌
 export function usePurchaseOrderDesting() {
@@ -148,29 +150,43 @@ export function useWrListingCancelOrder() {
     const loading = shallowRef(false)
     const { getUserId, getFirstAccountId, getLoginId } = useLoginStore()
 
-    const cancelSubmit = (id: number, buyorsell: number, wrid?: number ) => {
-        loading.value = true
-        return wrListingCancelOrder({
-            data: {
+    const { route } = useNavigation()
+    const item = route.params.item
+    const detail = shallowRef<Model.WrOrderDetailRsp>()
+
+    if (item) {
+        detail.value = JSON.parse(item.toString())
+    }
+
+    const cancelSubmit = () => {
+        const param = detail.value
+        if (param) {
+            loading.value = true
+            const data:Partial<Proto.WRListingCancelOrderReq>={
                 UserID: getUserId(),
                 AccountID: getFirstAccountId(),
                 OperatorID: getLoginId(),
                 OrderSrc: OrderSrc.ORDERSRC_CLIENT,
-                OldWRTradeOrderID: id,
+                OldWRTradeOrderID: Long.fromString(param.wrtradeorderid),
                 ClientOrderTime: formatDate(new Date().toString(), 'YYYY-MM-DD HH:mm:ss'),
                 ClientSerialNo: v4(), // 客户端流水号
                 ClientType: ClientType.Web, // 终端类型
-                BuyOrSell: buyorsell,
-                WRID: wrid
-            },
-            complete: () => {
-                loading.value = false
+                BuyOrSell: param.buyorsell,
             }
-        })
+
+            return wrListingCancelOrder({
+                data,
+                complete: () => {
+                    loading.value = false
+                }
+            })
+        }
+        return Promise.reject('撤销失败')
     }
 
     return {
         loading,
         cancelSubmit,
+        detail,
     }
 }

+ 19 - 13
src/constants/funcode.ts

@@ -55,16 +55,22 @@ export enum FunCode {
     THJRedPacketLotteryReq = 1441863, // 铁合金抽奖接口请求
     THJRedPacketLotteryRsp = 1441864, // 铁合金抽奖接口响应
 
-    SpotPresaleDestingOrderReq = 1441849, // 铁合金现货预售摘牌接口请求
-    SpotPresaleDestingOrderRsp = 1441850, // 铁合金现货预售摘牌接口应答
-    SpotPresaleDeliveryConfirmReq = 1441861, // 铁合金现货预售交收确认接口请求
-    SpotPresaleDeliveryConfirmRsp = 1441862, // 铁合金现货预售交收确认接口应答
-    SpotPresaleBreachOfContractApplyReq = 1441855,	/// 铁合金现货预售违约申请接口请求(0, 22, 63)
-    SpotPresaleBreachOfContractApplyRsp = 1441856,	/// 铁合金现货预售违约申请接口应答(0, 22, 64)
-    SpotPresaleBreachOfContractConfirmReq = 1441857, // 铁合金现货预售违约确认接口请求
-    SpotPresaleBreachOfContractConfirmRsp = 1441858, // 铁合金现货预售违约确认接口应答
-    SpotPresalePlaymentReq = 1441853,                // 铁合金现货预售付款处理接口请求(0, 22, 61)
-    SpotPresalePlaymentRsp = 1441854,           	 // 铁合金现货预售付款处理接口应答(0, 22, 62)
-    WRListingCancelOrderReq = 1441796,               /// 挂牌撤单请求
-    WRListingCancelOrderRsp = 1441797,               /// 挂牌撤单应答
-}
+    SpotPresaleDestingOrderReq = 1441849,             /// 铁合金现货预售摘牌接口请求
+    SpotPresaleDestingOrderRsp = 1441850,             /// 铁合金现货预售摘牌接口应答
+    SpotPresaleDeliveryConfirmReq = 1441861,          /// 铁合金现货预售交收确认接口请求
+    SpotPresaleDeliveryConfirmRsp = 1441862,          /// 铁合金现货预售交收确认接口应答
+    SpotPresaleBreachOfContractApplyReq = 1441855,	  /// 铁合金现货预售违约申请接口请求(0, 22, 63)
+    SpotPresaleBreachOfContractApplyRsp = 1441856,	  /// 铁合金现货预售违约申请接口应答(0, 22, 64)
+    SpotPresaleBreachOfContractConfirmReq = 1441857,  /// 铁合金现货预售违约确认接口请求
+    SpotPresaleBreachOfContractConfirmRsp = 1441858,  /// 铁合金现货预售违约确认接口应答
+    SpotPresalePlaymentReq = 1441853,                 /// 铁合金现货预售付款处理接口请求(0, 22, 61)
+    SpotPresalePlaymentRsp = 1441854,           	  /// 铁合金现货预售付款处理接口应答(0, 22, 62)
+    WRListingCancelOrderReq = 1441796,                /// 挂牌撤单请求
+    WRListingCancelOrderRsp = 1441797,                /// 挂牌撤单应答
+    WROutApplyReq = 1900657,                          /// 仓单出库申请
+    WROutApplyRsp = 1900658,                          /// 仓单出库申请响应
+    HdWROrderReq = 1441807,                           /// 持仓单挂牌请求
+    HdWROrderRsp = 1441808,                           /// 持仓单挂牌应答
+    HdWRDealOrderReq = 1441809,                       /// 持仓单摘牌请求
+    HdWRDealOrderRsp = 1441810,                       /// 持仓单摘牌应答
+} 

+ 3 - 10
src/packages/mobile/views/mine/order/detail/wrorder/index.vue

@@ -31,22 +31,15 @@
 
 <script lang="ts" setup>
 
-import { shallowRef } from 'vue'
 import { useNavigation } from '@/hooks/navigation'
 import { fullloading, dialog } from '@/utils/vant'
 import { CellGroup, Cell, Empty, Button, Toast } from 'vant'
 import { formatDate } from "@/filters";
 import { useWrListingCancelOrder } from "@/business/trade"
 
-const { route, router } = useNavigation()
-const item = route.params.item
-const detail = shallowRef<Model.WrOrderDetailRsp>()
+const { router } = useNavigation()
 
-const { cancelSubmit } = useWrListingCancelOrder()
-
-if (item) {
-    detail.value = JSON.parse(item.toString())
-}
+const { cancelSubmit, detail } = useWrListingCancelOrder()
 
 /// 确认交收
 const spotConfirmSubmit = () => {
@@ -54,7 +47,7 @@ const spotConfirmSubmit = () => {
         showCancelButton: true
     }).then(() => {
         fullloading((hideLoading) => {
-            cancelSubmit((detail.value?.wrtradeorderid ?? '0'), detail.value?.buyorsell ?? 0).then(() => {
+            cancelSubmit().then(() => {
                 hideLoading()
                 dialog('撤销请求成功,请耐心等待审核。').then(() => {
                     router.back()

+ 0 - 1
src/packages/mobile/views/mine/order/list/components/purchasetrade/index.vue

@@ -11,7 +11,6 @@
 <script lang="ts" setup>
 
 import { shallowRef } from 'vue'
-// import { Button } from 'vant'
 import { useNavigation } from '@/hooks/navigation'
 import { useTHJPurchaseTradeDetail } from '@/business/order'
 import AppPullRefresh from '@mobile/components/base/pull-refresh/index.vue'

+ 21 - 0
src/services/api/trade/index.ts

@@ -42,4 +42,25 @@ export function spotPresaleBreachOfContractConfirm(params: TradeParams<Proto.Spo
  */
  export function wrListingCancelOrder(params: TradeParams<Proto.WRListingCancelOrderReq, Proto.WRListingCancelOrderRsp>) {
     return tradeServerRequest('WRListingCancelOrderReq', 'WRListingCancelOrderRsp', params);
+}
+
+/**
+ * 仓单出库申请
+ */
+ export function wrOutApplyReq(params: TradeParams<Proto.WROutApplyReq, Proto.WROutApplyRsp>) {
+    return tradeServerRequest('WROutApplyReq', 'WROutApplyRsp', params);
+}
+
+/**
+ * 持仓单挂牌请求
+ */
+ export function hdWROrderReq(params: TradeParams<Proto.HdWROrderReq, Proto.HdWROrderRsp>) {
+    return tradeServerRequest('HdWROrderReq', 'HdWROrderRsp', params);
+}
+
+/**
+ * 持仓单摘牌请求
+ */
+ export function hdWRDealOrderReq(params: TradeParams<Proto.HdWRDealOrderReq, Proto.HdWRDealOrderRsp>) {
+    return tradeServerRequest('HdWRDealOrderReq', 'HdWRDealOrderRsp', params);
 }

+ 1 - 1
src/services/http/index.ts

@@ -26,7 +26,7 @@ const httpService = new (class {
                     const { getToken } = useLoginStore()
                     removePending(config) //在请求开始前,对之前的请求做检查取消操作
                     addPending(config) //将当前请求添加到列表中
-
+                    console.log('Token', getToken())
                     //请求头签名
                     const sign = {
                         token: getToken(),

+ 1 - 1
src/types/model/order.d.ts

@@ -102,7 +102,7 @@ declare namespace Model {
         thumurls: string
         /// 交易日(yyyyMMdd)
         tradedate: string
-        /// 成交价格 - [摘牌] (浮动价 ((商品1价格商品1价格系数+升贴水) 商品1重量系数 + 商品2价格商品2价格系数+商品2升贴水) 商品2重量系数 …)* 委托单价格系数 + 委托单升贴水)
+        /// 成交价格 - [摘牌] (浮动价 ((商品1价格商品1价格系数+升贴水) 商品1重量系数 + 商品2价格商品2价格系数+商品2升贴水) 商品2重量系数 …)* 委托单价格系数 +委托单升贴水)
         tradeprice: number
         /// 成交数量
         tradeqty: number

+ 159 - 5
src/types/proto/trade.d.ts

@@ -92,7 +92,7 @@ declare global {
         }
 
         // 铁合金现货预售付款处理接口请求
-        interface  SpotPresalePlaymentReq {
+        interface SpotPresalePlaymentReq {
             Header?: IMessageHead;
             UserID: number; // 用户ID,必填
             WRTradeDetailID: number; // 采购成交单ID,必填
@@ -100,7 +100,7 @@ declare global {
             ClientSerialNo: string; // 客户端流水号
 }
         // 铁合金现货预售付款处理接口应答
-        interface  SpotPresalePlaymentRsp {
+        interface SpotPresalePlaymentRsp {
             Header?: IMessageHead;
             RetCode: number; // 返回码
             RetDesc: string; // 描述信息
@@ -110,11 +110,11 @@ declare global {
         }
 
         // 挂牌撤单请求
-        interface   WRListingCancelOrderReq {
+        interface WRListingCancelOrderReq {
             Header?: IMessageHead;
             UserID?: number // 用户ID
             AccountID?: number // 资金账号
-            OldWRTradeOrderID?: number // 目标仓单贸易委托单ID
+            OldWRTradeOrderID?: Long // 目标仓单贸易委托单ID
             OrderSrc?: number // 委托来源
             ClientSerialNo?: string // 客户端流水号
             ClientOrderTime?: string // 客户端委托时间
@@ -124,7 +124,7 @@ declare global {
             WRID?: number // 仓单ID,卖的时候填写
 }
         // 挂牌撤单应答
-        interface  WRListingCancelOrderRsp {
+        interface WRListingCancelOrderRsp {
             Header?: IMessageHead;
             RetCode: number; // 返回码
             RetDesc: string; // 描述信息
@@ -136,5 +136,159 @@ declare global {
             OrderTime?: string // 接受撤单的时间
             ClientSerialNo?: string // 客户端流水号
         }
+
+        // 仓单出库提单明细数据
+        interface WROutInDetail {
+            LadingBillID: string; // 提单ID
+            SubNum: number; // 提单子单号
+            Qty: number; // 子提单总数量
+            OutQty: number; // 预约数量
+        }
+
+        // 仓单出库申请
+        interface WROutApplyReq {
+            Header?: IMessageHead;
+            ClientSerialID: number; // 客户端唯一ID
+            WRStandardID: number; // 仓单标准ID
+            WarehouseID: number; // 仓库ID
+            UserID: number; // 申请人ID
+            AccountID: number; // 申请人账户ID
+            Mobile: string; // 申请人手机号
+            AppointmentDate: string; // 预约出库时间(格式:20200101)
+            AppointmentModel: number; // 预约方式:1-物流,2-自送,3-自提
+            CountryID: number; // 国家
+            ProvinceID: number; // 省
+            DistrictID: number; // 区
+            CityID: number; // 市
+            Address: string; // 详细地址
+            ContactName: string; // 收货人提货人
+            ContactNum: string; // 收货人提货人手机
+            AppointmentRemark: string; // 预约备注
+            CreatorID: number; // 创建人ID
+            WROutInDetails: WROutInDetail; // 仓单出库提单明细数据
+        }
+
+        // 仓单出库申请响应
+        interface WROutApplyRsp {
+            Header?: IMessageHead; // 消息头
+            RetCode: number; // 返回码
+            RetDesc: string; // 描述信息
+            ClientSerialID: number; // 客户端唯一ID
+        }
+
+        // 要素类型明细
+        interface DGFactoryItems {
+            DGFactoryItemTypeID: number = 1; // 要素项类型ID
+            DGFactoryItemID: number; // 预约要素项类型值
+            ItemTypeMode: number; // 要素项类型模式
+        }
+
+        // 仓单贸易浮动价商品配置信息
+        interface WRGoodsInfo {
+            GoodsID: number = 1; // 配置商品ID
+            GoodsCode: string; // 配置商品代码
+            PriceFactor: number; // 商品价格系数
+            PriceMove: number; // 商品升贴水值
+            WeightRatio: number; // 商品重量系数
+        }
+
+        // 持仓单挂牌请求
+        interface HdWROrderReq {
+            Header?: IMessageHead;
+            LadingBillId: number; // 提单id(wrholdlb的LadingBillId字段),卖的时候填写
+            TradeDate: string; // 交易日
+            SubNum: number; // 提单子单号(wrholdlb的SubNum字段),卖的时候填写
+            WRFactorTypeId: number; // 仓单要素ID(wrholdlb的WRFactorTypeId字段),卖的时候填写
+            UserID: number; // 用户ID
+            AccountID: number; // 资金账号
+            IsSpecified: number; // 是否指定对手
+            MatchAccIDs: number; // 仓单贸易对手用户ID集合(指定对手时填写)
+            OrderQty: number; // 委托数量(可挂部分数据量)
+            DeliveryGoodsID: number; // 交割商品商品ID
+            WRPriceType: number; // 价格方式
+            FixedPrice: number; // 固定价格
+            WRTradeGoods: WRGoodsInfo; // 仓单贸易商品配置集合(浮动价时填写)
+            PriceFactor: number; // 价格系数(浮动价时填写)-[挂牌]
+            PriceMove: number; // 升贴水(浮动价时填写)
+            TimevalidType: number; // 时间有效类型
+            ValidTime: string; // 有效期限
+            FirstRatio: number; // 首付比例
+            PerformanceTemplateID: number; // 履约计划模板ID
+            OrderSrc: number; // 委托来源
+            ClientSerialNo: string; // 客户端流水号
+            ClientOrderTime: string; // 客户端委托时间
+            ClientType: number; // 终端类型
+            OperatorID: number; // 操作员账号ID
+            BuyOrSell: number; // 买卖方向
+            PriceDisplayMode: number; // 浮动价显示方式
+            CanBargain: number; // 挂牌是否可议价0:不可1:可-摘牌是否议价
+            Attachment1: string; // 附件1
+            Attachment2: string; // 附件2
+            Remark: string; // 备注
+            ApplyID: number; // 申请ID
+            CanPart: number; // 是否允许部份摘牌0:不允许;1:允许
+            MatchAccIDsString: string; // 仓单贸易对手用户ID集合(指定对手时填写)
+            DeliveryMonth: string; // 交收月
+            HasWr: number; // 是否有仓单-0:没有仓单1:有仓单
+            WRStandardID: number; // 现货品种ID
+            FactoryItems: DGFactoryItems; // 要素类型明细集合(没有仓单要素ID填写)
+            DelistMinQty: number; // 起摘数量
+            MarginFlag: number; // 挂牌是否指定保证金0:否1:是
+            MarginAlgorithm: number; // 指定保证金方式1:比率2:固定
+            MarginValue: number; // 指定保证金设置值
+            AllFriendsFlag: number; // 是否全好友可见0:否1:是
+        }
+
+        // 持仓单挂牌应答
+        interface HdWROrderRsp {
+            Header?: IMessageHead; // 消息头
+            RetCode: number; // 返回码
+            RetDesc: string; // 描述信息
+            UserID: number; // 用户ID
+            AccountID: number; // 资金账号
+            WRTradeOrderID: number; // 仓单贸易委托单ID
+            FreezeQty: number = 7; // 冻结数量
+            OrderTime: string; // 接收委托交易的时间
+            ClientSerialNo: string; // 客户端流水号
+        }
+
+        // 持仓单摘牌请求
+        interface HdWRDealOrderReq {
+            Header?: IMessageHead;
+            UserID: number; // 用户ID
+            AccountID: number; // 资金账号
+            RelatedWRTradeOrderI: numberD; // 关联委托单号(摘牌委托关联挂牌委托单ID)
+            WRTransferUserID: number; // 仓单受让用户
+            OrderQty: number; // 委托数量
+            OrderSrc: number; // 委托来源
+            ClientSerialNo: string; // 客户端流水号
+            ClientOrderTime: string; // 客户端委托时间
+            ClientType: number; // 终端类型
+            OperatorID: number; // 操作员账号ID
+            BuyOrSell: number; // 买卖方向
+            ApplyID: number; // 申请ID
+            LadingBillId: number; // 提单id(wrholdlb的LadingBillId字段),卖的时候填写
+            SubNum: number; // 提单子单号(wrholdlb的SubNum字段),卖的时候填写
+            WRFactorTypeId: number; // 仓单要素ID(wrholdlb的WRFactorTypeId字段),卖的时候填写
+            TradeDate: string; // 交易日
+            DeliveryMonth: string; // 交收月
+            HasWr: number; // 是否有仓单-0:没有仓单1:有仓单
+            IsFinancing: number; // 是否融资购买(买摘牌时有效)-0:否1:是
+            ProductDetailID: number; // 金融机构产品组合ID(融资购买时有效)
+        }
+
+        // 持仓单摘牌应答
+        interface HdWRDealOrderRsp {
+            Header?: IMessageHead; // 消息头
+            RetCode: number; // 返回码
+            RetDesc: string; // 描述信息
+            UserID: number; // 用户ID
+            AccountID: number; // 资金账号
+            WRTradeOrderID: number; // 仓单贸易委托单ID
+            RelatedWRTradeOrderID: number; // 关联委托单号(摘牌委托关联挂牌委托单ID)
+            FreezeAmount: number; // 冻结货款
+            OrderTime: string; // 接收委托交易的时间
+            ClientSerialNo: string; // 客户端流水号
+        }
     }
 }