From 329095b4c501351cda9316f26d1e617b1b0bc3ec Mon Sep 17 00:00:00 2001
From: zhangqian <zhangqian@123.com>
Date: 星期二, 09 四月 2024 15:11:27 +0800
Subject: [PATCH] 纤度检验表返回设备登记表详情
---
service/fineness.go | 30 ++++++++++++++++++++++++++++--
1 files changed, 28 insertions(+), 2 deletions(-)
diff --git a/service/fineness.go b/service/fineness.go
index 95039f3..6128727 100644
--- a/service/fineness.go
+++ b/service/fineness.go
@@ -10,7 +10,7 @@
"sort"
)
-func FinenessCheck(finenessRegister *models.FinenessRegister) (err error) {
+func FinenessCheck(finenessRegister *models.FinenessRegister, isNew bool) (err error) {
standardMap, err := GetSilkRankStandard()
if err != nil {
return err
@@ -88,11 +88,28 @@
finenessCheck.FinenessGrade = CalcFinenessGrade(finenessCheck.Deviation, finenessCheck.TotalDeviation, finenessCheck.Cleanliness, finenessCheck.Purity, finenessCheck.TwiceChange, standardMap)
err = models.WithTransaction(func(db *gorm.DB) error {
+ if !isNew {
+ err = models.NewFinenessCheckSearch().SetOrm(db).SetFinenessRegisterID(finenessRegister.ID).Delete()
+ if err != nil {
+ return err
+ }
+ err = models.NewFinenessCheckItemSearch().SetOrm(db).SetFinenessRegisterID(finenessRegister.ID).Delete()
+ if err != nil {
+ return err
+ }
+ }
err := models.NewFinenessCheckSearch().SetOrm(db).Create(&finenessCheck)
if err != nil {
return err
}
- return models.NewFinenessCheckItemSearch().SetOrm(db).CreateBatch(finenessCheckItems)
+ for _, v := range finenessCheckItems {
+ v.FinenessCheckID = finenessCheck.ID
+ }
+ err = models.NewFinenessCheckItemSearch().SetOrm(db).CreateBatch(finenessCheckItems)
+ if err != nil {
+ return err
+ }
+ return models.NewFinenessRegisterSearch().SetOrm(db).SetID(finenessRegister.ID).UpdateByMap(map[string]interface{}{"fineness_check_id": finenessCheck.ID})
})
return err
}
@@ -202,3 +219,12 @@
result = float32(math.Round(float64(result)*10) / 10)
return result
}
+
+func FinenessReCheck(finenessCheck *models.FinenessCheck) (err error) {
+ standardMap, err := GetSilkRankStandard()
+ if err != nil {
+ return err
+ }
+ finenessCheck.FinenessGrade = CalcFinenessGrade(finenessCheck.Deviation, finenessCheck.TotalDeviation, finenessCheck.Cleanliness, finenessCheck.Purity, finenessCheck.TwiceChange, standardMap)
+ return
+}
--
Gitblit v1.8.0