Explorar o código

查套保品种详情、现货商品详情参数改为可选

zou.yingbin %!s(int64=4) %!d(string=hai) anos
pai
achega
0d7919c9a3

+ 7 - 7
controllers/ermcp/qryMiddleGoods.go

@@ -33,7 +33,7 @@ type QryMiddleGoodsRsp models.ErmcpMiddleGoodsModel
 // @Router /Ermcp/QueryMiddleGoods [get]
 // @Tags 企业风险管理(app)
 func QueryMiddleGoods(c *gin.Context) {
-	appG := app.GinUtils{Gin:app.Gin{C: c}}
+	appG := app.GinUtils{Gin: app.Gin{C: c}}
 	var req QryMiddleGoodsReq
 	appG.DoBindReq(&req)
 	m := models.ErmcpMiddleGoodsModel{AREAUSERID: req.UserId, ISVALID: *req.Status}
@@ -42,8 +42,8 @@ func QueryMiddleGoods(c *gin.Context) {
 
 // 查询套保品种详情请求
 type QryMiddleGoodsDetailReq struct {
-	UserId uint32 `form:"userid" binding:"required"` //用户ID
-	MiddleGoodsId uint32 `form:"middlegoodsid" binding:"required"` // 套保品种ID
+	UserId        uint32 `form:"userid" binding:"required"` //用户ID
+	MiddleGoodsId uint32 `form:"middlegoodsid"`             // 套保品种ID
 }
 
 // 查询套保品种详情应答
@@ -53,7 +53,7 @@ type QryMiddleGoodsDetailRsp models.ErmcpMiddleGoodsDetail
 // @Produce json
 // @Security ApiKeyAuth
 // @Param userid query int true  "所属机构ID"
-// @Param middlegoodsid query int true  "套保品种id"
+// @Param middlegoodsid query int false  "套保品种id"
 // @Success 200 {array} QryMiddleGoodsDetailRsp
 // @Failure 500 {object} app.Response
 // @Router /Ermcp/QueryMiddleGoodsDetail [get]
@@ -76,7 +76,7 @@ func QueryMiddleGoodsDetail(c *gin.Context) {
 
 // 查询套保品种变更记录请求
 type QryMGChangeLogReq struct {
-	UserId uint32 `form:"userid" binding:"required"` //用户ID
+	UserId        uint32 `form:"userid" binding:"required"`        //用户ID
 	MiddleGoodsId uint32 `form:"middlegoodsid" binding:"required"` // 套保品种ID
 }
 
@@ -93,9 +93,9 @@ type QryMGChangeLogRsp models.ErmcpMiddleGoodsChangeLog
 // @Router /Ermcp/QueryMiddleGoodsChangeLog [get]
 // @Tags 企业风险管理(app)
 func QueryMiddleGoodsChangeLog(c *gin.Context) {
-	appG := app.GinUtils{Gin:app.Gin{C: c}}
+	appG := app.GinUtils{Gin: app.Gin{C: c}}
 	var req QryMGChangeLogReq
 	appG.DoBindReq(&req)
 	m := models.ErmcpMiddleGoodsChangeLog{MIDDLEGOODSID: int(req.MiddleGoodsId)}
 	appG.DoGetDataEx(&m)
-}
+}

+ 4 - 4
controllers/ermcp/qryWrstandard.go

@@ -56,9 +56,9 @@ func QueryWrStandard(c *gin.Context) {
 
 //查询现货商品请求
 type QryWrStandardDetailReq struct {
-	UserId       int `form:"userid" binding:"required"`       // 用户ID
-	Wrstandardid int `form:"wrstandardid" binding:"required"` // 现货商品ID
-	Goods        int `form:"goods"`                           // 是否查关联交易商品 1-查询
+	UserId       int `form:"userid" binding:"required"` // 用户ID
+	Wrstandardid int `form:"wrstandardid"`              // 现货商品ID
+	Goods        int `form:"goods"`                     // 是否查关联交易商品 1-查询
 }
 
 //查询现货商品响应
@@ -68,7 +68,7 @@ type QryWrStandardDetailRsp models.ErmcpWrstandDetail
 // @Produce json
 // @Security ApiKeyAuth
 // @Param userid query int true  "所属机构ID"
-// @Param wrstandardid query int true  "现货商品ID"
+// @Param wrstandardid query int false  "现货商品ID"
 // @Param goods query int false  "可不填, 1-查询关联交易商品"
 // @Success 200 {array} QryWrStandardDetailRsp
 // @Failure 500 {object} app.Response

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1479 - 1549
docs/docs.go


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 1479 - 1549
docs/swagger.json


A diferenza do arquivo foi suprimida porque é demasiado grande
+ 2895 - 3199
docs/swagger.yaml


+ 14 - 12
models/ermcpBrandModel.go

@@ -58,18 +58,19 @@ func (r *ErmcpGoodsBrand) GetDataEx() (interface{}, error) {
 
 // ErmcpGoodsModel 商品型号
 type ErmcpGoodsModel struct {
-	MODELID         int32  `json:"modelid"  xorm:"'MODELID'"`                 // ModelID(SEQ_SPOTGOODSMODEL)
-	MODELNAME       string `json:"modelname"  xorm:"'MODELNAME'"`             // 型号名称
-	WRSTANDARDID    int64  `json:"wrstandardid"  xorm:"'WRSTANDARDID'"`       // 现货商品ID
-	DELIVERYGOODSID int32  `json:"deliverygoodsid"  xorm:"'DELIVERYGOODSID'"` // 现货品种ID
-	AREAUSERID      int64  `json:"areauserid"  xorm:"'AREAUSERID'"`           // 所属机构
-	ISVALID         int32  `json:"isvalid"  xorm:"'ISVALID'"`                 // 是否有效 - 0:无效 1:有效
-	CREATORSRC      int32  `json:"creatorsrc"  xorm:"'CREATORSRC'"`           // 创建人来源 - 1:管理端 2:终端
-	CREATORID       int64  `json:"creatorid"  xorm:"'CREATORID'"`             // 创建人
-	CREATETIME      string `json:"createtime"  xorm:"'CREATETIME'"`           // 创建时间
-	UPDATORSRC      int32  `json:"updatorsrc"  xorm:"'UPDATORSRC'"`           // 更新人来源 - 1:管理端 2:终端
-	UPDATORID       int64  `json:"updatorid"  xorm:"'UPDATORID'"`             // 更新人
-	UPDATETIME      string `json:"updatetime"  xorm:"'UPDATETIME'"`           // 更新时间
+	MODELID         int32   `json:"modelid"  xorm:"'MODELID'"`                 // ModelID(SEQ_SPOTGOODSMODEL)
+	MODELNAME       string  `json:"modelname"  xorm:"'MODELNAME'"`             // 型号名称
+	WRSTANDARDID    int64   `json:"wrstandardid"  xorm:"'WRSTANDARDID'"`       // 现货商品ID
+	DELIVERYGOODSID int32   `json:"deliverygoodsid"  xorm:"'DELIVERYGOODSID'"` // 现货品种ID
+	AREAUSERID      int64   `json:"areauserid"  xorm:"'AREAUSERID'"`           // 所属机构
+	ISVALID         int32   `json:"isvalid"  xorm:"'ISVALID'"`                 // 是否有效 - 0:无效 1:有效
+	CREATORSRC      int32   `json:"creatorsrc"  xorm:"'CREATORSRC'"`           // 创建人来源 - 1:管理端 2:终端
+	CREATORID       int64   `json:"creatorid"  xorm:"'CREATORID'"`             // 创建人
+	CREATETIME      string  `json:"createtime"  xorm:"'CREATETIME'"`           // 创建时间
+	UPDATORSRC      int32   `json:"updatorsrc"  xorm:"'UPDATORSRC'"`           // 更新人来源 - 1:管理端 2:终端
+	UPDATORID       int64   `json:"updatorid"  xorm:"'UPDATORID'"`             // 更新人
+	UPDATETIME      string  `json:"updatetime"  xorm:"'UPDATETIME'"`           // 更新时间
+	CONVERTFACTOR   float64 `json:"convertfactor"  xorm:"'CONVERTFACTOR'"`     // 标仓系数
 }
 
 func (r *ErmcpGoodsModel) buildSql() string {
@@ -81,6 +82,7 @@ func (r *ErmcpGoodsModel) buildSql() string {
 		"       t.ISVALID," +
 		"       t.CREATORSRC," +
 		"       t.CREATORID," +
+		"       t.CONVERTFACTOR," +
 		"       to_char(t.CREATETIME, 'yyyy-mm-dd hh24:mi:ss') CREATETIME," +
 		"       t.UPDATORSRC," +
 		"       t.UPDATORID," +

+ 19 - 8
models/ermcpMiddleGoods.go

@@ -91,7 +91,7 @@ func (r *ErmcpMiddleGoodsModel) buildSql() string {
 	if r.MIDDLEGOODSID > 0 {
 		sqlId = sqlId + fmt.Sprintf(" and MIDDLEGOODSID=%v", r.MIDDLEGOODSID)
 	}
-	sqlId += "order by t.createtime desc"
+	sqlId += " order by t.createtime desc"
 	return sqlId
 }
 
@@ -116,7 +116,7 @@ func (r *GoodsGroupConvert) buildSql() string {
 		"  left join goodsgroup g" +
 		"    on t.srcgoodsgroupid = g.goodsgroupid" +
 		" where 1 = 1"
-	if r.DstGoodsgroupid >= 0 {
+	if r.DstGoodsgroupid > 0 {
 		sqlId = sqlId + fmt.Sprintf(" and destgoodsgroupid=%v", r.DstGoodsgroupid)
 	}
 	return sqlId
@@ -136,19 +136,30 @@ type ErmcpMiddleGoodsDetail struct {
 }
 
 // GetData 获取套保品种详情
-func (r *ErmcpMiddleGoodsDetail) GetData() (ErmcpMiddleGoodsDetail, error) {
+func (r *ErmcpMiddleGoodsDetail) GetData() ([]ErmcpMiddleGoodsDetail, error) {
+	rsp := make([]ErmcpMiddleGoodsDetail, 0)
 	// 查基本信息
 	m := ErmcpMiddleGoodsModel{AREAUSERID: r.Mg.AREAUSERID, MIDDLEGOODSID: r.Mg.MIDDLEGOODSID, ISVALID: -1}
 	d, err := m.GetData2()
 	if err != nil || len(d) == 0 {
-		return ErmcpMiddleGoodsDetail{}, fmt.Errorf("no record")
+		return rsp, fmt.Errorf("no record")
+	}
+	for i := range d {
+		val := ErmcpMiddleGoodsDetail{Mg: d[i], CvList: make([]GoodsGroupConvert, 0)}
+		rsp = append(rsp, val)
 	}
-	rsp := ErmcpMiddleGoodsDetail{Mg: d[0]}
 	// 查折算表
-	md := GoodsGroupConvert{DstGoodsgroupid: rsp.Mg.GOODSGROUPID}
-	if val, err := md.GetData(); err == nil {
-		rsp.CvList = val
+	md := GoodsGroupConvert{}
+	if ggc, err := md.GetData(); err == nil {
+		for i := range rsp {
+			for k := range ggc {
+				if rsp[i].Mg.GOODSGROUPID == ggc[k].DstGoodsgroupid {
+					rsp[i].CvList = append(rsp[i].CvList, ggc[k])
+				}
+			}
+		}
 	}
+
 	return rsp, nil
 }
 

+ 89 - 4
models/ermcpWrstandard.go

@@ -222,7 +222,9 @@ func (r *RelatedGoodsEx) buildSql() string {
 		"    on gc.srcgoodsgroupid = g.goodsgroupid" +
 		" where 1=1"
 	sqlId.And("t.areauserid", r.AREAUSERID)
-	sqlId.And("t.wrstandardid", r.WRSTANDARDID)
+	if r.WRSTANDARDID > 0 {
+		sqlId.And("t.wrstandardid", r.WRSTANDARDID)
+	}
 	sqlId.Join(" order by g.goodsid")
 	return sqlId.String()
 }
@@ -249,15 +251,23 @@ type ErmcpWrstandDetail struct {
 }
 
 // GetData 查询现货商品详细
-func (r *ErmcpWrstandDetail) GetData() (ErmcpWrstandDetail, error) {
+func (r *ErmcpWrstandDetail) GetData() ([]ErmcpWrstandDetail, error) {
+	if r.Wrd.WRSTANDARDID > 0 {
+		return r.GetByWrstandId()
+	}
+	return r.GetAll()
+}
+
+// GetByWrstandId 指定现货商品id获取
+func (r *ErmcpWrstandDetail) GetByWrstandId() ([]ErmcpWrstandDetail, error) {
 	// 获取基本信息
 	m := ErmcpWrstandard{AREAUSERID: r.Wrd.AREAUSERID, WRSTANDARDID: r.Wrd.WRSTANDARDID, ISVALID: -1}
 	d, err := m.GetData()
 	if err != nil {
-		return ErmcpWrstandDetail{}, err
+		return []ErmcpWrstandDetail{}, err
 	}
 	if d == nil || len(d) == 0 {
-		return ErmcpWrstandDetail{}, fmt.Errorf("no record")
+		return []ErmcpWrstandDetail{}, fmt.Errorf("no record")
 	}
 	rsp := ErmcpWrstandDetail{}
 	rsp.Wrd = d[0]
@@ -291,5 +301,80 @@ func (r *ErmcpWrstandDetail) GetData() (ErmcpWrstandDetail, error) {
 		}
 	}
 
+	rsp2 := make([]ErmcpWrstandDetail, 0)
+	rsp2 = append(rsp2, rsp)
+
+	return rsp2, nil
+}
+
+// GetAll 获取所有
+func (r *ErmcpWrstandDetail) GetAll() ([]ErmcpWrstandDetail, error) {
+	// 获取基本信息
+	m := ErmcpWrstandard{AREAUSERID: r.Wrd.AREAUSERID, ISVALID: -1}
+	d, err := m.GetData()
+	if err != nil {
+		return []ErmcpWrstandDetail{}, err
+	}
+	if d == nil || len(d) == 0 {
+		return []ErmcpWrstandDetail{}, fmt.Errorf("no record")
+	}
+
+	// 获取型号信息
+	gt := GoodsTypeModel{AREAUSERID: r.Wrd.AREAUSERID}
+	gtList, _ := gt.GetData()
+
+	// 获取品牌信息
+	gb := GoodsBrand{AREAUSERID: r.Wrd.AREAUSERID}
+	gbList, _ := gb.GetData()
+
+	// 获取套保信息
+	wrs := WRSConverTDetail{}
+	wrsList, _ := wrs.GetData()
+
+	var glist []RelatedGoodsEx
+	// 获取关联交易商品
+	if r.QueryGoods {
+		goodsLst := RelatedGoodsEx{AREAUSERID: r.Wrd.AREAUSERID}
+		if val, err := goodsLst.GetData(); err == nil {
+			glist = val
+		}
+	}
+
+	rsp := make([]ErmcpWrstandDetail, 0)
+	for i := range d {
+		val := ErmcpWrstandDetail{
+			Wrd:       d[i],
+			GtList:    make([]GoodsTypeModel, 0),
+			GbList:    make([]GoodsBrand, 0),
+			WrsList:   make([]WRSConverTDetail, 0),
+			GoodsList: make([]RelatedGoodsEx, 0),
+		}
+
+		for k := range gtList {
+			if gtList[k].WRSTANDARDID == d[i].WRSTANDARDID {
+				val.GtList = append(val.GtList, gtList[k])
+			}
+		}
+
+		for k := range gbList {
+			if gbList[k].WRSTANDARDID == d[i].WRSTANDARDID {
+				val.GbList = append(val.GbList, gbList[k])
+			}
+		}
+
+		for k := range wrsList {
+			if wrsList[k].WRSTANDARDID == d[i].WRSTANDARDID {
+				val.WrsList = append(val.WrsList, wrsList[k])
+			}
+		}
+
+		for k := range glist {
+			if glist[k].WRSTANDARDID == d[i].WRSTANDARDID {
+				val.GoodsList = append(val.GoodsList, glist[k])
+			}
+		}
+		rsp = append(rsp, val)
+	}
+
 	return rsp, nil
 }

Algúns arquivos non se mostraron porque demasiados arquivos cambiaron neste cambio