修改获取处方列表,新增返回字段,新增 获取患者最后一条问诊订单id接口

This commit is contained in:
wucongxing 2023-08-31 17:01:25 +08:00
parent add6987538
commit 79d532c44f
6 changed files with 72 additions and 2 deletions

View File

@ -131,4 +131,18 @@ class InquiryController extends AbstractController
$data = $InquiryService->putFinishInquiry();
return $this->response->json($data);
}
/**
* 获取患者最后一条问诊订单id
* @return ResponseInterface
*/
public function getPatientLastInquiryId(): ResponseInterface
{
$request = $this->container->get(InquiryRequest::class);
$request->scene('getPatientLastInquiryId')->validateResolved();
$InquiryService = new InquiryService();
$data = $InquiryService->getPatientLastInquiryId();
return $this->response->json($data);
}
}

View File

@ -520,4 +520,17 @@ class OrderInquiry extends Model
->latest()
->first($fields);
}
/**
* 获取最后一条订单
* @param array $params
* @param array $fields
* @return object|null
*/
public static function getInquiryLastOne(array $params,array $fields = ["*"]): object|null
{
return self::where($params)
->latest()
->first($fields);
}
}

View File

@ -42,6 +42,10 @@ class InquiryRequest extends FormRequest
'getPatientInquiryCase' => [ // 获取患者问诊病例
'order_inquiry_id',
],
'getPatientLastInquiryId' => [ // 获取患者最后一条问诊订单id
'patient_id',
'doctor_id',
],
];
/**

View File

@ -1009,6 +1009,35 @@ class InquiryService extends BaseService
return success();
}
/**
* 获取患者最后一条问诊订单id
* @return array
*/
public function getPatientLastInquiryId(): array
{
$user_info = $this->request->getAttribute("userInfo") ?? [];
$patient_id = $this->request->input('patient_id');
$doctor_id = $this->request->input('doctor_id');
if (empty($user_info)) {
return fail(HttpEnumCode::HTTP_ERROR, "操作失败");
}
// 获取问诊订单数据
$params = array();
$params['patient_id'] = $patient_id;
$params['doctor_id'] = $doctor_id;
$inquiry_status_params = [3,4,5,6,7];
$order_inquiry = OrderInquiry::getInquiryStatusLastOne($params,$inquiry_status_params);
if (empty($order_inquiry)) {
return success("");
}
return success($order_inquiry['order_inquiry_id']);
}
/**
* 获取医生未接诊订单数量
* @param string $doctor_id 医生id
@ -1506,7 +1535,8 @@ class InquiryService extends BaseService
throw new BusinessException("问诊订单状态错误");
}
$time = 0;
// 随机初始时间
$time = mt_rand(60,600);
$wait_pay_time = 60 * 30;// 待支付时间
$wait_assign_time = 60 * 5;// 待分配时间
$wait_inquiry_time = 0; // 待接诊时间
@ -1533,7 +1563,7 @@ class InquiryService extends BaseService
$wait_inquiry_time = 60 * 10;
$wait_finish_time = 60 * 30;
} elseif ($order_inquiry['inquiry_type'] == 5) {
// 问诊购药
// 检测订单
$wait_finish_time = 60 * 60 * 24 * 3;
}

View File

@ -535,6 +535,12 @@ class UserDoctorService extends BaseService
// 疾病信息
$data['order_prescription_icd'] = $order_prescription['OrderPrescriptionIcd'] ?? [];
// 患者id
$data['patient_id'] = $order_inquiry_case['patient_id'];
// 医生id
$data['doctor_id'] = $order_inquiry_case['doctor_id'];
$result[] = $data;
}

View File

@ -752,6 +752,9 @@ Router::addGroup('/inquiry', function () {
// 结束问诊
Router::put('/finish/{order_inquiry_id:\d+}', [InquiryController::class, 'putFinishInquiry']);
// 获取患者最后一条问诊订单id
Router::get('/last', [InquiryController::class, 'getPatientLastInquiryId']);
});
// 获取弹窗数据