qryErmcp3.go 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479
  1. /**
  2. * @Author: zou.yingbin
  3. * @Create : 2021/4/15 10:35
  4. * @Modify : 2021/4/15 10:35
  5. */
  6. package ermcp3
  7. import (
  8. "github.com/gin-gonic/gin"
  9. "mtp2_if/global/app"
  10. "mtp2_if/global/e"
  11. "mtp2_if/logger"
  12. "mtp2_if/models"
  13. "net/http"
  14. )
  15. // QueryDeliveryGoods
  16. // @Summary 查询现货商品
  17. // @Produce json
  18. // @Security ApiKeyAuth
  19. // @Param areauserid query int true "所属机构id"
  20. // @Param excludecfg query int false "排除已配置的现货商品 1-排除"
  21. // @Success 200 {array} models.ErmcpDeliveryGoods
  22. // @Failure 500 {object} app.Response
  23. // @Router /Ermcp3/QueryDeliveryGoods [get]
  24. // @Tags 企业风险管理v3(app)
  25. func QueryDeliveryGoods(c *gin.Context) {
  26. a := app.GinUtils{Gin: app.Gin{C: c}}
  27. req := struct {
  28. AreaUserId int64 `form:"areauserid" binding:"required"` // 所属机构id
  29. ExcludeCfg int32 `form:"excludecfg"` // 排除已配置的商品
  30. }{}
  31. a.DoBindReq(&req)
  32. m := models.ErmcpDeliveryGoods{AREAUSERID: req.AreaUserId, ExcludeCfg: req.ExcludeCfg}
  33. a.DoGetDataI(&m)
  34. }
  35. // QueryDeliveryGoodsDetail
  36. // @Summary 查询现货商品详情
  37. // @Produce json
  38. // @Security ApiKeyAuth
  39. // @Param areauserid query int true "所属机构id"
  40. // @Param deliverygoodsid query int false "现货商品id"
  41. // @Param qrytradegoods query int false "是否查询关联交易商品 1-查询"
  42. // @Success 200 {array} models.ErmcpDeliveryGoodsDetail
  43. // @Failure 500 {object} app.Response
  44. // @Router /Ermcp3/QueryDeliveryGoodsDetail [get]
  45. // @Tags 企业风险管理v3(app)
  46. func QueryDeliveryGoodsDetail(c *gin.Context) {
  47. a := app.GinUtils{Gin: app.Gin{C: c}}
  48. req := struct {
  49. AreaUserId int64 `form:"areauserid" binding:"required"` // 所属机构id
  50. DeliveryGoodsId int32 `form:"deliverygoodsid"` // 排除已配置的商品
  51. QryTradeGoods int32 `form:"qrytradegoods"` // 查询关联交易商品
  52. }{}
  53. a.DoBindReq(&req)
  54. m := models.ErmcpDeliveryGoodsDetail{
  55. Data: models.ErmcpDeliveryGoods{AREAUSERID: req.AreaUserId, DELIVERYGOODSID: req.DeliveryGoodsId},
  56. QryTradeGoods: req.QryTradeGoods}
  57. a.DoGetDataI(&m)
  58. }
  59. // QryContractReq 查询合同请求
  60. type QryContractReq struct {
  61. AreadUserId int64 `form:"areauserid" binding:"required"` // 所属机构Id
  62. CONTRACTTYPE int32 `form:"contracttype"` // 合同类型 1-采购, -1-销售
  63. QUERYTYPE int32 `form:"querytype" binding:"required"` // 查询类型 1-全部 2-待点价 3-履约结算 4-已完成
  64. USERID int64 `form:"userid"` // 用户Id
  65. USERTYPE int32 `form:"usertype"` // 用户类型
  66. CONTRACTID string `form:"contractid"` // 合同ID(SpotContractId)
  67. }
  68. // QuerySpotContract
  69. // @Summary 查询现货合同
  70. // @Produce json
  71. // @Security ApiKeyAuth
  72. // @Param areauserid query int true "所属机构ID"
  73. // @Param querytype query int true "查询类型 1-全部 2-待点价 3-履约结算 4-已完成"
  74. // @Param userid query int false "用户ID"
  75. // @Param usertype query int false "用户类型 2-机构 7-企业成员"
  76. // @Param contractid query string false "合同ID(SpotContractId)"
  77. // @Success 200 {array} models.Ermcp3Contract
  78. // @Failure 500 {object} app.Response
  79. // @Router /Ermcp3/QuerySpotContract [get]
  80. // @Tags 企业风险管理v3(app)
  81. func QuerySpotContract(c *gin.Context) {
  82. a := app.GinUtils{Gin: app.Gin{C: c}}
  83. req := QryContractReq{}
  84. a.DoBindReq(&req)
  85. m := models.Ermcp3Contract{USERID: req.AreadUserId, QryType: req.QUERYTYPE,
  86. OwnUserId: req.USERID, UserType: req.USERTYPE, SPOTCONTRACTID: req.CONTRACTID}
  87. a.DoGetDataI(&m)
  88. }
  89. // QuerySpotContractBS
  90. // @Summary 查询合同(采购/销售)
  91. // @Produce json
  92. // @Security ApiKeyAuth
  93. // @Param areauserid query int true "所属机构ID"
  94. // @Param contracttype query int true "合同类型 1-采购, -1-销售"
  95. // @Param querytype query int true "查询类型 1-全部 2-待点价 3-履约结算 4-已完成"
  96. // @Param userid query int false "用户ID"
  97. // @Param usertype query int false "用户类型 2-机构 7-企业成员"
  98. // @Param contractid query string false "合同ID(SpotContractId)"
  99. // @Success 200 {array} models.Ermcp3SellBuyContract
  100. // @Failure 500 {object} app.Response
  101. // @Router /Ermcp3/QuerySpotContractBS [get]
  102. // @Tags 企业风险管理v3(app)
  103. func QuerySpotContractBS(c *gin.Context) {
  104. a := app.GinUtils{Gin: app.Gin{C: c}}
  105. req := QryContractReq{}
  106. a.DoBindReq(&req)
  107. m := models.Ermcp3SellBuyContract{UserID: req.AreadUserId, Contracttype: req.CONTRACTTYPE,
  108. OwnUserId: req.USERID, UserType: req.USERTYPE, SpotContractId: req.CONTRACTID, QryType: req.QUERYTYPE}
  109. a.DoGetDataI(&m)
  110. }
  111. // QueryExposureDetail
  112. // @Summary 查询敞口现货明细
  113. // @Produce json
  114. // @Security ApiKeyAuth
  115. // @Param areaUserId query int true "所属机构ID"
  116. // @Param middleGoodsId query int true "套保商品"
  117. // @Success 200 {array} models.Ermcp3ExposureDetail
  118. // @Failure 500 {object} app.Response
  119. // @Router /Ermcp3/QueryExposureDetail [get]
  120. // @Tags 企业风险管理v3(app)
  121. func QueryExposureDetail(c *gin.Context) {
  122. a := app.GinUtils{Gin: app.Gin{C: c}}
  123. req := struct {
  124. AREAUSERID int64 `form:"areauserid" binding:"required"` // 所属机构id
  125. MIDDLEGOODSID int32 `form:"middlegoodsid" binding:"required"` // 套保商品id
  126. }{}
  127. a.DoBindReq(&req)
  128. m := models.Ermcp3ExposureDetail{Areauserid: req.AREAUSERID, MiddlegoodsId: req.MIDDLEGOODSID}
  129. a.DoGetDataI(&m)
  130. }
  131. // QueryExposureSpot
  132. // @Summary 查询敞口现货头寸(敞口/现货头寸)
  133. // @Produce json
  134. // @Security ApiKeyAuth
  135. // @Param areauserid query int true "所属机构ID"
  136. // @Success 200 {array} models.Ermcp3AreaSpot
  137. // @Failure 500 {object} app.Response
  138. // @Router /Ermcp3/QueryExposureSpot [get]
  139. // @Tags 企业风险管理v3(app)
  140. func QueryExposureSpot(c *gin.Context) {
  141. a := app.GinUtils{Gin: app.Gin{C: c}}
  142. req := struct {
  143. AREAUSERID int64 `form:"areauserid" binding:"required"` // 所属机构id
  144. }{}
  145. a.DoBindReq(&req)
  146. m := models.Ermcp3AreaSpot{AREAUSERID: req.AREAUSERID}
  147. a.DoGetDataI(&m)
  148. }
  149. // QueryExposureSpotDetail
  150. // @Summary 查询敞口现货头寸明细(敞口/现货头寸/现货明细)
  151. // @Produce json
  152. // @Security ApiKeyAuth
  153. // @Param areauserid query int true "所属机构ID"
  154. // @Param deliverygoodsid query int true "现货品种ID"
  155. // @Success 200 {array} models.Ermcp3AreaSpotDetail
  156. // @Failure 500 {object} app.Response
  157. // @Router /Ermcp3/QueryExposureSpotDetail [get]
  158. // @Tags 企业风险管理v3(app)
  159. func QueryExposureSpotDetail(c *gin.Context) {
  160. appG := app.GinUtils{Gin: app.Gin{C: c}}
  161. req := struct {
  162. AREAUSERID int `form:"areauserid" binding:"required"` // 所属机构id
  163. DELIVERYGOODSID int32 `form:"deliverygoodsid" binding:"required"` // 现货商品id
  164. }{}
  165. appG.DoBindReq(&req)
  166. m := models.Ermcp3AreaSpotDetail{UserId: req.AREAUSERID, DELIVERYGOODSID: req.DELIVERYGOODSID}
  167. appG.DoGetDataI(&m)
  168. }
  169. // QueryDGFactoryItem
  170. // @Summary 查询品种要素定义项
  171. // @Produce json
  172. // @Security ApiKeyAuth
  173. // @Param areauserid query int false "所属机构ID"
  174. // @Param dgfactoryitemid query int false "选择项ID(SEQ_DGFACTORYITEM)"
  175. // @Param deliverygoodsid query int false "现货品种ID"
  176. // @Param dgfactoryitemtypeid query int false "要素项类型"
  177. // @Param orderindex query int false "顺序"
  178. // @Success 200 {array} models.ErmcpDGFactoryItem
  179. // @Failure 500 {object} app.Response
  180. // @Router /Ermcp3/QueryDGFactoryItem [get]
  181. // @Tags 企业风险管理v3(app)
  182. func QueryDGFactoryItem(c *gin.Context) {
  183. appG := app.GinUtils{Gin: app.Gin{C: c}}
  184. req := struct {
  185. AREAUSERID int64 `form:"areauserid"` // 用户id
  186. DGFACTORYITEMID int64 `form:"dgfactoryitemid"` // 选择项ID(SEQ_DGFACTORYITEM)
  187. DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货品种ID
  188. DGFACTORYITEMTYPEID int64 `form:"dgfactoryitemtypeid"` // 要素项类型
  189. ORDERINDEX int32 `form:"orderindex"` // 顺序
  190. }{}
  191. appG.DoBindReq(&req)
  192. m := models.ErmcpDGFactoryItem{
  193. AREAUSERID: req.AREAUSERID,
  194. DGFACTORYITEMID: req.DGFACTORYITEMID,
  195. DELIVERYGOODSID: req.DELIVERYGOODSID,
  196. DGFACTORYITEMTYPEID: req.DGFACTORYITEMTYPEID,
  197. ORDERINDEX: req.ORDERINDEX,
  198. }
  199. appG.DoGetDataI(&m)
  200. }
  201. // QueryGoodsbrand
  202. // @Summary 查询商品品牌
  203. // @Produce json
  204. // @Security ApiKeyAuth
  205. // @Param areauserid query int true "所属机构ID"
  206. // @Success 200 {array} models.Ermcp3Brand
  207. // @Failure 500 {object} app.Response
  208. // @Router /Ermcp3/QueryGoodsbrand [get]
  209. // @Tags 企业风险管理v3(app)
  210. func QueryGoodsbrand(c *gin.Context) {
  211. appG := app.GinUtils{Gin: app.Gin{C: c}}
  212. req := struct {
  213. AREAUSERID int64 `form:"areauserid"` // 用户id
  214. DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货品种ID
  215. }{}
  216. appG.DoBindReq(&req)
  217. m := models.Ermcp3Brand{
  218. AREAUSERID: req.AREAUSERID,
  219. DELIVERYGOODSID: req.DELIVERYGOODSID,
  220. }
  221. appG.DoGetDataI(&m)
  222. }
  223. // QueryGoodsWrstandard
  224. // @Summary 查询商品品类
  225. // @Produce json
  226. // @Security ApiKeyAuth
  227. // @Param areauserid query int true "所属机构ID"
  228. // @Param deliverygoodsid query int false "现货商品id"
  229. // @Success 200 {array} models.Ermcp3Wrstandard
  230. // @Failure 500 {object} app.Response
  231. // @Router /Ermcp3/QueryGoodsWrstandard [get]
  232. // @Tags 企业风险管理v3(app)
  233. func QueryGoodsWrstandard(c *gin.Context) {
  234. appG := app.GinUtils{Gin: app.Gin{C: c}}
  235. req := struct {
  236. AREAUSERID int `form:"areauserid" binding:"required"` // 所属机构id
  237. DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货商品id
  238. }{}
  239. appG.DoBindReq(&req)
  240. m := models.Ermcp3Wrstandard{AREAUSERID: req.AREAUSERID,
  241. DELIVERYGOODSID: req.DELIVERYGOODSID}
  242. appG.DoGetDataI(&m)
  243. }
  244. // QueryAreaStockApply
  245. // @Summary 查询库存申请(出入库记录|库存审核)
  246. // @Produce json
  247. // @Security ApiKeyAuth
  248. // @Param userid query int true "用户ID"
  249. // @Param deliverygoodsid query int false "现货商品ID"
  250. // @Param inouttype query string false "出入库类型(可多项,逗号隔开) 1:采购入库 2:销售出库 3:生产入库 4:生产出库"
  251. // @Param spotcontractid query int false "合同ID"
  252. // @Param wrstandardid query int false "品类ID"
  253. // @Param spotgoodsbrandid query int false "品牌ID"
  254. // @Param warehouseinfoid query int false "仓库ID"
  255. // @Param applystatus query string false "申请状态(可多项,逗号隔开)1:待审核 2:审核通过 3:审核拒绝 4:处理失败 5:已撤回"
  256. // @Success 200 {array} models.Ermcp3AreaStockApply
  257. // @Failure 500 {object} app.Response
  258. // @Router /Ermcp3/QueryAreaStockApply [get]
  259. // @Tags 企业风险管理v3(app)
  260. func QueryAreaStockApply(c *gin.Context) {
  261. a := app.NewGinUtils(c)
  262. req := struct {
  263. USERID int64 `form:"userid" binding:"required"` // 用户
  264. WRSTANDARDID int32 `form:"wrstandardid"` // 品类
  265. SPOTGOODSBRANDID int32 `form:"spotgoodsbrandid"` // 品牌
  266. SPOTCONTRACTID string `form:"spotcontractid"` // 合同id
  267. WAREHOUSEINFOID string `form:"warehouseinfoid"` // 仓库id
  268. DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货商品id
  269. FilterStatus string `form:"applystatus"` // 申请状态
  270. FilterType string `form:"inouttype"` // 出入库类型
  271. }{}
  272. a.DoBindReq(&req)
  273. m := models.Ermcp3AreaStockApply{
  274. USERID: req.USERID,
  275. FilterType: req.FilterType,
  276. SPOTCONTRACTID: req.SPOTCONTRACTID,
  277. WRSTANDARDID: req.WRSTANDARDID,
  278. SPOTGOODSBRANDID: req.SPOTGOODSBRANDID,
  279. DELIVERYGOODSID: req.DELIVERYGOODSID,
  280. WAREHOUSEINFOID: req.WAREHOUSEINFOID,
  281. FilterStatus: req.FilterStatus,
  282. }
  283. a.DoGetDataI(&m)
  284. }
  285. // QueryAreaStockApplySum
  286. // @Summary 查询已登记出入库信息(入库登记/已入库信息 | 出库登记/已出库信息)
  287. // @Produce json
  288. // @Security ApiKeyAuth
  289. // @Param spotcontractid query int false "合同ID"
  290. // @Success 200 {array} models.Ermcp3AreaStockApplySum
  291. // @Failure 500 {object} app.Response
  292. // @Router /Ermcp3/QueryAreaStockApplySum [get]
  293. // @Tags 企业风险管理v3(app)
  294. func QueryAreaStockApplySum(c *gin.Context) {
  295. a := app.GinUtils{Gin: app.Gin{C: c}}
  296. req := struct {
  297. SPOTCONTRACTID string `form:"spotcontractid"` // 合同id
  298. }{}
  299. a.DoBindReq(&req)
  300. m := models.Ermcp3AreaStockApplySum{SPOTCONTRACTID: req.SPOTCONTRACTID}
  301. a.DoGetDataI(&m)
  302. }
  303. // QueryAreaStockReport
  304. // @Summary 查询库存报表
  305. // @Produce json
  306. // @Security ApiKeyAuth
  307. // @Param userid query int true "用户ID"
  308. // @Param querytype query int true "查询类型 1-日报表 2-月报表"
  309. // @Param querydate query string true "查询日期(格式 日报表YYYYMMDD, 月报表YYYYMM)"
  310. // @Param deliverygoodsid query int false "现货商品ID"
  311. // @Param wrstandardid query int false "品类ID"
  312. // @Param spotgoodsbrandid query int false "品牌ID"
  313. // @Param warehouseinfoid query int false "仓库ID"
  314. // @Success 200 {array} models.Ermcp3AreaStockReport
  315. // @Failure 500 {object} app.Response
  316. // @Router /Ermcp3/QueryAreaStockReport [get]
  317. // @Tags 企业风险管理v3(app)
  318. func QueryAreaStockReport(c *gin.Context) {
  319. a := app.GinUtils{Gin: app.Gin{C: c}}
  320. req := struct {
  321. USERID int64 `form:"userid" binding:"required"` // 机构ID
  322. WRSTANDARDID int32 `form:"wrstandardid"` // 品类ID
  323. SPOTGOODSBRANDID int32 `form:"spotgoodsbrandid"` // 现货品牌ID
  324. WAREHOUSEINFOID string `form:"warehouseinfoid"` // 仓库ID
  325. DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货品种id
  326. ReportType int32 `form:"querytype" binding:"required"` // 报表类型 1-日报表 2-月报表
  327. ReportDate string `form:"querydate" binding:"required"` // 格式 日报表(YYYYMMDD) 月报表(YYYYMM)
  328. }{}
  329. a.DoBindReq(&req)
  330. if QueryDate(req.ReportDate).IsNumberic(req.ReportType) {
  331. m := models.Ermcp3AreaStockReport{USERID: req.USERID, WRSTANDARDID: req.WRSTANDARDID,
  332. SPOTGOODSBRANDID: req.SPOTGOODSBRANDID, DELIVERYGOODSID: req.DELIVERYGOODSID,
  333. WAREHOUSEINFOID: req.WAREHOUSEINFOID, ReportDate: req.ReportDate, ReportType: req.ReportType}
  334. a.DoGetDataI(&m)
  335. } else {
  336. a.Gin.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
  337. }
  338. }
  339. // QueryAreaStockReportDetail
  340. // @Summary 查询库存报表明细
  341. // @Produce json
  342. // @Security ApiKeyAuth
  343. // @Param userid query int true "用户ID"
  344. // @Param querytype query int true "查询类型 1-日报表明细 2-月报表明细"
  345. // @Param detailtype query int true "明细类型 1:入库明细(采购入库+生产入库) 2:出库明细(销售出库+生产出库)"
  346. // @Param querydate query string true "查询日期(格式 日报表YYYYMMDD, 月报表YYYYMM)"
  347. // @Param deliverygoodsid query int false "现货商品ID"
  348. // @Param wrstandardid query int false "品类ID"
  349. // @Param spotgoodsbrandid query int false "品牌ID"
  350. // @Param warehouseinfoid query int false "仓库ID"
  351. // @Success 200 {array} models.Ermcp3AreaStockApply
  352. // @Failure 500 {object} app.Response
  353. // @Router /Ermcp3/QueryAreaStockReportDetail [get]
  354. // @Tags 企业风险管理v3(app)
  355. func QueryAreaStockReportDetail(c *gin.Context) {
  356. a := app.GinUtils{Gin: app.Gin{C: c}}
  357. req := struct {
  358. USERID int64 `form:"userid" binding:"required"` // 机构ID
  359. DELIVERYGOODSID int32 `form:"deliverygoodsid"` // 现货品种id
  360. WRSTANDARDID int32 `form:"wrstandardid"` // 品类ID
  361. SPOTGOODSBRANDID int32 `form:"spotgoodsbrandid"` // 品牌id
  362. WAREHOUSEINFOID string `form:"warehouseinfoid"` // 现货仓库ID
  363. QUERYTYPE int32 `form:"querytype" binding:"required"` // 查询类型
  364. QUERYDATE string `form:"querydate" binding:"required"` // 查询日期
  365. DETAILTYPE int32 `form:"detailtype" binding:"required"` // 明细类型
  366. }{}
  367. a.DoBindReq(&req)
  368. if QueryDate(req.QUERYDATE).IsNumberic(req.QUERYTYPE) {
  369. var beginDate, endDate string
  370. if req.QUERYTYPE == 1 {
  371. beginDate = req.QUERYDATE
  372. endDate = beginDate
  373. } else if req.QUERYTYPE == 2 {
  374. beginDate = req.QUERYDATE + "01"
  375. endDate = req.QUERYDATE + "31"
  376. }
  377. m := models.Ermcp3AreaStockApply{USERID: req.USERID, WRSTANDARDID: req.WRSTANDARDID,
  378. SPOTGOODSBRANDID: req.SPOTGOODSBRANDID, DELIVERYGOODSID: req.DELIVERYGOODSID,
  379. WAREHOUSEINFOID: req.WAREHOUSEINFOID, BeginDate: beginDate, EndDate: endDate, APPLYSTATUS: 2}
  380. // 出入库类型(可多项,逗号隔开) 1:采购入库 2:销售出库 3:生产入库 4:生产出库"
  381. if req.DETAILTYPE == 1 {
  382. m.FilterStatus = "1,3"
  383. } else if req.DETAILTYPE == 2 {
  384. m.FilterStatus = "2,4"
  385. }
  386. a.DoGetDataI(&m)
  387. } else {
  388. a.Gin.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
  389. }
  390. }
  391. // QuerySpotGoodsPrice
  392. // @Summary 查询现货市价(现货市价)
  393. // @Produce json
  394. // @Security ApiKeyAuth
  395. // @Param userid query int true "用户ID"
  396. // @Success 200 {array} models.Ermcp3SpotGoodsPrice
  397. // @Failure 500 {object} app.Response
  398. // @Router /Ermcp3/QuerySpotGoodsPrice [get]
  399. // @Tags 企业风险管理v3(app)
  400. func QuerySpotGoodsPrice(c *gin.Context) {
  401. req := struct {
  402. UserId int64 `form:"userid" binding:"required"` // 用户id
  403. }{}
  404. a := app.GinUtils{Gin: app.Gin{C: c}}
  405. a.DoBindReq(&req)
  406. m := models.Ermcp3SpotGoodsPrice{AREAUSERID: req.UserId}
  407. a.DoGetDataI(&m)
  408. }
  409. // QuerySpotGoodsPriceLog
  410. // @Summary 查询现货市价详情(现货市价/详情)
  411. // @Produce json
  412. // @Security ApiKeyAuth
  413. // @Param userid query int true "用户ID"
  414. // @Param deliverygoodsid query int true "现货商品ID"
  415. // @Success 200 {array} models.Ermcp3SpotGoodsPriceLog
  416. // @Failure 500 {object} app.Response
  417. // @Router /Ermcp3/QuerySpotGoodsPriceLog [get]
  418. // @Tags 企业风险管理v3(app)
  419. func QuerySpotGoodsPriceLog(c *gin.Context) {
  420. req := struct {
  421. UserId int64 `form:"userid" binding:"required"` // 用户id
  422. DELIVERYGOODSID int32 `form:"deliverygoodsid" binding:"required"` // 现货商品id
  423. }{}
  424. a := app.GinUtils{Gin: app.Gin{C: c}}
  425. a.DoBindReq(&req)
  426. m := models.Ermcp3SpotGoodsPriceLog{AREAUSERID: req.UserId, DELIVERYGOODSID: req.DELIVERYGOODSID}
  427. a.DoGetDataI(&m)
  428. }
  429. // QueryHedgePlan 查询套保计划
  430. // @Summary 查询套保计划
  431. // @Produce json
  432. // @Security ApiKeyAuth
  433. // @Param userid query int true "用户ID"
  434. // @Param hedgeplanstatus query string true "套保计划状态(允许多个,逗号隔开) - 0:未提交 1:待审核 2:执行中 3:正常完结 4:审核拒绝 5:异常完结 6:已撤回"
  435. // @Success 200 {array} models.Ermcp3HedgePlan
  436. // @Failure 500 {object} app.Response
  437. // @Router /Ermcp3/QueryHedgePlan [get]
  438. // @Tags 企业风险管理v3(app)
  439. func QueryHedgePlan(c *gin.Context) {
  440. appG := app.Gin{C: c}
  441. req := struct {
  442. UserId int64 `form:"userid" binding:"required"` // 用户id
  443. HedgePlanStatus string `form:"hedgeplanstatus" binding:"required"` // 状态
  444. }{}
  445. if err := c.ShouldBind(&req); err != nil {
  446. logger.GetLogger().Errorf("query hedgeplanReq,%v", err)
  447. appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
  448. return
  449. }
  450. var m = models.Ermcp3HedgePlan{Areauserid: req.UserId}
  451. if d, err := m.GetData(req.HedgePlanStatus); err == nil {
  452. appG.Response(http.StatusOK, e.SUCCESS, d)
  453. } else {
  454. logger.GetLogger().Errorf("query fail, %v", err)
  455. appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil)
  456. }
  457. }