diff --git a/app/api/logic/order/OrderLogic.php b/app/api/logic/order/OrderLogic.php index 3fcabb03b..e016bff55 100644 --- a/app/api/logic/order/OrderLogic.php +++ b/app/api/logic/order/OrderLogic.php @@ -203,12 +203,15 @@ class OrderLogic extends BaseLogic $goods_list[$k]['uid'] = request()->userId; $goods_list[$k]['cart_id'] = implode(',', $cartId); $goods_list[$k]['delivery_id'] = $params['store_id']; //商家id - $stock = StoreBranchProduct::where('id',$v['branch_product_id'])->value('stock'); + $StoreBranchProduct = StoreBranchProduct::where('id',$v['branch_product_id'])->find(); $updateData[] = [ 'id' => $v['branch_product_id'], - 'stock' => $stock-$v['cart_num'], + 'stock' => $StoreBranchProduct['stock']-$v['cart_num'], 'sales' => ['inc', $v['cart_num']] ]; + if($StoreBranchProduct['stock']-$v['cart_num']<=0){ + Db::name('store_product_cate')->where(['cate_id'=>$StoreBranchProduct['cate_id'],'store_id'=>$params['store_id']])->update(['count'=>0]); + } } (new StoreOrderCartInfo())->saveAll($goods_list); (new StoreBranchProduct())->saveAll($updateData);