From 30e38e3b2a55a4c9d503b7fbda303437865793be Mon Sep 17 00:00:00 2001 From: yinbentan <yinbentan@live.com> Date: 星期二, 16 七月 2024 20:08:30 +0800 Subject: [PATCH] 添加方法,根据纤度登记ID获取纤度检验详情 --- controllers/fineness.go | 54 +++++++++++++++++++++++--- models/dict.go | 14 +++--- controllers/request/fineness.go | 3 + models/fineness_item.go | 10 ++-- 4 files changed, 61 insertions(+), 20 deletions(-) diff --git a/controllers/fineness.go b/controllers/fineness.go index 9cc41d3..0eaa33d 100644 --- a/controllers/fineness.go +++ b/controllers/fineness.go @@ -66,14 +66,13 @@ err = models.WithTransaction(func(db *gorm.DB) error { search := models.NewFinenessRegisterSearch().SetOrm(db) - if !isNew { + if !isNew { // id涓嶄负绌� if err := models.NewFinenessItemSearch().SetOrm(db).SetFinenessRegisterID(params.ID).Delete(); err != nil { return err } return search.Save(¶ms) - } else { - return search.Create(¶ms) } + return search.Create(¶ms) }) if err != nil { util.ResponseFormat(c, code.RequestParamError, "淇濆瓨澶辫触") @@ -87,7 +86,7 @@ return } - util.ResponseFormat(c, code.Success, "淇濆瓨鎴愬姛") + util.ResponseFormat(c, code.Success, params) } func (slf FinenessController) ParamsCheck(params models.FinenessRegister) (err error) { @@ -201,12 +200,17 @@ util.ResponseFormat(c, code.RequestParamError, "绌虹殑璁板綍id") return } - - err := models.NewFinenessRegisterSearch().SetID(id).Delete() + err := models.WithTransaction(func(db *gorm.DB) error { + if err := models.NewFinenessItemSearch().SetOrm(db).SetFinenessRegisterID(id).Delete(); err != nil { + return err + } + return models.NewFinenessRegisterSearch().SetOrm(db).SetID(id).Delete() + }) if err != nil { util.ResponseFormat(c, code.RequestParamError, "鍒犻櫎澶辫触") return } + util.ResponseFormat(c, code.UpdateSuccess, "鍒犻櫎鎴愬姛") } @@ -237,7 +241,7 @@ // @Tags 绾ゅ害妫�楠� // @Summary 绾ゅ害妫�楠岃鎯� // @Produce application/json -// @Param id path string true "瀛楀吀淇℃伅" +// @Param id path string true "绾ゅ害妫�楠孖D" // @Success 200 {object} util.ResponseList{data=response.FinenessCheckInfo} "鎴愬姛" // @Router /api-jl/v1/fineness/check/{id} [get] func (slf FinenessController) CheckInfo(c *gin.Context) { @@ -269,6 +273,42 @@ util.ResponseFormat(c, code.Success, resp) } +// CheckInfoByFinenessID +// @Tags 绾ゅ害妫�楠� +// @Summary 鏍规嵁绾ゅ害鐧昏ID鑾峰彇绾ゅ害妫�楠岃鎯� +// @Produce application/json +// @Param id path string true "绾ゅ害鐧昏ID" +// @Success 200 {object} util.ResponseList{data=response.FinenessCheckInfo} "鎴愬姛" +// @Router /api-jl/v1/fineness/checkFinenessID/{id} [get] +func (slf FinenessController) CheckInfoByFinenessID(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().SetFinenessRegisterID(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 // @Tags 绾ゅ害妫�楠� // @Summary 绾ゅ害妫�楠屽垹闄� diff --git a/controllers/request/fineness.go b/controllers/request/fineness.go index 47c5aa9..60a3041 100644 --- a/controllers/request/fineness.go +++ b/controllers/request/fineness.go @@ -30,5 +30,6 @@ type GetFinenessRegisterList struct { PageInfo - Keyword string `json:"keyword" form:"keyword"` + FinenessRegisterID uint `json:"finenessRegisterID"` //绾ゅ害鐧昏琛↖D + Keyword string `json:"keyword" form:"keyword"` } diff --git a/models/dict.go b/models/dict.go index e585f01..b8b2dd9 100644 --- a/models/dict.go +++ b/models/dict.go @@ -8,13 +8,13 @@ ) type ( - // Dict 璇嶅吀 + // Dict 缂笣璇嶅吀 Dict struct { gorm.Model - DictType *constvar.DictType `gorm:"index;type:tinyint(3);not null;comment:瀛楀吀绫诲瀷"` //瀛楀吀绫诲瀷 - Number string `gorm:"type:varchar(255);not null;comment:缂栧彿" json:"number"` //缂栧彿 - Name string `gorm:"type:varchar(255);not null;comment:鍚嶇О" json:"name"` //鍚嶇О - Remark string `gorm:"type:varchar(255);not null;comment:澶囨敞" json:"remark"` //澶囨敞 + DictType constvar.DictType `gorm:"index;type:tinyint(3);not null;comment:瀛楀吀绫诲瀷"` //瀛楀吀绫诲瀷 + Number string `gorm:"type:varchar(255);not null;comment:缂栧彿" json:"number"` //缂栧彿 + Name string `gorm:"type:varchar(255);not null;comment:鍚嶇О" json:"name"` //鍚嶇О + Remark string `gorm:"type:varchar(255);not null;comment:澶囨敞" json:"remark"` //澶囨敞 } DictSearch struct { @@ -71,7 +71,7 @@ return slf } -func (slf *DictSearch) SetDictType(dt *constvar.DictType) *DictSearch { +func (slf *DictSearch) SetDictType(dt constvar.DictType) *DictSearch { slf.DictType = dt return slf } @@ -96,7 +96,7 @@ db = db.Where("number = ?", slf.Number) } - if slf.DictType != nil { + if slf.DictType > 0 { db = db.Where("dict_type = ?", slf.DictType) } diff --git a/models/fineness_item.go b/models/fineness_item.go index 33a9065..08608ef 100644 --- a/models/fineness_item.go +++ b/models/fineness_item.go @@ -11,11 +11,11 @@ // FinenessItem 绾ゅ害鐧昏 FinenessItem struct { gorm.Model - FinenessRegisterID uint `gorm:"size:11;index" json:"finenessRegisterID"` - Position int `gorm:"size:11;comment:杞﹀彿" json:"position"` // 杞﹀彿 - Fineness float32 `gorm:"comment:绾ゅ害" json:"fineness"` // 绾ゅ害 - Quantity int `gorm:"size:11;comment:鏁伴噺" json:"quantity"` // 鏁伴噺 - Sum decimal.Decimal `gorm:"type:decimal(12,4);comment:绾ゅ害鍚堣" json:"sum"` //绾ゅ害鍚堣 + FinenessRegisterID uint `gorm:"size:11;index;comment:绾ゅ害鐧昏ID" json:"finenessRegisterID"` // 绾ゅ害鐧昏ID + Position int `gorm:"size:11;comment:杞﹀彿" json:"position"` // 杞﹀彿 + Fineness float32 `gorm:"comment:绾ゅ害" json:"fineness"` // 绾ゅ害 + Quantity int `gorm:"size:11;comment:鏁伴噺" json:"quantity"` // 鏁伴噺 + Sum decimal.Decimal `gorm:"type:decimal(12,4);comment:绾ゅ害鍚堣" json:"sum"` // 绾ゅ害鍚堣 } FinenessItemSearch struct { -- Gitblit v1.8.0