From 44b1064dcfc3d88c0eba7dca09c420ee64483f5a Mon Sep 17 00:00:00 2001 From: zhangqian <zhangqian@123.com> Date: 星期二, 25 六月 2024 14:37:20 +0800 Subject: [PATCH] fix transaction --- conf/config.yaml | 4 ++-- service/operation.go | 20 ++++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/conf/config.yaml b/conf/config.yaml index 4664ec9..35102d0 100644 --- a/conf/config.yaml +++ b/conf/config.yaml @@ -11,7 +11,7 @@ companyName: jialian db: # dsn: root:c++java123@tcp(192.168.20.119:3306)/wms?charset=utf8&parseTime=True&loc=Local - dsn: root:c++java123@tcp(192.168.20.119:3306)/aps_server2?charset=utf8&parseTime=True&loc=Local + dsn: root:c++java123@tcp(127.0.0.1:3306)/aps_server2?charset=utf8&parseTime=True&loc=Local logMode: true maxIdleCon: 20 maxOpenCon: 100 @@ -26,7 +26,7 @@ local: storePath: uploads/file grpcServer: - apsAddr: 192.168.20.119:9091 + apsAddr: 127.0.0.1:9091 crmAddr: 192.168.20.119:9092 srmAddr: 192.168.20.119:9093 dingTalk: diff --git a/service/operation.go b/service/operation.go index bdce573..d276fe6 100644 --- a/service/operation.go +++ b/service/operation.go @@ -139,11 +139,11 @@ if locAmount, aok := mapLocAmount[strconv.Itoa(roleProduct.LocationId)+v.ProductId]; aok { locAmount.Amount = locAmount.Amount.Add(v.Amount) - if res := models.NewLocationProductAmountSearch().Orm.Where("id=?", locAmount.ID).Save(locAmount); res.Error != nil { - return res.Error + if err := models.NewLocationProductAmountSearch().SetOrm(tx).SetID(int(locAmount.ID)).Save(locAmount); err != nil { + return err } } else { - if err := models.NewLocationProductAmountSearch().Create(&models.LocationProductAmount{ + if err := models.NewLocationProductAmountSearch().SetOrm(tx).Create(&models.LocationProductAmount{ LocationId: roleProduct.LocationId, ProductCategoryID: v.Product.CategoryId, ProductId: v.ProductId, @@ -165,11 +165,11 @@ if locAmount, aok := mapLocAmount[strconv.Itoa(roleCategory.LocationId)+v.ProductId]; aok { locAmount.Amount = locAmount.Amount.Add(v.Amount) - if res := models.NewLocationProductAmountSearch().Orm.Where("id=?", locAmount.ID).Save(locAmount); res.Error != nil { - return res.Error + if err := models.NewLocationProductAmountSearch().SetOrm(tx).SetID(int(locAmount.ID)).Save(locAmount); err != nil { + return err } } else { - if err := models.NewLocationProductAmountSearch().Create(&models.LocationProductAmount{ + if err := models.NewLocationProductAmountSearch().SetOrm(tx).Create(&models.LocationProductAmount{ LocationId: roleCategory.LocationId, ProductCategoryID: v.Product.CategoryId, ProductId: v.ProductId, @@ -182,11 +182,11 @@ } else { if locAmount, aok := mapLocAmount[strconv.Itoa(operation.LocationID)+v.ProductId]; aok { locAmount.Amount = locAmount.Amount.Add(v.Amount) - if res := models.NewLocationProductAmountSearch().Orm.Where("id=?", locAmount.ID).Save(locAmount); res.Error != nil { - return res.Error + if err := models.NewLocationProductAmountSearch().SetOrm(tx).SetID(int(locAmount.ID)).Save(locAmount); err != nil { + return err } } else { - if err := models.NewLocationProductAmountSearch().Create(&models.LocationProductAmount{ + if err := models.NewLocationProductAmountSearch().SetOrm(tx).Create(&models.LocationProductAmount{ LocationId: operation.LocationID, ProductCategoryID: v.Product.CategoryId, ProductId: v.ProductId, @@ -240,7 +240,7 @@ return errors.New(fmt.Sprintf("浜у搧锛�%v,搴撳瓨锛�%v,鍑哄簱锛�%v,鏁伴噺涓嶅锛屾棤娉曞畬鎴愬嚭搴撴搷浣�", v.Product.Name, locAmount.Amount.String(), v.Amount.String())) } locAmount.Amount = locAmount.Amount.Sub(v.Amount) - if err := models.NewLocationProductAmountSearch().SetID(locAmount.Id).Update(locAmount); err != nil { + if err := models.NewLocationProductAmountSearch().SetOrm(tx).SetID(locAmount.Id).Save(locAmount); err != nil { return err } } else { -- Gitblit v1.8.0