From d97dbe8fcf7b43f878f34729cf7e3ec9a496bdc1 Mon Sep 17 00:00:00 2001 From: monanxiao Date: Mon, 13 Mar 2023 15:09:28 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=B0=8F=E7=BB=84=E9=87=87?= =?UTF-8?q?=E8=B4=AD=E8=B4=AD=E7=89=A9=E8=BD=A6=E5=8A=A0=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controller/api/store/order/StoreCart.php | 6 +++--- app/controller/api/store/order/StoreCartDg.php | 10 ++++------ 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/app/controller/api/store/order/StoreCart.php b/app/controller/api/store/order/StoreCart.php index 6a2323cf..4c4718f0 100644 --- a/app/controller/api/store/order/StoreCart.php +++ b/app/controller/api/store/order/StoreCart.php @@ -104,9 +104,9 @@ class StoreCart extends BaseController break; case 99: //小组代购 $result = app()->make(ProductRepository::class)->cartCheck($data,$this->request->userInfo()); - $data['source'] = $data['product_type']; - $data['source_id'] = $data['group_buying_id']; - $data['product_id'] = $result['product']['product_id']; + [$source, $sourceId, $pid] = explode(':', $this->request->param('source', '0'), 3) + ['', '', '']; + $data['source'] = (in_array($source, [0, 1]) && $pid == $data['product_id']) ? $source : 0; + if ($data['source'] > 0) $data['source_id'] = intval($sourceId); break; } diff --git a/app/controller/api/store/order/StoreCartDg.php b/app/controller/api/store/order/StoreCartDg.php index 32c55232..3d12923d 100644 --- a/app/controller/api/store/order/StoreCartDg.php +++ b/app/controller/api/store/order/StoreCartDg.php @@ -70,7 +70,6 @@ class StoreCartDg extends BaseController public function create(validate $validate) { $data = $this->checkParams($validate); - if(!in_array($data['product_type'],[0,1,2,3,4,99])) return app('json')->fail('商品类型错误'); if ($data['cart_num'] <= 0) return app('json')->fail('购买数量有误'); $user = $this->request->userInfo(); @@ -107,14 +106,13 @@ class StoreCartDg extends BaseController break; case 99: //小组代购 $result = app()->make(ProductDgRepository::class)->cartCheck($data,$this->request->userInfo()); - $data['source'] = $data['product_type']; - $data['source_id'] = $data['group_buying_id']; - $data['product_id'] = $result['product']['product_id']; + [$source, $sourceId, $pid] = explode(':', $this->request->param('source', '0'), 3) + ['', '', '']; + $data['source'] = (in_array($source, [0, 1]) && $pid == $data['product_id']) ? $source : 0; + if ($data['source'] > 0) $data['source_id'] = intval($sourceId); break; } - + unset($data['group_buying_id']); - if ($cart = $result['cart']) { //更新购物车 $cart_id = $cart['cart_id'];