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(¶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