From e90e666738de74a926979cd6cdee53898acc858d Mon Sep 17 00:00:00 2001 From: mkm <727897186@qq.com> Date: Fri, 2 Aug 2024 17:04:09 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BF=AE=E6=94=B9=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E5=92=8C=E4=BB=BB=E5=8A=A1=E5=A4=84=E7=90=86?= =?UTF-8?q?=EF=BC=8C=E4=BC=98=E5=8C=96=E5=95=86=E5=93=81=E5=A4=84=E7=90=86?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/logic/order/OrderLogic.php | 37 ++++++++++-------------------- process/Task.php | 13 +++++++---- 2 files changed, 20 insertions(+), 30 deletions(-) diff --git a/app/api/logic/order/OrderLogic.php b/app/api/logic/order/OrderLogic.php index 99a17ec55..d27b03bd8 100644 --- a/app/api/logic/order/OrderLogic.php +++ b/app/api/logic/order/OrderLogic.php @@ -83,27 +83,12 @@ class OrderLogic extends BaseLogic self::$fresh_price = 0; //生鲜金额 /** 计算价格 */ $off_activity = Config::where('name', 'off_activity')->value('value'); - $field = 'id branch_product_id,store_name,image,unit,price,vip_price,cost,purchase,product_id,top_cate_id,store_info,rose'; + $field = 'id,store_name,image,unit,price,vip_price,cost,purchase,product_id,top_cate_id,store_info,rose'; foreach ($cart_select as $k => $v) { - $find = StoreBranchProduct::where(['product_id' => $v['product_id'], 'store_id' => $params['store_id']])->field($field)->find(); + $find = StoreProduct::where(['id' => $v['product_id']])->field($field)->find(); if (!$find) { - // unset($cart_select[$k]); - // continue; - $field = 'id branch_product_id,store_name,image,unit,price,vip_price,cost,purchase, id product_id,cate_id,store_info,rose'; - $find = StoreProduct::where(['id' => $v['product_id']])->field($field)->find(); - if ($find) { - $cate_id = StoreCategory::where('id', $find['cate_id'])->value('pid'); - if ($cate_id > 0) { - $cate_id = StoreCategory::where('id', $cate_id)->value('pid'); - if ($cate_id > 0) { - $cate_id = StoreCategory::where('id', $cate_id)->value('pid'); - $find['top_cate_id'] = $cate_id; - } else { - $find['top_cate_id'] = $cate_id; - } - } - } - $cart_select[$k]['status'] = 1; //缺货标识 + self::setError('商品不存在'); + return false; } unset($cart_select[$k]['id']); $cart_select[$k]['total_price'] = bcmul($v['cart_num'], $find['price'], 2); //订单总价 @@ -152,7 +137,6 @@ class OrderLogic extends BaseLogic $cartInfo['name'] = $find['store_name']; $cartInfo['image'] = $find['image']; $cart_select[$k]['cart_info'] = json_encode($cartInfo); - $cart_select[$k]['branch_product_id'] = $find['branch_product_id']; //理论上每笔都是拆分了 $cart_select[$k]['name'] = $find['store_name']; $cart_select[$k]['imgs'] = $find['image']; @@ -339,11 +323,14 @@ class OrderLogic extends BaseLogic $goods_list[$k]['cart_id'] = implode(',', $cartId); $goods_list[$k]['delivery_id'] = $params['store_id']; //商家id - $updateData[] = [ - 'id' => $v['branch_product_id'], - 'sales' => ['inc', $v['cart_num']], - 'stock' => ['dec', $v['cart_num']], - ]; + $id=StoreBranchProduct::where('product_id',$v['product_id'])->where('store_id',$params['store_id'])->value('id'); + if($id){ + $updateData[] = [ + 'id' => $id, + 'sales' => ['inc', $v['cart_num']], + 'stock' => ['dec', $v['cart_num']], + ]; + } $updateDataTwo[] = [ 'id' => $v['product_id'], 'sales' => ['inc', $v['cart_num']] diff --git a/process/Task.php b/process/Task.php index 70503c56f..c860a4658 100644 --- a/process/Task.php +++ b/process/Task.php @@ -30,11 +30,14 @@ class Task $updateData = []; $updateDataTwo = []; foreach ($arr as $v) { - $updateData[] = [ - 'id' => $v['branch_product_id'], - 'sales' => ['dec', $v['cart_num']], - 'stock' => ['inc', $v['cart_num']], - ]; + $id=StoreBranchProduct::where('product_id',$v['product_id'])->where('store_id',$v['store_id'])->value('id'); + if($id){ + $updateData[] = [ + 'id' => $id, + 'sales' => ['dec', $v['cart_num']], + 'stock' => ['inc', $v['cart_num']], + ]; + } $updateDataTwo[] = [ 'id' => $v['product_id'], 'sales' => ['dec', $v['cart_num']]