feat(health): 告警列表 API 添加 doctor_id 过滤参数
alert_handler 的 AlertListQuery 新增 doctor_id 参数。 alert_service::list_alerts 先查询 patient_doctor_relation 获取该医生负责的患者列表,再用 patient_id.is_in() 过滤。 医生无管床患者时直接返回空结果。新增 2 个单元测试。
This commit is contained in:
@@ -16,6 +16,7 @@ use crate::state::HealthState;
|
||||
#[derive(Debug, Deserialize, IntoParams)]
|
||||
pub struct AlertListQuery {
|
||||
pub patient_id: Option<Uuid>,
|
||||
pub doctor_id: Option<Uuid>,
|
||||
pub status: Option<String>,
|
||||
pub page: Option<u64>,
|
||||
pub page_size: Option<u64>,
|
||||
@@ -35,7 +36,7 @@ where
|
||||
let page_size = query.page_size.unwrap_or(20);
|
||||
|
||||
let (items, total) = alert_service::list_alerts(
|
||||
&state, ctx.tenant_id, query.patient_id, query.status.as_deref(),
|
||||
&state, ctx.tenant_id, query.patient_id, query.doctor_id, query.status.as_deref(),
|
||||
page, page_size,
|
||||
).await?;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user