From eaa4218d45fade3a9ac2cfb7ff81cbfceeb650cd Mon Sep 17 00:00:00 2001
From: liujiandao <274878379@qq.com>
Date: 星期四, 11 一月 2024 10:36:23 +0800
Subject: [PATCH] 问题修改

---
 controllers/warehouse.go |   29 ++++++++++++++++++++++++++++-
 1 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/controllers/warehouse.go b/controllers/warehouse.go
index bc2aa7f..f9b54c9 100644
--- a/controllers/warehouse.go
+++ b/controllers/warehouse.go
@@ -122,7 +122,34 @@
 		util.ResponseFormat(c, code.RequestParamError, err.Error())
 		return
 	}
-	err := models.NewWarehouseSearch().SetID(params.Id).Update(&params)
+	warehouse, err := models.NewWarehouseSearch().SetID(params.Id).First()
+	if err != nil {
+		util.ResponseFormat(c, code.RequestParamError, "浠撳簱涓嶅瓨鍦�")
+		return
+	}
+	err = models.WithTransaction(func(db *gorm.DB) error {
+		//鏇存柊浣滀笟绫诲瀷鍚嶇О
+		if params.Name != warehouse.Name {
+			m := make(map[string]interface{})
+			m["name"] = params.Name + "-鍏ュ簱"
+			err := models.NewOperationTypeSearch().SetOrm(db).SetBaseOperationType(constvar.BaseOperationTypeIncoming).SetWarehouseId(params.Id).UpdateByMap(m)
+			if err != nil {
+				return err
+			}
+			m["name"] = params.Name + "-鍑哄簱"
+			err = models.NewOperationTypeSearch().SetOrm(db).SetBaseOperationType(constvar.BaseOperationTypeOutgoing).SetWarehouseId(params.Id).UpdateByMap(m)
+			if err != nil {
+				return err
+			}
+			m["name"] = params.Name + "-鍐呴儴璋冩嫧"
+			err = models.NewOperationTypeSearch().SetOrm(db).SetBaseOperationType(constvar.BaseOperationTypeInternal).SetWarehouseId(params.Id).UpdateByMap(m)
+			if err != nil {
+				return err
+			}
+		}
+		err = models.NewWarehouseSearch().SetID(params.Id).Update(&params)
+		return err
+	})
 
 	if err != nil {
 		util.ResponseFormat(c, code.RequestParamError, "淇敼澶辫触")

--
Gitblit v1.8.0