CouponService.php 1017 B

12345678910111213141516171819202122232425262728
  1. <?php
  2. namespace app\admin\service\coupon;
  3. use app\model\CouponDetail;
  4. use support\Db;
  5. class CouponService
  6. {
  7. /**
  8. * @Desc 优惠券自动过期
  9. * @Author Gorden
  10. * @Date 2024/8/26 17:58
  11. *
  12. * @return void
  13. */
  14. public static function checkCouponExpired()
  15. {
  16. $couponDetails = Db::select("select * from app_coupon_detail where (coupon_detail_status = 'INIT' OR coupon_detail_status = 'PENDING' OR coupon_detail_status = 'ACTIVED' OR coupon_detail_status = 'WAITING') AND coupon_detail_deadline_datetime != '' AND CAST(UNIX_TIMESTAMP(coupon_detail_deadline_datetime) as SIGNED) < ".time());
  17. foreach ($couponDetails as $detail){
  18. $endTimeUnix = strtotime($detail->coupon_detail_deadline_datetime);
  19. if ($endTimeUnix < time()){
  20. CouponDetail::where('coupon_detail_id',$detail->coupon_detail_id)->update(['coupon_detail_status'=>'EXPIRED']);
  21. echo $detail->coupon_detail_id."已过期\n";
  22. }
  23. }
  24. }
  25. }