UserCoupon.php 1003 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. namespace app\task\model;
  3. use app\common\model\UserCoupon as UserCouponModel;
  4. /**
  5. * 用户优惠券模型
  6. * Class UserCoupon
  7. * @package app\task\model
  8. */
  9. class UserCoupon extends UserCouponModel
  10. {
  11. /**
  12. * 获取已过期的优惠券ID集
  13. * @return array
  14. */
  15. public function getExpiredCouponIds()
  16. {
  17. $time = time();
  18. return $this->where('is_expire', '=', 0)
  19. ->where('is_use', '=', 0)
  20. ->where(
  21. "IF ( `expire_type` = 20,
  22. (`end_time` + 86400) < {$time},
  23. ( `create_time` + (`expire_day` * 86400)) < {$time} )"
  24. )->column('user_coupon_id');
  25. }
  26. /**
  27. * 设置优惠券过期状态
  28. * @param $couponIds
  29. * @return false|int
  30. */
  31. public function setIsExpire($couponIds)
  32. {
  33. if (empty($couponIds)) {
  34. return false;
  35. }
  36. return $this->save(['is_expire' => 1], ['user_coupon_id' => ['in', $couponIds]]);
  37. }
  38. }