修改问诊购药分配医生

This commit is contained in:
2023-04-17 13:30:36 +08:00
parent 8ff1205e7c
commit 108ce91850
5 changed files with 408 additions and 308 deletions
+25 -1
View File
@@ -128,9 +128,33 @@ class AssignDoctorConsumer extends ConsumerMessage
return Result::ACK;
}
// 检测当前是否符合系统问诊时间
$inquiryService = new InquiryService();
$is_system_time_pass = $inquiryService->checkSystemInquiryTime($order_inquiry['inquiry_type']);
if (!$is_system_time_pass && $order_inquiry['inquiry_type'] == 4){
// 非坐班时间
Log::getInstance()->error("分配医生队列执行失败:问诊购药非医生坐班时间,执行退款");
$InquiryService = new InquiryService();
// 检测问诊订单执行退款次数
Log::getInstance()->info("检测问诊订单执行退款次数");
$res = $InquiryService->checkInquiryRefundCount($order_inquiry['order_inquiry_id']);
if (!$res){
Db::rollBack();
Log::getInstance()->error("分配医生队列执行失败原因:超出最大退款次数");
return Result::ACK;
}
$InquiryService->inquiryRefund($order_inquiry['order_inquiry_id'], "暂无医生接诊");
Db::commit();
return Result::ACK;
}
// 分配医生
$UserDoctorService = new UserDoctorService();
$doctor_id = $UserDoctorService->getInquiryAssignDoctor($order_inquiry['inquiry_type'],$order_inquiry['patient_id']);
$doctor_id = $UserDoctorService->getInquiryAssignDoctor($order_inquiry['inquiry_type'],$order_inquiry['patient_id'],$is_system_time_pass);
if (empty($doctor_id)){
// 无合适医生
Db::rollBack();