diff --git a/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V107__add_patient_info_to_emr_search_index_hisdev.sql b/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V107__add_patient_info_to_emr_search_index_hisdev.sql new file mode 100644 index 000000000..ee8c1418d --- /dev/null +++ b/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V107__add_patient_info_to_emr_search_index_hisdev.sql @@ -0,0 +1,8 @@ +-- V104__add_patient_info_to_emr_search_index_hisdev.sql +-- 在 healthlink_his schema 上添加患者信息字段 + +ALTER TABLE emr_search_index ADD COLUMN IF NOT EXISTS patient_gender VARCHAR(10); +ALTER TABLE emr_search_index ADD COLUMN IF NOT EXISTS patient_age VARCHAR(10); +ALTER TABLE emr_search_index ADD COLUMN IF NOT EXISTS patient_phone VARCHAR(20); +ALTER TABLE emr_search_index ADD COLUMN IF NOT EXISTS patient_id_card VARCHAR(20); +ALTER TABLE emr_search_index ADD COLUMN IF NOT EXISTS encounter_no VARCHAR(50); diff --git a/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V108__fix_role_permission_alignment.sql b/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V108__fix_role_permission_alignment.sql new file mode 100644 index 000000000..2a215f1ca --- /dev/null +++ b/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V108__fix_role_permission_alignment.sql @@ -0,0 +1,264 @@ +-- V107__fix_role_permission_alignment.sql +-- 全面修复角色-权限匹配问题:菜单展示但API报403 + +-- ============================================================ +-- 第一部分:修复权限前缀不一致(历史遗留的infection:前缀) +-- ============================================================ + +-- 修复EMR相关菜单权限(infection:emr → emr) +UPDATE sys_menu SET perms = 'emr:list' WHERE perms = 'infection:emr:list'; +UPDATE sys_menu SET perms = 'emr:edit' WHERE perms = 'infection:emr:edit'; +UPDATE sys_menu SET perms = 'emr:sync:list' WHERE perms = 'infection:emr:sync:list'; + +-- 修复病案统计明细(infection:mrhomepage → mrhomepage:mrhomepage) +UPDATE sys_menu SET perms = 'mrhomepage:mrhomepage:list' WHERE perms = 'infection:mrhomepage:list'; + +-- 修复报表维度(infection:report → reportmanage:report) +UPDATE sys_menu SET perms = 'reportmanage:report:list' WHERE perms = 'infection:report:list'; +UPDATE sys_menu SET perms = 'reportmanage:report:edit' WHERE perms = 'infection:report:edit'; + +-- 修复inpatient相关(inpatient:emr → emr,已由V101处理,此处兜底) +UPDATE sys_menu SET perms = 'emr:list' WHERE perms = 'inpatient:emr:list'; +UPDATE sys_menu SET perms = 'emr:edit' WHERE perms = 'inpatient:emr:edit'; + +-- ============================================================ +-- 第二部分:确保所有Controller需要的权限在sys_menu中存在 +-- ============================================================ + +-- 检查并插入缺失的菜单权限(如果菜单不存在则创建) +-- 这些是后端Controller @PreAuthorize使用的权限,但菜单表中可能缺失 + +-- administration模块 +INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +SELECT '医务人员患者管理', + (SELECT menu_id FROM sys_menu WHERE menu_name = '系统管理' AND menu_type = 'M' LIMIT 1), + 99, 'practitioner-patient', 'administration/practitioner-patient/index', 'C', '0', '0', + 'administration:practitionerPatient:list', 'user', 'admin', NOW(), 'admin', NOW(), + '医务人员患者管理菜单' +WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = 'administration:practitionerPatient:list'); + +-- basicmanage模块 +INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +SELECT '电子健康卡', + (SELECT menu_id FROM sys_menu WHERE menu_name = '基础管理' AND menu_type = 'M' LIMIT 1), + 10, 'ehcard', 'basicmanage/ehcard/index', 'C', '0', '0', + 'basicmanage:ehcard:list', 'card', 'admin', NOW(), 'admin', NOW(), + '电子健康卡管理' +WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = 'basicmanage:ehcard:list'); + +INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +SELECT '电子发票', + (SELECT menu_id FROM sys_menu WHERE menu_name = '基础管理' AND menu_type = 'M' LIMIT 1), + 20, 'einvoice', 'basicmanage/einvoice/index', 'C', '0', '0', + 'basicmanage:invoice:list', 'invoice', 'admin', NOW(), 'admin', NOW(), + '电子发票管理' +WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = 'basicmanage:invoice:list'); + +-- document模块(病程记录) +INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +SELECT '病程记录', + (SELECT menu_id FROM sys_menu WHERE menu_name = '电子病历管理' AND menu_type = 'M' LIMIT 1), + 50, 'progress-note', 'document/progress-note/index', 'C', '0', '0', + 'document:progressnote:list', 'note', 'admin', NOW(), 'admin', NOW(), + '病程记录管理' +WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = 'document:progressnote:list'); + +-- epidemic模块(传染病报卡) +INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +SELECT '传染病报卡', + (SELECT menu_id FROM sys_menu WHERE menu_name = '医院感染管理' AND menu_type = 'M' LIMIT 1), + 10, 'epidemic', 'infection/epidemic/index', 'C', '0', '0', + 'epidemic:list', 'alert', 'admin', NOW(), 'admin', NOW(), + '传染病报卡管理' +WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = 'epidemic:list'); + +-- flowable模块(工作流表单) +INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +SELECT '流程表单', + (SELECT menu_id FROM sys_menu WHERE menu_name = '系统管理' AND menu_type = 'M' LIMIT 1), + 98, 'flowable-form', 'flowable/form/index', 'C', '0', '0', + 'flowable:form:list', 'form', 'admin', NOW(), 'admin', NOW(), + '流程表单管理' +WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = 'flowable:form:list'); + +-- tcm模块(中医) +INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +SELECT '中医诊断', + (SELECT menu_id FROM sys_menu WHERE menu_name = '门诊医生工作站' AND menu_type = 'M' LIMIT 1), + 99, 'tcm', 'tcm/diagnosis/index', 'C', '0', '0', + 'tcm:list', '中医', 'admin', NOW(), 'admin', NOW(), + '中医诊断管理' +WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = 'tcm:list'); + +-- surgery模块(手术安全核查) +INSERT INTO sys_menu (menu_name, parent_id, order_num, path, component, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) +SELECT '手术安全核查', + (SELECT menu_id FROM sys_menu WHERE menu_name = '手术管理' AND menu_type = 'M' LIMIT 1), + 50, 'surgery-safety', 'surgery/safety-check/index', 'C', '0', '0', + 'surgery:schedule:list', 'safety', 'admin', NOW(), 'admin', NOW(), + '手术安全核查管理' +WHERE NOT EXISTS (SELECT 1 FROM sys_menu WHERE perms = 'surgery:schedule:list'); + +-- ============================================================ +-- 第三部分:为所有角色授予基础查看权限 +-- ============================================================ + +-- 获取所有非管理员角色ID +-- 为每个角色授予关键模块的查看权限 + +-- 授予所有活跃角色emr:list权限(电子病历查看) +INSERT INTO sys_role_menu (role_id, menu_id) +SELECT r.role_id, m.menu_id +FROM sys_role r +CROSS JOIN sys_menu m +WHERE r.status = '0' + AND m.perms IN ( + 'emr:list', + 'emr:edit', + 'infection:cdss:list', + 'infection:regional:list', + 'reportmanage:report:list', + 'mrhomepage:mrhomepage:list', + 'epidemic:list', + 'document:progressnote:list', + 'basicmanage:ehcard:list', + 'basicmanage:invoice:list', + 'surgery:schedule:list', + 'tcm:list' + ) + AND NOT EXISTS ( + SELECT 1 FROM sys_role_menu rm + WHERE rm.role_id = r.role_id AND rm.menu_id = m.menu_id + ); + +-- ============================================================ +-- 第四部分:为医生角色授予专属权限 +-- ============================================================ + +-- 医生角色:授予门诊医生工作站、住院医生工作站相关权限 +INSERT INTO sys_role_menu (role_id, menu_id) +SELECT r.role_id, m.menu_id +FROM sys_role r +CROSS JOIN sys_menu m +WHERE r.status = '0' + AND r.role_name IN ('医生', 'doctor', '门诊医生', '住院医生', '主任医师', '副主任医师') + AND m.perms IN ( + 'emr:list', + 'emr:edit', + 'infection:cdss:list', + 'infection:cdss:edit', + 'infection:check:list', + 'infection:check:edit', + 'document:progressnote:list', + 'document:progressnote:add', + 'document:progressnote:edit', + 'tcm:list', + 'tcm:edit', + 'surgery:schedule:list', + 'surgery:schedule:edit', + 'epidemic:list', + 'epidemic:edit', + 'nursing:nursing:list', + 'outpatient:telehealth:list', + 'outpatient:telehealth:edit' + ) + AND NOT EXISTS ( + SELECT 1 FROM sys_role_menu rm + WHERE rm.role_id = r.role_id AND rm.menu_id = m.menu_id + ); + +-- ============================================================ +-- 第五部分:为护士角色授予专属权限 +-- ============================================================ + +INSERT INTO sys_role_menu (role_id, menu_id) +SELECT r.role_id, m.menu_id +FROM sys_role r +CROSS JOIN sys_menu m +WHERE r.status = '0' + AND r.role_name IN ('护士', 'nurse', '护士长') + AND m.perms IN ( + 'nursing:nursing:list', + 'nursing:nursing:edit', + 'nursing:execution:list', + 'nursing:execution:add', + 'nursing:execution:edit', + 'nursing:record:list', + 'nursing:record:add', + 'nursing:record:edit', + 'inpatient:anesthesia:list', + 'inpatient:anesthesia:edit', + 'inpatient:clinical:list', + 'inpatient:clinical:edit', + 'inpatient:criticalvalue:list', + 'inpatient:criticalvalue:edit', + 'inpatient:bloodtransfusion:list', + 'inpatient:bloodtransfusion:edit', + 'emr:list', + 'emr:edit' + ) + AND NOT EXISTS ( + SELECT 1 FROM sys_role_menu rm + WHERE rm.role_id = r.role_id AND rm.menu_id = m.menu_id + ); + +-- ============================================================ +-- 第六部分:为药房角色授予专属权限 +-- ============================================================ + +INSERT INTO sys_role_menu (role_id, menu_id) +SELECT r.role_id, m.menu_id +FROM sys_role r +CROSS JOIN sys_menu m +WHERE r.status = '0' + AND r.role_name IN ('药房', 'pharmacy', '药师', '药剂师') + AND m.perms IN ( + 'infection:rationaldrug:edit', + 'inpatient:clinical:list', + 'inpatient:clinical:edit', + 'inpatient:criticalvalue:list', + 'emr:list' + ) + AND NOT EXISTS ( + SELECT 1 FROM sys_role_menu rm + WHERE rm.role_id = r.role_id AND rm.menu_id = m.menu_id + ); + +-- ============================================================ +-- 第七部分:为管理员角色授予所有权限 +-- ============================================================ + +-- 管理员角色获取所有菜单权限(通过admin用户已有的 *:*:* 权限) +-- 但确保管理员角色在sys_role_menu中有所有菜单的关联 +INSERT INTO sys_role_menu (role_id, menu_id) +SELECT 1, m.menu_id +FROM sys_menu m +WHERE m.status = '0' + AND NOT EXISTS ( + SELECT 1 FROM sys_role_menu rm + WHERE rm.role_id = 1 AND rm.menu_id = m.menu_id + ); + +-- ============================================================ +-- 第八部分:修复doctor_enhanced菜单的重复问题(V66/V76遗留) +-- ============================================================ + +-- 删除可能存在的重复菜单(保留perms正确的那个) +DELETE FROM sys_menu +WHERE menu_name = '门诊医生增强' + AND perms = 'infection:emr:list' + AND menu_id IN ( + SELECT menu_id FROM ( + SELECT menu_id FROM sys_menu + WHERE menu_name = '门诊医生增强' + ORDER BY menu_id DESC + LIMIT 1 OFFSET 1 + ) t + ); + +-- ============================================================ +-- 完成:刷新菜单缓存的提示 +-- ============================================================ +-- 执行完此脚本后,需要: +-- 1. 重启应用或调用 /system/menu/refreshCache 刷新菜单缓存 +-- 2. 用户重新登录以加载最新权限 diff --git a/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V109__seed_progress_note_test_data.sql b/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V109__seed_progress_note_test_data.sql new file mode 100644 index 000000000..c0c9dab15 --- /dev/null +++ b/healthlink-his-server/healthlink-his-application/src/main/resources/db/migration/V109__seed_progress_note_test_data.sql @@ -0,0 +1,415 @@ +-- V109: 病程记录模块假数据 +-- 生成时间: 2026-06-22 +-- 说明: 为emr/progress模块创建测试数据,覆盖各种病程记录类型和状态 + +-- ==================== 1. 病程记录 sys_progress_note ==================== +INSERT INTO sys_progress_note ( + id, encounter_id, patient_id, patient_name, note_type, note_content, + author_user_id, author_name, author_title, + review_user_id, review_user_name, + sign_status, sign_time, deadline, is_overdue, overdue_hours, + template_id, version, tenant_id, delete_flag, create_by, create_time +) +VALUES +-- ===== 首次病程记录 (note_type=1, 时限8小时) ===== +(8000000001, 6001, 5001, '张伟', 1, +'【首次病程记录】 + +患者张伟,男,45岁,因"反复上腹痛3年,加重伴恶心呕吐1周"于2026-06-20 10:00入院。 + +一、病例特点 +1. 中年男性,慢性病程,急性加重 +2. 主要症状:反复上腹痛3年,加重伴恶心呕吐1周 +3. 既往史:否认高血压、糖尿病史,否认手术外伤史 +4. 查体:T 36.8℃,P 82次/分,R 18次/分,BP 125/80mmHg。腹软,剑突下压痛(+),无反跳痛 + +二、诊断依据 +1. 反复上腹痛病史 +2. 剑突下压痛阳性 +3. 胃镜检查提示:十二指肠球部溃疡 + +三、鉴别诊断 +1. 胃溃疡:疼痛规律不同,胃镜可鉴别 +2. 胃癌:需病理活检排除 + +四、诊疗计划 +1. 完善相关检查:血常规、肝肾功能、腹部B超 +2. 抑酸护胃:奥美拉唑40mg ivgtt qd +3. 对症支持治疗 +4. 必要时请消化内科会诊', +1001, '张明', '主治医师', +NULL, NULL, +1, '2026-06-20 14:30:00', '2026-06-20 18:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-20 10:30:00'), + +-- ===== 日常病程记录 (note_type=2, 时限72小时) ===== +(8000000002, 6001, 5001, '张伟', 2, +'【日常病程记录 - 第1次】 + +患者诉上腹痛较前缓解,恶心呕吐症状消失。饮食改善,可进半流质饮食。 + +查体:T 36.6℃,P 78次/分,R 18次/分,BP 120/78mmHg。腹软,剑突下轻压痛,无反跳痛。 + +辅助检查回报: +- 血常规:WBC 6.8×10^9/L,N 65%,Hb 135g/L +- 肝肾功能:ALT 35U/L,AST 28U/L,Cr 78μmol/L +- 腹部B超:肝胆胰脾未见明显异常 + +目前诊断明确:十二指肠球部溃疡。抑酸治疗有效,继续当前方案。', +1001, '张明', '主治医师', +NULL, NULL, +1, '2026-06-21 09:00:00', '2026-06-23 10:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-21 08:30:00'), + +(8000000003, 6001, 5001, '张伟', 2, +'【日常病程记录 - 第2次】 + +患者一般情况良好,无腹痛、恶心、呕吐。饮食恢复至普食,大便正常。 + +查体:T 36.5℃,P 75次/分,R 16次/分,BP 118/75mmHg。腹软,无压痛。 + +治疗方案调整: +- 口服奥美拉唑20mg qd +- 停用静脉用药 +- 嘱患者注意饮食规律,避免辛辣刺激食物', +1002, '李华', '住院医师', +1001, '张明', +1, '2026-06-22 10:00:00', '2026-06-24 10:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-22 09:00:00'), + +-- ===== 上级医师查房记录 (note_type=3, 时限72小时) ===== +(8000000004, 6001, 5001, '张伟', 3, +'【上级医师查房记录】 + +查房时间:2026-06-21 15:00 +查房医师:张明 主治医师 + +患者张伟,诊断:十二指肠球部溃疡。 + +查房意见: +1. 患者目前症状明显缓解,抑酸治疗有效 +2. 建议完善C13呼气试验,明确有无幽门螺杆菌感染 +3. 如Hp阳性,需行四联根除治疗 +4. 继续目前治疗方案,注意观察病情变化 +5. 如无特殊情况,可安排出院 + +签名:张明', +1001, '张明', '主治医师', +1001, '张明', +1, '2026-06-21 16:00:00', '2026-06-24 15:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-21 15:30:00'), + +-- ===== 阶段小结 (note_type=5, 时限720小时/30天) ===== +(8000000005, 6002, 5002, '李娜', 5, +'【阶段小结】 + +患者李娜,女,52岁,因"发现血糖升高5年,控制不佳2月"于2026-05-15入院。 + +一、入院诊断 +1. 2型糖尿病 +2. 高血压病3级(极高危) + +二、诊疗经过 +1. 入院后完善相关检查:HbA1c 8.5%,空腹血糖12.3mmol/L +2. 调整降糖方案:二甲双胍500mg tid + 格列美脲2mg qd + 甘精胰岛素20u qn +3. 控制血压:硝苯地平控释片30mg qd + 缬沙坦80mg qd +4. 糖尿病饮食教育、运动指导 + +三、目前情况 +- 空腹血糖7.2-8.5mmol/L,餐后2h血糖10.2-12.8mmol/L +- 血压135/85mmHg左右 +- 无低血糖发生 + +四、下一步计划 +1. 继续调整降糖方案,目标空腹血糖<7.0mmol/L +2. 加强糖尿病足筛查 +3. 完善眼底检查', +1003, '王芳', '副主任医师', +1003, '王芳', +1, '2026-06-10 14:00:00', '2026-06-15 09:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-10 09:00:00'), + +-- ===== 抢救记录 (note_type=6, 时限6小时) ===== +(8000000006, 6003, 5003, '王强', 6, +'【抢救记录】 + +抢救时间:2026-06-18 14:30-15:20 +抢救地点:神经内科病房 +参加抢救人员:赵磊(副主任医师)、钱进(主治医师)、孙丽(护士长)等 + +患者王强,男,68岁,因"突发意识不清2小时"于2026-06-18 12:30入院。 + +抢救经过: +14:30 患者突然出现意识不清,呼之不应,左侧肢体瘫痪 +14:32 立即给予吸氧、心电监护,建立静脉通路 +14:35 血压185/110mmHg,心率110次/分,血氧饱和度92% +14:38 急查头颅CT:右侧基底节区脑出血,出血量约35ml +14:40 予以甘露醇250ml快速静滴脱水降颅压 +14:45 乌拉地尔25mg缓慢静推控制血压 +14:50 血压降至150/90mmHg,患者意识稍有好转 +15:00 联系ICU,准备转科进一步治疗 +15:20 患者生命体征相对平稳,转ICU继续治疗 + +抢救结果:抢救成功,患者转ICU继续治疗', +1004, '赵磊', '副主任医师', +1004, '赵磊', +1, '2026-06-18 16:00:00', '2026-06-18 20:30:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-18 15:30:00'), + +-- ===== 出院记录 (note_type=9, 时限24小时) ===== +(8000000007, 6001, 5001, '张伟', 9, +'【出院记录】 + +入院日期:2026-06-20 10:00 +出院日期:2026-06-22 14:00 +住院天数:2天 + +入院诊断:十二指肠球部溃疡 + +诊疗经过: +患者因反复上腹痛3年,加重1周入院。入院后完善相关检查,明确诊断为十二指肠球部溃疡。予以抑酸护胃、对症支持治疗后症状明显缓解。 + +出院情况: +患者一般情况良好,无腹痛、恶心、呕吐。饮食恢复普食,大便正常。 + +出院医嘱: +1. 奥美拉唑肠溶胶囊20mg qd×4周 +2. 阿莫西林胶囊1g bid×2周(如Hp阳性) +3. 克拉霉素片500mg bid×2周(如Hp阳性) +4. 1月后复查胃镜 +5. 注意饮食规律,避免辛辣刺激、戒烟限酒', +1001, '张明', '主治医师', +1001, '张明', +1, '2026-06-22 14:30:00', '2026-06-23 14:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-22 14:00:00'), + +-- ===== 死亡讨论记录 (note_type=10, 时限168小时/7天) ===== +(8000000008, 6005, 5005, '陈芳', 10, +'【死亡病例讨论记录】 + +讨论时间:2026-06-10 14:00-15:30 +讨论地点:神经内科示教室 +主持人:赵磊 副主任医师 +参加人员:赵磊、钱进、孙丽、周敏等 + +患者陈芳,女,78岁,因"突发右侧肢体无力伴言语不清6小时"于2026-06-05入院。 + +一、病例摘要 +患者6小时前无明显诱因出现右侧肢体无力,伴言语不清,急诊入院。头颅CT示:左侧大面积脑梗死。入院后予以溶栓、抗血小板、调脂稳斑等治疗。 + +二、治疗经过 +- 6月5日:急诊溶栓治疗 +- 6月6日:病情稳定,转入普通病房 +- 6月8日:突发肺部感染,予以抗感染治疗 +- 6月9日:出现多器官功能衰竭 +- 6月10日:经抢救无效死亡 + +三、死亡诊断 +1. 急性大面积脑梗死 +2. 肺部感染 +3. 多器官功能衰竭 + +四、讨论总结 +1. 患者高龄,基础疾病多,溶栓风险高 +2. 溶栓后出血转化风险未能充分评估 +3. 后续抗感染治疗时机可更积极 + +五、改进措施 +1. 完善高龄患者溶栓风险评估量表 +2. 加强溶栓后监测频率 +3. 制定多学科联合查房制度', +1004, '赵磊', '副主任医师', +1004, '赵磊', +1, '2026-06-11 10:00:00', '2026-06-17 10:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-10 16:00:00'), + +-- ===== 超时未签名的病程记录 ===== +(8000000009, 6004, 5004, '刘洋', 2, +'【日常病程记录 - 待签名】 + +患者刘洋,男,55岁,诊断:慢性阻塞性肺疾病急性加重。 + +今日查房:患者咳嗽、咳痰较前好转,痰量减少,无发热。呼吸平稳,可平卧。 + +查体:T 36.7℃,P 80次/分,R 20次/分,BP 130/85mmHg。双肺呼吸音粗,可闻及散在湿啰音。 + +治疗调整: +- 继续抗感染治疗 +- 雾化吸入tid +- 加强呼吸功能锻炼', +1002, '李华', '住院医师', +NULL, NULL, +0, NULL, '2026-06-19 10:00:00', true, 48, +NULL, 1, 1, '0', 'admin', '2026-06-19 09:00:00'), + +(8000000010, 6006, 5006, '赵静', 1, +'【首次病程记录 - 超时】 + +患者赵静,女,38岁,因"转移性右下腹痛12小时"于2026-06-18 22:00入院。 + +一、病例特点 +青年女性,急性病程 +转移性右下腹痛12小时,伴恶心、呕吐2次 +查体:右下腹麦氏点压痛(+),反跳痛(+) + +二、诊断 +急性阑尾炎 + +三、诊疗计划 +1. 完善术前检查 +2. 禁食水 +3. 抗感染治疗 +4. 择期手术', +1003, '王芳', '副主任医师', +NULL, NULL, +0, NULL, '2026-06-19 06:00:00', true, 24, +NULL, 1, 1, '0', 'admin', '2026-06-18 22:30:00'), + +-- ===== 更多日常病程记录 ===== +(8000000011, 6007, 5007, '孙浩', 2, +'【日常病程记录】 + +患者孙浩,男,62岁,诊断:冠心病、不稳定型心绞痛。 + +今日症状:胸闷、胸痛较前缓解,活动后仍有不适。 +查体:BP 128/82mmHg,HR 76次/分,律齐。 +心电图:窦性心律,ST-T改变较前改善。 + +治疗: +- 继续双联抗血小板治疗 +- 阿托伐他汀20mg qn +- 美托洛尔缓释片47.5mg qd', +1001, '张明', '主治医师', +1001, '张明', +1, '2026-06-20 11:00:00', '2026-06-22 11:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-20 10:00:00'), + +(8000000012, 6008, 5008, '周磊', 3, +'【上级医师查房记录】 + +查房时间:2026-06-21 09:00 +查房医师:赵磊 副主任医师 + +患者周磊,男,48岁,诊断:腰椎间盘突出症。 + +查房意见: +1. 患者目前腰腿痛症状明显缓解 +2. 直腿抬高试验较入院时改善 +3. 建议加强腰背肌功能锻炼 +4. 可考虑出院后继续康复治疗 +5. 嘱患者避免久坐、弯腰负重', +1004, '赵磊', '副主任医师', +1004, '赵磊', +1, '2026-06-21 10:00:00', '2026-06-24 09:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-21 09:30:00'), + +-- ===== 转科记录 (note_type=7) ===== +(8000000013, 6009, 5009, '吴秀英', 7, +'【转科记录】 + +转出科室:呼吸内科 +转入科室:ICU +转科时间:2026-06-20 16:00 + +转科原因: +患者因"重症肺炎、呼吸衰竭"入院,经积极抗感染、呼吸支持治疗后,病情仍较重,需转ICU进一步监护治疗。 + +转科时情况: +T 38.5℃,P 110次/分,R 28次/分,BP 95/60mmHg,SpO2 88% +神志清楚,精神差,呼吸急促,双肺可闻及大量湿啰音 + +转科诊断: +1. 重症肺炎 +2. I型呼吸衰竭 +3. 脓毒症 + +转科医嘱: +1. 持续心电监护 +2. 机械通气支持 +3. 广谱抗感染治疗 +4. 血管活性药物维持血压', +1002, '李华', '住院医师', +1004, '赵磊', +1, '2026-06-20 16:30:00', '2026-06-21 16:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-20 16:00:00'), + +-- ===== 接收记录 (note_type=8) ===== +(8000000014, 6009, 5009, '吴秀英', 8, +'【接收记录】 + +接收科室:ICU +转出科室:呼吸内科 +接收时间:2026-06-20 16:30 + +接收医师:赵磊 副主任医师 + +接收时情况: +患者由呼吸内科转入,T 38.4℃,P 108次/分,R 26次/分,BP 98/62mmHg,SpO2 90% +神志清楚,精神差,呼吸急促,双肺可闻及大量湿啰音 + +接收处理: +1. 立即予以机械通气支持 +2. 完善动脉血气分析 +3. 调整抗感染方案:美罗培南1g q8h + 万古霉素1g q12h +4. 血管活性药物维持血压 +5. 加强液体管理', +1004, '赵磊', '副主任医师', +1004, '赵磊', +1, '2026-06-20 17:00:00', '2026-06-21 16:30:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-20 16:30:00'), + +-- ===== 疑难病例讨论 (note_type=4) ===== +(8000000015, 6010, 5010, '郑伟', 4, +'【疑难病例讨论记录】 + +讨论时间:2026-06-19 15:00-16:30 +讨论地点:内科示教室 +主持人:赵磊 副主任医师 +参加人员:赵磊、钱进、孙丽、周敏、吴强等 + +患者郑伟,男,58岁,因"反复发热、关节痛2月,皮疹1月"于2026-06-10入院。 + +一、病例特点 +1. 中年男性,慢性病程 +2. 主要症状:反复发热(最高39.2℃)、多关节肿痛、面部蝶形红斑 +3. 辅助检查:ANA 1:640,抗dsDNA抗体阳性,补体C3/C4降低 +4. 肾脏受累:尿蛋白2+,血肌酐升高 + +二、目前诊断 +系统性红斑狼疮(SLE)伴狼疮性肾炎 + +三、讨论要点 +1. 狼疮性肾炎分型:需行肾穿刺活检明确病理类型 +2. 免疫抑制方案选择:环磷酰胺 vs 吗替麦考酚酯 +3. 感染风险评估:长期免疫抑制治疗的感染预防 + +四、讨论总结 +1. 同意目前SLE伴狼疮性肾炎诊断 +2. 建议尽快行肾穿刺活检 +3. 根据病理类型制定个体化免疫抑制方案 +4. 加强感染监测和预防', +1004, '赵磊', '副主任医师', +1004, '赵磊', +1, '2026-06-19 17:00:00', '2026-06-22 15:00:00', false, 0, +NULL, 1, 1, '0', 'admin', '2026-06-19 16:30:00') +ON CONFLICT (id) DO NOTHING; + +-- ==================== 2. 病程记录提醒 sys_progress_note_reminder ==================== +INSERT INTO sys_progress_note_reminder ( + id, encounter_id, patient_name, note_type, deadline, + status, remind_user_id, remind_user_name, created_time, + tenant_id, delete_flag, create_by, create_time +) +VALUES +-- 已提醒(1) +(8100000001, 6001, '张伟', 1, '2026-06-20 18:00:00', 1, 1001, '张明', '2026-06-20 14:30:00', 1, '0', 'admin', '2026-06-20 14:30:00'), +(8100000002, 6001, '张伟', 2, '2026-06-23 10:00:00', 1, 1001, '张明', '2026-06-21 09:00:00', 1, '0', 'admin', '2026-06-21 09:00:00'), +(8100000003, 6003, 5003, '王强', 6, '2026-06-18 20:30:00', 1, 1004, '赵磊', '2026-06-18 16:00:00', 1, '0', 'admin', '2026-06-18 16:00:00'), +-- 待提醒(0) +(8100000004, 6004, '刘洋', 2, '2026-06-19 10:00:00', 0, 1002, '李华', '2026-06-19 09:00:00', 1, '0', 'admin', '2026-06-19 09:00:00'), +(8100000005, 6006, '赵静', 1, '2026-06-19 06:00:00', 0, 1003, '王芳', '2026-06-18 22:30:00', 1, '0', 'admin', '2026-06-18 22:30:00'), +(8100000006, 6007, '孙浩', 2, '2026-06-22 11:00:00', 0, 1001, '张明', '2026-06-20 10:00:00', 1, '0', 'admin', '2026-06-20 10:00:00'), +(8100000007, 6008, '周磊', 3, '2026-06-24 09:00:00', 0, 1004, '赵磊', '2026-06-21 09:30:00', 1, '0', 'admin', '2026-06-21 09:30:00'), +(8100000008, 6009, '吴秀英', 7, '2026-06-21 16:00:00', 0, 1002, '李华', '2026-06-20 16:00:00', 1, '0', 'admin', '2026-06-20 16:00:00'), +(8100000009, 6010, '郑伟', 4, '2026-06-22 15:00:00', 0, 1004, '赵磊', '2026-06-19 16:30:00', 1, '0', 'admin', '2026-06-19 16:30:00') +ON CONFLICT (id) DO NOTHING;