error("开始:" . json_encode($data, JSON_UNESCAPED_UNICODE)); // 检测参数 if (!isset($data['user_coupon_id'])){ Db::rollBack(); Log::getInstance("queue-UserCouponExpiredNotice")->error("错误:入参错误"); return Result::DROP; } // 获取优惠卷数据 $params = array(); $params['user_coupon_id'] = $data['user_coupon_id']; $user_coupon = UserCoupon::getOne($params); if (empty($user_coupon)){ Log::getInstance("queue-UserCouponExpiredNotice")->error("错误:无优惠卷数据"); return Result::DROP; } // 检测优惠卷是否被使用 if ($user_coupon['user_coupon_status'] == 1){ Log::getInstance("queue-UserCouponExpiredNotice")->info("结束:优惠卷已被使用,无需处理"); return Result::DROP; } // 检测优惠卷是否已执行过期处理 if ($user_coupon['user_coupon_status'] == 3){ Log::getInstance("queue-UserCouponExpiredNotice")->info("结束:优惠卷已执行过期处理,无需处理"); return Result::DROP; } // 检测优惠卷过期时间 $valid_end_time = strtotime($user_coupon['valid_end_time']); if ($valid_end_time <= time()){ // 已过期,无需处理 Log::getInstance("queue-UserCouponExpiredNotice")->info("结束:优惠卷过期,无需处理"); return Result::DROP; } $params = array(); $params['coupon_id'] = $user_coupon['coupon_id']; $coupon = Coupon::getOne($params); if (empty($coupon)){ Log::getInstance("queue-UserCouponExpiredNotice")->error("错误:无优惠卷数据"); return Result::DROP; } try { // 患者-优惠卷即将过期 $MessagePush = new MessagePush($user_coupon['user_id']); $MessagePush->patientExpireCoupon($coupon['coupon_name']); }catch (\Throwable $e){ Log::getInstance("queue-UserCouponExpiredNotice")->error("错误:" . $e->getMessage()); return Result::DROP; } return Result::ACK; } }