From 6ab6e517d224d8318a9a4ee189671a35bc2fbd2a Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期五, 01 三月 2024 11:02:47 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/silk/silkServer

---
 controllers/fineness.go |   50 +++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 45 insertions(+), 5 deletions(-)

diff --git a/controllers/fineness.go b/controllers/fineness.go
index a9068e3..6760b3b 100644
--- a/controllers/fineness.go
+++ b/controllers/fineness.go
@@ -2,6 +2,7 @@
 
 import (
 	"github.com/gin-gonic/gin"
+	"gorm.io/gorm"
 	"silkserver/controllers/request"
 	"silkserver/extend/code"
 	"silkserver/extend/util"
@@ -35,12 +36,23 @@
 		util.ResponseFormat(c, code.RequestParamError, err.Error())
 		return
 	}
-	if err := models.NewFinenessRegisterSearch().Create(&params); err != nil {
-		util.ResponseFormat(c, code.SaveFail, "鎻掑叆澶辫触")
-		return
+	err := models.WithTransaction(func(db *gorm.DB) error {
+		search := models.NewFinenessRegisterSearch().SetOrm(db)
+
+		if params.ID != 0 {
+			if err := models.NewFinenessItemSearch().SetOrm(db).SetFinenessRegisterID(params.ID).Delete(); err != nil {
+				return err
+			}
+			return search.Save(&params)
+		} else {
+			return search.Create(&params)
+		}
+	})
+	if err != nil {
+		util.ResponseFormat(c, code.RequestParamError, "淇濆瓨澶辫触")
 	}
 
-	util.ResponseFormat(c, code.Success, "娣诲姞鎴愬姛")
+	util.ResponseFormat(c, code.Success, "淇濆瓨鎴愬姛")
 }
 
 func (slf FinenessController) ParamsCheck(params models.FinenessRegister) (err error) {
@@ -67,7 +79,35 @@
 		return
 	}
 
-	util.ResponseFormatList(c, code.Success, list, int(total))
+	util.ResponseFormatList(c, code.Success, list, total)
+}
+
+// Info
+// @Tags      绾ゅ害鐧昏
+// @Summary   绾ゅ害鐧昏璇︽儏
+// @Produce   application/json
+// @Param     id  path string true  "瀛楀吀淇℃伅"
+// @Success   200 {object} util.ResponseList{data=models.FinenessRegister} "鎴愬姛"
+// @Router    /api-jl/v1/fineness/register/{id} [get]
+func (slf FinenessController) Info(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.NewFinenessRegisterSearch().SetID(id).SetPreload().First()
+	if err != nil {
+		util.ResponseFormat(c, code.RequestParamError, "鏌ユ壘澶辫触")
+		return
+	}
+	util.ResponseFormat(c, code.Success, info)
 }
 
 // Delete

--
Gitblit v1.8.0