| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447 |
- /**
- * @Author: zou.yingbin
- * @Create : 2021/4/15 10:35
- * @Modify : 2021/4/15 10:35
- */
- package ermcp3
- import (
- "github.com/gin-gonic/gin"
- "mtp2_if/global/app"
- "mtp2_if/global/e"
- "mtp2_if/models"
- "net/http"
- )
- // QueryDeliveryGoods
- // @Summary 查询现货商品
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areauserid query int true "所属机构id"
- // @Param excludecfg query int false "排除已配置的现货商品 1-排除"
- // @Success 200 {array} models.ErmcpDeliveryGoods
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryDeliveryGoods [get]
- // @Tags 企业风险管理v3(app)
- func QueryDeliveryGoods(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- AreaUserId int64 `form:"areauserid" binding:"required"` // 所属机构id
- ExcludeCfg int32 `form:"excludecfg"` // 排除已配置的商品
- }{}
- a.DoBindReq(&req)
- m := models.ErmcpDeliveryGoods{AREAUSERID: req.AreaUserId, ExcludeCfg: req.ExcludeCfg}
- a.DoGetDataI(&m)
- }
- // QueryDeliveryGoodsDetail
- // @Summary 查询现货商品详情
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areauserid query int true "所属机构id"
- // @Param deliverygoodsid query int false "现货商品id"
- // @Param qrytradegoods query int false "是否查询关联交易商品 1-查询"
- // @Success 200 {array} models.ErmcpDeliveryGoodsDetail
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryDeliveryGoodsDetail [get]
- // @Tags 企业风险管理v3(app)
- func QueryDeliveryGoodsDetail(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- AreaUserId int64 `form:"areauserid" binding:"required"` // 所属机构id
- DeliveryGoodsId int32 `form:"deliverygoodsid"` // 排除已配置的商品
- QryTradeGoods int32 `form:"qrytradegoods"` // 查询关联交易商品
- }{}
- a.DoBindReq(&req)
- m := models.ErmcpDeliveryGoodsDetail{
- Data: models.ErmcpDeliveryGoods{AREAUSERID: req.AreaUserId, DELIVERYGOODSID: req.DeliveryGoodsId},
- QryTradeGoods: req.QryTradeGoods}
- a.DoGetDataI(&m)
- }
- // QryContractReq 查询合同请求
- type QryContractReq struct {
- AreadUserId int64 `form:"areauserid" binding:"required"` // 所属机构Id
- CONTRACTTYPE int32 `form:"contracttype"` // 合同类型 1-采购, -1-销售
- QUERYTYPE int32 `form:"querytype" binding:"required"` // 查询类型 1-全部 2-待点价 3-履约结算 4-已完成
- USERID int64 `form:"userid"` // 用户Id
- USERTYPE int32 `form:"usertype"` // 用户类型
- CONTRACTID string `form:"contractid"` // 合同ID(SpotContractId)
- }
- // QuerySpotContract
- // @Summary 查询现货合同
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areauserid query int true "所属机构ID"
- // @Param querytype query int true "查询类型 1-全部 2-待点价 3-履约结算 4-已完成"
- // @Param userid query int false "用户ID"
- // @Param usertype query int false "用户类型 2-机构 7-企业成员"
- // @Param contractid query string false "合同ID(SpotContractId)"
- // @Success 200 {array} models.Ermcp3Contract
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QuerySpotContract [get]
- // @Tags 企业风险管理v3(app)
- func QuerySpotContract(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := QryContractReq{}
- a.DoBindReq(&req)
- m := models.Ermcp3Contract{USERID: req.AreadUserId, QryType: req.QUERYTYPE,
- OwnUserId: req.USERID, UserType: req.USERTYPE, SPOTCONTRACTID: req.CONTRACTID}
- a.DoGetDataI(&m)
- }
- // QuerySpotContractBS
- // @Summary 查询合同(采购/销售)
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areauserid query int true "所属机构ID"
- // @Param contracttype query int true "合同类型 1-采购, -1-销售"
- // @Param querytype query int true "查询类型 1-全部 2-待点价 3-履约结算 4-已完成"
- // @Param userid query int false "用户ID"
- // @Param usertype query int false "用户类型 2-机构 7-企业成员"
- // @Param contractid query string false "合同ID(SpotContractId)"
- // @Success 200 {array} models.Ermcp3SellBuyContract
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QuerySpotContractBS [get]
- // @Tags 企业风险管理v3(app)
- func QuerySpotContractBS(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := QryContractReq{}
- a.DoBindReq(&req)
- m := models.Ermcp3SellBuyContract{UserID: req.AreadUserId, Contracttype: req.CONTRACTTYPE,
- OwnUserId: req.USERID, UserType: req.USERTYPE, SpotContractId: req.CONTRACTID, QryType: req.QUERYTYPE}
- a.DoGetDataI(&m)
- }
- // QueryExposureDetail
- // @Summary 查询敞口现货明细
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areaUserId query int true "所属机构ID"
- // @Param middleGoodsId query int true "套保商品"
- // @Success 200 {array} models.Ermcp3ExposureDetail
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryExposureDetail [get]
- // @Tags 企业风险管理v3(app)
- func QueryExposureDetail(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- AREAUSERID int64 `form:"areauserid" binding:"required"` // 所属机构id
- MIDDLEGOODSID int32 `form:"middlegoodsid" binding:"required"` // 套保商品id
- }{}
- a.DoBindReq(&req)
- m := models.Ermcp3ExposureDetail{Areauserid: req.AREAUSERID, MiddlegoodsId: req.MIDDLEGOODSID}
- a.DoGetDataI(&m)
- }
- // QueryExposureSpot
- // @Summary 查询敞口现货头寸(敞口/现货头寸)
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areaUserId query int true "所属机构ID"
- // @Success 200 {array} models.Ermcp3AreaSpot
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryExposureSpot [get]
- // @Tags 企业风险管理v3(app)
- func QueryExposureSpot(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- AREAUSERID int64 `form:"areauserid" binding:"required"` // 所属机构id
- }{}
- a.DoBindReq(&req)
- m := models.Ermcp3AreaSpot{AREAUSERID: req.AREAUSERID}
- a.DoGetDataI(&m)
- }
- // QueryExposureSpotDetail
- // @Summary 查询敞口现货头寸明细(敞口/现货头寸/现货明细)
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areauserid query int true "所属机构ID"
- // @Param deliverygoodsid query int true "现货品种ID"
- // @Success 200 {array} models.Ermcp3AreaSpotDetail
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryExposureSpotDetail [get]
- // @Tags 企业风险管理v3(app)
- func QueryExposureSpotDetail(c *gin.Context) {
- appG := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- AREAUSERID int `form:"areauserid" binding:"required"` // 所属机构id
- DELIVERYGOODSID int32 `form:"deliverygoodsid" binding:"required"` // 现货商品id
- }{}
- appG.DoBindReq(&req)
- m := models.Ermcp3AreaSpotDetail{UserId: req.AREAUSERID, DELIVERYGOODSID: req.DELIVERYGOODSID}
- appG.DoGetDataI(&m)
- }
- // QueryDGFactoryItem
- // @Summary 查询品种要素定义项
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areauserid query int false "所属机构ID"
- // @Param dgfactoryitemid query int false "选择项ID(SEQ_DGFACTORYITEM)"
- // @Param deliverygoodsid query int false "现货品种ID"
- // @Param dgfactoryitemtypeid query int false "要素项类型"
- // @Param orderindex query int false "顺序"
- // @Success 200 {array} models.ErmcpDGFactoryItem
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryDGFactoryItem [get]
- // @Tags 企业风险管理v3(app)
- func QueryDGFactoryItem(c *gin.Context) {
- appG := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- AREAUSERID int64 `form:"areauserid"` // 用户id
- DGFACTORYITEMID int64 `form:"dgfactoryitemid"` // 选择项ID(SEQ_DGFACTORYITEM)
- DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货品种ID
- DGFACTORYITEMTYPEID int64 `form:"dgfactoryitemtypeid"` // 要素项类型
- ORDERINDEX int32 `form:"orderindex"` // 顺序
- }{}
- appG.DoBindReq(&req)
- m := models.ErmcpDGFactoryItem{
- AREAUSERID: req.AREAUSERID,
- DGFACTORYITEMID: req.DGFACTORYITEMID,
- DELIVERYGOODSID: req.DELIVERYGOODSID,
- DGFACTORYITEMTYPEID: req.DGFACTORYITEMTYPEID,
- ORDERINDEX: req.ORDERINDEX,
- }
- appG.DoGetDataI(&m)
- }
- // QueryGoodsbrand
- // @Summary 查询商品品牌
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areauserid query int true "所属机构ID"
- // @Success 200 {array} models.Ermcp3Brand
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryGoodsbrand [get]
- // @Tags 企业风险管理v3(app)
- func QueryGoodsbrand(c *gin.Context) {
- appG := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- AREAUSERID int64 `form:"areauserid"` // 用户id
- DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货品种ID
- }{}
- appG.DoBindReq(&req)
- m := models.Ermcp3Brand{
- AREAUSERID: req.AREAUSERID,
- DELIVERYGOODSID: req.DELIVERYGOODSID,
- }
- appG.DoGetDataI(&m)
- }
- // QueryGoodsWrstandard
- // @Summary 查询商品品类
- // @Produce json
- // @Security ApiKeyAuth
- // @Param areauserid query int true "所属机构ID"
- // @Param deliverygoodsid query int false "现货商品id"
- // @Success 200 {array} models.Ermcp3Wrstandard
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryGoodsWrstandard [get]
- // @Tags 企业风险管理v3(app)
- func QueryGoodsWrstandard(c *gin.Context) {
- appG := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- AREAUSERID int `form:"areauserid" binding:"required"` // 所属机构id
- DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货商品id
- }{}
- appG.DoBindReq(&req)
- m := models.Ermcp3Wrstandard{AREAUSERID: req.AREAUSERID,
- DELIVERYGOODSID: req.DELIVERYGOODSID}
- appG.DoGetDataI(&m)
- }
- // QueryAreaStockApply
- // @Summary 查询库存申请(出入库记录|库存审核)
- // @Produce json
- // @Security ApiKeyAuth
- // @Param userid query int true "用户ID"
- // @Param deliverygoodsid query int false "现货商品ID"
- // @Param inouttype query string false "出入库类型(可多项,逗号隔开) 1:采购入库 2:销售出库 3:生产入库 4:生产出库"
- // @Param spotcontractid query int false "合同ID"
- // @Param wrstandardid query int false "品类ID"
- // @Param spotgoodsbrandid query int false "品牌ID"
- // @Param warehouseinfoid query int false "仓库ID"
- // @Param applystatus query string false "申请状态(可多项,逗号隔开)1:待审核 2:审核通过 3:审核拒绝 4:处理失败 5:已撤回"
- // @Success 200 {array} models.Ermcp3AreaStockApply
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryAreaStockApply [get]
- // @Tags 企业风险管理v3(app)
- func QueryAreaStockApply(c *gin.Context) {
- a := app.NewGinUtils(c)
- req := struct {
- USERID int64 `form:"userid" binding:"required"` // 用户
- WRSTANDARDID int32 `form:"wrstandardid"` // 品类
- SPOTGOODSBRANDID int32 `form:"spotgoodsbrandid"` // 品牌
- SPOTCONTRACTID string `form:"spotcontractid"` // 合同id
- WAREHOUSEINFOID string `form:"warehouseinfoid"` // 仓库id
- DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货商品id
- FilterStatus string `form:"applystatus"` // 申请状态
- FilterType string `form:"inouttype"` // 出入库类型
- }{}
- a.DoBindReq(&req)
- m := models.Ermcp3AreaStockApply{
- USERID: req.USERID,
- FilterType: req.FilterType,
- SPOTCONTRACTID: req.SPOTCONTRACTID,
- WRSTANDARDID: req.WRSTANDARDID,
- SPOTGOODSBRANDID: req.SPOTGOODSBRANDID,
- DELIVERYGOODSID: req.DELIVERYGOODSID,
- WAREHOUSEINFOID: req.WAREHOUSEINFOID,
- FilterStatus: req.FilterStatus,
- }
- a.DoGetDataI(&m)
- }
- // QueryAreaStockApplySum
- // @Summary 查询已登记出入库信息(入库登记/已入库信息 | 出库登记/已出库信息)
- // @Produce json
- // @Security ApiKeyAuth
- // @Param spotcontractid query int false "合同ID"
- // @Success 200 {array} models.Ermcp3AreaStockApplySum
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryAreaStockApplySum [get]
- // @Tags 企业风险管理v3(app)
- func QueryAreaStockApplySum(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- SPOTCONTRACTID string `form:"spotcontractid"` // 合同id
- }{}
- a.DoBindReq(&req)
- m := models.Ermcp3AreaStockApplySum{SPOTCONTRACTID: req.SPOTCONTRACTID}
- a.DoGetDataI(&m)
- }
- // QueryAreaStockReport
- // @Summary 查询库存报表
- // @Produce json
- // @Security ApiKeyAuth
- // @Param userid query int true "用户ID"
- // @Param querytype query int true "查询类型 1-日报表 2-月报表"
- // @Param querydate query string true "查询日期(格式 日报表YYYYMMDD, 月报表YYYYMM)"
- // @Param deliverygoodsid query int false "现货商品ID"
- // @Param wrstandardid query int false "品类ID"
- // @Param spotgoodsbrandid query int false "品牌ID"
- // @Param warehouseinfoid query int false "仓库ID"
- // @Success 200 {array} models.Ermcp3AreaStockReport
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryAreaStockReport [get]
- // @Tags 企业风险管理v3(app)
- func QueryAreaStockReport(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- USERID int64 `form:"userid" binding:"required"` // 机构ID
- WRSTANDARDID int32 `form:"wrstandardid"` // 品类ID
- SPOTGOODSBRANDID int32 `form:"spotgoodsbrandid"` // 现货品牌ID
- WAREHOUSEINFOID string `form:"warehouseinfoid"` // 仓库ID
- DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货品种id
- ReportType int32 `form:"querytype" binding:"required"` // 报表类型 1-日报表 2-月报表
- ReportDate string `form:"querydate" binding:"required"` // 格式 日报表(YYYYMMDD) 月报表(YYYYMM)
- }{}
- a.DoBindReq(&req)
- if QueryDate(req.ReportDate).IsNumberic(req.ReportType) {
- m := models.Ermcp3AreaStockReport{USERID: req.USERID, WRSTANDARDID: req.WRSTANDARDID,
- SPOTGOODSBRANDID: req.SPOTGOODSBRANDID, DELIVERYGOODSID: req.DELIVERYGOODSID,
- WAREHOUSEINFOID: req.WAREHOUSEINFOID, ReportDate: req.ReportDate, ReportType: req.ReportType}
- a.DoGetDataI(&m)
- } else {
- a.Gin.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
- }
- }
- // QueryAreaStockReportDetail
- // @Summary 查询库存报表明细
- // @Produce json
- // @Security ApiKeyAuth
- // @Param userid query int true "用户ID"
- // @Param querytype query int true "查询类型 1-日报表明细 2-月报表明细"
- // @Param detailtype query int true "明细类型 1:入库明细(采购入库+生产入库) 2:出库明细(销售出库+生产出库)"
- // @Param querydate query string true "查询日期(格式 日报表YYYYMMDD, 月报表YYYYMM)"
- // @Param deliverygoodsid query int false "现货商品ID"
- // @Param wrstandardid query int false "品类ID"
- // @Param spotgoodsbrandid query int false "品牌ID"
- // @Param warehouseinfoid query int false "仓库ID"
- // @Success 200 {array} models.Ermcp3AreaStockApply
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QueryAreaStockReportDetail [get]
- // @Tags 企业风险管理v3(app)
- func QueryAreaStockReportDetail(c *gin.Context) {
- a := app.GinUtils{Gin: app.Gin{C: c}}
- req := struct {
- USERID int64 `form:"userid" binding:"required"` // 机构ID
- DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货品种id
- WRSTANDARDID int32 `form:"wrstandardid"` // 品类ID
- SPOTGOODSBRANDID int32 `form:"spotgoodsbrandid"` // 品牌id
- WAREHOUSEINFOID string `form:"warehouseinfoid"` // 现货仓库ID
- QUERYTYPE int32 `form:"querytype" binding:"required"` // 查询类型
- QUERYDATE string `form:"querydate" binding:"required"` // 查询日期
- DETAILTYPE int32 `form:"detailtype" binding:"required"` // 明细类型
- }{}
- a.DoBindReq(&req)
- if QueryDate(req.QUERYDATE).IsNumberic(req.QUERYTYPE) {
- var beginDate, endDate string
- if req.QUERYTYPE == 1 {
- beginDate = req.QUERYDATE
- endDate = beginDate
- } else if req.QUERYTYPE == 2 {
- beginDate = req.QUERYDATE + "01"
- endDate = req.QUERYDATE + "31"
- }
- m := models.Ermcp3AreaStockApply{USERID: req.USERID, WRSTANDARDID: req.WRSTANDARDID,
- SPOTGOODSBRANDID: req.SPOTGOODSBRANDID, DELIVERYGOODSID: req.DELIVERYGOODSID,
- WAREHOUSEINFOID: req.WAREHOUSEINFOID, BeginDate: beginDate, EndDate: endDate, APPLYSTATUS: 2}
- // 出入库类型(可多项,逗号隔开) 1:采购入库 2:销售出库 3:生产入库 4:生产出库"
- if req.DETAILTYPE == 1 {
- m.FilterStatus = "1,3"
- } else if req.DETAILTYPE == 2 {
- m.FilterStatus = "2,4"
- }
- a.DoGetDataI(&m)
- } else {
- a.Gin.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
- }
- }
- // QuerySpotGoodsPrice
- // @Summary 查询现货市价(现货市价)
- // @Produce json
- // @Security ApiKeyAuth
- // @Param userid query int true "用户ID"
- // @Success 200 {array} models.Ermcp3SpotGoodsPrice
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QuerySpotGoodsPrice [get]
- // @Tags 企业风险管理v3(app)
- func QuerySpotGoodsPrice(c *gin.Context) {
- req := struct {
- UserId int64 `form:"userid" binding:"required"` // 用户id
- }{}
- a := app.GinUtils{Gin: app.Gin{C: c}}
- a.DoBindReq(&req)
- m := models.Ermcp3SpotGoodsPrice{AREAUSERID: req.UserId}
- a.DoGetDataI(&m)
- }
- // QuerySpotGoodsPriceLog
- // @Summary 查询现货市价详情(现货市价/详情)
- // @Produce json
- // @Security ApiKeyAuth
- // @Param userid query int true "用户ID"
- // @Param deliverygoodsid query int true "现货商品ID"
- // @Success 200 {array} models.Ermcp3SpotGoodsPriceLog
- // @Failure 500 {object} app.Response
- // @Router /Ermcp3/QuerySpotGoodsPriceLog [get]
- // @Tags 企业风险管理v3(app)
- func QuerySpotGoodsPriceLog(c *gin.Context) {
- req := struct {
- UserId int64 `form:"userid" binding:"required"` // 用户id
- DELIVERYGOODSID int32 `form:"deliverygoodsid" binding:"required"` // 现货商品id
- }{}
- a := app.GinUtils{Gin: app.Gin{C: c}}
- a.DoBindReq(&req)
- m := models.Ermcp3SpotGoodsPriceLog{AREAUSERID: req.UserId, DELIVERYGOODSID: req.DELIVERYGOODSID}
- a.DoGetDataI(&m)
- }
|