新增 医生xx时间未接诊提醒队列

This commit is contained in:
2023-08-17 13:49:17 +08:00
parent bea292cd5e
commit 857536e8bd
10 changed files with 208 additions and 67 deletions
@@ -6,6 +6,7 @@ namespace App\Amqp\Consumer;
use App\Amqp\Producer\AssignDoctorDelayDirectProducer;
use App\Amqp\Producer\CancelUnInquiryOrdersDelayDirectProducer;
use App\Amqp\Producer\DoctorNotYetInquiryDelayDirectProducer;
use App\Amqp\Producer\UserCouponExpiredDelayDirectProducer;
use App\Constants\HttpEnumCode;
use App\Model\OrderInquiry;
@@ -131,8 +132,8 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
}
// 检测分配时间
if ($diff_time > 300) {
Log::getInstance("queue-AssignDoctor")->info("信息:超出5分钟,执行退款");
if ($diff_time > 600) {
Log::getInstance("queue-AssignDoctor")->info("信息:超出10分钟,执行退款");
$InquiryService = new InquiryService();
@@ -284,6 +285,16 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
// 医生-医生有新问诊 站内、订阅失败发送短信
$MessagePush = new MessagePush($user_doctor['user_id'],$order_inquiry['order_inquiry_id']);
$MessagePush->doctorHaveNewInquiry();
// 加入xx时间未接诊通知队列
$data = array();
$data['order_inquiry_id'] = $order_inquiry['order_inquiry_id'];
$time = 1000 * 60 * 3;
$message = new DoctorNotYetInquiryDelayDirectProducer($data);
$message->setDelayMs($time);
$producer = $this->container->get(Producer::class);
$producer->produce($message);
}catch (\Throwable $e){
Log::getInstance("queue-AssignDoctor")->error("发送消息异常错误:" . $e->getMessage());
return Result::ACK;
@@ -355,7 +366,7 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
}
// 执行次数过多
if ($redis_value > 3) {
if ($redis_value > 4) {
// 加入短信队列,通知管理员
return false;