package controller import ( "fmt" "github.com/codinl/go-logger" "github.com/gin-gonic/gin" "mh-server/lib/auth" "mh-server/lib/status" "mh-server/lib/wxpay" "mh-server/lib/xianmai" "mh-server/model" "time" ) func GameCassetteList(c *gin.Context) { req := struct { Keyword string `json:"keyword"` PageNum int `json:"page_num"` PageSize int `json:"page_size"` }{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } cassettes, count, err := xianmai.GameCassetteList(req.Keyword, req.PageNum, req.PageSize) if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } if count == 0 { count = 1 } ret := map[string]interface{}{ //"count": count, "list": cassettes, "pageIndex": req.PageNum, "pageSize": req.PageSize, "total_page": count, } RespOK(c, ret) return } func GameCheckGoods(c *gin.Context) { req := xianmai.GameCheckGoodsReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } resp, err := req.Get() if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } RespOK(c, resp) return } func GameEvaluation(c *gin.Context) { req := xianmai.GameEvaluationReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } price, err := req.Evaluation() if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } info, err := model.RecycleCardConfigInfo() if err != nil { logger.Error("config err:", err) RespJson(c, status.InternalServerError, nil) return } if info.RebateRate > 0 && info.RebateRate < 10000 { price = (price * int(10000-info.RebateRate)) / 100 } else { price = price * 100 } if price > 70000 { logger.Error("price err") RespJson(c, status.InternalServerError, nil) return } price = (price / 100) * 100 //price = 40 // TODO ret := map[string]interface{}{ "price": price, } RespOK(c, ret) return } func RecycleCardCreateOrder(c *gin.Context) { req := xianmai.GameEvaluationReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { logger.Error("uc is nil") RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 8588420} order, err := model.RecycleCardOrderCreate(uc.Uid, req) if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } RespOK(c, order) return } func RecycleCardOrderList(c *gin.Context) { req := model.RecycleCardOrderListReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { logger.Error("uc is nil") RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 8588420} req.Uid = uc.Uid orders, totalPage, err := req.List() if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } ret := map[string]interface{}{ "list": orders, "cur_page": req.PageIdx, "total_page": totalPage, } RespOK(c, ret) return } func RecycleCardOrderDetail(c *gin.Context) { req := struct { OrderId uint32 `json:"order_id" binding:"required"` }{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } //uc := auth.GetCurrentUser(c) //if uc == nil { // logger.Error("uc is nil") // RespJson(c, status.Unauthorized, nil) // return //} //uc = &auth.UserClaims{Uid: 8588420} var order model.RecycleCardOrder err := model.NewRecycleCardOrderQuerySet(model.DB).IDEq(req.OrderId).One(&order) if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } user := model.GetUserByUid(order.Uid) order.User = user store, err := model.GetStore(order.StoreId) if err != nil { logger.Error("order store err:", err) RespJson(c, status.InternalServerError, nil) return } order.Store = store RespOK(c, order) return } func RecycleCardOrderCancel(c *gin.Context) { req := struct { OrderId uint32 `json:"order_id" binding:"required"` }{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } var order model.RecycleCardOrder err := model.NewRecycleCardOrderQuerySet(model.DB).IDEq(req.OrderId).One(&order) if err != nil { logger.Error("game cassette err:", err) RespJson(c, status.InternalServerError, nil) return } if order.State != 1 { logger.Error("order state err") RespJson(c, status.StateNotCancel, nil) return } err = model.NewRecycleCardOrderQuerySet(model.DB).IDEq(req.OrderId).GetUpdater(). SetState(4).Update() if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } order.State = 4 RespOK(c, order) return } func RecycleCardOrderImageUpdate(c *gin.Context) { req := struct { OrderId uint32 `json:"order_id" binding:"required"` Images string `json:"images" binding:"required"` }{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { logger.Error("uc is nil") RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 8588420} assistant := model.GetUserByUid(uc.Uid) if assistant.UserType != 2 { logger.Error("not assistant") RespJson(c, status.InternalServerError, nil) return } var order model.RecycleCardOrder err := model.NewRecycleCardOrderQuerySet(model.DB).IDEq(req.OrderId).One(&order) if err != nil { logger.Error("order err:%#v", err) RespJson(c, status.InternalServerError, nil) return } if order.State != 1 { logger.Error("order state err") RespJson(c, status.InternalServerError, nil) return } userInfo := model.GetUserByUid(order.Uid) if userInfo == nil { logger.Error("user info err:", err) RespJson(c, status.InternalServerError, nil) return } //order.Price = 40 // TODO transfer, err := wxpay.Transfer(order.Price, userInfo.WxOpenID, "回收卡带") if err != nil { logger.Error("err:", err) if err.Error() == "account balance insufficient" { RespJson(c, status.MoneySufficient, nil) } else { RespJson(c, status.InternalServerError, nil) } return } err = model.NewRecycleCardOrderQuerySet(model.DB).IDEq(req.OrderId).GetUpdater(). SetImages(req.Images).SetState(2).SetCheckTime(time.Now()). SetAssistantName(assistant.ShopAssistantName).SetRetrieveState(1).Update() if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } fundRecord := &model.FundRecord{ Uid: order.Uid, FundType: model.FundTypeRecycleCard, Amount: int64(order.Price) * (-1), OutTradeNo: transfer.PartnerTradeNo, PaymentNo: transfer.PaymentNo, Status: 2, Remark: "回收卡带", //TransactionId: , } err = model.DB.Create(fundRecord).Error if err != nil { logger.Error("create fund record err:", err) } operationLog := &model.OperationLog{ Uid: assistant.Uid, Description: "回收卡带转款", OperationType: model.OperationTypeRecycleCardOrderImageUpdate, CorrelationId: order.ID, CorrelationName: model.LogCorrelationRecycleCardOrderId, StoreId: uint32(assistant.StoreId), StoreName: "", CooperativeName: assistant.CooperativeName, CooperativeBusinessId: assistant.CooperativeBusinessId, Detail: "", } operationLog.AddLog() RespOK(c, nil) return } func RecycleCardOrderCheck(c *gin.Context) { req := struct { OrderId uint32 `json:"order_id" binding:"required"` CheckType uint32 `json:"check_type" binding:"required"` // 1-拒绝 }{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { logger.Error("uc is nil") RespJson(c, status.Unauthorized, nil) return } var order model.RecycleCardOrder err := model.NewRecycleCardOrderQuerySet(model.DB).IDEq(req.OrderId).One(&order) if err != nil { logger.Error("recycle card order err:", err) return } if order.State != 1 { logger.Error("order state err") RespJson(c, status.InternalServerError, nil) return } //uc = &auth.UserClaims{Uid: 8588420} assistant := model.GetUserByUid(uc.Uid) if assistant.UserType != 2 { logger.Error("not assistant") RespJson(c, status.InternalServerError, nil) return } if req.CheckType == 1 { err := model.NewRecycleCardOrderQuerySet(model.DB).IDEq(req.OrderId).GetUpdater(). SetState(3).SetCheckTime(time.Now()).SetAssistantName(assistant.ShopAssistantName). Update() if err != nil { logger.Error("update recycle card order err:", err) return } } RespOK(c, nil) return } func ConsoleRecycleCardOrderList(c *gin.Context) { req := model.ConsoleRecycleCardOrderListReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { logger.Error("uc is nil") RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 8588420} user := model.GetUserByUid(uc.Uid) if user != nil { req.StoreId = uint32(user.StoreId) } orders, totalPage, err := req.List() if err != nil { logger.Error("game cassette err", err) RespJson(c, status.InternalServerError, nil) return } ret := map[string]interface{}{ "list": orders, "cur_page": req.PageIdx, "total_page": totalPage, } RespOK(c, ret) return } // RecycleCardBrandList 品牌列表-查询 func RecycleCardBrandList(c *gin.Context) { req := &xianmai.SmBrandListReq{} if c.ShouldBindJSON(req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } resp, err := req.List() if err != nil { logger.Error("List err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardGoodsList 机型列表查询 func RecycleCardGoodsList(c *gin.Context) { req := &xianmai.SmGoodsListReq{} if c.ShouldBindJSON(req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } resp, err := req.List() if err != nil { logger.Error("List err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardProblemSkuList 机型质检项-查询 func RecycleCardProblemSkuList(c *gin.Context) { req := model.ProblemSkuListReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: map[string]interface{}{ "goodsId": req.GoodsId, }, ApiRoute: "/openapi/order/queryProblemSkuList", } resp := &model.ProblemSkuListResp{} err := smExternal.Pulling(resp) if err != nil { logger.Error("ProblemSkuListResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardSubmitOrderEvaluation 提交估价单 func RecycleCardSubmitOrderEvaluation(c *gin.Context) { req := model.SubmitOrderEvaluationReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:", user) RespJson(c, status.RedirectBindPhonePage, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/submitOrderEvaluation", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.SubmitOrderEvaluationResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("SubmitOrderEvaluationResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardSubmitOrderDelivery 提交订单发货 func RecycleCardSubmitOrderDelivery(c *gin.Context) { req := model.SubmitOrderDeliveryReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/submitOrderDelivery", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.SubmitOrderDeliveryResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("SubmitOrderDeliveryResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardCancelOrderDelivery 取消订单发货 func RecycleCardCancelOrderDelivery(c *gin.Context) { req := model.CancelOrderDeliveryReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/cancelOrderDelivery", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.CancelOrderDeliveryResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("CancelOrderDeliveryResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardQueryMemberOrderList 订单列表-查询 func RecycleCardQueryMemberOrderList(c *gin.Context) { req := model.QueryMemberOrderListReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/queryMemberOrderList", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.QueryMemberOrderListResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("QueryMemberOrderListResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardQueryMemberOrderdetail 订单详情-查询 func RecycleCardQueryMemberOrderdetail(c *gin.Context) { req := model.QueryMemberOrderdetailReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/queryMemberOrderdetail", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.QueryMemberOrderdetailResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("QueryMemberOrderdetailResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardQueryMemberOrderDelivery 订单物流-查询 func RecycleCardQueryMemberOrderDelivery(c *gin.Context) { req := model.QueryMemberOrderDeliveryReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/queryMemberOrderDelivery", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.QueryMemberOrderDeliveryResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("QueryMemberOrderDeliveryResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardSubmitConfirmPrice 提交确认价格-同意 func RecycleCardSubmitConfirmPrice(c *gin.Context) { req := model.SubmitConfirmPriceReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/submitConfirmPrice", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.SubmitConfirmPriceResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("QueryMemberOrderDeliveryResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, nil) return } // RecycleCardCancelOrderEvaluation 取消预估单 func RecycleCardCancelOrderEvaluation(c *gin.Context) { req := model.CancelOrderEvaluationReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/cancelOrderEvaluation", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.CancelOrderEvaluationResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("CancelOrderEvaluationResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, nil) return } // RecycleCardSubmitOrderToCart 回收车添加商品 func RecycleCardSubmitOrderToCart(c *gin.Context) { req := model.RecycleCardSubmitOrderToCartReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/submitOrderToCart", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.RecycleCardSubmitOrderToCartResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("CardSubmitOrderToCartResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, nil) return } // RecycleCardRemoveCartOrder 回收车移除商品 func RecycleCardRemoveCartOrder(c *gin.Context) { req := model.RecycleCardRemoveCartOrderReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/removeCartOrder", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.RecycleCardRemoveCartOrderResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("CardRemoveCartOrderResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, nil) return } // RecycleCardSubmitCartDelivery 回收车提交发货 func RecycleCardSubmitCartDelivery(c *gin.Context) { req := model.RecycleCardSubmitCartDeliveryReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc := &auth.UserClaims{Uid: 64359323} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/submitCartDelivery", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.RecycleCardSubmitCartDeliveryResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("CardSubmitCartDeliveryResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return } // RecycleCardUpdateOrderQcReport 修改订单质检报告 func RecycleCardUpdateOrderQcReport(c *gin.Context) { req := model.RecycleCardUpdateOrderQcReportReq{} if c.ShouldBindJSON(&req) != nil { logger.Error("ShouldBindJSON err") RespJson(c, status.BadRequest, nil) return } uc := auth.GetCurrentUser(c) if uc == nil { RespJson(c, status.Unauthorized, nil) return } //uc = &auth.UserClaims{Uid: 63192613} user := model.GetUserByUid(uc.Uid) if user.Tel == "" { logger.Error("GetUserByUid err:") RespJson(c, status.InternalServerError, nil) return } smExternal := &xianmai.SmExternal{ ParaMap: req, ApiRoute: "/openapi/order/updateOrderQcReport", WechatId: fmt.Sprintf("%d", user.Uid), WechatMobile: user.Tel, RequestType: "placeOrder", } resp := &model.RecycleCardUpdateOrderQcReportResp{} err := smExternal.EoPulling(resp) if err != nil { logger.Error("CardUpdateOrderQcReportResp err:", err) RespJson(c, status.InternalServerError, nil) return } if !CompareCode(resp.Code) { //接口报错,需要将错误转发 RespError(c, resp.Message) return } RespOK(c, resp.Data) return }