From 14f3642e4d519e57e8ea70625e9ea289be0be022 Mon Sep 17 00:00:00 2001 From: howell <2827207845@qq.com> Date: Thu, 17 Feb 2022 15:19:59 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=BA=93=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/api/mobile/order/submit.go | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/internal/api/mobile/order/submit.go b/internal/api/mobile/order/submit.go index ec9730e..b3b9a45 100755 --- a/internal/api/mobile/order/submit.go +++ b/internal/api/mobile/order/submit.go @@ -255,13 +255,22 @@ func SubmitOrder(c *gin.Context) { tx.Rollback() return } - // 仅考虑商品库存的情况 sku := preGoodSkuMap[v.ID] - if err = tx.Model(sku).UpdateColumn("inventory", gorm.Expr("inventory - ?", v.Quantity)).Error; err != nil { - back.Err(c, err.Error()) - tx.Rollback() - return + if orderCopy.OrderType == 1 { + // 仅考虑商品库存的情况 + if err = tx.Model(sku).UpdateColumn("inventory", gorm.Expr("inventory - ?", v.Quantity)).Error; err != nil { + back.Err(c, err.Error()) + tx.Rollback() + return + } + } else { + if err = tx.Model(sku).UpdateColumn("sal_inventory", gorm.Expr("sale_inventory - ?", v.Quantity)).Error; err != nil { + back.Err(c, err.Error()) + tx.Rollback() + return + } } + if err = tx.Model(sku).UpdateColumn("sales_volume", gorm.Expr("sales_volume + ?", v.Quantity)).Error; err != nil { back.Err(c, err.Error()) tx.Rollback()