日志
Some checks are pending
Build Docker / build (push) Waiting to run

This commit is contained in:
haomingming 2025-12-26 11:56:08 +08:00
parent e0e551aa59
commit 2e7d3363ae

View File

@ -1985,72 +1985,86 @@ class PatientOrderService extends BaseService
*/
public function getPatientPrescriptionOrderList(): array
{
$user_info = $this->request->getAttribute("userInfo") ?? [];
$page = $this->request->input('page', 1);
$per_page = $this->request->input('per_page', 10);
try {
$user_info = $this->request->getAttribute("userInfo") ?? [];
$page = $this->request->input('page', 1);
$per_page = $this->request->input('per_page', 10);
// 获取处方数据
$params = array();
$params['patient_id'] = $user_info['client_user_id'];
$params['pharmacist_audit_status'] = 1;
$params['platform_audit_status'] = 1;
$params['is_delete'] = 0;
$order_prescription = OrderPrescription::getWithPage($params, ['*'], $page, $per_page);
if (!empty($order_prescription['data'])) {
foreach ($order_prescription['data'] as &$item) {
// 获取处方数据
$params = array();
$params['patient_id'] = $user_info['client_user_id'];
$params['pharmacist_audit_status'] = 1;
$params['platform_audit_status'] = 1;
$params['is_delete'] = 0;
$order_prescription = OrderPrescription::getWithPage($params, ['*'], $page, $per_page);
if (!empty($order_prescription['data'])) {
foreach ($order_prescription['data'] as &$item) {
//处理抄方情况
$params = array();
$params['order_inquiry_id'] = $item['order_inquiry_id'];
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("处理抄方情况开始", [
'order_prescription_id' => $item['order_prescription_id'] ?? null,
'order_inquiry_id' => $item['order_inquiry_id'] ?? null,
]);
$OrderInquiry = OrderInquiry::getOne($params);
if (!empty($OrderInquiry)) {
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("查询到OrderInquiry", [
'order_inquiry_id' => $OrderInquiry['order_inquiry_id'] ?? null,
'transfer_doctor_id' => $OrderInquiry['transfer_doctor_id'] ?? null,
//处理抄方情况
$params = array();
$params['order_inquiry_id'] = $item['order_inquiry_id'];
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("处理抄方情况开始", [
'order_prescription_id' => $item['order_prescription_id'] ?? null,
'order_inquiry_id' => $item['order_inquiry_id'] ?? null,
]);
//为抄方订单
if (!empty($OrderInquiry['transfer_doctor_id'])) {
$params = array();
$params['doctor_id'] = $OrderInquiry['transfer_doctor_id'];
$fields = ['doctor_id','user_name','doctor_title'];
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("查询UserDoctor", [
'transfer_doctor_id' => $OrderInquiry['transfer_doctor_id'],
$OrderInquiry = OrderInquiry::getOne($params);
if (!empty($OrderInquiry)) {
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("查询到OrderInquiry", [
'order_inquiry_id' => $OrderInquiry['order_inquiry_id'] ?? null,
'transfer_doctor_id' => $OrderInquiry['transfer_doctor_id'] ?? null,
]);
$UserDoctor = UserDoctor::getOne($params, $fields);
if (!empty($UserDoctor)) {
$item['UserDoctor'] = $UserDoctor->toArray();
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("成功设置UserDoctor", [
'doctor_id' => $UserDoctor['doctor_id'] ?? null,
'user_name' => $UserDoctor['user_name'] ?? null,
]);
} else {
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->warning("未查询到UserDoctor", [
//为抄方订单
if (!empty($OrderInquiry['transfer_doctor_id'])) {
$params = array();
$params['doctor_id'] = $OrderInquiry['transfer_doctor_id'];
$fields = ['doctor_id','user_name','doctor_title'];
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("查询UserDoctor", [
'transfer_doctor_id' => $OrderInquiry['transfer_doctor_id'],
]);
$UserDoctor = UserDoctor::getOne($params, $fields);
if (!empty($UserDoctor)) {
$item['UserDoctor'] = $UserDoctor->toArray();
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("成功设置UserDoctor", [
'doctor_id' => $UserDoctor['doctor_id'] ?? null,
'user_name' => $UserDoctor['user_name'] ?? null,
]);
} else {
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->warning("未查询到UserDoctor", [
'transfer_doctor_id' => $OrderInquiry['transfer_doctor_id'],
]);
}
} else {
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("OrderInquiry中transfer_doctor_id为空", [
'order_inquiry_id' => $OrderInquiry['order_inquiry_id'] ?? null,
]);
}
} else {
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("OrderInquiry中transfer_doctor_id为空", [
'order_inquiry_id' => $OrderInquiry['order_inquiry_id'] ?? null,
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("未查询到OrderInquiry", [
'order_inquiry_id' => $item['order_inquiry_id'] ?? null,
]);
}
} else {
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->info("未查询到OrderInquiry", [
'order_inquiry_id' => $item['order_inquiry_id'] ?? null,
]);
}
if (!empty($item['UserDoctor'])) {
$item['UserDoctor']['doctor_title'] = DoctorTitleCode::getMessage($item['UserDoctor']['doctor_title']);
if (!empty($item['UserDoctor'])) {
$item['UserDoctor']['doctor_title'] = DoctorTitleCode::getMessage($item['UserDoctor']['doctor_title']);
}
}
}
}
return success($order_prescription);
return success($order_prescription);
} catch (\Throwable $e) {
$user_info = $this->request->getAttribute("userInfo") ?? [];
Log::getInstance("PatientOrderService-getPatientPrescriptionOrderList")->error("获取处方订单列表异常", [
'message' => $e->getMessage(),
'file' => $e->getFile(),
'line' => $e->getLine(),
'trace' => $e->getTraceAsString(),
'patient_id' => $user_info['client_user_id'] ?? null,
'page' => $this->request->input('page', 1),
'per_page' => $this->request->input('per_page', 10),
]);
return fail(HttpEnumCode::SERVER_ERROR, "获取处方订单列表失败");
}
}
/**