判断用户是否参与了抢购商品的活动

This commit is contained in:
wangxiaowei 2024-09-30 15:13:59 +08:00
parent 6eb9e3777c
commit 57b8fcb03b

@ -6,6 +6,7 @@ namespace app\api\logic;
use app\common\model\distribution\Distribution;
use app\common\model\distribution\DistributionLevel;
use app\common\model\goods\GoodsCategory;
use app\common\model\order\Order;
use app\common\model\procurement\Mprocurement;
use app\common\model\procurement\Procurementset;
use app\common\model\shop\ShopFollow;
@ -219,7 +220,7 @@ class GoodsLogic extends Logic
// 检查商品是否在参与活动,替换商品价格
$goodsDetailArr = self::checkActivity($goodsDetailArr);
// 检查商品是否参与抢购活动,替换商品价格、库存。
$goodsDetailArr = self::rushBuy($goodsDetailArr);
$goodsDetailArr = self::rushBuy($goodsDetailArr, $userId);
// 是否收藏
$goodsDetailArr['is_collect'] = 0;
if($userId) { // 非游客
@ -1070,7 +1071,7 @@ class GoodsLogic extends Logic
}
}
public static function rushBuy($goods){
public static function rushBuy($goods, $userId){
// 判断是否是抢购中的商品
$GroupbuyGoods = GroupbuyGoods::where([
@ -1113,9 +1114,13 @@ class GoodsLogic extends Logic
$item['limited_num'] =$GroupbuyGoods_info[$item['id']]['limited_num'];
}
// 如果当前用户参与了抢购的活动(则不允许再次抢购)
$in_activity = Order::where('user_id', $userId)->where('order_status', '<', 4)->find();
$goods['activity'] = [
'type' => 4,
'type_desc' => '抢购商品',
'in_activity' => $in_activity
];
return $goods;