From c4b9d130cb0aa98f4b65a987b11fc5c2bea3a1c7 Mon Sep 17 00:00:00 2001 From: yinbentan <yinbentan@live.com> Date: 星期三, 03 七月 2024 10:37:25 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/jialian' into jialian --- controllers/warehouse.go | 33 ++++++++++++++++++++++++++++++--- 1 files changed, 30 insertions(+), 3 deletions(-) diff --git a/controllers/warehouse.go b/controllers/warehouse.go index bc2aa7f..14d63c3 100644 --- a/controllers/warehouse.go +++ b/controllers/warehouse.go @@ -55,8 +55,8 @@ } //鍒涘缓榛樿浣嶇疆 location := &models.Location{ - Name: "榛樿浣嶇疆", - JointName: params.Code + "/榛樿浣嶇疆", + Name: params.Name, + JointName: params.Name, Type: constvar.LocationTypeInternal, ReplenishLocation: true, ParentId: id, @@ -122,7 +122,34 @@ util.ResponseFormat(c, code.RequestParamError, err.Error()) return } - err := models.NewWarehouseSearch().SetID(params.Id).Update(¶ms) + 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(¶ms) + return err + }) if err != nil { util.ResponseFormat(c, code.RequestParamError, "淇敼澶辫触") -- Gitblit v1.8.0