syntax = "proto2";

package pb;

// 消息头
message MessageHead {
	optional uint32 FunCode = 1; // 功能号
	optional uint32 RequestID = 2; // 客户端的流水ID
	optional uint64 AccountID = 3; // 账号ID
	optional uint32 AccessID = 4; //二级分配给客户端的接入ID
	optional int64 ClientTime = 5; //消息发起时间
	optional uint32 GoodsID = 6; //商品ID
	optional string UUID = 7; // 消息唯一ID
	optional uint32 MarketID = 8; // 所属市场ID
	optional uint32 UserID = 9; // 用户ID
	optional string ResponseTopic = 10; // 应答消息所属主题
	optional uint64 AccountID2 = 11; // 账号ID-币币交易使用
}

// 公共通知消息头
message NotifyHead {
		optional int32 NtfMode = 1; // 消息通知模式(单播、组播、广播)
		repeated uint32 ExcludeAcctIDs = 2; // 排除账号集合（首先过滤此集合帐号）
		repeated uint32 ExchIDs = 3; // 目标交易所集合（若匹配所属交易所，推送）
		repeated uint32 MemberIDs = 4; // 目标会员集合（若匹配所属会员，推送）
		repeated uint64 AccountIDs = 5; // 目标账号集合（以上均不匹配时，最后检查此集合）
}

// 资金变化通知
message MoneyChangedNtf {
	optional MessageHead Header = 1; // 消息头
		optional NotifyHead NtfHeader = 2; // NotifyHead 公共消息头
		optional uint64 AccountID = 3; // uint64 交易账号
}

// 平仓单平仓明细
message ArrayCloseInfo {
		optional uint64 ClosedOrderID = 1; // 被平持仓单ID
		optional uint64 ClosedQty = 2; // 被平仓数量
		optional double ClosePL = 3; // 平仓盈亏
		optional double RlsUsedMargin = 4; // 释放的占用保证金
		optional double TradeCharge = 5; // 平仓手续费
		optional double WareHouseCharge = 6; // 仓单服务费
		optional double TradeAmount = 7; // 成交金额
		optional string OpenTime = 8; // 开仓时间(对冲接口用)
		optional double OpenPrice = 9; // 开仓价格(对冲接口用)
		optional uint64 MatchAccountID = 10; // 对手方资金账号代码
		optional double RealClosePL = 11; // 实际盈亏
}

// 委托单成交通知
message OrderDealedNtf {
	optional MessageHead Header = 1; // 消息头
		optional NotifyHead NtfHeader = 2; // NotifyHead 公共消息头
		optional uint64 OrderID = 3; // uint64 一级生成的订单号
		optional string ClientSerialNo = 4; // string 客户端流水号
		optional uint32 GoodsID = 5; // uint32 原始委托商品代码
		optional uint64 TradeQty = 6; // uint64 成交数量
		optional double Amount = 7; // double 成交金额
		optional uint64 ActiveQty = 8; // uint64 激活数量，即剩余数量
		optional uint32 OrderStatus = 9; // uint32 单据状态
		optional uint64 TradeID = 10; // uint64 成交ID
		optional uint64 AccountID = 11; // uint64 资金账号代码
		optional double TradePrice = 12; // double 成交价格
		optional uint32 BuyOrSell = 13; // uint32 买卖方向
		optional uint64 OrderQty = 14; // uint64 委托数量
		optional uint32 OrderType = 15; // uint32 订单类型
		optional string TradeTime = 16; // string 成交时间
		repeated ArrayCloseInfo CloseInfos = 17; // ArrayCloseInfo 平仓信息
		optional uint32 SpecialAccount = 18; // uint32 特别会员账号
		optional double TradeCharge = 19; // double 成交手续费
		optional double WareHouseCharge = 20; // double 仓单服务费
		optional double UsedMargin = 21; // double 占用保证金
		optional uint32 OperatorID = 22; // uint32 操作员账号ID
		optional uint32 MemberID = 23; // uint32 会员账号，会员系统平仓使用
		optional uint64 MatchAccountID = 24; // uint64 对手方资金账号代码
		optional uint32 BuildType = 25; // uint32 下单类型
		optional uint32 CloseType = 26; // uint32 平仓类型
}

// 市场状态变更通知
message MarketStatusChangeNtf {
	optional MessageHead Header = 1; // 消息头
		optional NotifyHead NtfHeader = 2; // NotifyHead 公共消息头
		optional uint32 MarketID = 3; // uint32 市场ID
		optional uint32 Status = 4; // uint32 状态
		optional uint32 StepType = 5; // uint32 阶段
		optional string TradeDay = 6; // string 交易日
		optional string NotifyTime = 7; // string 通知发送时间
}

// 挂牌委托变更广播通知
message ListingOrderChangeNtf {
	optional MessageHead Header = 1; // 消息头
		optional NotifyHead NtfHeader = 2; // NotifyHead 公共消息头
		optional uint64 OrderID = 3; // uint64 委托单号
		optional uint64 OrderQty = 4; // uint64 委托数量
		optional uint64 TradeQty = 5; // uint64 成交数量
		optional uint64 CancelQty = 6; // uint64 撤销数量
}

// 文件列表
message FileDetail {
		optional string FileName = 1; // 文件名
		optional string FilePath = 2; // 文件地址
}

// 修改账户密码请求
message ModifyPwdReq {
	optional MessageHead Header = 1;
		optional uint32 ModifyPwdType = 2; // 修改密码类型1：登陆密码2：资金账户密码
		optional uint64 ModifyPwdID = 3; // 被修改的ID(ModifyType=1:LoginIDModifyType=2:AccountID)
		optional string OldPwd = 4; // 旧资金密码
		optional string NewPwd = 5; // 新资金密码
}
// 修改账户密码应答
message ModifyPwdRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
}

// 新增修改收货地址请求
message UserReceiveInfoReq {
	optional MessageHead Header = 1;
		optional uint64 ClientSerialID = 2; // 客户端唯一ID
		optional uint32 UserID = 3; // 用户ID
		optional string ReceiverName = 4; // 提货人姓名
		optional uint32 CardTypeID = 5; // 证件类型
		optional string CardNum = 6; // 证件号码
		optional string PhoneNum = 7; // 提货人联系方式
		optional uint32 CountryID = 8; // 国家
		optional uint32 ProvinceID = 9; // 省
		optional uint32 CityID = 10; // 市
		optional uint32 DistrictID = 11; // 地区
		optional string Address = 12; // 提货人详细地址
		optional string TakeRemark = 13; // 提货备注
		optional uint64 ReceiveInfoId = 14; // 修改时填收货地址id
}

// 新增修改收货地址请求响应
message UserReceiveInfoRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 ReceiveInfoId = 4; // 响应返回autoid
}

// 删除收货地址请求
message DelUserReceiveInfoReq {
	optional MessageHead Header = 1;
		optional uint64 ReceiveInfoId = 2; // 收货地址id
}

// 删除收货地址请求响应
message DelUserReceiveInfoRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
}

// 设置默认收货地址请求
message UserReceiveIsDefaultReq {
	optional MessageHead Header = 1;
		optional uint64 AutoId = 2; // 提货地址ID
		optional uint64 UserId = 3; // 用户ID
}

// 设置默认收货地址应答
message UserReceiveIsDefaultRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 AutoId = 4; // 提货地址ID
}

// 新增修改用户发票信息请求
message UserReceiptInfoReq {
	optional MessageHead Header = 1;
		optional uint64 ClientSerialID = 2; // 客户端唯一ID
		optional uint32 UserID = 3; // 用户ID
		optional string UserName = 4; // 发票抬头姓名
		optional uint32 ReceiptType = 5; // 发票类型
		optional string TaxpayerID = 6; // 纳税人识别号
		optional string ContactInfo = 7; // 联系方式
		optional uint64 ReceiptInfoId = 8; // 修改时填用户发票信息id
		optional string ReceiptBank = 9; // 发票开户行[发票类型:企业]
		optional string ReceiptAccount = 10; // 发票帐号[发票类型:企业]
		optional string Address = 11; // 地址[发票类型:企业]
		optional string IDNum = 12; // 身份证号码[发票类型:个人]
		optional string Email = 13; // 收件邮箱
}

// 新增修改用户发票信息请求响应
message UserReceiptInfoRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 ReceiptInfoId = 4; // 响应返回发票信息id
}

// 删除用户发票信息请求
message DelUserReceiptInfoReq {
	optional MessageHead Header = 1;
		optional uint64 ReceiptInfoId = 2; // 删除发票信息id
}

// 删除用户发票信息请求响应
message DelUserReceiptInfoRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
}

// 签约请求
message t2bBankSignReq {
	optional MessageHead Header = 1;
		required uint64 ExtOperatorID = 2; // 外部操作流水号
		optional string ExchId = 3; // 交易所编号
		optional string TradeDate = 4; // 交易所业务日期
		optional string ExchTicket = 5; // 交易所流水号
		required string AccountCode = 6; // 账户
		required string AccountName = 7; // 客户名称
		required string CusBankID = 8; // 托管银行编号
		required int32 OperateType = 9; // 变更类型[1-增加;2-修改;4-绑卡;
		required int32 IsForce = 10; // 是否强制[0-否;1-是]强制，只更新中心签约信息，不发送银行。用于银行信息不一致的情况
		optional string Currency = 11; // 币种
		optional int32 AccountType = 12; // 账户类型[1-对私;2-对公]
		required string OpenBankAccId = 13; // 银行卡行号
		optional string ForceSignBankAccountNo = 14; // 银行账户[强制签约时填写]
		optional string ForceSignBankAccountName = 15; // 银行账户名称[强制签约时填写]
		required string BankAccountNo = 16; // 银行账户
		optional string BankAccountName = 17; // 银行账户名称
		required string ExBankName = 18; // 开户行名称
		optional string OpenBankNo = 19; // 开户支行编号
		optional string OpenBankName = 20; // 开户支行名称
		required string CertType = 21; // 证件类型
		required string CertID = 22; // 证件号码
		optional string BankAccountPWD = 23; // 银行账户密码
		optional string AgentName = 24; // 授权代理人姓名
		optional int32 AgentCertType = 25; // 授权代理人证件类型
		optional string AgentCertID = 26; // 授权代理人证件号
		optional int32 BankAccountType = 27; // 银行账户类型
		optional string BankProvince = 28; // 开户银行所在省份
		optional string BankCity = 29; // 开户银行所在市
		optional int32 BankCardType = 30; // 银行卡类型
		optional string MobilePhone = 31; // 移动电话
		optional string IdentifyCode = 32; // 验证码
		optional string email = 33; // 电子邮箱
		optional string extend_info = 34; // 扩展信息（JSON串，参考配置要求进行填充）
}

// 签约应答
message t2bBankSignRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 ExtOperatorID = 4; // 外部操作流水号
		optional string AccountCode = 5; // 账户
		optional string NetAddr = 6; // 网络地址（当这里有网址时，应自动跳转网页）
		optional int32 Status = 7; // 状态（0成功,其他数值参考银行服务的错误码）
		required string ExchTicket = 8; // 交易所流水号
		optional string ExchId = 9; // 交易所编号
		optional string TradeDate = 10; // 交易所业务日期
		optional string CenterTicket = 11; // 中心流水号
		optional string CenterErrCode = 12; // 返回码
		optional string CenterErrMsg = 13; // 返回结果说明
		optional string bankChildAcc = 14; // 银行账号
		optional string bankChildAccName = 15; // 银行账户名
		optional string BankId = 16; // 银行卡行号
		optional string BankAccNum = 17; // 银行卡号
		optional string BankAccName = 18; // 银行卡户名
}

// 解约请求
message t2bBankCancelSignReq {
	optional MessageHead Header = 1;
		required uint64 ExtOperatorID = 2; // 外部操作流水号
		optional string ExchId = 3; // 交易所编号
		required string AccountCode = 4; // 账户
		required string CusBankID = 5; // 托管银行编号
		required int32 IsForce = 6; // 是否强制
		optional string Currency = 7; // 币种
		optional string TradeDate = 8; // 交易所业务日期
		optional string ExchTicket = 9; // 交易所流水号
		optional string BankChildAcc = 10; // 银行子账号
		optional string BankChildAccName = 11; // 银行子账号名
}

// 解约应答
message t2bBankCancelSignRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 ExtOperatorID = 4; // 外部操作流水号
		optional string AccountCode = 5; // 账户
		optional string NetAddr = 6; // 网络地址（当这里有网址时，应自动跳转网页）
		optional int32 Status = 7; // 状态（0成功,其他数值参考银行服务的错误码）
		required string ExchTicket = 8; // 交易所流水号
		optional string ExchId = 9; // 交易所编号
		optional string TradeDate = 10; // 交易所业务日期
		optional string CenterTicket = 11; // 中心流水号
		optional string CenterErrCode = 12; // 返回码
		optional string CenterErrMsg = 13; // 返回结果说明
}

// 出金请求
message t2bBankWithdrawReq {
	optional MessageHead Header = 1;
		required uint64 ExtOperatorID = 2; // 外部操作流水号
		optional string ExchId = 3; // 交易所编号
		required string AccountCode = 4; // 资金账户
		required string CusBankID = 5; // 托管银行编号
		required string Currency = 6; // 币种
		optional int32 AccountType = 7; // 账户类型
		optional string BankChildAccount = 8; // 银行子账号
		optional string BankChildAccountName = 9; // 银行子账号名
		optional string OpenCardBankId = 10; // 银行卡行号
		optional string BankAccoutNum = 11; // 银行卡号
		optional string BankAccoutName = 12; // 银行卡户名
		required double Amount = 13; // 出金金额
		optional string AppDateTime = 14; // 申请日期和时间
		optional string OldTaPWD = 15; // 资金密码
		optional string Desc = 16; // 备注
		optional string IdentifyCode = 17; // 验证码
		optional string BranchBankName = 18; // 收款支行名称
		optional string extend_info = 19; // 扩展信息（JSON串，参考配置要求进行填充）
		optional string Remark = 20; // 备注
		optional string ExchTicket = 21; // 交易所流水号
}

// 出金应答
message t2bBankWithdrawRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 ExtOperatorID = 4; // 外部操作流水号
		optional int32 Status = 5; // 状态（0成功,其他数值参考银行服务的错误码）
		required string ExchTicket = 6; // 交易所流水号
		optional string ExchId = 7; // 交易所编号
		optional string TradeDate = 8; // 交易日
		optional string CenterTicket = 9; // 中心流水号
		optional string CenterErrCode = 10; // 中心返回码
		optional string CenterErrMsg = 11; // 中心返回结果说明
		optional string CerterCheckDate = 12; // 中心对账日期
		optional string NetAddr = 13; // 网络地址（当这里有网址时，应自动跳转网页）
}

// 入金请求
message t2bBankDepositReq {
	optional MessageHead Header = 1;
		required uint64 ExtOperatorID = 2; // 外部操作流水号
		required string CusBankID = 3; // 托管银行编号
		optional string ExchId = 4; // 交易所编号
		optional string TradeDate = 5; // 交易日
		optional string ExchTicket = 6; // 交易所流水号
		required string AccountCode = 7; // 资金账户
		optional string BusinessNo = 8; // 银行业务编号
		optional string BankChildAccount = 9; // 银行子账号
		optional string BankChildAccountName = 10; // 银行子账号名
		optional string OldTaPWD = 11; // 资金密码
		required double Amount = 12; // 金额
		required string Currency = 13; // 币种
		optional string Remark = 14; // 备注
		optional string OpenCardBankId = 15; // 银行卡行号
		optional string BankAccoutNum = 16; // 银行卡号
		optional string BankAccoutName = 17; // 银行卡户名
		optional string extend_info = 18; // 扩展信息（JSON串，参考配置要求进行填充）
}

// 入金应答
message t2bBankDepositRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 ExtOperatorID = 4; // 外部操作流水号
		optional int32 Status = 5; // 状态（0成功,其他数值参考银行服务的错误码）
		required string ExchTicket = 6; // 交易所流水号
		optional string ExchId = 7; // 交易所编号
		optional string TradeDate = 8; // 交易日
		optional string CenterTicket = 9; // 中心流水号
		optional string CenterErrCode = 10; // 中心返回码
		optional string CenterErrMsg = 11; // 中心返回结果说明
		optional string CerterCheckDate = 12; // 中心对账日期
		optional string NetAddr = 13; // 网络地址（当这里有网址时，应自动跳转网页）
}

// 仓单服务公共协议结构
message WRCommon {
	optional uint64 UserID = 1; // 用户ID
	optional uint64 RelatedOrderID = 2; // 关联ID
	optional uint64 BusinessID = 3; // 业务ID
	optional uint64 TradeID = 4; // 成交ID
	optional uint64 AccountID = 5; // 账号ID
}

// 仓库申请请求 0 29 141
message WarehouseApplyReq {
	optional MessageHead Header = 1; // MessageHead
	optional uint64 userid = 2; // uint64 用户ID
	optional int32 type = 3; // int32 类型 1 新增 2 修改
	optional uint64 warehouseid = 4; // uint64 仓库ID
	optional string warehousecode = 5; // string 仓库代码
	optional string warehousename = 6; // string 仓库名称
	optional int32 warehousetype = 7; // int32 仓库类型 - 1 厂库  2 自有库  3 合作库
	optional uint64 provinceid = 8; // uint64 省
	optional uint64 cityid = 9; // uint64 市
	optional int32 districtid = 10; // int32 区
	optional string address = 11; // string 详细地址
	optional string contactname = 12; // string 联系人
	optional string contactnum = 13; // string 联系电话
}

// 仓库申请请求 0 29 142
message WarehouseApplyRsp {
	optional MessageHead Header = 1; // MessageHead 消息头
	optional int32 RetCode = 2; // int32 返回码
	optional string RetDesc = 3; // string 描述信息
	optional uint64 warehouseid = 4; // uint64 仓库ID
}

// 违约申请请求 0 20 9
message PerformanceContractedApplyReq {
	optional MessageHead Header = 1; // MessageHead
	optional uint64 PerformancePlanID = 2; // uint64 履约计划ID
	optional uint32 BreachType = 3; // uint32 违约方类型
	optional uint64 Applicant = 4; // uint64 违约申请人
	optional string ApplyRemark = 5; // string 申请备注
	optional string Attachment = 6; // string 附件
}

// 违约申请应答 0 20 10
message PerformanceContractedApplyRsp {
	optional MessageHead Header = 1; // MessageHead 消息头
	optional int32 RetCode = 2; // int32 返回码
	optional string RetDesc = 3; // string 描述信息
	optional uint64 PerformancePlanID = 4; // uint64 履约计划ID
}

// 延期申请请求 0 20 5
message PerformanceDelayApplyReq {
	optional MessageHead Header = 1; // MessageHead
	optional uint64 PerformancePlanStepID = 2; // uint64 履约计划步骤ID
	optional uint32 delaydays = 3; // uint32 申请延期天数
	optional uint64 applicant = 4; // uint64 申请人
	optional string applyremark = 5; // string 申请备注
}

// 延期申请应答 0 20 6
message PerformanceDelayApplyRsp {
	optional MessageHead Header = 1; // MessageHead 消息头
	optional int32 RetCode = 2; // int32 返回码
	optional string RetDesc = 3; // string 描述信息
	optional uint64 PerformancePlanStepID = 4; // uint64 履约计划步骤ID
	optional uint64 applicant = 5; // uint64 申请人
}

// 履约手动确认请求 0 20 3
message PerformanceManualConfirmReq {
	optional MessageHead Header = 1; // MessageHead
	optional uint64 PerformancePlanStepID = 2; // uint64 履约计划步骤ID
	optional double OverShortAmount = 3; // double 溢短金额
	optional uint32 PerformanceExecuteSide = 4; // uint32 履约步骤执行方 1买方 2 卖方
	optional string StepRemark = 5; // string 步骤备注
	optional double OverShortQty = 6; // double 溢短数量
	optional double ExpressFee = 7; // double 运费金额
}

// 履约手动确认应答 0 20 4
message PerformanceManualConfirmRsp {
	optional MessageHead Header = 1; // MessageHead 消息头
	optional int32 RetCode = 2; // int32 返回码
	optional string RetDesc = 3; // string 描述信息
	optional uint64 PerformancePlanStepID = 4; // uint64 履约计划步骤ID
}

// 履约修改联络信息请求 0 20 15
message PerformanceModifyContactReq {
	optional MessageHead Header = 1; // MessageHead
	optional uint64 PerformancePlanID = 2; // uint64 履约计划ID
	optional uint64 AccountID = 3; // uint64 账号
	optional string ContactInfo = 4; // string 联络信息
}

// 履约修改联络信息回应 0 20 16
message PerformanceModifyContactRsp {
	optional MessageHead Header = 1; // MessageHead 消息头
	optional int32 RetCode = 2; // int32 返回码
	optional string RetDesc = 3; // string 描述信息
	optional uint64 PerformancePlanID = 4; // uint64 履约计划ID
	optional uint64 AccountID = 5; // uint64 账号
}

// 新增钻石商品接口响应
message AddZSGoodsRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 UserID = 4; // 用户ID
		optional uint64 AccountID = 5; // 资金账户ID
		optional uint64 WRStandardID = 6; // 现货商品ID
		optional uint64 WRFactorTypeID = 7; // 仓单要素类型ID
		optional uint64 LadingBillID = 8; // 提单ID
		optional uint32 SubNum = 9; // 提单子单号
		optional string ClientSerialNo = 10; // 客户端流水号
}

// 商品收藏操作接口请求
message GoodsFavoriteOperateReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 WRTradeOrderID = 3; // 委托单ID，必填
		optional uint32 OperateType = 4; // 操作类型，1:添加2:删除,必填
		optional uint32 ClientType = 5; // 终端类型
		optional uint32 MarketID = 6; // 市场ID,必填
		optional string ClientSerialNo = 7; // 客户端流水号
}

// 商品收藏操作接口应答
message GoodsFavoriteOperateRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 UserID = 4; // 用户ID
		optional uint64 WRTradeOrderID = 5; // 委托单ID
		optional string ClientSerialNo = 6; // 客户端流水号
}

// 钻石买挂牌属性
message GZBuyOrderDetailExInfo {
    optional uint64 UserID = 1; // 用户ID
    optional uint64 AccountID = 2; // 资金账户ID
    optional uint32 ZSCategory = 3; // 钻石分类
    repeated uint32 ZSCurrencyType = 4; // 货币类型
    repeated uint32 ZSShapeType = 5; // 形状
    repeated uint32 ZSColorType = 6; // 颜色
    repeated uint32 ZSClarityType = 7; // 净度
    repeated uint32 ZSCutType = 8; // 切工
    repeated uint32 ZSSymmetryType = 9; // 对称度
    repeated uint32 ZSPolishType = 10; // 抛光度
    repeated uint32 ZSFluorescenceType = 11; // 荧光
    repeated double Size = 12; // 尺寸
    repeated uint32 ZSCrystalType = 13; // 晶型
    optional string Origin = 14; // 原产地
    repeated uint32 ZSStyleType = 15; // 款式
    repeated uint32 ZSCZColor1Type = 16; // 彩钻颜色1
    repeated uint32 ZSCZColor2Type = 17; // 彩钻颜色2
    repeated uint32 ZSCZColor3Type = 18; // 彩钻颜色3
    optional string Remark = 19; // 备注
    repeated uint64 WarehouseIDs = 20; // 仓库ID
}

// 钻石买挂牌接口请求
message ZSBuyOrderListingReq {
	optional MessageHead Header = 1;
	optional uint32 UserID = 2; // 用户ID，必填
	optional uint64 AccountID = 3; // 资金账号，必填
	optional GZBuyOrderDetailExInfo GZ_BuyOrderDetailExInfo = 4; // 钻石买挂牌属性
	optional int64 PerformanceTemplateID = 5; // 履约计划模板ID
	optional uint32 MarketID = 6; // 市场ID,必填
	optional uint32 OrderSrc = 7; // 委托来源
	optional string ClientOrderTime = 8; // 客户端委托时间
	optional uint32 ClientType = 9; // 终端类型
	optional string ClientSerialNo = 10; // 客户端流水号
}

// 钻石买挂牌接口应答
message ZSBuyOrderListingRsp {
	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 string OrderTime = 7; // 接收委托交易的时间
		optional string ClientSerialNo = 8; // 客户端流水号
}

// 钻石卖挂牌接口请求
message ZSSellOrderListingReq {
	optional MessageHead Header = 1;
		optional uint64 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 资金账户ID，必填
		optional uint64 WRStandardID = 4; // 现货商品ID，必填
		optional uint64 WRFactorTypeID = 5; // 仓单要素类型ID，必填
		optional double OrderQty = 6; // 挂牌数量,必填2位小数，为WeigthAvg的整数倍
		optional uint64 LadingBillID = 7; // 提单ID,必填
		optional uint32 SubNum = 8; // 提单子单号,必填
		optional int64 PerformanceTemplateID = 9; // 履约计划模板ID
		optional uint32 TimevalidType = 10; // 时间有效类型
		optional string ValidTime = 11; // 有效期限
		optional uint32 OrderSrc = 12; // 委托来源
		optional string ClientSerialNo = 13; // 客户端流水号
		optional string ClientOrderTime = 14; // 客户端委托时间
		optional uint32 ClientType = 15; // 终端类型
		optional uint64 MarketID = 16; // 市场ID,必填
}

// 钻石卖挂牌接口响应
message ZSSellOrderListingRsp {
	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 ZSBuyOrderDestingReq {
	optional MessageHead Header = 1;
	optional uint32 UserID = 2; // 用户ID，必填
	optional uint64 AccountID = 3; // 资金账号，必填
	optional uint64 RelatedWRTradeOrderID = 4; // 卖委托单号，必填
	optional double OrderQty = 5; // 委托数量,必填2位小数，为WeigthAvg的整数倍
	optional uint32 OrderSrc = 6; // 委托来源
	optional string ClientSerialNo = 7; // 客户端流水号
	optional string ClientOrderTime = 8; // 客户端委托时间
	optional uint32 ClientType = 9; // 终端类型
	optional uint64 OperatorID = 10; // 操作员账号ID
	optional uint64 MarketID = 11; // 市场ID,必填
}

// 钻石买摘牌接口响应
message ZSBuyOrderDestingRsp {
	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; // 客户端流水号
}

// 钻石卖摘牌申请接口请求
message ZSSellOrderDestingApplyReq {
	optional MessageHead Header = 1;
		optional uint64 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 资金账户ID，必填
		optional uint64 BuyWRTradeOrderID = 4; // 买挂牌委托单ID,必填
		optional uint64 WRStandardID = 5; // 现货商品ID，必填
		optional uint64 WRFactorTypeID = 6; // 仓单要素类型ID，必填
		optional double ApplyQty = 7; // 申请数量,必填，2位小数
		optional double ApplyPrice = 8; // 申请价格，必填，2位小数
		optional uint64 LadingBillID = 9; // 提单ID,必填
		optional uint32 SubNum = 10; // 提单子单号,必填
		optional string ApplyRemark = 11; // 备注
		optional uint32 ClientType = 12; // 终端类型
		optional string ClientSerialNo = 13; // 客户端流水号
		optional uint64 MarketID = 14; // 市场ID,必填
}

// 钻石卖摘牌申请接口响应
message ZSSellOrderDestingApplyRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 UserID = 4; // 用户ID
		optional uint64 AccountID = 5; // 资金账号
		optional uint64 ApplyID = 6; // 仓单贸易委托单ID
		optional string ClientSerialNo = 7; // 客户端流水号
}

// 钻石卖摘牌申请操作接口请求
message ZSSellOrderDestingApplyOperateReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 资金账号
		optional uint64 SellDelistingApplyID = 4; // 卖摘牌申请ID，必填
		optional string AuditRemark = 5; // 备注
		optional uint32 OperateType = 6; // 操作类型，1：撤销2:拒绝
		optional uint32 MarketID = 7; // 市场ID,必填
		optional uint32 ClientType = 8; // 终端类型
		optional uint32 OrderSrc = 9; // 委托来源
		optional string ClientSerialNo = 10; // 客户端流水号
}

// 钻石卖摘牌申请操作接口应答
message ZSSellOrderDestingApplyOperateRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 UserID = 4; // 用户ID
		optional uint64 AccountID = 5; // 资金账号
		optional uint64 SellDelistingApplyID = 6; // 卖摘牌申请ID
		optional uint64 WRTradeOrderID = 7; // 仓单贸易委托单ID
		optional double FreezeAmount = 8; // 冻结货款
		optional string OrderTime = 9; // 接收委托交易的时间
		optional string ClientSerialNo = 10; // 客户端流水号
}

// 买摘牌询价接口请求
message ZSBuyOrderDestingNegPriceReq {
	optional MessageHead Header = 1;
	optional uint32 UserID = 2; // 用户ID，必填
	optional uint64 AccountID = 3; // 资金账号，必填
	optional uint64 RelatedOrderID = 4; // 卖委托单号，必填
	optional double OrderQty = 5; // 议价数量，2位小数，必填
	optional double ApplyPrice = 6; // 协议价格，2位小数，必填
	optional uint32 OrderSrc = 7; // 委托来源
	optional string ClientSerialNo = 8; // 客户端流水号
	optional string ClientOrderTime = 9; // 客户端委托时间
	optional uint32 ClientType = 10; // 终端类型
	optional uint64 OperatorID = 11; // 操作员账号ID
	optional uint32 MarketID = 12; // 市场ID,必填
	optional string ApplyRemark = 13; // 申请备注
}

// 买摘牌询价接口应答
message ZSBuyOrderDestingNegPriceRsp {
	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 WRBargainID = 7; // 议价申请单ID
		optional string OrderTime = 8; // 接收委托交易的时间
		optional string ClientSerialNo = 9; // 客户端流水号
}

// 买摘牌询价操作接口请求
message ZSBuyOrderDestingNegPriceOperateReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 资金账号，必填
		optional uint64 WRBargainID = 4; // 议价申请单ID，必填
		optional string AuditRemark = 5; // 备注
		optional uint32 OperateType = 6; // 操作类型，1：撤销2:拒绝
		optional uint32 MarketID = 7; // 市场ID,必填
		optional uint32 ClientType = 8; // 终端类型
		optional uint32 OrderSrc = 9; // 委托来源
		optional string ClientSerialNo = 10; // 客户端流水号
}

// 买摘牌询价操作接口应答
message ZSBuyOrderDestingNegPriceOperateRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 UserID = 4; // 用户ID
		optional uint64 AccountID = 5; // 资金账号
		optional uint64 WRBargainID = 6; // 卖委托单号
		optional string ClientSerialNo = 7; // 客户端流水号
}

// 挂牌撤单请求
message WRListingCancelOrderReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID
		optional uint64 AccountID = 3; // 资金账号
		optional uint64 OldWRTradeOrderID = 4; // 目标仓单贸易委托单ID
		optional uint32 OrderSrc = 5; // 委托来源
		optional string ClientSerialNo = 6; // 客户端流水号
		optional string ClientOrderTime = 7; // 客户端委托时间
		optional uint32 ClientType = 8; // 终端类型
		optional uint64 OperatorID = 9; // 操作员账号ID
		optional uint32 BuyOrSell = 10; // 买卖方向
		optional uint64 WRID = 11; // 仓单ID,卖的时候填写
}

// 挂牌撤单应答
message WRListingCancelOrderRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 WRTradeCancelID = 4; // 仓单贸易撤单号
		optional uint64 OldWRTradeOrderID = 5; // 目标仓单贸易委托单ID
		optional uint32 UserID = 6; // 用户ID
		optional uint64 AccountID = 7; // 资金账号
		optional uint64 CancelQty = 8; // 撤单数量
		optional string OrderTime = 9; // 接受撤单的时间
		optional string ClientSerialNo = 10; // 客户端流水号
}

// 钻石出库申请接口请求
message ReceiptZSOutApplyReq {
	optional MessageHead Header = 1;
		optional WRCommon Common = 2; // 
		optional uint64 UserID = 3; // 用户ID，必填
		optional uint64 AccountID = 4; // 用户帐户ID
			optional uint64 WRStandardID = 5; // 现货品种ID
		optional uint32 WarehouseID = 6; // 仓库ID
		optional string Mobile = 7; // 申请人手机号
		optional string AppointmentDate = 8; // 预约日期
		optional int32 AppointmentModel = 9; // 预约方式:1-物流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 LadingBillID = 18; // 提单ID，必填
		optional uint32 SubNum = 19; // 提单子单号，必填
		optional double Qty = 20; // 出库数量，两位小数，必填
		optional string Remark = 21; // 备注
		optional uint32 ApplyType = 22; // 申请类型1:会员申请2：平台申请
		optional uint32 ClientType = 23; // 终端类型
		optional string ClientTicket = 24; // 客户端流水号
}

// 钻石出库申请接口响应
message ReceiptZSOutApplyRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional WRCommon Common = 4; // 
		optional uint64 ApplyID = 5; // 申请ID
		optional string ClientTicket = 6; // 客户端流水号
}

// 铁合金保证金配置信息
message DepositConfigInfo {
		optional double DepositRate = 1; // 定金比例
		optional double DiscountAmount = 2; // 优惠金额
}

// 铁合金现货预售挂牌接口请求
message SpotPresaleListingOrderReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 资金账号，必填
		optional uint32 WRStandardID = 4; // 现货商品ID，必填
		optional uint32 WarehouseID = 5; // 仓库ID，必填
		optional uint64 Qty = 6; // 预售数量，必填
		optional string EndDate = 7; // 到期时间，必填
		repeated DepositConfigInfo DepositConfigs = 8; // 保证金配置信息，至少一组
		optional uint32 ClientType = 9; // 终端类型
		optional string ClientSerialNo = 10; // 客户端流水号
		optional double UnitPrice = 11; // 参考价,小数，前10，后2，必填
}

// 铁合金现货预售挂牌接口应答
message SpotPresaleListingOrderRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 PresaleApplyID = 4; // 预售申请ID
		optional uint64 WRTradeOrderID = 5; // 委托单ID
		optional string ClientSerialNo = 6; // 客户端流水号
}

// 铁合金成交通知
message THJPurchaseTradeNtf {
	optional MessageHead Header = 1; // 消息头
		optional uint64 WRTradeDetailID = 2; // uint64 预售成交明细ID
}

// 铁合金协议转让通知
message PurchaseTransferNtf {
	optional MessageHead Header = 1; // 消息头
		optional uint64 TransferID = 2; // uint64 协议转让ID
}

// 仓单贸易成交通知
message WRTradeDealedNtf {
	optional MessageHead Header = 1; // 消息头
		optional NotifyHead NtfHeader = 2; // NotifyHead 公共消息头
		optional uint64 ListingOrderID = 3; // uint64 挂牌委托单号
		optional uint64 DelistingOrderID = 4; // uint64 摘牌委托单号
		optional uint64 TradeQty = 5; // uint64 挂牌成交数量
		optional uint64 ActiveQty = 6; // uint64 挂牌剩余数量
		optional uint64 RealTradeQty = 7; // uint64 摘牌实际成交数量
		optional uint64 TradeID = 8; // uint64 成交单ID
		optional uint64 BuyAccountID = 9; // uint64 买资金账号
		optional uint64 SellAccountID = 10; // uint64 卖资金账号
		optional double TradePrice = 11; // double 成交价
		optional string TradeTime = 12; // string 成交时间
		optional uint64 WRFactorTypeID = 13; // uint64 仓单要素ID
		optional uint32 WRTransferUserID = 14; // uint32 仓单受让账户
		optional double FreezeFirstAmount = 15; // double 冻结首付金额
		optional double UnFreezeFirstAmount = 16; // double 解冻首付金额
		optional double RealTradeAmount = 17; // double 实际成交金额
		optional double PerformanceAmount = 18; // double 履约金额
		optional uint64 PerformancePlanID = 19; // uint64 履约计划ID
		optional int64 PerformanceTemplateID = 20; // int64 履约计划模板ID
}

// 出境检测会员操作请求
message CJJCMemberOperateReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID,必填
		optional uint64 OperateID = 3; // 操作人ID,必填，LoginAccount的LoginID
		optional string OperateAccount = 4; // 操作人账户，LoginAccount的LoginCode,LoginCode为空则填LoginID,必
		optional uint64 OrderID = 5; // 单据ID,必填
		optional uint32 OperateType = 6; // 操作类型,必填,1：撤回2:确认发货3:确认检测结果
		optional string Remark = 7; // 备注
			optional uint32 ClientType = 8; // 终端类型
			optional string ClientSerialNo = 9; // 客户端流水号
}

// 出境检测会员操作响应
message CJJCMemberOperateRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
			optional uint32 UserID = 4; // 用户ID
			optional uint64 AccountID = 5; // 资金账号
			optional string ClientSerialNo = 6; // 客户端流水号
}

// 保税服务会员操作请求
message BSFWMemberOperateReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID,必填
		optional uint64 OperateID = 3; // 操作人ID,必填，LoginAccount的LoginID
		optional string OperateAccount = 4; // 操作人账户，LoginAccount的LoginCode,LoginCode为空则填LoginID,必
		optional uint64 OrderID = 5; // 单据ID,必填
		optional uint32 OperateType = 6; // 操作类型,必填,1:上传发货单2：上传盖章单据3：确认预付款
		repeated FileDetail FileDetails = 7; // 文件列表
		optional string Remark = 8; // 备注
		optional uint32 GZBSDeliveryType = 9; // 收货方式，OperateType=1:上传发货单时必填，枚举“GZBSDeliveryType”
		optional string OtherLogistics = 10; // 指定其它物流，OperateType=1:上传发货单时填写
			optional uint32 ClientType = 11; // 终端类型
			optional string ClientSerialNo = 12; // 客户端流水号
}

// 保税服务会员操作响应
message BSFWMemberOperateRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
			optional uint32 UserID = 4; // 用户ID
			optional uint64 AccountID = 5; // 资金账号
			optional string ClientSerialNo = 6; // 客户端流水号
}

// 账户资金信息请求
message AccountFundInfoReq {
	optional MessageHead Header = 1;
		optional uint64 OrderId = 2; // 查询委托单号
		optional uint64 AccountId = 3; // 查询资金账号
		optional uint32 QueryBitMask = 4; // 查询位掩码
}

// 账户资金信息响应
message AccountFundInfoRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 OrderId = 4; // 查询委托单号
		optional uint64 AccountId = 5; // 查询资金账号
		optional double AvailableMargin = 6; // 可用保证金,查询位掩码:1
		optional double AvailableOutMoney = 7; // 可出资金,查询位掩码:2
		optional int32 IsCleanAccount = 8; // 是否是干净账户，查询位掩码:4
}

// 广钻预售申请请求
message GZPresaleApplyReq {
	optional MessageHead Header = 1;
		optional uint32 SellUserID = 2; // 发行方用户，必填
		optional uint64 SellAccountID = 3; // 发行方资金账户ID,必填
		optional string WRStandardName = 4; // 现货商品名称,必填
			optional double PresaleQty = 5; // 预售总量,必填,小数，两位
			optional double MinBuyQty = 6; // 单人最小申购量,必填,小数，两位
			optional double MaxBuyQty = 7; // 单人最大申购量,必填,小数，两位
			optional double MinSuccessQty = 8; // 最低成团量,必填,小数，两位
		optional double UnitPrice = 9; // 预售价格，小数，两位,必填
		optional string StartDate = 10; // 预售开始日期,必填
		optional string EndDate = 11; // 预售结束日期,必填
		optional uint32 BuyMarginAlgorithm = 12; // 买方保证金方式,必填
		optional double BuyMarginValue = 13; // 买方保证金设置值,小数，四位,必填
		optional int64 PerformanceTemplateID = 14; // 履约计划模板ID,必填
		optional uint32 MarketID = 15; // 市场ID,必填
		optional uint32 YSZSCategory = 16; // 预售钻石分类
		optional string ZSColorTypeStr = 17; // 颜色,最大允许64个字符
		optional string ZSClarityTypeStr = 18; // 净度,最大允许64个字符
		optional string SizeStr = 19; // 尺寸,最大允许64个字符
		optional string YieldRate = 20; // 成品率,最大允许64个字符
		optional string QtyDesc = 21; // 数量描述,最大允许64个字符
		optional string WeightDesc = 22; // 重量描述,最大允许64个字符
		optional uint32 YSProductionMode = 23; // 生产方式
		optional string PictureUrls = 24; // 图片路径,CLOB,多张逗号分隔
		optional string Remark = 25; // 备注,最大允许256个字符
		optional uint32 ClientType = 26; // 终端类型
		optional string ClientSerialNo = 27; // 客户端流水号
}

// 广钻预售申请响应
message GZPresaleApplyRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 SellUserID = 4; // 发行方用户
		optional uint64 PresaleApplyID = 5; // 预售申请ID
		optional string ClientSerialNo = 6; // 客户端流水号
}

// 广钻预售认购下单请求
message GZPresaleOrderReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 资金账户ID,必填
		optional uint64 WRTradeOrderID = 4; // 仓单贸易委托单ID,必填
			optional double OrderQty = 5; // 认购数量,必填,2位小数
		optional uint32 MarketID = 6; // 市场ID,必填
		optional string ClientOrderTime = 7; // 委托时间,必填
		optional uint32 ClientType = 8; // 终端类型
		optional string ClientSerialNo = 9; // 客户端流水号
}

// 广钻预售认购下单响应
message GZPresaleOrderRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 UserID = 4; // 用户ID
		optional uint64 AccountID = 5; // 资金账户ID
		optional uint64 WRTradeOrderID = 6; // 仓单贸易委托单ID
		optional string ClientSerialNo = 7; // 客户端流水号
}

// 广钻集采价格列表
message GZCenterPurchasePriceList {
		optional uint32 StepIndex = 1; // 档位序号，必填
		optional double Qty = 2; // 档位数量,必填,小数，两位
		optional double Price = 3; // 档位价格,小数，两位,必填
}

// 广钻集采申请请求
message GZCenterPurchaseApplyReq {
	optional MessageHead Header = 1;
		optional uint32 SellUserID = 2; // 发行方用户，必填
		optional uint64 SellAccountID = 3; // 发行方资金账户ID,必填
		optional string WRStandardName = 4; // 现货商品名称,必填
			optional double PresaleQty = 5; // 预售总量,必填,小数，两位
			optional double MinBuyQty = 6; // 单人最小申购量,必填,小数，两位
			optional double MaxBuyQty = 7; // 单人最大申购量,必填,小数，两位
			optional double MinSuccessQty = 8; // 最低成团量,必填,小数，两位
		optional string StartDate = 9; // 预售开始日期,必填
		optional string EndDate = 10; // 预售结束日期,必填
		optional uint32 BuyMarginAlgorithm = 11; // 买方保证金方式,必填
		optional double BuyMarginValue = 12; // 买方保证金设置值,小数，四位,必填
		optional int64 PerformanceTemplateID = 13; // 履约计划模板ID,必填
		repeated GZCenterPurchasePriceList GZCenterPurchasePriceLists = 14; // 价格列表,必填
		optional uint32 MarketID = 15; // 市场ID,必填
		optional uint32 YSZSCategory = 16; // 预售钻石分类
		optional string ZSShapeTypeStr = 17; // 形状,最大允许64个字符
		optional string ZSColorTypeStr = 18; // 颜色,最大允许64个字符
		optional string ZSClarityTypeStr = 19; // 净度,最大允许64个字符
		optional string ZSCutTypeStr = 20; // 切工,最大允许64个字符
		optional string ZSSymmetryTypeStr = 21; // 对称,最大允许64个字符
		optional string ZSPolishTypeStr = 22; // 抛光,最大允许64个字符
		optional string ZSFluorescenceTypeStr = 23; // 荧光,最大允许64个字符
		optional string SizeStr = 24; // 尺寸,最大允许64个字符
		optional string YieldRate = 25; // 成品率,最大允许64个字符
		optional string QtyDesc = 26; // 数量描述,最大允许64个字符
		optional string WeightDesc = 27; // 重量描述,最大允许64个字符
		optional uint32 YSProductionMode = 28; // 生产方式
		optional string PictureUrls = 29; // 图片路径,CLOB,多张逗号分隔
		optional string Remark = 30; // 备注,最大允许256个字符
		optional uint32 ClientType = 31; // 终端类型
		optional string ClientSerialNo = 32; // 客户端流水号
}

// 广钻集采申请响应
message GZCenterPurchaseApplyRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 SellUserID = 4; // 发行方用户
		optional uint64 PresaleApplyID = 5; // 预售申请ID
		optional string ClientSerialNo = 6; // 客户端流水号
}

// 广钻集采认购下单请求
message GZCenterPurchaseOrderReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 资金账户ID,必填
		optional uint64 WRTradeOrderID = 4; // 仓单贸易委托单ID,必填
			optional double OrderQty = 5; // 认购数量,必填,2位小数
		optional uint32 MarketID = 6; // 市场ID,必填
			optional string ClientOrderTime = 7; // 委托时间,必填
		optional uint32 ClientType = 8; // 终端类型
		optional string ClientSerialNo = 9; // 客户端流水号
}

// 广钻集采认购下单响应
message GZCenterPurchaseOrderRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 UserID = 4; // 用户ID
		optional uint64 AccountID = 5; // 资金账户ID
		optional uint64 WRTradeOrderID = 6; // 仓单贸易委托单ID
		optional string ClientSerialNo = 7; // 客户端流水号
}

// WMS结算单支付接口请求
message BSWMSReckonPayReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID,必填
		optional uint64 OrderID = 3; // 单据ID,必填
			optional string ClientSerialNo = 4; // 客户端流水号
}
// WMS结算单支付接口响应
message BSWMSReckonPayRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 UserID = 4; // 用户ID
		optional uint64 OrderID = 5; // 单据ID
			optional string ClientSerialNo = 6; // 客户端流水号
}

// 仓单贸易浮动价商品配置信息
message WRGoodsInfo {
		optional uint32 GoodsID = 1; // 配置商品ID
		optional string GoodsCode = 2; // 配置商品代码
		optional double PriceFactor = 3; // 商品价格系数
		optional double PriceMove = 4; // 商品升贴水值
		optional double WeightRatio = 5; // 商品重量系数
}
// 要素类型明细
message DGFactoryItems {
		optional uint64 DGFactoryItemTypeID = 1; // 要素项类型ID
		optional uint64 DGFactoryItemID = 2; // 预约要素项类型值
		optional uint32 ItemTypeMode = 3; // 要素项类型模式
}
// 持仓单挂牌请求
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 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 OrderReq {
	optional MessageHead Header = 1;
		optional string ClientSerialNo = 2; // 客户端流水号
		optional string ClientOrderTime = 3; // 客户端委托时间
		optional uint32 ClientType = 4; // 终端类型
		optional uint64 LoginID = 5; // 登陆账号
		optional uint64 AccountID = 6; // 交易账号
		optional uint32 GoodsID = 7; // 商品ID
		optional uint32 MarketID = 8; // 市场ID
		optional int32 ValidType = 9; // 校验类型
		optional uint32 OperateType = 10; // 操作类型:
		optional uint32 OrderSrc = 11; // 单据来源
		optional uint64 OperatorID = 12; // 操作员账号ID
		optional double OrderPrice = 13; // 委托价格
		optional double MarketMaxSub = 14; // 市价允许最大偏差(做市)
		optional uint64 OrderQty = 15; // 委托数量
		optional uint32 BuyOrSell = 16; // 买卖方向
		optional uint32 BuildType = 17; // 下单类型
		optional double CurtQuotePrice = 18; // 保留，计算冻结金额使用
		optional double SpPrice = 19; // 止盈价格
		optional double SlPrice = 20; // 止损价格
		optional uint32 PriceMode = 21; // 取价方式
		optional uint32 TimevalidType = 22; // 时间有效类型
		optional uint32 TriggerType = 23; // 预埋单触发类型
		optional double TriggerPrice = 24; // 预埋单触发价格
		optional uint32 ListingSelectType = 25; // 挂牌点选类型
		optional uint32 DelistingType = 26; // 摘牌类型
		optional uint64 RelatedID = 27; // 关联单号
		optional uint32 OptionType = 28; // 期权类型(1:认购(看涨)2:认沽(看跌))
		optional double Premium = 29; // 权利金
		optional uint32 TriggerOperator = 30; // 触发条件(1:大于等于2:小于等于)
		optional string ServiceTime = 31; // 服务端时间
		optional uint64 CouponTypeID = 32; // 优惠券类型ID(买方)
		optional uint32 UsedQty = 33; // 使用数量
		optional string ValidTime = 34; // 指定有效日期
		optional uint64 ReceiveInfoID = 35; // 收货地址ID
		optional uint32 OrderFlag = 36; // 委托标识-1:按量
		optional double OrderAmount = 37; // 委托金额OrderFlag=2必填
}
// 交易委托应答
message OrderRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 OrderID = 4; // 一级生成的订单号
		optional string OrderTime = 5; // 接收委托交易的时间
}
// 撤单请求
message CancelOrderReq {
	optional MessageHead Header = 1;
		optional string ClientSerialNo = 2; // 客户端流水号
		optional string ClientOrderTime = 3; // 客户端委托时间
		optional uint32 ClientType = 4; // 终端类型
		optional uint32 OperateType = 5; // 操作类型
		optional uint64 OldOrderId = 6; // 原委托单号
		optional uint64 AccountID = 7; // 交易账号
		optional uint32 OrderSrc = 8; // 单据来源
		optional uint64 OperatorID = 9; // 操作员账号ID
}
// 撤单应答
message CancelOrderRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 ExchActionID = 4; // 交易所操作号
		optional string OrderTime = 5; // 接收委托交易的时间
}

// 按单平仓请求
message HolderCloseReq {
	optional MessageHead Header = 1;
		optional uint64 TradeID = 2; // 持仓单号
		optional string ClientSerialNo = 3; // 客户端流水号
		optional string ClientOrderTime = 4; // 客户端委托时间
		optional uint32 ClientType = 5; // 终端类型
		optional uint64 LoginID = 6; // 登陆账号
		optional uint64 AccountID = 7; // 交易账号
		optional uint32 GoodsID = 8; // 商品ID
		optional uint32 BuyOrSell = 9; // 买卖方向
		optional uint32 MarketID = 10; // 市场ID
		optional uint32 OrderSrc = 11; // 单据来源
		optional uint64 OperatorID = 12; // 操作员账号ID
}
// 按单平仓应答
message HolderCloseRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 OrderID = 4; // 一级生成的订单号
		optional string OrderTime = 5; // 接收委托交易的时间
}

// 交割申报单明细
message DeliveryOrderDetail {
		optional uint64 AccountID = 1; // 对手方账号
		optional uint64 Qty = 2; // 点选数量
		optional uint32 BrandID = 3; // 品牌
		optional uint32 QualityID = 4; // 品质
		optional uint32 StandardID = 5; // 规格
		optional uint32 WarehouseID = 6; // 仓库
		optional uint32 DeliveryMonthID = 7; // 月份
		optional string ReceiverAddress = 8; // 提货地址
		optional uint32 TakeMode = 9; // 提货方式
		optional uint64 LadingBillID = 10; // 提单ID
		optional uint64 SubNum = 11; // 提单子单号
		optional uint64 WRFactorTypeID = 12; // 仓单要素类型ID
}
// 交割申报请求
message DeliveryOrderReq {
	optional MessageHead Header = 1;
		optional string ClientSerialNo = 2; // 客户端流水号
		optional string ClientOrderTime = 3; // 客户端委托时间
		optional uint32 ClientType = 4; // 终端类型
		optional uint64 AccountID = 5; // 交易账号
		optional uint32 XGoodsID = 6; // 主商品ID（交割合约）
		optional uint32 PGoodsID = 7; // 辅助商品ID（辅助合约）
		optional uint32 P2GoodsID = 8; // 辅助商品ID（辅助合约2）
		optional uint32 DeliveryGoodsID = 9; // 交割商品ID
		optional uint64 XQty = 10; // 交割合约数量
		optional uint64 PQty = 11; // 辅助合约数量
		optional uint64 P2Qty = 12; // 辅助合约2数量
		optional uint64 DeliveryQty = 13; // 交割商品仓单数量
		optional uint32 OperateType = 14; // 操作类型:
		optional uint32 OrderSrc = 15; // 单据来源
		optional uint32 OperatorID = 16; // 操作员账号ID
		optional DeliveryOrderDetail DeliveryOrderDetail = 17; // 关联仓单头寸
		optional uint32 TakeMode = 18; // 提货方式
		optional string ReceiverAddress = 19; // 提货地址
}
// 交割申报应答
message DeliveryOrderRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional string ClientSerialNo = 4; // 客户端流水号
		repeated DeliveryOrderDetail DeliveryOrderDetails = 5; // 一级生成的订单号
		optional string OrderTime = 6; // 接收委托交易的时间
}

// 补足定金请求
message MakeUpDepositReq {
	optional MessageHead Header = 1;
		optional uint64 TradeID = 2; // 成交单号，必填
		optional uint32 UserID = 3; // 用户ID，必填
		optional uint64 AccountID = 4; // 交易账号，必填
		optional string ClientSerialNo = 5; // 客户端流水号
		optional uint32 ClientType = 6; // 终端类型
}
// 补足定金应答
message MakeUpDepositRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 TradeID = 4; // 成交单号，必填
		optional string ClientSerialNo = 5; // 客户端流水号
}

// 持仓追加定金接口请求
message HoldAppendDepositReq {
	optional MessageHead Header = 1;
		optional uint64 GoodsID = 2; // 商品ID，必填
		optional uint64 AccountID = 3; // 交易账号，必填
		optional string ClientSerialNo = 4; // 客户端流水号
		optional uint32 ClientType = 5; // 终端类型
}
// 持仓追加定金接口应答
message HoldAppendDepositRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 GoodsID = 4; // 商品ID，必填
		optional uint64 AccountID = 5; // 交易账号，必填
		optional string ClientSerialNo = 6; // 客户端流水号
}

// 线下交收申请请求
message OfflineDeliveryReq {
	optional MessageHead Header = 1;
			optional uint64 AccountID = 2; // 账号ID
			optional uint32 UserID = 3; // 用户ID
			optional string GoodsCode = 4; // 商品代码
		optional uint32 GoodsID = 5; // 商品ID
			optional uint32 BuyOrSell = 6; // 方向
			optional uint32 DeliveryLot = 7; // 交收手数
			optional string DeliveryInfo = 8; // 交收信息
			optional string ClientTicket = 9; // 客户端流水号
}
// 线下交收申请请求
message OfflineDeliveryRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
			optional uint64 AccountID = 4; // 账号ID
			optional uint32 UserID = 5; // 用户ID
			optional uint64 ApplyID = 6; // 申请ID
			optional string ClientTicket = 7; // 客户端流水号
}

// 持仓单摘牌请求
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; // 客户端流水号
}
// 补充定金接口请求
message SupplementDepositReq {
	optional MessageHead Header = 1;
		optional uint64 TradeID = 2; // 成交单号，必填
		optional uint32 BuyOrSell = 3; // 买卖方向，必填
		optional uint32 UserID = 4; // 用户ID，必填
		optional uint64 AccountID = 5; // 交易账号，必填
		optional double RestockDeposit = 6; // 补充定金，必填
		optional uint32 MarketID = 7; // 市场ID，必填
		optional string ClientSerialNo = 8; // 客户端流水号
		optional uint32 ClientType = 9; // 终端类型
}
// 补充定金接口响应
message SupplementDepositRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 TradeID = 4; // 成交单号，必填
		optional uint32 UserID = 5; // 用户ID，必填
		optional uint64 AccountID = 6; // 交易账号，必填
		optional string ClientSerialNo = 7; // 客户端流水号
}
// 退返定金接口请求
message RefundedDepositReq {
	optional MessageHead Header = 1;
		optional uint64 TradeID = 2; // 成交单号，必填
		optional uint32 BuyOrSell = 3; // 买卖方向，必填
		optional uint32 UserID = 4; // 用户ID，必填
		optional uint64 AccountID = 5; // 交易账号，必填
		optional double RestockDeposit = 6; // 补充定金，必填
		optional uint32 MarketID = 7; // 市场ID，必填
		optional string ClientSerialNo = 8; // 客户端流水号
		optional uint32 ClientType = 9; // 终端类型
}
// 退返定金接口响应
message RefundedDepositRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 TradeID = 4; // 成交单号，必填
		optional uint32 UserID = 5; // 用户ID，必填
		optional uint64 AccountID = 6; // 交易账号，必填
		optional string ClientSerialNo = 7; // 客户端流水号
}
// 持仓明细
message MarketOrderHoldDetails {
			optional uint64 TradeID = 1; // 成交单号，必填
			optional uint64 DeliveryQty = 2; // 交收数量，必填
}
// 付款凭证
message PayAttrs {
		optional string FileName = 1; // 文件名，必填
		optional string FileAddr = 2; // 文件地址，必填
}
// 按单做市交收申请接口请求
message MarketOrderDeliveryApplyReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 交易账号，必填
			optional uint32 BuyOrSell = 4; // 方向，必填
		repeated MarketOrderHoldDetails HoldDetails = 5; // 持仓明细，必填
		optional string ClientSerialNo = 6; // 客户端流水号
		optional uint32 ClientType = 7; // 终端类型
}
// 按单做市交收申请接口响应
message MarketOrderDeliveryApplyRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint32 UserID = 4; // 用户ID，必填
		optional uint64 AccountID = 5; // 交易账号，必填
		optional string ClientSerialNo = 6; // 客户端流水号
}
// 交收终端操作接口请求
message DeliveryClientOperatorReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 交易账号，必填
		optional uint64 DeliveryOrderID = 4; // 交收单号，必填
		optional uint32 OperateType = 5; // 操作类型，必填1:客户确认2:客户付款
		optional uint32 DeliveryPayMode = 6; // 付款方式，必填1:线上支付2:线下支付
		optional double PayAmount = 7; // 付款金额，必填
		repeated PayAttrs PayAttr = 8; // 付款凭证，必填
		optional uint32 OperatorID = 9; // 操作人ID
		optional string OperatorAccount = 10; // 操作人账号
		optional string OperatorName = 11; // 操作人名称
		optional string Remark = 12; // 操作备注
		optional string ClientSerialNo = 13; // 客户端流水号
		optional uint32 ClientType = 14; // 终端类型
}
// 交收终端操作接口响应
message DeliveryClientOperatorRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 DeliveryOrderID = 4; // 交收单号，必填
		optional uint32 UserID = 5; // 用户ID，必填
		optional uint64 AccountID = 6; // 交易账号，必填
		optional string ClientSerialNo = 7; // 客户端流水号
}
// 用户登录请求
message LoginReq {
	optional MessageHead Header = 1;
		optional uint64 LoginID = 2; // 登录ID
		optional string LoginPWD = 3; // 登录密码
		optional uint32 LoginType = 4; // 登陆类型
		optional uint32 ClientType = 5; // 终端软件类型
		optional string Version = 6; // 终端软件版本号
		optional string MobilePhone = 7; // 移动电话
		optional string GUID = 8; // 唯一标识码
		optional string LoginIp = 9; // 登录IP地址
		optional uint32 LoginPort = 10; // 登陆通信端口
		optional string DeviceID = 11; // 设备标识
		optional string EnvironmentInfo = 12; // 软件环境信息
		optional string LoginCode = 13; // 登陆码
		optional bytes ClientSystemInfo = 14; // 终端系统信息
		optional string ClientAppID = 15; // 终端AppID
}
// 用户登录应答
message LoginRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 LoginID = 4; // 登录ID
		optional uint32 LoginUserType = 5; // 登陆用户类型
		optional uint32 AccountStatus = 6; // 用户状态
		optional uint32 UserID = 7; // 用户ID
		optional uint32 MemberUserID = 8; // 用户所属会员用户ID
		repeated uint64 AccountIDs = 9; // 账户ID列表(有权限的)
		optional string Token = 10; // 用户令牌
		optional uint64 SystemTime = 11; // 系统时间
		optional uint32 HasUpdatedPwd = 12; // 是否已更改密码
		optional uint32 PwdWrongCnt = 13; // 当前密码输入错误次数
		optional uint32 PwdWrongLockCnt = 14; // 登陆账号锁定密码输入错误次数
		optional uint32 LoginLockHourNum = 15; // 登陆账号锁定时长(小时)
		optional string LoginCode = 16; // 登陆码
		optional bytes ClientSystemInfo = 17; // 终端系统信息
		optional uint64 ClientID = 18; // 终端ID(登陆服务分配，用于通道交易关联链路)
}
// 客户离线通知
message CustOfflineNtf {
	optional MessageHead Header = 1; // 消息头
		repeated uint32 SessionID = 2; // uint32 用户的sessionid(由接入服务分配的)，是一数组。该接口是系统内部服务使用的接口
		repeated uint64 LoginID = 3; // uint64 用户登陆的loginid，是一数组。该接口是系统内部服务使用的接口
}
// 用户登出请求
message LogoutReq {
	optional MessageHead Header = 1;
		optional uint64 LoginID = 2; // 登录ID
		optional string Token = 3; // 登录时返回的用户令牌
		optional string LoginIp = 4; // 登出IP地址
		optional uint32 LoginPort = 5; // 登出通信端口
}
// 用户登出应答
message LogoutRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
}
// 头寸变化通知
message PosChangedNtf {
	optional MessageHead Header = 1; // 消息头
		optional NotifyHead NtfHeader = 2; // NotifyHead 公共消息头
		optional uint64 AccountID = 3; // uint64 交易账号
		optional uint32 GoodsID = 4; // uint32 商品
}
// 委托单撤单通知
message OrderCanceledNtf {
	optional MessageHead Header = 1; // 消息头
		optional NotifyHead NtfHeader = 2; // NotifyHead 公共消息头
		optional uint64 OrderID = 3; // uint64 一级生成的订单号
		optional string ClientSerialNo = 4; // string 客户端流水号
		optional uint32 GoodsID = 5; // uint32 商品
		optional uint64 CancelQty = 6; // uint64 撤销数量
		optional uint32 OrderStatus = 7; // uint32 单据状态
}
// 线下交收申请撤销接口请求
message OfflineDeliveryApplyCancelOrderReq {
	optional MessageHead Header = 1;
		optional uint32 UserID = 2; // 用户ID，必填
		optional uint64 AccountID = 3; // 交易账号，必填
		optional uint64 DeliveryOrderID = 4; // 交收单号，必填
		optional string ClientSerialNo = 5; // 客户端流水号
		optional uint32 ClientType = 6; // 终端类型
}
// 线下交收申请撤销接口响应
message OfflineDeliveryApplyCancelOrderRsp {
	optional MessageHead Header = 1; // 消息头
	optional int32 RetCode = 2; // 返回码
	optional string RetDesc = 3; // 描述信息
		optional uint64 DeliveryOrderID = 4; // 交收单号，必填
		optional uint32 UserID = 5; // 用户ID，必填
		optional uint64 AccountID = 6; // 交易账号，必填
		optional string ClientSerialNo = 7; // 客户端流水号
}