From 5e4d66e5d4e825e3f744a105a45fb588ab6aa14d Mon Sep 17 00:00:00 2001 From: wangxiaowei Date: Fri, 29 Nov 2024 13:52:09 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=B4=BB=E5=8A=A8=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=E5=95=86=E5=93=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/logic/GoodsLogic.php | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/app/api/logic/GoodsLogic.php b/app/api/logic/GoodsLogic.php index f80af779..d5c944e8 100755 --- a/app/api/logic/GoodsLogic.php +++ b/app/api/logic/GoodsLogic.php @@ -1130,17 +1130,13 @@ class GoodsLogic extends Logic } foreach($GroupbuyGoods as $item) { - // 获取该商品的秒杀信息 - $GroupbuyGoods_info = GroupbuyGoods::where([ - 'goods_id' => $goods['id'], - ])->column('goods_id,item_id,activity_price,stock,limited_num', 'item_id'); - + // 获取该商品的秒杀信息 + $GroupbuyGoods_info = GroupbuyGoods::where([ + 'goods_id' => $goods['id'], + ])->column('goods_id,item_id,activity_price,stock,limited_num', 'item_id'); } - - - // 确定是抢购商品 - // 先将商品市场价换成原SKU最小价 + // 确定是抢购商品 先将商品市场价换成原SKU最小价 $goods['market_price'] = $goods['min_price']; // 替换活动价 foreach($goods['goods_item'] as &$item) { @@ -1159,14 +1155,22 @@ class GoodsLogic extends Logic } // 如果当前用户参与了抢购的活动(则不允许再次抢购) - $in_activity = Order::where(['user_id' => $userId, 'order_type' => 4])->where('order_status', '<', 4)->find(); +// $in_activity = Order::where(['user_id' => $userId, 'order_type' => 4])->where('order_status', '<', 4)->find(); +// +// $goods['activity'] = [ +// 'type' => 4, +// 'type_desc' => '抢购商品', +// 'in_groupbuy_activity' => (bool)$in_activity, +// 'msg' => '您已参与过本次活动,无法再次参与!' +// ]; - $goods['activity'] = [ - 'type' => 4, - 'type_desc' => '抢购商品', - 'in_groupbuy_activity' => (bool)$in_activity, - 'msg' => '您已参与过本次活动,无法再次参与!' - ]; + // 2024-11-29 更改规则:活动中的每件商品用户都能购买,但是只能买一件 + $goods = Order::alias('a') + ->join('order_goods og', 'a.id = order_goods.order_id') + ->where(['a.user_id' => $userId, 'a.order_type' => 4, 'og.goods_id' => $goods['id']]) + ->where('a.order_status', '<', 4) + ->find(); + dump($goods);die; return $goods; }