package sbyj import ( "mtp2_if/global/app" "mtp2_if/global/e" "mtp2_if/logger" "mtp2_if/models" "net/http" "strconv" "strings" "github.com/gin-gonic/gin" ) type GetTouristGoodsReq struct { TradeModes string `form:"trademodes"` // 交易模式筛选, 逗号隔开, 默认为 52,97,99 MarketIds string `form:"marketids"` // 市场ID筛选, 逗号隔开 } // GetTouristGoods 获取订单系统游客商品列表 // @Summary 获取订单系统游客商品列表 // @Produce json // @Param trademodes query string false "交易模式筛选, 逗号隔开, 默认为 52,97,99" // @Param marketids query string false "市场ID筛选, 逗号隔开" // @Success 200 {array} models.TouristGoods // @Failure 500 {object} app.Response // @Router /sbyj/GetTouristGoods [get] // @Tags 订单系统 func GetTouristGoods(c *gin.Context) { appG := app.Gin{C: c} // 获取请求参数 var req GetTouristGoodsReq if err := appG.C.ShouldBindQuery(&req); err != nil { logger.GetLogger().Errorf("GetTouristGoods failed: %s", err.Error()) appG.Response(http.StatusBadRequest, e.INVALID_PARAMS, nil) return } // 获取数据 var tradeModes []int if req.TradeModes != "" { arr := strings.Split(req.TradeModes, ",") for _, item := range arr { a, _ := strconv.Atoi(item) tradeModes = append(tradeModes, a) } } else { // 接外部行情的市场: 52-订单系统,10,53-交易系统 97,99-参考行情 tradeModes = []int{10, 53, 52, 97, 99} } marketIds := make([]int, 0) if req.MarketIds != "" { arr := strings.Split(req.MarketIds, ",") for _, item := range arr { a, _ := strconv.Atoi(item) marketIds = append(marketIds, a) } } goodses, err := models.GetTouristGoods(tradeModes, marketIds) if err != nil { // 查询失败 logger.GetLogger().Errorf("GetTouristGoods failed: %s", err.Error()) appG.Response(http.StatusBadRequest, e.ERROR_QUERY_FAIL, nil) return } // 查询成功返回 appG.Response(http.StatusOK, e.SUCCESS, goodses) } type GetMyOrdersReq struct { GoodsId int `form:"goodsId"` // 商品ID UserId int `form:"userId" binding:"required"` // 用户ID }