liujiandao
2024-04-10 45778cdd4a7829039fef3d262dc7999bb0628f93
controllers/fineness.go
@@ -5,6 +5,7 @@
   "github.com/gin-gonic/gin"
   "gorm.io/gorm"
   "silkserver/controllers/request"
   "silkserver/controllers/response"
   "silkserver/extend/code"
   "silkserver/extend/util"
   "silkserver/models"
@@ -42,10 +43,13 @@
      util.ResponseFormat(c, code.RequestParamError, err.Error())
      return
   }
   isNew := params.ID == 0
   err := models.WithTransaction(func(db *gorm.DB) error {
      search := models.NewFinenessRegisterSearch().SetOrm(db)
      if params.ID != 0 {
      if !isNew {
         if err := models.NewFinenessItemSearch().SetOrm(db).SetFinenessRegisterID(params.ID).Delete(); err != nil {
            return err
         }
@@ -58,7 +62,7 @@
      util.ResponseFormat(c, code.RequestParamError, "保存失败")
   }
   err = service.FinenessCheck(&params)
   err = service.FinenessCheck(&params, isNew)
   if err != nil {
      logx.Errorf("service.FinenessCheck err:%v, finenessRegister:%+v", err, params)
      util.ResponseFormat(c, code.RequestParamError, "生成检验表失败")
@@ -170,7 +174,7 @@
// @Summary   纤度检验列表
// @Produce   application/json
// @Param     object  query    request.GetFinenessRegisterList true  "查询参数"
// @Success   200   {object}  util.ResponseList{data=[]models.FinenessRegister}  "成功"
// @Success   200   {object}  util.ResponseList{data=[]models.FinenessCheck}  "成功"
// @Router    /api-jl/v1/fineness/check [get]
func (slf FinenessController) CheckList(c *gin.Context) {
   var params request.GetFinenessRegisterList
@@ -179,7 +183,7 @@
      return
   }
   list, total, err := models.NewFinenessCheckSearch().SetPage(params.Page, params.PageSize).Find()
   list, total, err := models.NewFinenessCheckSearch().SetPage(params.Page, params.PageSize).SetPreload().Find()
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "查找失败")
      return
@@ -193,32 +197,35 @@
// @Summary   纤度检验详情
// @Produce   application/json
// @Param     id  path string true  "字典信息"
// @Success   200 {object} util.ResponseList{data=models.FinenessRegister} "成功"
// @Success   200 {object} util.ResponseList{data=response.FinenessCheckInfo} "成功"
// @Router    /api-jl/v1/fineness/check/{id} [get]
func (slf FinenessController) CheckInfo(c *gin.Context) {
   //idStr := c.Param("id")
   //if idStr == "0" || idStr == "" {
   //   util.ResponseFormat(c, code.RequestParamError, "空的记录id")
   //   return
   //}
   //
   //id := convertx.StringToUInt(idStr)
   //if id == 0 {
   //   util.ResponseFormat(c, code.RequestParamError, "空的记录id")
   //   return
   //}
   //
   //info, err := models.NewFinenessCheckSearch().SetID(id).SetPreload().First()
   //if err != nil {
   //   util.ResponseFormat(c, code.RequestParamError, "查找失败")
   //   return
   //}
   //resp := new(response.FinenessCheckInfo)
   //resp.Info = info
   //resp.Items, err := models.NewFinenessCheckItemSearch().SetPage()
   //
   //
   //util.ResponseFormat(c, code.Success, info)
   idStr := c.Param("id")
   if idStr == "0" || idStr == "" {
      util.ResponseFormat(c, code.RequestParamError, "空的记录id")
      return
   }
   id := convertx.StringToUInt(idStr)
   if id == 0 {
      util.ResponseFormat(c, code.RequestParamError, "空的记录id")
      return
   }
   info, err := models.NewFinenessCheckSearch().SetID(id).SetPreload().First()
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "查找失败")
      return
   }
   resp := new(response.FinenessCheckInfo)
   resp.Info = info
   resp.Items, err = models.NewFinenessCheckItemSearch().SetFinenessRegisterID(info.FinenessRegisterID).FindAll()
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "查找失败")
      return
   }
   util.ResponseFormat(c, code.Success, resp)
}
// CheckDelete
@@ -266,54 +273,33 @@
// @Tags      纤度检验
// @Summary   纤度检验修改
// @Produce   application/json
// @Param     object  body  request.AddFinenessRegister true  "字典信息"
// @Param     object  body   models.FinenessCheck true  "字典信息"
// @Success   200 {object} util.Response "成功"
// @Router    /api-jl/v1/fineness/check [post]
func (slf FinenessController) CheckEdit(c *gin.Context) {
   var reqParams request.AddFinenessRegister
   var params models.FinenessRegister
   if err := c.BindJSON(&reqParams); err != nil {
   var params models.FinenessCheck
   if err := c.BindJSON(&params); err != nil {
      util.ResponseFormat(c, code.RequestParamError, "参数解析失败,数据类型错误")
      return
   }
   if err := structx.AssignTo(reqParams, &params); err != nil {
      util.ResponseFormat(c, code.RequestParamError, "数据转换错误")
      return
   }
   if err := slf.ParamsCheck(params); err != nil {
      util.ResponseFormat(c, code.RequestParamError, err.Error())
      return
   }
   check, err := models.NewFinenessCheckSearch().SetID(params.ID).First()
   _, err := models.NewFinenessCheckSearch().SetID(params.ID).First()
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "检验记录不存在")
      return
   }
   err = models.WithTransaction(func(db *gorm.DB) error {
      search := models.NewFinenessRegisterSearch().SetOrm(db)
      if params.ID != 0 {
         if err := models.NewFinenessCheckItemSearch().SetOrm(db).SetFinenessRegisterID(check.FinenessRegisterID).Delete(); err != nil {
            return err
         }
         return search.Save(&params)
      } else {
         return search.Create(&params)
      }
   })
   err = service.FinenessReCheck(&params)
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "保存失败")
   }
   err = service.FinenessCheck(&params)
   if err != nil {
      logx.Errorf("service.FinenessCheck err:%v, finenessRegister:%+v", err, params)
      util.ResponseFormat(c, code.RequestParamError, "生成检验表失败")
      logx.Errorf("service.FinenessReCheck err:%v, finenessCheck:%+v", err, params)
      util.ResponseFormat(c, code.RequestParamError, "检验失败")
      return
   }
   err = models.NewFinenessCheckSearch().Save(&params)
   if err != nil {
      util.ResponseFormat(c, code.RequestParamError, "保存失败")
      return
   }
   util.ResponseFormat(c, code.Success, "保存成功")
}