feat(health): 透析方案管理 CRUD — dialysis_prescription 全栈
Some checks failed
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled

新增透析方案实体和完整 CRUD:
- Entity: 20 字段含抗凝/血管通路/透析参数
- DTO: f64 类型适配 utoipa ToSchema
- Service: 抗凝类型 + 血管通路类型校验
- Handler: 5 端点 + RBAC 权限控制
- 路由: /api/v1/health/dialysis-prescriptions
This commit is contained in:
iven
2026-04-27 14:26:41 +08:00
parent 19cb2bf8bf
commit ca96310a84
10 changed files with 597 additions and 2 deletions

View File

@@ -7,7 +7,7 @@ use erp_core::module::{ErpModule, PermissionDescriptor};
use crate::handler::{
alert_handler, alert_rule_handler,
appointment_handler, article_category_handler, article_handler, article_tag_handler, consultation_handler, consent_handler, critical_value_threshold_handler, daily_monitoring_handler, device_reading_handler, diagnosis_handler, dialysis_handler, doctor_handler, follow_up_handler,
appointment_handler, article_category_handler, article_handler, article_tag_handler, consultation_handler, consent_handler, critical_value_threshold_handler, daily_monitoring_handler, device_reading_handler, diagnosis_handler, dialysis_handler, dialysis_prescription_handler, doctor_handler, follow_up_handler,
health_data_handler, medication_record_handler, patient_handler, points_handler, stats_handler,
};
@@ -222,6 +222,18 @@ impl HealthModule {
"/health/dialysis-records/{id}/review",
axum::routing::put(dialysis_handler::review_dialysis_record),
)
// 透析方案
.route(
"/health/dialysis-prescriptions",
axum::routing::get(dialysis_prescription_handler::list_prescriptions)
.post(dialysis_prescription_handler::create_prescription),
)
.route(
"/health/dialysis-prescriptions/{id}",
axum::routing::get(dialysis_prescription_handler::get_prescription)
.put(dialysis_prescription_handler::update_prescription)
.delete(dialysis_prescription_handler::delete_prescription),
)
// 日常监测
.route(
"/health/patients/{id}/daily-monitoring",