market.go 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. package market
  2. import (
  3. "mtp2_if/global/app"
  4. "mtp2_if/global/e"
  5. "mtp2_if/logger"
  6. "mtp2_if/models"
  7. "net/http"
  8. "github.com/gin-gonic/gin"
  9. )
  10. // 通用市场
  11. // QueryMarketRunReq 查询市场运行信息请求参数
  12. type QueryMarketRunReq struct {
  13. MarketID int `form:"marketID"`
  14. }
  15. // QueryMarketRun 查询市场运行信息
  16. // @Summary 查询市场运行信息
  17. // @Produce json
  18. // @Param marketID query int false "市场ID,不传返回所有"
  19. // @Success 200 {object} models.Marketrun
  20. // @Failure 500 {object} app.Response
  21. // @Router /Market/QueryMarketRun [get]
  22. // @Tags 通用市场
  23. func QueryMarketRun(c *gin.Context) {
  24. appG := app.Gin{C: c}
  25. // 获取请求参数
  26. var req QueryMarketRunReq
  27. if err := appG.C.ShouldBindQuery(&req); err != nil {
  28. logger.GetLogger().Errorf("QueryMarketRun failed: %s", err.Error())
  29. appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
  30. return
  31. }
  32. marketRuns, err := models.GetMarketRuns(req.MarketID)
  33. if err != nil {
  34. // 查询失败
  35. logger.GetLogger().Errorf("QueryMarketRun failed: %s", err.Error())
  36. appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil)
  37. return
  38. }
  39. // 查询成功返回
  40. logger.GetLogger().Debugln("QueryMarketRun successed: %v", marketRuns)
  41. appG.Response(http.StatusOK, e.SUCCESS, marketRuns)
  42. }
  43. // QueryMarketsByLoginIDReq 获取登录账号有权限的市场信息请求参数
  44. type QueryMarketsByLoginIDReq struct {
  45. LoginID int `form:"loginID" binding:"required"`
  46. }
  47. // QueryMarketsByLoginID 获取登录账号有权限的市场信息
  48. // @Summary 获取登录账号有权限的市场信息
  49. // @Produce json
  50. // @Security ApiKeyAuth
  51. // @Param loginID query int true "登录账号"
  52. // @Success 200 {object} models.Market
  53. // @Failure 500 {object} app.Response
  54. // @Router /Market/QueryMarketsByLoginID [get]
  55. // @Tags 通用市场
  56. func QueryMarketsByLoginID(c *gin.Context) {
  57. appG := app.Gin{C: c}
  58. // 获取请求参数
  59. var req QueryMarketsByLoginIDReq
  60. if err := appG.C.ShouldBindQuery(&req); err != nil {
  61. logger.GetLogger().Errorf("QueryMarketsByLoginID failed: %s", err.Error())
  62. appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
  63. return
  64. }
  65. markets, err := models.GetMarketsByLoginID(req.LoginID)
  66. if err != nil {
  67. // 查询失败
  68. logger.GetLogger().Errorf("QueryMarketsByLoginID failed: %s", err.Error())
  69. appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil)
  70. return
  71. }
  72. // 查询成功返回
  73. logger.GetLogger().Debugln("QueryMarketsByLoginID successed: %v", markets)
  74. appG.Response(http.StatusOK, e.SUCCESS, markets)
  75. }
  76. // QueryGoodsesByLoginIDReq 获取登录账号有权限的商品信息请求参数
  77. type QueryGoodsesByLoginIDReq struct {
  78. LoginID int `form:"loginID" binding:"required"`
  79. MarketIDs string `form:"marketIDs"`
  80. }
  81. // QueryGoodsesByLoginID 获取登录账号有权限的商品信息
  82. // @Summary 获取登录账号有权限的商品信息
  83. // @Produce json
  84. // @Security ApiKeyAuth
  85. // @Param loginID query int true "登录账号"
  86. // @Param marketIDs query string false "市场ID列表,格式:1,2,3"
  87. // @Success 200 {object} models.Goods
  88. // @Failure 500 {object} app.Response
  89. // @Router /Market/QueryGoodsesByLoginID [get]
  90. // @Tags 通用市场
  91. func QueryGoodsesByLoginID(c *gin.Context) {
  92. appG := app.Gin{C: c}
  93. // 获取请求参数
  94. var req QueryGoodsesByLoginIDReq
  95. if err := appG.C.ShouldBindQuery(&req); err != nil {
  96. logger.GetLogger().Errorf("QueryGoodsesByLoginID failed: %s", err.Error())
  97. appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil)
  98. return
  99. }
  100. goodses, err := models.GetGoodsByLoginID(req.LoginID, req.MarketIDs)
  101. if err != nil {
  102. // 查询失败
  103. logger.GetLogger().Errorf("QueryGoodsesByLoginID failed: %s", err.Error())
  104. appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil)
  105. return
  106. }
  107. // 查询成功返回
  108. logger.GetLogger().Debugln("QueryGoodsesByLoginID successed: %v", goodses)
  109. appG.Response(http.StatusOK, e.SUCCESS, goodses)
  110. }
  111. // GetAllExExchanges 获取所有外部交易所信息
  112. // @Summary 获取所有外部交易所信息
  113. // @Produce json
  114. // @Security ApiKeyAuth
  115. // @Success 200 {object} models.Goods
  116. // @Failure 500 {object} app.Response
  117. // @Router /Market/GetAllExExchanges [get]
  118. // @Tags 通用市场
  119. func GetAllExExchanges(c *gin.Context) {
  120. appG := app.Gin{C: c}
  121. rst, err := models.GetAllExExchanges()
  122. if err != nil {
  123. // 查询失败
  124. logger.GetLogger().Errorf("GetAllExExchanges failed: %s", err.Error())
  125. appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil)
  126. return
  127. }
  128. // 查询成功返回
  129. logger.GetLogger().Debugln("GetAllExExchanges successed: %v", rst)
  130. appG.Response(http.StatusOK, e.SUCCESS, rst)
  131. }