Ver Fonte

增加“点选挂牌委托单据查询(摘牌大厅)”接口

Simon Zhou há 5 anos atrás
pai
commit
ee7cd26b21

+ 1 - 1
config/config.xml

@@ -2,7 +2,7 @@
 
 <Configuration xmlns:http="http://www.w3.org/2001/XMLSchema-instance">
     <WebSetting>
-        <ListenAddress value="0.0.0.0:8081"/>
+        <ListenAddress value="0.0.0.0:8080"/>
         <DebugMode value="1"/>
     </WebSetting>
 

+ 2 - 1
controllers/order/order.go

@@ -21,10 +21,11 @@ type QueryTradePositionReq struct {
 
 // QueryTradePositionRsp 持仓汇总查询返回模型
 type QueryTradePositionRsp struct {
+	AccountID       uint64  `json:"accountid"  xorm:"'ACCOUNTID'"`             // 资金账户
 	BuyOrSell       int64   `json:"buyorsell"  xorm:"'BUYORSELL'" `            // 方向 - 0:买 1:卖
 	GoodsCode       string  `json:"goodscode" xorm:"GOODSCODE"`                // 商品代码
 	GoodsName       string  `json:"goodsname" xorm:"GOODSNAME"`                // 商品名称
-	Agreeunit       float64 `json:"agreeunit"  xorm:"'AGREEUNIT'"`             // 合约单位
+	AgreeUnit       float64 `json:"agreeunit"  xorm:"'AGREEUNIT'"`             // 合约单位
 	CurrencyID      int64   `json:"currencyid"  xorm:"'CURRENCYID'"`           // 报价货币ID
 	GoodUnitID      int64   `json:"goodunitid"  xorm:"'GOODUNITID'"`           // 报价单位ID
 	Goodunit        string  `json:"goodunit" xorm:"'GOODUNIT'"`                // 报价单位

+ 107 - 0
controllers/szdz/szdz.go

@@ -0,0 +1,107 @@
+package szdz
+
+import (
+	"mtp2_if/db"
+	"mtp2_if/global/app"
+	"mtp2_if/global/e"
+	"mtp2_if/logger"
+	"net/http"
+
+	"github.com/gin-gonic/gin"
+)
+
+// QueryRecieptOrderReq 点选挂牌委托单据查询参数
+type QueryRecieptOrderReq struct {
+	BuyOrSell   int    `form:"buyOrSell"`                  // 买卖方向,必填
+	GoodsID     int    `form:"goodsID" binding:"required"` // 商品ID,必填
+	AccountName string `form:"accountName"`                // 所属账户名称
+	MarketID    int    `form:"marketID"`                   // 市场ID
+}
+
+// QueryRecieptOrderRsp 点选挂牌委托单据查询返回模型
+type QueryRecieptOrderRsp struct {
+	Goodsid     int64   `json:"goodsid"  xorm:"'GOODSID'"`       // 商品ID
+	Goodscode   string  `json:"goodscode"  xorm:"'GOODSCODE'"`   // 商品代码
+	Goodsname   string  `json:"goodsname"  xorm:"'GOODSNAME'"`   // 商品名称
+	Buyorsell   int64   `json:"buyorsell"  xorm:"'BUYORSELL'"`   // 方向 - 0:买 1:卖
+	Orderid     int64   `json:"orderid"  xorm:"'ORDERID'"`       // 委托单号
+	Tradedate   string  `json:"tradedate"  xorm:"'TRADEDATE'"`   // 交易日(yyyyMMdd)
+	Orderprice  float64 `json:"orderprice"  xorm:"'ORDERPRICE'"` // 委托价格
+	EnableQty   int64   `json:"enableqty" xorm:"ENABLEQTY"`      // 可摘数量
+	AccountName string  `json:"accountName" xorm:"ACCOUNTNAME"`  // 所属账号名称(已脱敏)
+}
+
+// QueryRecieptOrder 点选挂牌委托单据查询(摘牌大厅)
+// @Summary 点选挂牌委托单据查询(摘牌大厅)
+// @Produce json
+// @Security ApiKeyAuth
+// @Param buyOrSell query int true "买卖方向 - 0:买 1:卖"
+// @Param goodsID query int true "商品ID"
+// @Param accountName query string false "所属账户名称"
+// @Param marketID query int false "市场ID"
+// @Success 200 {object} QueryRecieptOrderRsp
+// @Failure 500 {object} app.Response
+// @Router /SZDZ/QueryRecieptOrder [get]
+// @Tags 尚志大宗
+func QueryRecieptOrder(c *gin.Context) {
+	appG := app.Gin{C: c}
+
+	// 获取请求参数
+	var req QueryRecieptOrderReq
+	if err := appG.C.ShouldBindQuery(&req); err != nil {
+		logger.GetLogger().Errorf("QueryRecieptOrder failed: %s", err.Error())
+		appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
+		return
+	}
+
+	datas := make([]QueryRecieptOrderRsp, 0)
+	engine := db.GetEngine()
+
+	// 投资者挂牌委托单
+	s := engine.Table("TRADE_ORDERDETAIL").
+		Join("INNER", "GOODS", "TRADE_ORDERDETAIL.GOODSID = GOODS.GOODSID").
+		Join("LEFT", "TAACCOUNT", "TAACCOUNT.ACCOUNTID = TRADE_ORDERDETAIL.ACCOUNTID").
+		Join("LEFT", "USERACCOUNT", "USERACCOUNT.USERID = TAACCOUNT.RELATEDUSERID").
+		Select(`GOODS.GOODSID, GOODS.GOODSCODE, GOODS.GOODSNAME, 
+				TRADE_ORDERDETAIL.BUYORSELL, TRADE_ORDERDETAIL.ORDERID, TRADE_ORDERDETAIL.TRADEDATE, TRADE_ORDERDETAIL.ORDERPRICE, 
+				TRADE_ORDERDETAIL.ORDERQTY - TRADE_ORDERDETAIL.TRADEQTY - TRADE_ORDERDETAIL.CANCELQTY as ENABLEQTY, 
+				substr(USERACCOUNT.ACCOUNTNAME,0,1)||'****' as ACCOUNTNAME`).
+		Where("TRADE_ORDERDETAIL.ORDERSTATUS in (3,7,12) and TRADE_ORDERDETAIL.BUYORSELL = ? and GOODS.GOODSID = ?", req.BuyOrSell, req.GoodsID)
+	if len(req.AccountName) > 0 {
+		s = s.And("USERACCOUNT.ACCOUNTNAME = ?", req.AccountName)
+	}
+	if req.MarketID > 0 {
+		s = s.And("TRADE_ORDERDETAIL.MARKETID = ?", req.MarketID)
+	}
+	d1 := make([]QueryRecieptOrderRsp, 0)
+	if err := s.Find(&d1); err != nil {
+		// 查询失败
+		logger.GetLogger().Errorf("QueryRecieptOrder failed: %s", err.Error())
+		appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil)
+		return
+	}
+	datas = append(datas, d1...)
+
+	// 报价商挂牌委托
+	s = engine.Table("TRADE_QUOTEDETAILNEW").
+		Join("INNER", "GOODS", "TRADE_QUOTEDETAILNEW.GOODSID = GOODS.GOODSID").
+		Join("INNER", "QUOTER", "QUOTER.QUOTERID = TRADE_QUOTEDETAILNEW.QUOTERID").
+		Join("INNER", "AREAROLE", "AREAROLE.USERID = QUOTER.DEFAULTMAKERID and AREAROLE.ROLETYPE = 8").
+		Select(`GOODS.GOODSID, GOODS.GOODSCODE, GOODS.GOODSNAME, 
+				TRADE_QUOTEDETAILNEW.BUYORSELL, TRADE_QUOTEDETAILNEW.ORDERID, TRADE_QUOTEDETAILNEW.TRADEDATE, TRADE_QUOTEDETAILNEW.PRICE as ORDERPRICE, 
+				TRADE_QUOTEDETAILNEW.CURQTY as ENABLEQTY, 
+				substr(QUOTER.QUOTERNAME,0,1)||'****' as ACCOUNTNAME`).
+		Where("(TRADE_QUOTEDETAILNEW.CURQTY > 0 or TRADE_QUOTEDETAILNEW.PRICE > 0) and TRADE_QUOTEDETAILNEW.ISVALID != 1 and TRADE_QUOTEDETAILNEW.FREEZESTATUS != 3")
+	d2 := make([]QueryRecieptOrderRsp, 0)
+	if err := s.Find(&d2); err != nil {
+		// 查询失败
+		logger.GetLogger().Errorf("QueryRecieptOrder failed: %s", err.Error())
+		appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil)
+		return
+	}
+	datas = append(datas, d2...)
+
+	// 查询成功返回
+	logger.GetLogger().Infof("QueryRecieptOrder successed: %v", datas)
+	appG.Response(http.StatusOK, e.SUCCESS, datas)
+}

+ 103 - 0
docs/docs.go

@@ -660,6 +660,64 @@ var doc = `{
                 }
             }
         },
+        "/SZDZ/QueryRecieptOrder": {
+            "get": {
+                "security": [
+                    {
+                        "ApiKeyAuth": []
+                    }
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "尚志大宗"
+                ],
+                "summary": "点选挂牌委托单据查询(摘牌大厅)",
+                "parameters": [
+                    {
+                        "type": "integer",
+                        "description": "买卖方向",
+                        "name": "buyOrSell",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "integer",
+                        "description": "商品ID",
+                        "name": "goodsID",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "所属账户名称",
+                        "name": "accountName",
+                        "in": "query"
+                    },
+                    {
+                        "type": "integer",
+                        "description": "市场ID",
+                        "name": "marketID",
+                        "in": "query"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "OK",
+                        "schema": {
+                            "$ref": "#/definitions/szdz.QueryRecieptOrderRsp"
+                        }
+                    },
+                    "500": {
+                        "description": "Internal Server Error",
+                        "schema": {
+                            "$ref": "#/definitions/app.Response"
+                        }
+                    }
+                }
+            }
+        },
         "/User/GetLoginID": {
             "get": {
                 "produces": [
@@ -2417,6 +2475,10 @@ var doc = `{
         "order.QueryTradePositionRsp": {
             "type": "object",
             "properties": {
+                "accountid": {
+                    "description": "资金账户",
+                    "type": "integer"
+                },
                 "agreeunit": {
                     "description": "合约单位",
                     "type": "number"
@@ -2514,6 +2576,47 @@ var doc = `{
                     "type": "integer"
                 }
             }
+        },
+        "szdz.QueryRecieptOrderRsp": {
+            "type": "object",
+            "properties": {
+                "accountName": {
+                    "description": "所属账号名称(已脱敏)",
+                    "type": "string"
+                },
+                "buyorsell": {
+                    "description": "方向 - 0:买 1:卖",
+                    "type": "integer"
+                },
+                "enableqty": {
+                    "description": "可摘数量",
+                    "type": "integer"
+                },
+                "goodscode": {
+                    "description": "商品代码",
+                    "type": "string"
+                },
+                "goodsid": {
+                    "description": "商品ID",
+                    "type": "integer"
+                },
+                "goodsname": {
+                    "description": "商品名称",
+                    "type": "string"
+                },
+                "orderid": {
+                    "description": "委托单号",
+                    "type": "integer"
+                },
+                "orderprice": {
+                    "description": "委托价格",
+                    "type": "number"
+                },
+                "tradedate": {
+                    "description": "交易日(yyyyMMdd)",
+                    "type": "string"
+                }
+            }
         }
     },
     "securityDefinitions": {

+ 103 - 0
docs/swagger.json

@@ -644,6 +644,64 @@
                 }
             }
         },
+        "/SZDZ/QueryRecieptOrder": {
+            "get": {
+                "security": [
+                    {
+                        "ApiKeyAuth": []
+                    }
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "尚志大宗"
+                ],
+                "summary": "点选挂牌委托单据查询(摘牌大厅)",
+                "parameters": [
+                    {
+                        "type": "integer",
+                        "description": "买卖方向",
+                        "name": "buyOrSell",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "integer",
+                        "description": "商品ID",
+                        "name": "goodsID",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "string",
+                        "description": "所属账户名称",
+                        "name": "accountName",
+                        "in": "query"
+                    },
+                    {
+                        "type": "integer",
+                        "description": "市场ID",
+                        "name": "marketID",
+                        "in": "query"
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "OK",
+                        "schema": {
+                            "$ref": "#/definitions/szdz.QueryRecieptOrderRsp"
+                        }
+                    },
+                    "500": {
+                        "description": "Internal Server Error",
+                        "schema": {
+                            "$ref": "#/definitions/app.Response"
+                        }
+                    }
+                }
+            }
+        },
         "/User/GetLoginID": {
             "get": {
                 "produces": [
@@ -2401,6 +2459,10 @@
         "order.QueryTradePositionRsp": {
             "type": "object",
             "properties": {
+                "accountid": {
+                    "description": "资金账户",
+                    "type": "integer"
+                },
                 "agreeunit": {
                     "description": "合约单位",
                     "type": "number"
@@ -2498,6 +2560,47 @@
                     "type": "integer"
                 }
             }
+        },
+        "szdz.QueryRecieptOrderRsp": {
+            "type": "object",
+            "properties": {
+                "accountName": {
+                    "description": "所属账号名称(已脱敏)",
+                    "type": "string"
+                },
+                "buyorsell": {
+                    "description": "方向 - 0:买 1:卖",
+                    "type": "integer"
+                },
+                "enableqty": {
+                    "description": "可摘数量",
+                    "type": "integer"
+                },
+                "goodscode": {
+                    "description": "商品代码",
+                    "type": "string"
+                },
+                "goodsid": {
+                    "description": "商品ID",
+                    "type": "integer"
+                },
+                "goodsname": {
+                    "description": "商品名称",
+                    "type": "string"
+                },
+                "orderid": {
+                    "description": "委托单号",
+                    "type": "integer"
+                },
+                "orderprice": {
+                    "description": "委托价格",
+                    "type": "number"
+                },
+                "tradedate": {
+                    "description": "交易日(yyyyMMdd)",
+                    "type": "string"
+                }
+            }
         }
     },
     "securityDefinitions": {

+ 70 - 0
docs/swagger.yaml

@@ -1228,6 +1228,9 @@ definitions:
     type: object
   order.QueryTradePositionRsp:
     properties:
+      accountid:
+        description: 资金账户
+        type: integer
       agreeunit:
         description: 合约单位
         type: number
@@ -1301,6 +1304,36 @@ definitions:
         description: 交易模式
         type: integer
     type: object
+  szdz.QueryRecieptOrderRsp:
+    properties:
+      accountName:
+        description: 所属账号名称(已脱敏)
+        type: string
+      buyorsell:
+        description: 方向 - 0:买 1:卖
+        type: integer
+      enableqty:
+        description: 可摘数量
+        type: integer
+      goodscode:
+        description: 商品代码
+        type: string
+      goodsid:
+        description: 商品ID
+        type: integer
+      goodsname:
+        description: 商品名称
+        type: string
+      orderid:
+        description: 委托单号
+        type: integer
+      orderprice:
+        description: 委托价格
+        type: number
+      tradedate:
+        description: 交易日(yyyyMMdd)
+        type: string
+    type: object
 info:
   contact: {}
   description: 新的查询服务,替代原通用查询服务。
@@ -1705,6 +1738,43 @@ paths:
       summary: 持仓汇总查询(合约市场)
       tags:
       - 通用单据
+  /SZDZ/QueryRecieptOrder:
+    get:
+      parameters:
+      - description: 买卖方向
+        in: query
+        name: buyOrSell
+        required: true
+        type: integer
+      - description: 商品ID
+        in: query
+        name: goodsID
+        required: true
+        type: integer
+      - description: 所属账户名称
+        in: query
+        name: accountName
+        type: string
+      - description: 市场ID
+        in: query
+        name: marketID
+        type: integer
+      produces:
+      - application/json
+      responses:
+        "200":
+          description: OK
+          schema:
+            $ref: '#/definitions/szdz.QueryRecieptOrderRsp'
+        "500":
+          description: Internal Server Error
+          schema:
+            $ref: '#/definitions/app.Response'
+      security:
+      - ApiKeyAuth: []
+      summary: 点选挂牌委托单据查询(摘牌大厅)
+      tags:
+      - 尚志大宗
   /User/GetLoginID:
     get:
       parameters:

+ 42 - 0
models/accountModels.go

@@ -227,3 +227,45 @@ type Userinfo struct {
 func (Userinfo) TableName() string {
 	return "USERINFO"
 }
+
+// Quoter 报价商表
+type Quoter struct {
+	Quoterid       uint64    `json:"quoterid"  xorm:"'QUOTERID'" binding:"required"`     // 报价商ID(自增ID)
+	Quotername     string    `json:"quotername"  xorm:"'QUOTERNAME'" binding:"required"` // 报价商名称
+	Areauserid     uint64    `json:"areauserid"  xorm:"'AREAUSERID'" binding:"required"` // 所属机构ID
+	Tradeproperty  uint32    `json:"tradeproperty"  xorm:"'TRADEPROPERTY'"`              // 交易属性
+	Defaultmakerid uint64    `json:"defaultmakerid"  xorm:"'DEFAULTMAKERID'"`            // 默认做市商ID(UserID)
+	Quoterstatus   uint32    `json:"quoterstatus"  xorm:"'QUOTERSTATUS'"`                // 报价商状态 - 1:正常 2:注销
+	Modifierid     uint64    `json:"modifierid"  xorm:"'MODIFIERID'"`                    // 修改人
+	Modifytime     time.Time `json:"modifytime"  xorm:"'MODIFYTIME'"`                    // 修改时间
+	Matchmode      uint32    `json:"matchmode"  xorm:"'MATCHMODE'"`                      // 对手模式: 1-经纪会员自接 2:按对手关系[收益权用]
+}
+
+// TableName is QUOTER
+func (Quoter) TableName() string {
+	return "QUOTER"
+}
+
+// Arearole 机构角色表
+type Arearole struct {
+	Userid         uint64    `json:"userid"  xorm:"'USERID'" binding:"required"`     // 机构用户ID其他做市关系,都设置为 1
+	Roletype       uint32    `json:"roletype"  xorm:"'ROLETYPE'" binding:"required"` // 角色类型 -  1:交易所 2:运营机构 3:营销中心 4:仓库机构 5:三方服务机构 6:自营会员 7:经纪会员 8:做市会员 9:产业会员 10:金融机构 11:商城店铺 12:子机构 13:报价商 14:积分服务商 15:供货商 16:圈内会员 17:物流机构 18:报价配置机构 19:场外期权做市商 20:组织机构 21:顶级机构
+	Tradeaccountid uint64    `json:"tradeaccountid"  xorm:"'TRADEACCOUNTID'"`        // 默认交易资金账号ID(做市会员被动接单使用、商城店铺默认资金账 号、圈内会员默认资金账号)  - 作废, 使用UserReckonAccount
+	Createtime     time.Time `json:"createtime"  xorm:"'CREATETIME'"`                // 创建时间
+	Creatorid      uint64    `json:"creatorid"  xorm:"'CREATORID'"`                  // 创建人ID
+	Modifytime     time.Time `json:"modifytime"  xorm:"'MODIFYTIME'"`                // 修改时间
+	Modifierid     uint64    `json:"modifierid"  xorm:"'MODIFIERID'"`                // 修改人ID
+	Shoppassword   string    `json:"shoppassword"  xorm:"'SHOPPASSWORD'"`            // 商城店铺登陆密码(商城店铺角色使用)
+	Isreturnscore  uint32    `json:"isreturnscore"  xorm:"'ISRETURNSCORE'"`          // 是否返还积分 [经纪会员-辽东湾] - 0:不返还 1:返还
+	Transurl       string    `json:"transurl"  xorm:"'TRANSURL'"`                    // 物流地址(物流机构)
+	Outuserid      string    `json:"outuserid"  xorm:"'OUTUSERID'"`                  // 外部账户[场外期权做市商]
+	Parentuserid   uint64    `json:"parentuserid"  xorm:"'PARENTUSERID'"`            // 上级组织机构(组织机构)
+	Rootuserid     uint64    `json:"rootuserid"  xorm:"'ROOTUSERID'"`                // 顶级组织机构用户ID(组织机构)
+	Sublevelpath   string    `json:"sublevelpath"  xorm:"'SUBLEVELPATH'"`            // 组织机构层级路径(逗号分隔,首尾加逗号)
+	Orgtype        uint32    `json:"orgtype"  xorm:"'ORGTYPE'"`                      // 组织机构类型 1:机构 2:交易员
+}
+
+// TableName is AREAROLE
+func (Arearole) TableName() string {
+	return "AREAROLE"
+}

+ 158 - 0
models/orderModels.go

@@ -1,5 +1,7 @@
 package models
 
+import "time"
+
 // Tradeposition 持仓头寸表 - 导历史
 type Tradeposition struct {
 	Accountid           uint64  `json:"accountid"  xorm:"'ACCOUNTID'" binding:"required"`   // 账号Id
@@ -39,3 +41,159 @@ type Tradeposition struct {
 func (Tradeposition) TableName() string {
 	return "TRADEPOSITION"
 }
+
+// Tradeorderdetail 交易委托单表 - 导历史
+type Tradeorderdetail struct {
+	Orderid                 int64     `json:"orderid"  xorm:"'ORDERID'" binding:"required"`              // 委托单号(100+Unix秒时间戳(10位)+2位(MarketServiceID)+xxxx)
+	Tradedate               string    `json:"tradedate"  xorm:"'TRADEDATE'" binding:"required"`          // 交易日(yyyyMMdd)
+	Buildtype               int64     `json:"buildtype"  xorm:"'BUILDTYPE'" binding:"required"`          // 委托单据类型 - 1:建仓 2:平仓 3:先平后建
+	Preorderid              int64     `json:"preorderid"  xorm:"'PREORDERID'"`                           // 关联预埋单号(止盈止损单时填写)
+	Cancelorderid           int64     `json:"cancelorderid"  xorm:"'CANCELORDERID'"`                     // 撤单单号(撤单时填写)
+	Relatedid               int64     `json:"relatedid"  xorm:"'RELATEDID'"`                             // 关联单号(交割单)
+	Marketid                int64     `json:"marketid"  xorm:"'MARKETID'" binding:"required"`            // 市场ID
+	Goodsid                 int64     `json:"goodsid"  xorm:"'GOODSID'" binding:"required"`              // 商品ID
+	Accountid               int64     `json:"accountid"  xorm:"'ACCOUNTID'" binding:"required"`          // 账户ID[报价币种]
+	Memberuserid            int64     `json:"memberuserid"  xorm:"'MEMBERUSERID'" binding:"required"`    // 所属会员UserID
+	Buyorsell               int64     `json:"buyorsell"  xorm:"'BUYORSELL'" binding:"required"`          // 买卖 - 0:买 1:卖
+	Pricemode               int64     `json:"pricemode"  xorm:"'PRICEMODE'" binding:"required"`          // 取价方式 - 1:市价 2: 限价
+	Orderprice              float64   `json:"orderprice"  xorm:"'ORDERPRICE'"`                           // 委托价格
+	Marketmaxsub            float64   `json:"marketmaxsub"  xorm:"'MARKETMAXSUB'"`                       // 市价最大偏移范围
+	Orderqty                int64     `json:"orderqty"  xorm:"'ORDERQTY'" binding:"required"`            // 委托数量
+	Tradeqty                int64     `json:"tradeqty"  xorm:"'TRADEQTY'"`                               // 成交数量
+	Cancelqty               int64     `json:"cancelqty"  xorm:"'CANCELQTY'"`                             // 撤单数量
+	Openqty                 int64     `json:"openqty"  xorm:"'OPENQTY'"`                                 // 开仓数量(先建后平操作,需要记录)
+	Closeqty                int64     `json:"closeqty"  xorm:"'CLOSEQTY'"`                               // 平仓数量(先建后平操作 需要记录)
+	Opentradeqty            int64     `json:"opentradeqty"  xorm:"'OPENTRADEQTY'"`                       // 开仓成交数量(先建后平操作,需要记录)
+	Closetradeqty           int64     `json:"closetradeqty"  xorm:"'CLOSETRADEQTY'"`                     // 平仓成交数量(先建后平操作,需要记录)
+	Freezemargin            float64   `json:"freezemargin"  xorm:"'FREEZEMARGIN'"`                       // 冻结保证金(冻结交易金额)
+	Unfreezemargin          float64   `json:"unfreezemargin"  xorm:"'UNFREEZEMARGIN'"`                   // 解冻保证金
+	Freezecharge            float64   `json:"freezecharge"  xorm:"'FREEZECHARGE'"`                       // 冻结手续费
+	Unfreezecharge          float64   `json:"unfreezecharge"  xorm:"'UNFREEZECHARGE'"`                   // 解冻手续费
+	Openfreezecharge        float64   `json:"openfreezecharge"  xorm:"'OPENFREEZECHARGE'"`               // 开仓冻结手续费(先建后平操作,需要记录)
+	Closefreezecharge       float64   `json:"closefreezecharge"  xorm:"'CLOSEFREEZECHARGE'"`             // 平仓冻结手续费(先建后平操作,需要记录)
+	Openunfreezecharge      float64   `json:"openunfreezecharge"  xorm:"'OPENUNFREEZECHARGE'"`           // 开仓解冻手续费(先建后平操作,需要记录)
+	Closeunfreezecharge     float64   `json:"closeunfreezecharge"  xorm:"'CLOSEUNFREEZECHARGE'"`         // 平仓解冻手续费(先建后平操作,需要记录)
+	Validtype               int64     `json:"validtype"  xorm:"'VALIDTYPE'" binding:"required"`          // 有效类型 - 1当日有效 2本周有效 3指定日期有效 4一直有效 5指定时间有效
+	Validtime               time.Time `json:"validtime"  xorm:"'VALIDTIME'"`                             // 有效期限
+	Volumetype              int64     `json:"volumetype"  xorm:"'VOLUMETYPE'"`                           // 当时间有效类型为 “立即执行否则取消 IOC” 时,需要此项 - 0:任意量  1:最小量(暂时不支持) 2:全部量
+	Operatetype             int64     `json:"operatetype"  xorm:"'OPERATETYPE'" binding:"required"`      // 操作类型 - 1:正常下单 2:斩仓 3:转单 4:结算撤单 5:系统卖出(适用于先平后建的卖出) 6:行情源报价 7:(结算)到期强平 8:(结算)协议转让 9:系统对冲单 10:(结算)到期无效 11:交割协议转让 12:交割协议平仓 13:交割成交(所有权) 14:管理端强行平仓 15:管理端协议转让
+	Ordertime               time.Time `json:"ordertime"  xorm:"'ORDERTIME'" binding:"required"`          // 委托时间
+	Ordersrc                int64     `json:"ordersrc"  xorm:"'ORDERSRC'"`                               // 委托来源 -  1:客户端 2:管理端 3:风控服务 4:交割服务 5:交易服务 6:交易日结 7:商品强平 8:管理端商品退市强平 9:交易接口 10:交割服务商被动(受托竞价) 11:预埋触发
+	Orderstatus             int64     `json:"orderstatus"  xorm:"'ORDERSTATUS'"`                         // 委托状态 - 1: 委托请求 2:待冻结 3:委托成功 4: 委托失败 5:配对成功 6: 已撤销 7:部分成交 8:已成交 9:部成部撤 10:成交失败 11:已拒绝 12:经过摘牌(先摘后挂专用-先摘后挂已摘过) 13:冻结成功(通道交易专用) 14:通道已撤 15:通道部成部撤 16:成交失败违约(荷兰式竞拍专用)
+	Operatorid              int64     `json:"operatorid"  xorm:"'OPERATORID'"`                           // 登录账号(LoginID)
+	Updatetime              time.Time `json:"updatetime"  xorm:"'UPDATETIME'"`                           // 更新时间
+	Clientordertime         time.Time `json:"clientordertime"  xorm:"'CLIENTORDERTIME'"`                 // 客户端委托时间
+	Clientticket            string    `json:"clientticket"  xorm:"'CLIENTTICKET'"`                       // 客户端流水号
+	UUID                    string    `json:"uuid"  xorm:"'UUID'"`                                       // 发起端唯一id
+	Clienttype              int64     `json:"clienttype"  xorm:"'CLIENTTYPE'"`                           // 客户端类型 - 0:保留为未填终端类型 1:PC管理端 2:PC交易端 3:手机客户端_安卓 4:网页客户端 5:微信客户端 6:手机客户端_苹果 7:网上开户客户端 8:无效终端编号 9:报价终端(中江)
+	Retcode                 int64     `json:"retcode"  xorm:"'RETCODE'"`                                 // 错误代码
+	Tradeproperty           int64     `json:"tradeproperty"  xorm:"'TRADEPROPERTY'"`                     // 交易属性
+	Listingselecttype       int64     `json:"listingselecttype"  xorm:"'LISTINGSELECTTYPE'"`             // 挂牌点选类型 - 1:挂牌 2:摘牌 3:先摘后挂
+	Delistingtype           int64     `json:"delistingtype"  xorm:"'DELISTINGTYPE'"`                     // 摘牌类型 - 1:价格最优 2:点选成交
+	Marginalgorithm         int64     `json:"marginalgorithm"  xorm:"'MARGINALGORITHM'"`                 // 保证金收取方式  1:比率  2:固定
+	Marginvalue             float64   `json:"marginvalue"  xorm:"'MARGINVALUE'"`                         // 即市保证金设置值
+	Openfeealgorithm        int64     `json:"openfeealgorithm"  xorm:"'OPENFEEALGORITHM'"`               // 建仓手续费收取方式  1:比率  2:固定
+	Openmemberchargevalue   float64   `json:"openmemberchargevalue"  xorm:"'OPENMEMBERCHARGEVALUE'"`     // 建仓会员手续费设置值
+	Openexchagechargevalue  float64   `json:"openexchagechargevalue"  xorm:"'OPENEXCHAGECHARGEVALUE'"`   // 建仓交易所手续费设置值
+	Closefeealgorithm       int64     `json:"closefeealgorithm"  xorm:"'CLOSEFEEALGORITHM'"`             // 平仓手续费收取方式 1:比率  2:固定
+	Closememberchargevalue  float64   `json:"closememberchargevalue"  xorm:"'CLOSEMEMBERCHARGEVALUE'"`   // 平仓会员手续费设置值
+	Closeexchagechargevalue float64   `json:"closeexchagechargevalue"  xorm:"'CLOSEEXCHAGECHARGEVALUE'"` // 平仓交易所手续费设置值
+	Optiontype              int64     `json:"optiontype"  xorm:"'OPTIONTYPE'"`                           // 期权类型 - 1:认购(看涨) 2:认沽(看跌)
+	Premium                 float64   `json:"premium"  xorm:"'PREMIUM'"`                                 // 权利金
+	Ispreexercise           int64     `json:"ispreexercise"  xorm:"'ISPREEXERCISE'"`                     // 是否预申报- 0:否 1:是
+	Preexerciseprice        float64   `json:"preexerciseprice"  xorm:"'PREEXERCISEPRICE'"`               // 预申报价格
+	Isconfirmexercise       int64     `json:"isconfirmexercise"  xorm:"'ISCONFIRMEXERCISE'"`             // 是否确认行权- 0:否 1:是
+	Quoteid                 int64     `json:"quoteid"  xorm:"'QUOTEID'"`                                 // 报价单ID
+	Gcaccountid             int64     `json:"gcaccountid"  xorm:"'GCACCOUNTID'"`                         // 账户ID[合约币种]
+	Sessionid               int64     `json:"sessionid"  xorm:"'SESSIONID'"`                             // 会话ID
+}
+
+// TableName is TRADE_ORDERDETAIL
+func (Tradeorderdetail) TableName() string {
+	return "TRADE_ORDERDETAIL"
+}
+
+// Tradequotedetailnew 报价商报价表 - 导历史
+type Tradequotedetailnew struct {
+	Quoterid             uint64    `json:"quoterid"  xorm:"'QUOTERID'" binding:"required"`      // 报价商ID
+	Goodsid              uint32    `json:"goodsid"  xorm:"'GOODSID'" binding:"required"`        // 商品ID
+	Buyorsell            uint32    `json:"buyorsell"  xorm:"'BUYORSELL'" binding:"required"`    // 买卖方向 - 0:买 1:卖
+	Tradedate            string    `json:"tradedate"  xorm:"'TRADEDATE'"`                       // 交易日(yyyyMMdd)
+	Quotetime            time.Time `json:"quotetime"  xorm:"'QUOTETIME'"`                       // 报价时间
+	Orderid              uint64    `json:"orderid"  xorm:"'ORDERID'"`                           // 委托单ID(使用委托单规则生成)
+	Quoteid              uint64    `json:"quoteid"  xorm:"'QUOTEID'"`                           // 报价单ID(自动报价)
+	Price                float64   `json:"price"  xorm:"'PRICE'"`                               // 价格
+	Qty                  uint64    `json:"qty"  xorm:"'QTY'"`                                   // 数量
+	Curqty               uint64    `json:"curqty"  xorm:"'CURQTY'"`                             // 当前量
+	Move                 float64   `json:"move"  xorm:"'MOVE'"`                                 // 点差  整数 可零正负
+	Limitprice           float64   `json:"limitprice"  xorm:"'LIMITPRICE'"`                     // 最高买价/最低卖价
+	Quotesource          uint32    `json:"quotesource"  xorm:"'QUOTESOURCE'"`                   // 报价来源 - 0:外部行情 1:管理端手动报价2:自动报价服务报价 3:交易接口
+	Quoteeffectivesecond uint64    `json:"quoteeffectivesecond"  xorm:"'QUOTEEFFECTIVESECOND'"` // 行情有效时间(秒)
+	Expireddate          time.Time `json:"expireddate"  xorm:"'EXPIREDDATE'"`                   // 有效时间(根据秒算出实际时间)
+	Freezeamount         float64   `json:"freezeamount"  xorm:"'FREEZEAMOUNT'"`                 // 剩余冻结资金(所有权)
+	Freezestatus         uint32    `json:"freezestatus"  xorm:"'FREEZESTATUS'"`                 // 冻结状态(所有权) - 1:无冻结 2:已冻结 3:已解冻
+	Pricetype            uint32    `json:"pricetype"  xorm:"'PRICETYPE'"`                       // 报价类型 - 1:不报价 2:手工报价
+	Qtytype              uint32    `json:"qtytype"  xorm:"'QTYTYPE'"`                           // 报量类型 - 1:随机量 2:手工报量 3:延用量
+	Isvalid              uint32    `json:"isvalid"  xorm:"'ISVALID'"`                           // 是否撤销 - 0:未撤销 1:已撤销
+	Marketid             uint32    `json:"marketid"  xorm:"'MARKETID'"`                         // 市场ID
+	Tradeproperty        uint32    `json:"tradeproperty"  xorm:"'TRADEPROPERTY'"`               // 交易属性 -  1:收益权(可做空) 2:所有权(不可做空) 3:期权 4:现货 5:参考行情
+	Freezeprice          float64   `json:"freezeprice"  xorm:"'FREEZEPRICE'"`                   // 冻结资金价格
+	Serialnumber         string    `json:"serialnumber"  xorm:"'SERIALNUMBER'"`                 // 外部流水号
+	Accountid            uint64    `json:"accountid"  xorm:"'ACCOUNTID'"`                       // 报价资金账号
+}
+
+// TableName is TRADE_QUOTEDETAILNEW
+func (Tradequotedetailnew) TableName() string {
+	return "TRADE_QUOTEDETAILNEW"
+}
+
+// Tradetradedetail 交易成交单表 - 导历史
+type Tradetradedetail struct {
+	Tradeid                 int64     `json:"tradeid"  xorm:"'TRADEID'" binding:"required"`              // 成交单号(101+Unix秒时间戳(10位)+2位(MarketServiceID)+xxxx)
+	Buyorsell               int64     `json:"buyorsell"  xorm:"'BUYORSELL'" binding:"required"`          // 方向 - 0:买 1:卖
+	Orderid                 int64     `json:"orderid"  xorm:"'ORDERID'" binding:"required"`              // 委托单号
+	Tradedate               string    `json:"tradedate"  xorm:"'TRADEDATE'" binding:"required"`          // 交易日(yyyyMMdd)
+	Accountid               int64     `json:"accountid"  xorm:"'ACCOUNTID'" binding:"required"`          // 账户ID[报价币种]
+	Goodsid                 int64     `json:"goodsid"  xorm:"'GOODSID'" binding:"required"`              // 商品ID
+	Marketid                int64     `json:"marketid"  xorm:"'MARKETID'" binding:"required"`            // 市场ID
+	Memberuserid            int64     `json:"memberuserid"  xorm:"'MEMBERUSERID'" binding:"required"`    // 会员id 个人投资者 需要填写
+	Matchaccountid          int64     `json:"matchaccountid"  xorm:"'MATCHACCOUNTID'"`                   // 对手账号id
+	Tradetime               time.Time `json:"tradetime"  xorm:"'TRADETIME'" binding:"required"`          // 成交时间
+	Tradeprice              float64   `json:"tradeprice"  xorm:"'TRADEPRICE'" binding:"required"`        // 成交价格
+	Tradeqty                int64     `json:"tradeqty"  xorm:"'TRADEQTY'" binding:"required"`            // 成交数量
+	Tradeamount             float64   `json:"tradeamount"  xorm:"'TRADEAMOUNT'" binding:"required"`      // 成交金额[账户币种,用于所有权]
+	Closepl                 float64   `json:"closepl"  xorm:"'CLOSEPL'"`                                 // 平仓盈亏
+	Intclosepl              int64     `json:"intclosepl"  xorm:"'INTCLOSEPL'"`                           // 整型盈亏(用于交易结算试算平衡-收益权)
+	Opencharge              float64   `json:"opencharge"  xorm:"'OPENCHARGE'"`                           // 建仓手续费(支付总手续费=(交易所比率+会员比率)*成交金额)
+	Closecharge             float64   `json:"closecharge"  xorm:"'CLOSECHARGE'"`                         // 平仓手续费(支付总手续费=(交易所比率+会员比率)*成交金额)
+	Tradetype               int64     `json:"tradetype"  xorm:"'TRADETYPE'"`                             // 成交类别 - 1:正常委托成交 2:定向做市成交(接单) 3:交割协议平仓成交 4:交割减仓成交 5:到期强平成交 6:风控斩仓成交 7:协议平仓(管理端)成交 8:仓单转持仓成交 9: 交割协议转让成交 10:受托竞价成交(接单) 11:协议转让成交 12:系统强行平仓 13:期权违约平仓 14:场外期权单向成交 15:冻结头寸解冻申请 16:冻结头寸商品配售 17:冻结头寸商品转让 18:冻结头寸商品回购 19:冻结头寸商品提货 20:冻结头寸结算解冻 21:转换外部商品 22:预售商品头寸转入 23:预售商品头寸转入注销 24:预售商品成交 25:预售商品卖家增加头寸 26:预售商品结束清理
+	Buildtype               int64     `json:"buildtype"  xorm:"'BUILDTYPE'"`                             // 委托单据类型 1:建仓 2:平仓 3:先平后建
+	Openqty                 int64     `json:"openqty"  xorm:"'OPENQTY'"`                                 // 开仓数量(先建后平操作 需要记录)
+	Closeqty                int64     `json:"closeqty"  xorm:"'CLOSEQTY'"`                               // 平仓数量(先建后平操作 需要记录)
+	Status                  int64     `json:"status"  xorm:"'STATUS'"`                                   // 处理状态 - 1:待处理 2:已处理 3:处理失败
+	Isreckoned              int64     `json:"isreckoned"  xorm:"'ISRECKONED'"`                           // 是否结算 - 0:未结算 1:已结算
+	Tradeproperty           int64     `json:"tradeproperty"  xorm:"'TRADEPROPERTY'"`                     // 交易属性
+	Openfeealgorithm        int64     `json:"openfeealgorithm"  xorm:"'OPENFEEALGORITHM'"`               // 建仓手续费收取方式  1:比率  2:固定
+	Openmemberchargevalue   float64   `json:"openmemberchargevalue"  xorm:"'OPENMEMBERCHARGEVALUE'"`     // 建仓会员手续费设置值
+	Openexchagechargevalue  float64   `json:"openexchagechargevalue"  xorm:"'OPENEXCHAGECHARGEVALUE'"`   // 建仓交易所手续费设置值
+	Closefeealgorithm       int64     `json:"closefeealgorithm"  xorm:"'CLOSEFEEALGORITHM'"`             // 平仓手续费收取方式 1:比率  2:固定
+	Closememberchargevalue  float64   `json:"closememberchargevalue"  xorm:"'CLOSEMEMBERCHARGEVALUE'"`   // 平仓会员手续费设置值
+	Closeexchagechargevalue float64   `json:"closeexchagechargevalue"  xorm:"'CLOSEEXCHAGECHARGEVALUE'"` // 平仓交易所手续费设置值
+	Optiontype              int64     `json:"optiontype"  xorm:"'OPTIONTYPE'"`                           // 期权类型 - 1:认购(看涨) 2:认沽(看跌)
+	Premium                 float64   `json:"premium"  xorm:"'PREMIUM'"`                                 // 权利金 - [持仓单的权利金]
+	Ispreexercise           int64     `json:"ispreexercise"  xorm:"'ISPREEXERCISE'"`                     // 是否预申报- 0:否 1:是
+	Preexerciseprice        float64   `json:"preexerciseprice"  xorm:"'PREEXERCISEPRICE'"`               // 预申报价格
+	Isconfirmexercise       int64     `json:"isconfirmexercise"  xorm:"'ISCONFIRMEXERCISE'"`             // 是否确认行权- 0:否 1:是
+	Ismain                  int64     `json:"ismain"  xorm:"'ISMAIN'"`                                   // 是否主单 - 0:不是 1:是
+	Performanceplanid       int64     `json:"performanceplanid"  xorm:"'PERFORMANCEPLANID'"`             // 履约计划ID[期权]
+	Performancestatus       int64     `json:"performancestatus"  xorm:"'PERFORMANCESTATUS'"`             // 履约状态[期权] - 0:无履约 1:未履约 2:履约中 3:履约完成
+	Creditamount            float64   `json:"creditamount"  xorm:"'CREDITAMOUNT'"`                       // 授信金额
+	Gcaccountid             int64     `json:"gcaccountid"  xorm:"'GCACCOUNTID'"`                         // 账户ID[合约币种]
+	Closepl2                float64   `json:"closepl2"  xorm:"'CLOSEPL2'"`                               // 平仓盈亏[逐笔]
+	Relatedouttradeid       int64     `json:"relatedouttradeid"  xorm:"'RELATEDOUTTRADEID'"`             // 关联外部成交单ID
+}
+
+// TableName is TRADE_TRADEDETAIL
+func (Tradetradedetail) TableName() string {
+	return "TRADE_TRADEDETAIL"
+}

+ 0 - 124
models/tradeModels.go

@@ -1,126 +1,2 @@
 // Package models 100.15合约交易
 package models
-
-import "time"
-
-// Tradeorderdetail 交易委托单表 - 导历史
-type Tradeorderdetail struct {
-	Orderid                 int64     `json:"orderid"  xorm:"'ORDERID'" binding:"required"`              // 委托单号(100+Unix秒时间戳(10位)+2位(MarketServiceID)+xxxx)
-	Tradedate               string    `json:"tradedate"  xorm:"'TRADEDATE'" binding:"required"`          // 交易日(yyyyMMdd)
-	Buildtype               int64     `json:"buildtype"  xorm:"'BUILDTYPE'" binding:"required"`          // 委托单据类型 - 1:建仓 2:平仓 3:先平后建
-	Preorderid              int64     `json:"preorderid"  xorm:"'PREORDERID'"`                           // 关联预埋单号(止盈止损单时填写)
-	Cancelorderid           int64     `json:"cancelorderid"  xorm:"'CANCELORDERID'"`                     // 撤单单号(撤单时填写)
-	Relatedid               int64     `json:"relatedid"  xorm:"'RELATEDID'"`                             // 关联单号(交割单)
-	Marketid                int64     `json:"marketid"  xorm:"'MARKETID'" binding:"required"`            // 市场ID
-	Goodsid                 int64     `json:"goodsid"  xorm:"'GOODSID'" binding:"required"`              // 商品ID
-	Accountid               int64     `json:"accountid"  xorm:"'ACCOUNTID'" binding:"required"`          // 账户ID[报价币种]
-	Memberuserid            int64     `json:"memberuserid"  xorm:"'MEMBERUSERID'" binding:"required"`    // 所属会员UserID
-	Buyorsell               int64     `json:"buyorsell"  xorm:"'BUYORSELL'" binding:"required"`          // 买卖 - 0:买 1:卖
-	Pricemode               int64     `json:"pricemode"  xorm:"'PRICEMODE'" binding:"required"`          // 取价方式 - 1:市价 2: 限价
-	Orderprice              float64   `json:"orderprice"  xorm:"'ORDERPRICE'"`                           // 委托价格
-	Marketmaxsub            float64   `json:"marketmaxsub"  xorm:"'MARKETMAXSUB'"`                       // 市价最大偏移范围
-	Orderqty                int64     `json:"orderqty"  xorm:"'ORDERQTY'" binding:"required"`            // 委托数量
-	Tradeqty                int64     `json:"tradeqty"  xorm:"'TRADEQTY'"`                               // 成交数量
-	Cancelqty               int64     `json:"cancelqty"  xorm:"'CANCELQTY'"`                             // 撤单数量
-	Openqty                 int64     `json:"openqty"  xorm:"'OPENQTY'"`                                 // 开仓数量(先建后平操作,需要记录)
-	Closeqty                int64     `json:"closeqty"  xorm:"'CLOSEQTY'"`                               // 平仓数量(先建后平操作 需要记录)
-	Opentradeqty            int64     `json:"opentradeqty"  xorm:"'OPENTRADEQTY'"`                       // 开仓成交数量(先建后平操作,需要记录)
-	Closetradeqty           int64     `json:"closetradeqty"  xorm:"'CLOSETRADEQTY'"`                     // 平仓成交数量(先建后平操作,需要记录)
-	Freezemargin            float64   `json:"freezemargin"  xorm:"'FREEZEMARGIN'"`                       // 冻结保证金(冻结交易金额)
-	Unfreezemargin          float64   `json:"unfreezemargin"  xorm:"'UNFREEZEMARGIN'"`                   // 解冻保证金
-	Freezecharge            float64   `json:"freezecharge"  xorm:"'FREEZECHARGE'"`                       // 冻结手续费
-	Unfreezecharge          float64   `json:"unfreezecharge"  xorm:"'UNFREEZECHARGE'"`                   // 解冻手续费
-	Openfreezecharge        float64   `json:"openfreezecharge"  xorm:"'OPENFREEZECHARGE'"`               // 开仓冻结手续费(先建后平操作,需要记录)
-	Closefreezecharge       float64   `json:"closefreezecharge"  xorm:"'CLOSEFREEZECHARGE'"`             // 平仓冻结手续费(先建后平操作,需要记录)
-	Openunfreezecharge      float64   `json:"openunfreezecharge"  xorm:"'OPENUNFREEZECHARGE'"`           // 开仓解冻手续费(先建后平操作,需要记录)
-	Closeunfreezecharge     float64   `json:"closeunfreezecharge"  xorm:"'CLOSEUNFREEZECHARGE'"`         // 平仓解冻手续费(先建后平操作,需要记录)
-	Validtype               int64     `json:"validtype"  xorm:"'VALIDTYPE'" binding:"required"`          // 有效类型 - 1当日有效 2本周有效 3指定日期有效 4一直有效 5指定时间有效
-	Validtime               time.Time `json:"validtime"  xorm:"'VALIDTIME'"`                             // 有效期限
-	Volumetype              int64     `json:"volumetype"  xorm:"'VOLUMETYPE'"`                           // 当时间有效类型为 “立即执行否则取消 IOC” 时,需要此项 - 0:任意量  1:最小量(暂时不支持) 2:全部量
-	Operatetype             int64     `json:"operatetype"  xorm:"'OPERATETYPE'" binding:"required"`      // 操作类型 - 1:正常下单 2:斩仓 3:转单 4:结算撤单 5:系统卖出(适用于先平后建的卖出) 6:行情源报价 7:(结算)到期强平 8:(结算)协议转让 9:系统对冲单 10:(结算)到期无效 11:交割协议转让 12:交割协议平仓 13:交割成交(所有权) 14:管理端强行平仓 15:管理端协议转让
-	Ordertime               time.Time `json:"ordertime"  xorm:"'ORDERTIME'" binding:"required"`          // 委托时间
-	Ordersrc                int64     `json:"ordersrc"  xorm:"'ORDERSRC'"`                               // 委托来源 -  1:客户端 2:管理端 3:风控服务 4:交割服务 5:交易服务 6:交易日结 7:商品强平 8:管理端商品退市强平 9:交易接口 10:交割服务商被动(受托竞价) 11:预埋触发
-	Orderstatus             int64     `json:"orderstatus"  xorm:"'ORDERSTATUS'"`                         // 委托状态 - 1: 委托请求 2:待冻结 3:委托成功 4: 委托失败 5:配对成功 6: 已撤销 7:部分成交 8:已成交 9:部成部撤 10:成交失败 11:已拒绝 12:经过摘牌(先摘后挂专用-先摘后挂已摘过) 13:冻结成功(通道交易专用) 14:通道已撤 15:通道部成部撤 16:成交失败违约(荷兰式竞拍专用)
-	Operatorid              int64     `json:"operatorid"  xorm:"'OPERATORID'"`                           // 登录账号(LoginID)
-	Updatetime              time.Time `json:"updatetime"  xorm:"'UPDATETIME'"`                           // 更新时间
-	Clientordertime         time.Time `json:"clientordertime"  xorm:"'CLIENTORDERTIME'"`                 // 客户端委托时间
-	Clientticket            string    `json:"clientticket"  xorm:"'CLIENTTICKET'"`                       // 客户端流水号
-	UUID                    string    `json:"uuid"  xorm:"'UUID'"`                                       // 发起端唯一id
-	Clienttype              int64     `json:"clienttype"  xorm:"'CLIENTTYPE'"`                           // 客户端类型 - 0:保留为未填终端类型 1:PC管理端 2:PC交易端 3:手机客户端_安卓 4:网页客户端 5:微信客户端 6:手机客户端_苹果 7:网上开户客户端 8:无效终端编号 9:报价终端(中江)
-	Retcode                 int64     `json:"retcode"  xorm:"'RETCODE'"`                                 // 错误代码
-	Tradeproperty           int64     `json:"tradeproperty"  xorm:"'TRADEPROPERTY'"`                     // 交易属性
-	Listingselecttype       int64     `json:"listingselecttype"  xorm:"'LISTINGSELECTTYPE'"`             // 挂牌点选类型 - 1:挂牌 2:摘牌 3:先摘后挂
-	Delistingtype           int64     `json:"delistingtype"  xorm:"'DELISTINGTYPE'"`                     // 摘牌类型 - 1:价格最优 2:点选成交
-	Marginalgorithm         int64     `json:"marginalgorithm"  xorm:"'MARGINALGORITHM'"`                 // 保证金收取方式  1:比率  2:固定
-	Marginvalue             float64   `json:"marginvalue"  xorm:"'MARGINVALUE'"`                         // 即市保证金设置值
-	Openfeealgorithm        int64     `json:"openfeealgorithm"  xorm:"'OPENFEEALGORITHM'"`               // 建仓手续费收取方式  1:比率  2:固定
-	Openmemberchargevalue   float64   `json:"openmemberchargevalue"  xorm:"'OPENMEMBERCHARGEVALUE'"`     // 建仓会员手续费设置值
-	Openexchagechargevalue  float64   `json:"openexchagechargevalue"  xorm:"'OPENEXCHAGECHARGEVALUE'"`   // 建仓交易所手续费设置值
-	Closefeealgorithm       int64     `json:"closefeealgorithm"  xorm:"'CLOSEFEEALGORITHM'"`             // 平仓手续费收取方式 1:比率  2:固定
-	Closememberchargevalue  float64   `json:"closememberchargevalue"  xorm:"'CLOSEMEMBERCHARGEVALUE'"`   // 平仓会员手续费设置值
-	Closeexchagechargevalue float64   `json:"closeexchagechargevalue"  xorm:"'CLOSEEXCHAGECHARGEVALUE'"` // 平仓交易所手续费设置值
-	Optiontype              int64     `json:"optiontype"  xorm:"'OPTIONTYPE'"`                           // 期权类型 - 1:认购(看涨) 2:认沽(看跌)
-	Premium                 float64   `json:"premium"  xorm:"'PREMIUM'"`                                 // 权利金
-	Ispreexercise           int64     `json:"ispreexercise"  xorm:"'ISPREEXERCISE'"`                     // 是否预申报- 0:否 1:是
-	Preexerciseprice        float64   `json:"preexerciseprice"  xorm:"'PREEXERCISEPRICE'"`               // 预申报价格
-	Isconfirmexercise       int64     `json:"isconfirmexercise"  xorm:"'ISCONFIRMEXERCISE'"`             // 是否确认行权- 0:否 1:是
-	Quoteid                 int64     `json:"quoteid"  xorm:"'QUOTEID'"`                                 // 报价单ID
-	Gcaccountid             int64     `json:"gcaccountid"  xorm:"'GCACCOUNTID'"`                         // 账户ID[合约币种]
-	Sessionid               int64     `json:"sessionid"  xorm:"'SESSIONID'"`                             // 会话ID
-}
-
-// TableName is TRADE_ORDERDETAIL
-func (Tradeorderdetail) TableName() string {
-	return "TRADE_ORDERDETAIL"
-}
-
-// Tradetradedetail 交易成交单表 - 导历史
-type Tradetradedetail struct {
-	Tradeid                 int64     `json:"tradeid"  xorm:"'TRADEID'" binding:"required"`              // 成交单号(101+Unix秒时间戳(10位)+2位(MarketServiceID)+xxxx)
-	Buyorsell               int64     `json:"buyorsell"  xorm:"'BUYORSELL'" binding:"required"`          // 方向 - 0:买 1:卖
-	Orderid                 int64     `json:"orderid"  xorm:"'ORDERID'" binding:"required"`              // 委托单号
-	Tradedate               string    `json:"tradedate"  xorm:"'TRADEDATE'" binding:"required"`          // 交易日(yyyyMMdd)
-	Accountid               int64     `json:"accountid"  xorm:"'ACCOUNTID'" binding:"required"`          // 账户ID[报价币种]
-	Goodsid                 int64     `json:"goodsid"  xorm:"'GOODSID'" binding:"required"`              // 商品ID
-	Marketid                int64     `json:"marketid"  xorm:"'MARKETID'" binding:"required"`            // 市场ID
-	Memberuserid            int64     `json:"memberuserid"  xorm:"'MEMBERUSERID'" binding:"required"`    // 会员id 个人投资者 需要填写
-	Matchaccountid          int64     `json:"matchaccountid"  xorm:"'MATCHACCOUNTID'"`                   // 对手账号id
-	Tradetime               time.Time `json:"tradetime"  xorm:"'TRADETIME'" binding:"required"`          // 成交时间
-	Tradeprice              float64   `json:"tradeprice"  xorm:"'TRADEPRICE'" binding:"required"`        // 成交价格
-	Tradeqty                int64     `json:"tradeqty"  xorm:"'TRADEQTY'" binding:"required"`            // 成交数量
-	Tradeamount             float64   `json:"tradeamount"  xorm:"'TRADEAMOUNT'" binding:"required"`      // 成交金额[账户币种,用于所有权]
-	Closepl                 float64   `json:"closepl"  xorm:"'CLOSEPL'"`                                 // 平仓盈亏
-	Intclosepl              int64     `json:"intclosepl"  xorm:"'INTCLOSEPL'"`                           // 整型盈亏(用于交易结算试算平衡-收益权)
-	Opencharge              float64   `json:"opencharge"  xorm:"'OPENCHARGE'"`                           // 建仓手续费(支付总手续费=(交易所比率+会员比率)*成交金额)
-	Closecharge             float64   `json:"closecharge"  xorm:"'CLOSECHARGE'"`                         // 平仓手续费(支付总手续费=(交易所比率+会员比率)*成交金额)
-	Tradetype               int64     `json:"tradetype"  xorm:"'TRADETYPE'"`                             // 成交类别 - 1:正常委托成交 2:定向做市成交(接单) 3:交割协议平仓成交 4:交割减仓成交 5:到期强平成交 6:风控斩仓成交 7:协议平仓(管理端)成交 8:仓单转持仓成交 9: 交割协议转让成交 10:受托竞价成交(接单) 11:协议转让成交 12:系统强行平仓 13:期权违约平仓 14:场外期权单向成交 15:冻结头寸解冻申请 16:冻结头寸商品配售 17:冻结头寸商品转让 18:冻结头寸商品回购 19:冻结头寸商品提货 20:冻结头寸结算解冻 21:转换外部商品 22:预售商品头寸转入 23:预售商品头寸转入注销 24:预售商品成交 25:预售商品卖家增加头寸 26:预售商品结束清理
-	Buildtype               int64     `json:"buildtype"  xorm:"'BUILDTYPE'"`                             // 委托单据类型 1:建仓 2:平仓 3:先平后建
-	Openqty                 int64     `json:"openqty"  xorm:"'OPENQTY'"`                                 // 开仓数量(先建后平操作 需要记录)
-	Closeqty                int64     `json:"closeqty"  xorm:"'CLOSEQTY'"`                               // 平仓数量(先建后平操作 需要记录)
-	Status                  int64     `json:"status"  xorm:"'STATUS'"`                                   // 处理状态 - 1:待处理 2:已处理 3:处理失败
-	Isreckoned              int64     `json:"isreckoned"  xorm:"'ISRECKONED'"`                           // 是否结算 - 0:未结算 1:已结算
-	Tradeproperty           int64     `json:"tradeproperty"  xorm:"'TRADEPROPERTY'"`                     // 交易属性
-	Openfeealgorithm        int64     `json:"openfeealgorithm"  xorm:"'OPENFEEALGORITHM'"`               // 建仓手续费收取方式  1:比率  2:固定
-	Openmemberchargevalue   float64   `json:"openmemberchargevalue"  xorm:"'OPENMEMBERCHARGEVALUE'"`     // 建仓会员手续费设置值
-	Openexchagechargevalue  float64   `json:"openexchagechargevalue"  xorm:"'OPENEXCHAGECHARGEVALUE'"`   // 建仓交易所手续费设置值
-	Closefeealgorithm       int64     `json:"closefeealgorithm"  xorm:"'CLOSEFEEALGORITHM'"`             // 平仓手续费收取方式 1:比率  2:固定
-	Closememberchargevalue  float64   `json:"closememberchargevalue"  xorm:"'CLOSEMEMBERCHARGEVALUE'"`   // 平仓会员手续费设置值
-	Closeexchagechargevalue float64   `json:"closeexchagechargevalue"  xorm:"'CLOSEEXCHAGECHARGEVALUE'"` // 平仓交易所手续费设置值
-	Optiontype              int64     `json:"optiontype"  xorm:"'OPTIONTYPE'"`                           // 期权类型 - 1:认购(看涨) 2:认沽(看跌)
-	Premium                 float64   `json:"premium"  xorm:"'PREMIUM'"`                                 // 权利金 - [持仓单的权利金]
-	Ispreexercise           int64     `json:"ispreexercise"  xorm:"'ISPREEXERCISE'"`                     // 是否预申报- 0:否 1:是
-	Preexerciseprice        float64   `json:"preexerciseprice"  xorm:"'PREEXERCISEPRICE'"`               // 预申报价格
-	Isconfirmexercise       int64     `json:"isconfirmexercise"  xorm:"'ISCONFIRMEXERCISE'"`             // 是否确认行权- 0:否 1:是
-	Ismain                  int64     `json:"ismain"  xorm:"'ISMAIN'"`                                   // 是否主单 - 0:不是 1:是
-	Performanceplanid       int64     `json:"performanceplanid"  xorm:"'PERFORMANCEPLANID'"`             // 履约计划ID[期权]
-	Performancestatus       int64     `json:"performancestatus"  xorm:"'PERFORMANCESTATUS'"`             // 履约状态[期权] - 0:无履约 1:未履约 2:履约中 3:履约完成
-	Creditamount            float64   `json:"creditamount"  xorm:"'CREDITAMOUNT'"`                       // 授信金额
-	Gcaccountid             int64     `json:"gcaccountid"  xorm:"'GCACCOUNTID'"`                         // 账户ID[合约币种]
-	Closepl2                float64   `json:"closepl2"  xorm:"'CLOSEPL2'"`                               // 平仓盈亏[逐笔]
-	Relatedouttradeid       int64     `json:"relatedouttradeid"  xorm:"'RELATEDOUTTRADEID'"`             // 关联外部成交单ID
-}
-
-// TableName is TRADE_TRADEDETAIL
-func (Tradetradedetail) TableName() string {
-	return "TRADE_TRADEDETAIL"
-}

+ 8 - 0
routers/router.go

@@ -7,6 +7,7 @@ import (
 	"mtp2_if/controllers/delivery"
 	"mtp2_if/controllers/erms2"
 	"mtp2_if/controllers/order"
+	"mtp2_if/controllers/szdz"
 	"mtp2_if/controllers/user"
 	"mtp2_if/controllers/wrtrade"
 	"mtp2_if/logger"
@@ -106,6 +107,13 @@ func InitRouter() *gin.Engine {
 		// 查询现货合同表信息(指定策略ID、未结束的)
 		erms2R.GET("/QuerySpotContract", erms2.QuerySpotContract)
 	}
+	// ************************ 尚志大宗 ************************
+	szdzR := apiR.Group("SZDZ")
+	szdzR.Use(token.Auth())
+	{
+		// 点选挂牌委托单据查询(摘牌大厅)
+		szdzR.GET("/QueryRecieptOrder", szdz.QueryRecieptOrder)
+	}
 
 	return r
 }