瀏覽代碼

增加“可关联项目查询”接口

zhou.xiaoning 3 年之前
父節點
當前提交
194dd55ad0
共有 6 個文件被更改,包括 319 次插入131 次删除
  1. 17 0
      controllers/ermcp8/qryErmcp8.go
  2. 86 20
      docs/docs.go
  3. 86 20
      docs/swagger.json
  4. 59 17
      docs/swagger.yaml
  5. 70 74
      models/ermcp8.go
  6. 1 0
      routers/router.go

+ 17 - 0
controllers/ermcp8/qryErmcp8.go

@@ -184,3 +184,20 @@ func QueryUnLinkSpotContract(c *gin.Context) {
 		appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil)
 	}
 }
+
+// QueryErmcp8EnableHedgeditem
+// @Summary 可关联项目查询
+// @Produce json
+// @Security ApiKeyAuth
+// @Param userid query int true "用户ID"
+// @Param spottype query int true "现货类型 - 1:采购计划 2:销售计划 3:采购合同 4:销售合同 5:库存存货"
+// @Success 200 {array} models.Ermcp8EnableHedgeditem
+// @Failure 500 {object} app.Response
+// @Router /Ermcp8/QueryErmcp8EnableHedgeditem [get]
+// @Tags 企业风险管理v8
+func QueryErmcp8EnableHedgeditem(c *gin.Context) {
+	a := app.GinUtils{Gin: app.Gin{C: c}}
+	m := models.Ermcp8EnableHedgeditem{}
+	a.DoBindReq(&m)
+	a.DoGetDataI(&m)
+}

+ 86 - 20
docs/docs.go

@@ -5808,6 +5808,55 @@ var doc = `{
                 }
             }
         },
+        "/Ermcp8/QueryErmcp8EnableHedgeditem": {
+            "get": {
+                "security": [
+                    {
+                        "ApiKeyAuth": []
+                    }
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "企业风险管理v8"
+                ],
+                "summary": "可关联项目查询",
+                "parameters": [
+                    {
+                        "type": "integer",
+                        "description": "用户ID",
+                        "name": "userid",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "integer",
+                        "description": "现货类型 - 1:采购计划 2:销售计划 3:采购合同 4:销售合同 5:库存存货",
+                        "name": "spottype",
+                        "in": "query",
+                        "required": true
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "OK",
+                        "schema": {
+                            "type": "array",
+                            "items": {
+                                "$ref": "#/definitions/models.Ermcp8EnableHedgeditem"
+                            }
+                        }
+                    },
+                    "500": {
+                        "description": "Internal Server Error",
+                        "schema": {
+                            "$ref": "#/definitions/app.Response"
+                        }
+                    }
+                }
+            }
+        },
         "/Ermcp8/QueryErmcp8HedgeditemReport": {
             "get": {
                 "security": [
@@ -20629,7 +20678,7 @@ var doc = `{
         "models.Ermcp2hedgeditem": {
             "type": "object",
             "properties": {
-                "accountName": {
+                "accountname": {
                     "description": "套期主体",
                     "type": "string"
                 },
@@ -20980,7 +21029,7 @@ var doc = `{
                 "hedgeditemid"
             ],
             "properties": {
-                "accountName": {
+                "accountname": {
                     "description": "对手方",
                     "type": "string"
                 },
@@ -25425,14 +25474,43 @@ var doc = `{
                 }
             }
         },
+        "models.Ermcp8EnableHedgeditem": {
+            "type": "object",
+            "properties": {
+                "accountname": {
+                    "description": "套期主体",
+                    "type": "string"
+                },
+                "hedgeditemid": {
+                    "description": "被套期项目ID(624+Unix秒时间戳(10位)+xxxxxx)",
+                    "type": "integer"
+                },
+                "hedgeditemname": {
+                    "description": "项目名称",
+                    "type": "string"
+                },
+                "hedgeditemnum": {
+                    "description": "项目编号",
+                    "type": "string"
+                },
+                "hedgedtype": {
+                    "description": "套期类型 - 1:采购计划项目 2:销售计划项目 3:现货贸易项目 4:库存存货项目 5:定价采购合同项目",
+                    "type": "integer"
+                },
+                "planenddate": {
+                    "description": "计划结束日期",
+                    "type": "string"
+                },
+                "planstartdate": {
+                    "description": "计划开始日期",
+                    "type": "string"
+                }
+            }
+        },
         "models.Ermcp8HedgeditemReport": {
             "type": "object",
-            "required": [
-                "cycletime",
-                "userid"
-            ],
             "properties": {
-                "accountName": {
+                "accountname": {
                     "description": "套期主体",
                     "type": "string"
                 },
@@ -25444,14 +25522,6 @@ var doc = `{
                     "description": "[当日现货市场价]当前市场价",
                     "type": "number"
                 },
-                "cycletime": {
-                    "description": "周期时间 日(YYYYMMDD) 月(YYYYMM) 季(YYYYQ) 年(YYYY) 周(YYYYMMDD周内任意一天) 全(0)【原值】",
-                    "type": "string"
-                },
-                "cycletype": {
-                    "description": "周期类型 - 0:日 1:月 2:季 3:年 4:周 5:全报表【原值】",
-                    "type": "integer"
-                },
                 "enumdicname": {
                     "description": "单位",
                     "type": "string"
@@ -25556,10 +25626,6 @@ var doc = `{
                     "description": "未执行现货量 = 套期现货量 - 执行现货量",
                     "type": "number"
                 },
-                "userid": {
-                    "description": "用户ID",
-                    "type": "integer"
-                },
                 "wrstandardcode": {
                     "description": "现货品类代码",
                     "type": "string"
@@ -26593,7 +26659,7 @@ var doc = `{
         "models.ErmcpSpotContractModelEx": {
             "type": "object",
             "properties": {
-                "accountName": {
+                "accountname": {
                     "description": "套期主体",
                     "type": "string"
                 },

+ 86 - 20
docs/swagger.json

@@ -5792,6 +5792,55 @@
                 }
             }
         },
+        "/Ermcp8/QueryErmcp8EnableHedgeditem": {
+            "get": {
+                "security": [
+                    {
+                        "ApiKeyAuth": []
+                    }
+                ],
+                "produces": [
+                    "application/json"
+                ],
+                "tags": [
+                    "企业风险管理v8"
+                ],
+                "summary": "可关联项目查询",
+                "parameters": [
+                    {
+                        "type": "integer",
+                        "description": "用户ID",
+                        "name": "userid",
+                        "in": "query",
+                        "required": true
+                    },
+                    {
+                        "type": "integer",
+                        "description": "现货类型 - 1:采购计划 2:销售计划 3:采购合同 4:销售合同 5:库存存货",
+                        "name": "spottype",
+                        "in": "query",
+                        "required": true
+                    }
+                ],
+                "responses": {
+                    "200": {
+                        "description": "OK",
+                        "schema": {
+                            "type": "array",
+                            "items": {
+                                "$ref": "#/definitions/models.Ermcp8EnableHedgeditem"
+                            }
+                        }
+                    },
+                    "500": {
+                        "description": "Internal Server Error",
+                        "schema": {
+                            "$ref": "#/definitions/app.Response"
+                        }
+                    }
+                }
+            }
+        },
         "/Ermcp8/QueryErmcp8HedgeditemReport": {
             "get": {
                 "security": [
@@ -20613,7 +20662,7 @@
         "models.Ermcp2hedgeditem": {
             "type": "object",
             "properties": {
-                "accountName": {
+                "accountname": {
                     "description": "套期主体",
                     "type": "string"
                 },
@@ -20964,7 +21013,7 @@
                 "hedgeditemid"
             ],
             "properties": {
-                "accountName": {
+                "accountname": {
                     "description": "对手方",
                     "type": "string"
                 },
@@ -25409,14 +25458,43 @@
                 }
             }
         },
+        "models.Ermcp8EnableHedgeditem": {
+            "type": "object",
+            "properties": {
+                "accountname": {
+                    "description": "套期主体",
+                    "type": "string"
+                },
+                "hedgeditemid": {
+                    "description": "被套期项目ID(624+Unix秒时间戳(10位)+xxxxxx)",
+                    "type": "integer"
+                },
+                "hedgeditemname": {
+                    "description": "项目名称",
+                    "type": "string"
+                },
+                "hedgeditemnum": {
+                    "description": "项目编号",
+                    "type": "string"
+                },
+                "hedgedtype": {
+                    "description": "套期类型 - 1:采购计划项目 2:销售计划项目 3:现货贸易项目 4:库存存货项目 5:定价采购合同项目",
+                    "type": "integer"
+                },
+                "planenddate": {
+                    "description": "计划结束日期",
+                    "type": "string"
+                },
+                "planstartdate": {
+                    "description": "计划开始日期",
+                    "type": "string"
+                }
+            }
+        },
         "models.Ermcp8HedgeditemReport": {
             "type": "object",
-            "required": [
-                "cycletime",
-                "userid"
-            ],
             "properties": {
-                "accountName": {
+                "accountname": {
                     "description": "套期主体",
                     "type": "string"
                 },
@@ -25428,14 +25506,6 @@
                     "description": "[当日现货市场价]当前市场价",
                     "type": "number"
                 },
-                "cycletime": {
-                    "description": "周期时间 日(YYYYMMDD) 月(YYYYMM) 季(YYYYQ) 年(YYYY) 周(YYYYMMDD周内任意一天) 全(0)【原值】",
-                    "type": "string"
-                },
-                "cycletype": {
-                    "description": "周期类型 - 0:日 1:月 2:季 3:年 4:周 5:全报表【原值】",
-                    "type": "integer"
-                },
                 "enumdicname": {
                     "description": "单位",
                     "type": "string"
@@ -25540,10 +25610,6 @@
                     "description": "未执行现货量 = 套期现货量 - 执行现货量",
                     "type": "number"
                 },
-                "userid": {
-                    "description": "用户ID",
-                    "type": "integer"
-                },
                 "wrstandardcode": {
                     "description": "现货品类代码",
                     "type": "string"
@@ -26577,7 +26643,7 @@
         "models.ErmcpSpotContractModelEx": {
             "type": "object",
             "properties": {
-                "accountName": {
+                "accountname": {
                     "description": "套期主体",
                     "type": "string"
                 },

+ 59 - 17
docs/swagger.yaml

@@ -3971,7 +3971,7 @@ definitions:
     type: object
   models.Ermcp2hedgeditem:
     properties:
-      accountName:
+      accountname:
         description: 套期主体
         type: string
       applyid:
@@ -4230,7 +4230,7 @@ definitions:
     type: object
   models.Ermcp2hedgeditemspotDetail:
     properties:
-      accountName:
+      accountname:
         description: 对手方
         type: string
       areauserid:
@@ -7539,9 +7539,33 @@ definitions:
         description: 品类名称
         type: string
     type: object
+  models.Ermcp8EnableHedgeditem:
+    properties:
+      accountname:
+        description: 套期主体
+        type: string
+      hedgeditemid:
+        description: 被套期项目ID(624+Unix秒时间戳(10位)+xxxxxx)
+        type: integer
+      hedgeditemname:
+        description: 项目名称
+        type: string
+      hedgeditemnum:
+        description: 项目编号
+        type: string
+      hedgedtype:
+        description: 套期类型 - 1:采购计划项目 2:销售计划项目 3:现货贸易项目 4:库存存货项目 5:定价采购合同项目
+        type: integer
+      planenddate:
+        description: 计划结束日期
+        type: string
+      planstartdate:
+        description: 计划开始日期
+        type: string
+    type: object
   models.Ermcp8HedgeditemReport:
     properties:
-      accountName:
+      accountname:
         description: 套期主体
         type: string
       areauserid:
@@ -7550,13 +7574,6 @@ definitions:
       curprice:
         description: '[当日现货市场价]当前市场价'
         type: number
-      cycletime:
-        description: 周期时间 日(YYYYMMDD) 月(YYYYMM) 季(YYYYQ) 年(YYYY) 周(YYYYMMDD周内任意一天)
-          全(0)【原值】
-        type: string
-      cycletype:
-        description: 周期类型 - 0:日 1:月 2:季 3:年 4:周 5:全报表【原值】
-        type: integer
       enumdicname:
         description: 单位
         type: string
@@ -7635,9 +7652,6 @@ definitions:
       unexeqty:
         description: 未执行现货量 = 套期现货量 - 执行现货量
         type: number
-      userid:
-        description: 用户ID
-        type: integer
       wrstandardcode:
         description: 现货品类代码
         type: string
@@ -7647,9 +7661,6 @@ definitions:
       wrstandardname:
         description: '[现货商品]现货品类名称'
         type: string
-    required:
-    - cycletime
-    - userid
     type: object
   models.ErmcpBizGroupEx:
     properties:
@@ -8401,7 +8412,7 @@ definitions:
     type: object
   models.ErmcpSpotContractModelEx:
     properties:
-      accountName:
+      accountname:
         description: 套期主体
         type: string
       amount:
@@ -24693,6 +24704,37 @@ paths:
       summary: 查询被套期项目信息
       tags:
       - 企业风险管理v8
+  /Ermcp8/QueryErmcp8EnableHedgeditem:
+    get:
+      parameters:
+      - description: 用户ID
+        in: query
+        name: userid
+        required: true
+        type: integer
+      - description: 现货类型 - 1:采购计划 2:销售计划 3:采购合同 4:销售合同 5:库存存货
+        in: query
+        name: spottype
+        required: true
+        type: integer
+      produces:
+      - application/json
+      responses:
+        "200":
+          description: OK
+          schema:
+            items:
+              $ref: '#/definitions/models.Ermcp8EnableHedgeditem'
+            type: array
+        "500":
+          description: Internal Server Error
+          schema:
+            $ref: '#/definitions/app.Response'
+      security:
+      - ApiKeyAuth: []
+      summary: 可关联项目查询
+      tags:
+      - 企业风险管理v8
   /Ermcp8/QueryErmcp8HedgeditemReport:
     get:
       parameters:

+ 70 - 74
models/ermcp8.go

@@ -283,7 +283,7 @@ type Ermcp2hedgeditem struct {
 
 	Wrstandardname string `json:"wrstandardname" xorm:"WRSTANDARDNAME"` // 商品名称
 	EnumdicName    string `json:"enumdicname"  xorm:"ENUMDICNAME"`      // 单位
-	AccountName    string `json:"accountName" xorm:"ACCOUNTNAME"`       // 套期主体
+	AccountName    string `json:"accountname" xorm:"ACCOUNTNAME"`       // 套期主体
 
 	MiddleGoodsList []Ermcp2himiddlegoods `json:"middlegoodslist"` // 套期商品列表
 
@@ -637,7 +637,7 @@ type Ermcp2hedgeditemspotDetail struct {
 
 	Wrstandardname string `json:"wrstandardname" xorm:"WRSTANDARDNAME"` // 现货商品
 	EnumdicName    string `json:"enumdicname"  xorm:"ENUMDICNAME"`      // 单位
-	AccountName    string `json:"accountName" xorm:"ACCOUNTNAME"`       // 对手方
+	AccountName    string `json:"accountname" xorm:"ACCOUNTNAME"`       // 对手方
 	BRANDNAME      string `json:"brandname"  xorm:"BRANDNAME"`          // 品牌
 	CONTRACTNO     string `json:"contractno"  xorm:"CONTRACTNO"`        // 合同编号
 }
@@ -973,11 +973,11 @@ type Ermcp8HedgeditemReport struct {
 	ORIFUTUREPL         float64   `json:"orifuturepl"  xorm:"ORIFUTUREPL"`                                   // 期初期货套期损益
 
 	EnumdicName string `json:"enumdicname"  xorm:"ENUMDICNAME"` // 单位
-	AccountName string `json:"accountName" xorm:"ACCOUNTNAME"`  // 套期主体
+	AccountName string `json:"accountname" xorm:"ACCOUNTNAME"`  // 套期主体
 
-	USERID    int64  `form:"userid" binding:"required"`    // 用户ID
-	CYCLETYPE int32  `form:"cycletype"`                    // 周期类型 - 0:日 1:月 2:季 3:年 4:周 5:全报表【原值】
-	CYCLETIME string `form:"cycletime" binding:"required"` // 周期时间 日(YYYYMMDD) 月(YYYYMM) 季(YYYYQ) 年(YYYY) 周(YYYYMMDD周内任意一天) 全(0)【原值】
+	USERID    int64  `json:"-" form:"userid" binding:"required"`    // 用户ID
+	CYCLETYPE int32  `json:"-" form:"cycletype"`                    // 周期类型 - 0:日 1:月 2:季 3:年 4:周 5:全报表【原值】
+	CYCLETIME string `json:"-" form:"cycletime" binding:"required"` // 周期时间 日(YYYYMMDD) 月(YYYYMM) 季(YYYYQ) 年(YYYY) 周(YYYYMMDD周内任意一天) 全(0)【原值】
 }
 
 func (r *Ermcp8HedgeditemReport) calc() {
@@ -1094,7 +1094,7 @@ func (r *Ermcp8HedgeditemReport) buildReportSql() string {
 func (r *Ermcp8HedgeditemReport) GetDataEx() (interface{}, error) {
 	e := db.GetEngine()
 	s := e.SQL(r.buildSql())
-	sData := make([]InternalEnableTradeDetail, 0)
+	sData := make([]Ermcp8HedgeditemReport, 0)
 	if err := s.Find(&sData); err != nil {
 		return nil, err
 	}
@@ -1166,7 +1166,7 @@ type ErmcpSpotContractModelEx struct {
 	ISRELATED         int32   `json:"isrelated"  xorm:"ISRELATED"`                 // 是否已关联计划项目 - 0:否 1:是
 	ISRELATED2        int32   `json:"isrelated2"  xorm:"ISRELATED2"`               // 是否已关联现货项目 - 0:否 1:是
 
-	ACCOUNTNAME  string `json:"accountName" xorm:"ACCOUNTNAME"`   // 套期主体
+	ACCOUNTNAME  string `json:"accountname" xorm:"ACCOUNTNAME"`   // 套期主体
 	CUSTOMERNAME string `json:"customername" xorm:"CUSTOMERNAME"` // 对手方
 
 	UNPRICEDQTY  float64 `json:"unpricedqty" xorm:"UNPRICEDQTY"`   // 未定价量 = 合同数量 - 已定价量
@@ -1249,72 +1249,6 @@ func (r *ErmcpSpotContractModelEx) buildSql(req QrySpotContractExReq) string {
 	where t.contractstatus = 2 and t.ISRELATED = 0 and t.ISRELATED2 = 0
 		and (t.userid = %v or t.tradeuserid = %v)
 	`
-
-	// "SELECT to_char(t.SPOTCONTRACTID) SPOTCONTRACTID," +
-	// 	"       t.CONTRACTNO," +
-	// 	"       t.CONTRACTTYPE," +
-	// 	"       t.USERID," +
-	// 	"       t.BUYUSERID," +
-	// 	"       t.SELLUSERID," +
-	// 	"       t.DELIVERYGOODSID," +
-	// 	"       t.wrstandardid," +
-	// 	"       t.PRODUCTTYPE," +
-	// 	"       t.CONVERTFACTOR," +
-	// 	"       t.SPOTGOODSDESC," +
-	// 	"       t.PRICETYPE," +
-	// 	"       t.QTY," +
-	// 	"       t.PRICE," +
-	// 	"       t.AMOUNT," +
-	// 	"       to_char(t.DELIVERYSTARTDATE, 'yyyy-mm-dd hh24:mi:ss') DELIVERYSTARTDATE," +
-	// 	"       to_char(t.DELIVERYENDDATE, 'yyyy-mm-dd hh24:mi:ss') DELIVERYENDDATE," +
-	// 	"       t.GOODSID," +
-	// 	"       t.PRICEMOVE," +
-	// 	"       to_char(t.STARTDATE, 'yyyy-mm-dd hh24:mi:ss') STARTDATE," +
-	// 	"       to_char(t.ENDDATE, 'yyyy-mm-dd hh24:mi:ss') ENDDATE," +
-	// 	"       t.MARGIN," +
-	// 	"       t.contractmargin," +
-	// 	"       t.remark," +
-	// 	"       t.auditremark," +
-	// 	"       to_char(t.contractattachment) attachment," +
-	// 	"       t.contractstatus," +
-	// 	"       t.SPOTGOODSMODELID," +
-	// 	"       t.SPOTGOODSBRANDID," +
-	// 	"       to_char(t.audittime, 'yyyy-mm-dd hh24:mi:ss') audittime," +
-	// 	"       to_char(t.createtime, 'yyyy-mm-dd hh24:mi:ss') createtime," +
-	// 	"       to_char(t.updatetime, 'yyyy-mm-dd hh24:mi:ss') updatetime," +
-	// 	"       u1.accountname BuyUserName," +
-	// 	"       u2.accountname SellUserName," +
-	// 	"       g.deliverygoodscode," +
-	// 	"       g.deliverygoodsname," +
-	// 	"       g2.goodscode," +
-	// 	"       g2.goodsname," +
-	// 	"       gb.brandname," +
-	// 	"       gm.modelname," +
-	// 	"       e.Enumdicname," +
-	// 	"       w.wrstandardname," +
-	// 	"       w.wrstandardcode," +
-	// 	"       (t.QTY - t.PRICEDQTY) UNPRICEDQTY," +
-	// 	"       DECODE(t.PRICEDQTY, 0, 0, t.PRICEDAMOUNT/t.PRICEDQTY) AVGPRICE," +
-	// 	"       DECODE(t.PRICEDQTY, 0, 0, t.SPOTAMOUNT/t.PRICEDQTY) SPOTAVGPRICE," +
-	// 	"       ua.ACCOUNTNAME," +
-	// 	"       uc.ACCOUNTNAME CUSTOMERNAME" +
-	// 	"  FROM ERMCP_SPOTCONTRACT t" +
-	// 	"  left join useraccount u1" +
-	// 	"    on t.buyuserid = u1.userid" +
-	// 	"  left join useraccount u2" +
-	// 	"    on t.selluserid = u2.userid" +
-	// 	"  left join deliverygoods g" +
-	// 	"    on t.deliverygoodsid = g.deliverygoodsid" +
-	// 	"  left join goods g2" +
-	// 	"    on t.goodsid = g2.goodsid" +
-	// 	"    left join spotgoodsbrand gb on t.spotgoodsbrandid=gb.brandid" +
-	// 	"    left join spotgoodsmodel gm on t.spotgoodsmodelid=gm.modelid" +
-	// 	"  left join wrstandard w" +
-	// 	"    on t.wrstandardid = w.wrstandardid" +
-	// 	"  left join enumdicitem e" +
-	// 	"    on w.unitid = e.enumitemname" +
-	// 	"   and e.enumdiccode = 'goodsunit'" +
-
 	str = fmt.Sprintf(str, req.USERID, req.USERID)
 	if req.PRICETYPE > 0 {
 		str += " and t.PRICETYPE = %v"
@@ -1348,3 +1282,65 @@ func (r *ErmcpSpotContractModelEx) GetData(req QrySpotContractExReq) ([]ErmcpSpo
 	}
 	return sData, nil
 }
+
+// Ermcp8EnableHedgeditem 可关联项目
+type Ermcp8EnableHedgeditem struct {
+	HEDGEDITEMID   int64  `json:"hedgeditemid"  xorm:"HEDGEDITEMID"`     // 被套期项目ID(624+Unix秒时间戳(10位)+xxxxxx)
+	HEDGEDITEMNUM  string `json:"hedgeditemnum"  xorm:"HEDGEDITEMNUM"`   // 项目编号
+	HEDGEDITEMNAME string `json:"hedgeditemname"  xorm:"HEDGEDITEMNAME"` // 项目名称
+	HEDGEDTYPE     int32  `json:"hedgedtype"  xorm:"HEDGEDTYPE"`         // 套期类型 - 1:采购计划项目 2:销售计划项目 3:现货贸易项目 4:库存存货项目 5:定价采购合同项目
+	SPOTTYPE       int32  `json:"-" form:"spottype" binding:"required"`  // 现货类型 - 1:采购计划 2:销售计划 3:采购合同 4:销售合同 5:库存存货
+	PLANSTARTDATE  string `json:"planstartdate"  xorm:"PLANSTARTDATE"`   // 计划开始日期
+	PLANENDDATE    string `json:"planenddate"  xorm:"PLANENDDATE"`       // 计划结束日期
+
+	ACCOUNTNAME string `json:"accountname" xorm:"ACCOUNTNAME"` // 套期主体
+
+	USERID int64 `json:"-" form:"userid" binding:"required"` // 用户ID
+}
+
+func (r *Ermcp8EnableHedgeditem) calc() {
+
+}
+
+func (r *Ermcp8EnableHedgeditem) buildSql() string {
+	var sqlId utils.SQLVal = `
+	SELECT 
+		t.HEDGEDITEMID,
+		t.HEDGEDITEMNUM,
+		t.HEDGEDITEMNAME,
+		t.HEDGEDTYPE,
+		to_char(t.PLANSTARTDATE, 'yyyy-mm-dd') PLANSTARTDATE,
+		to_char(t.PLANENDDATE, 'yyyy-mm-dd') PLANENDDATE,
+		u.ACCOUNTNAME
+	FROM ERMCP2_HedgedItem t
+	LEFT JOIN useraccount u ON u.userid = t.tradeuserid
+	WHERE 
+		t.HEDGEDITEMSTATUS = 2
+		AND (t.TRADEUSERID = %v OR t.AREAUSERID = %v)
+	`
+	sqlId.FormatParam(r.USERID, r.USERID)
+	switch r.SPOTTYPE {
+	case 1, 2:
+		sqlId.And("t.HEDGEDTYPE", r.SPOTTYPE)
+	case 3:
+		sqlId.JoinFormat(" AND t.HEDGEDTYPE in (%v,3)", r.SPOTTYPE)
+	case 4:
+		sqlId.JoinFormat(" AND t.HEDGEDTYPE in (%v,3)", r.SPOTTYPE)
+	}
+
+	return sqlId.String()
+}
+
+// GetDataEx 从数据库中查询数据
+func (r *Ermcp8EnableHedgeditem) GetDataEx() (interface{}, error) {
+	e := db.GetEngine()
+	s := e.SQL(r.buildSql())
+	sData := make([]Ermcp8EnableHedgeditem, 0)
+	if err := s.Find(&sData); err != nil {
+		return nil, err
+	}
+	for i := range sData {
+		sData[i].calc()
+	}
+	return sData, nil
+}

+ 1 - 0
routers/router.go

@@ -496,6 +496,7 @@ func InitRouter() *gin.Engine {
 		ermcp8R.GET("/QueryInternalEnableTradeDetail", ermcp8.QueryInternalEnableTradeDetail)
 		ermcp8R.GET("/QueryErmcp8HedgeditemReport", ermcp8.QueryErmcp8HedgeditemReport)
 		ermcp8R.GET("/QueryUnLinkSpotContract", ermcp8.QueryUnLinkSpotContract)
+		ermcp8R.GET("/QueryErmcp8EnableHedgeditem", ermcp8.QueryErmcp8EnableHedgeditem)
 	}
 
 	// ****************************大连千海金******************************