From fd4c65a924aace9278782144d1a0ec7a6231cead Mon Sep 17 00:00:00 2001 From: wucongxing8150 <815046773@qq.com> Date: Thu, 29 Feb 2024 16:49:11 +0800 Subject: [PATCH] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E9=97=AE=E8=AF=8A=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E6=B6=88=E6=81=AF=E5=86=85=E9=A1=B5=E5=9F=BA=E7=A1=80?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=97=AE=E8=AF=8A=E5=9B=9E=E5=90=88=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Services/InquiryService.php | 48 ++++++++++++++++++++++----------- 1 file changed, 32 insertions(+), 16 deletions(-) diff --git a/app/Services/InquiryService.php b/app/Services/InquiryService.php index 7cfa15f..79e197a 100644 --- a/app/Services/InquiryService.php +++ b/app/Services/InquiryService.php @@ -13,6 +13,7 @@ use App\Exception\BusinessException; use App\Model\DetectionProject; use App\Model\DiseaseClass; use App\Model\DoctorInquiryConfig; +use App\Model\DoctorInquiryConfigService; use App\Model\Hospital; use App\Model\InquiryCaseProduct; use App\Model\MessageIm; @@ -241,7 +242,7 @@ class InquiryService extends BaseService $data['patient_name'] = $patient_family['card_name'];// 患者姓名-就诊人 $data['patient_name_mask'] = $patient_family['card_name_mask'];// 患者姓名-就诊人(掩码) $data['patient_sex'] = $patient_family['sex'];// 患者性别-就诊人(0:未知 1:男 2:女) - $data['patient_age'] = $patient_family['age'];// 患者年龄-就诊人 + $data['patient_age'] = getIdCardAge($patient_family['age']);// 患者年龄-就诊人 $order_inquiry = OrderInquiry::addOrderInquiry($data); if (empty($order_inquiry)) { Db::rollBack(); @@ -264,7 +265,7 @@ class InquiryService extends BaseService $data['diagnose_images'] = $diagnose_images ?? ""; // 复诊凭证(多个使用逗号分隔) if ($patient_family['age'] != null) { - $data['age'] = $patient_family['age'];// 患者年龄 + $data['age'] = getIdCardAge($patient_family['age']);// 患者年龄 } // 身高(cm) @@ -923,21 +924,37 @@ class InquiryService extends BaseService // 处理问诊回合数及时长-兼容旧数据 if (empty($order_inquiry['times_number']) || empty($order_inquiry['duration'])) { - $params = array(); - $params['inquiry_type'] = $order_inquiry['inquiry_type']; - $params['inquiry_mode'] = $order_inquiry['inquiry_mode']; - $system_inquiry_config = SystemInquiryConfig::getOne($params); - if (empty($system_inquiry_config)) { - return fail(); + // 疑难问诊特殊处理 + if ($order_inquiry['inquiry_type'] == 1 && $order_inquiry['inquiry_mode'] == 6 ){ + $params = array(); + $params['doctor_id'] = $order_inquiry['doctor_id']; + $params['inquiry_type'] = $order_inquiry['inquiry_type']; + $params['inquiry_mode'] = $order_inquiry['inquiry_mode']; + $doctor_inquiry_config_service = DoctorInquiryConfigService::getOne($params); + if (empty($doctor_inquiry_config_service)){ + return fail(); + } + + $order_inquiry['times_number'] = $doctor_inquiry_config_service['service_period']; // 服务回合数(0表示不限次) + $order_inquiry['duration'] = $doctor_inquiry_config_service['duration']; // 服务周期(天,不存在0的情况) + }else{ + $params = array(); + $params['inquiry_type'] = $order_inquiry['inquiry_type']; + $params['inquiry_mode'] = $order_inquiry['inquiry_mode']; + $system_inquiry_config = SystemInquiryConfig::getOne($params); + if (empty($system_inquiry_config)) { + return fail(); + } + + if (empty($order_inquiry['times_number'])) { + $order_inquiry['times_number'] = $system_inquiry_config['times_number']; + } + + if (empty($order_inquiry['duration'])) { + $order_inquiry['duration'] = $system_inquiry_config['duration']; + } } - if (empty($order_inquiry['times_number'])) { - $order_inquiry['times_number'] = $system_inquiry_config['times_number']; - } - - if (empty($order_inquiry['duration'])) { - $order_inquiry['duration'] = $system_inquiry_config['duration']; - } } $result = array(); @@ -1032,7 +1049,6 @@ class InquiryService extends BaseService /** * 结束问诊 * @return array - * @throws GuzzleException */ public function putFinishInquiry(): array {