修改消息通知,新增患者问诊病例

This commit is contained in:
2023-08-10 11:39:39 +08:00
parent aa8cbcf9e8
commit 84c24faf70
5 changed files with 85 additions and 7 deletions
@@ -9,6 +9,7 @@ use App\Amqp\Producer\CancelUnInquiryOrdersDelayDirectProducer;
use App\Amqp\Producer\UserCouponExpiredDelayDirectProducer;
use App\Constants\HttpEnumCode;
use App\Model\OrderInquiry;
use App\Model\OrderInquiryCase;
use App\Model\UserDoctor;
use App\Services\ImService;
use App\Services\InquiryService;
@@ -55,6 +56,15 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
return Result::DROP;// 销毁
}
// 获取病例数据
$params = array();
$params['order_inquiry_id'] = $order_inquiry['order_inquiry_id'];
$order_inquiry_case = OrderInquiryCase::getOne($params);
if (empty($order_inquiry_case)){
Log::getInstance('queue-AssignDoctor')->error("错误:患者病例错误");
return Result::DROP;// 销毁
}
// 检测订单状态
$res = $this->checkInquiryStatus($order_inquiry);
if (!$res){
@@ -245,7 +255,7 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
Db::commit();
Log::getInstance("queue-AssignDoctor")->info("成功");
} catch (\Exception $e) {
} catch (\Throwable $e) {
Db::rollBack();
Log::getInstance("queue-AssignDoctor")->error("失败:" . $e->getMessage());
return Result::REQUEUE; // 重回队列
@@ -262,14 +272,19 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
return Result::ACK;
}
// 发送IM消息-等待医生接诊
// 发送im消息
$imService = new ImService();
// 患者病例
$imService->patientCase($order_inquiry,$user_doctor['user_id'],$order_inquiry_case['disease_desc']);
// 等待医生接诊
$imService->waitDoctorInquiry($order_inquiry,$user_doctor['user_id'],$order_inquiry['user_id']);
// 医生-医生有新问诊 站内、订阅失败发送短信
$MessagePush = new MessagePush($user_doctor['user_id'],$order_inquiry['order_inquiry_id']);
$MessagePush->doctorHaveNewInquiry();
}catch (\Exception $e){
}catch (\Throwable $e){
Log::getInstance("queue-AssignDoctor")->error("发送消息异常错误:" . $e->getMessage());
return Result::ACK;
}