zhangqian
2023-11-07 9e36cf6dfbd916a1a5fd79d628887972a90d9b5e
api/v1/product.go
@@ -9,6 +9,7 @@
   "aps_crm/pkg/ecode"
   "aps_crm/pkg/logx"
   "aps_crm/proto/product"
   "aps_crm/utils"
   "fmt"
   "github.com/gin-gonic/gin"
   "github.com/shopspring/decimal"
@@ -123,3 +124,40 @@
   }
   ctx.OkWithDetailed(getProductInfoResponse.Data)
}
// GetProductOrderInfo
//
// @Tags      产品
// @Summary   获取产品订单信息
// @Produce   application/json
// @Param      number   path      string   true   "明细编码"
// @Success   200   {object}   contextx.Response{data=[]product.WorkOrderInfo}   "成功"
//
//   @Router      /api/product/getProductOrderInfo/{number} [get]
func (ci *ProductApi) GetProductOrderInfo(c *gin.Context) {
   ctx, ok := contextx.NewContext(c, nil)
   if !ok {
      return
   }
   number := c.Param("number")
   first, err := model.NewSalesDetailsSearch().SetNumber(number).SetPreload(true).First()
   if err != nil {
      ctx.FailWithMsg(ecode.UnknownErr, "明细详情查找失败")
      return
   }
   params := make([]*product.Info, 0)
   for _, p := range first.Products {
      var pa *product.Info
      pa.ProductId = p.Number
      pa.Time = utils.TimeToString(first.UpdatedAt)
      params = append(params, pa)
   }
   client := product.NewProductServiceClient(productServiceConn)
   info, err := client.GetProductOrder(ctx.GetCtx(), &product.GetProductOrderRequest{Params: params})
   if err != nil {
      logx.Errorf("GetProductOrder err: %v", err.Error())
      ctx.FailWithMsg(ecode.UnknownErr, "内部错误")
      return
   }
   ctx.OkWithDetailed(info.List)
}