From 33ab89d17664dfe35b613dd8f11a9180f8b3208a Mon Sep 17 00:00:00 2001 From: Devil Date: Fri, 24 Sep 2021 15:45:24 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=94=AE=E5=90=8E=E5=BA=93?= =?UTF-8?q?=E5=AD=98=E5=9B=9E=E6=BB=9A=E4=BC=98=E5=8C=96=EF=BC=8C=E9=81=BF?= =?UTF-8?q?=E5=85=8D=E5=95=86=E5=93=81=E8=A7=84=E6=A0=BC=E5=B7=B2=E6=97=A0?= =?UTF-8?q?=E6=95=88=E5=AF=BC=E8=87=B4=E5=A4=B1=E8=B4=A5=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E7=BB=A7=E7=BB=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/service/WarehouseGoodsService.php | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/app/service/WarehouseGoodsService.php b/app/service/WarehouseGoodsService.php index 41b9372fc..aba20f1c8 100644 --- a/app/service/WarehouseGoodsService.php +++ b/app/service/WarehouseGoodsService.php @@ -1015,18 +1015,26 @@ class WarehouseGoodsService } $md5_key = md5($md5_key); - // 扣除仓库商品规格库存 + // 扣除仓库商品规格库存、存在对应规格才进行库存回滚操作 $where = ['warehouse_id'=>$warehouse_id, 'goods_id'=>$goods_id, 'md5_key'=>$md5_key]; - if(!Db::name('WarehouseGoodsSpec')->where($where)->inc('inventory', $buy_number)->update()) + $temp = Db::name('WarehouseGoodsSpec')->where($where)->find(); + if(!empty($temp)) { - return DataReturn('仓库商品规格库存回滚失败['.$warehouse_id.'-'.$goods_id.'('.$buy_number.')]', -11); + if(!Db::name('WarehouseGoodsSpec')->where($where)->inc('inventory', $buy_number)->update()) + { + return DataReturn('仓库商品规格库存回滚失败['.$warehouse_id.'-'.$goods_id.'('.$buy_number.')]', -11); + } } // 扣除仓库商品库存 $where = ['warehouse_id'=>$warehouse_id, 'goods_id'=>$goods_id]; - if(!Db::name('WarehouseGoods')->where($where)->inc('inventory', $buy_number)->update()) + $temp = Db::name('WarehouseGoods')->where($where)->find(); + if(!empty($temp)) { - return DataReturn('仓库商品库存回滚失败['.$warehouse_id.'-'.$goods_id.'('.$buy_number.')]', -12); + if(!Db::name('WarehouseGoods')->where($where)->inc('inventory', $buy_number)->update()) + { + return DataReturn('仓库商品库存回滚失败['.$warehouse_id.'-'.$goods_id.'('.$buy_number.')]', -12); + } } // 商品库存回滚钩子 -- GitLab