// +---------------------------------------------------------------------- declare (strict_types=1); namespace app\timer\model; use app\common\model\UserCoupon as UserCouponModel; /** * 用户优惠券模型 * Class UserCoupon * @package app\timer\model */ class UserCoupon extends UserCouponModel { // 是否允许全局查询store_id protected bool $isGlobalScopeStoreId = false; /** * 获取已过期的优惠券ID集 * @param int $storeId * @return array */ public function getExpiredCouponIds(int $storeId): array { $time = time(); return $this->where('is_expire', '=', 0) ->where('is_use', '=', 0) ->where('end_time', '<=', time()) ->where('store_id', '=', $storeId) ->column('user_coupon_id'); } /** * 设置优惠券过期状态 * @param array $couponIds * @return bool */ public function setIsExpire(array $couponIds): bool { if (empty($couponIds)) { return false; } return $this->updateBase(['is_expire' => 1], [['user_coupon_id', 'in', $couponIds]]); } }