feat(test): 三甲医院全流程测试数据+测试流程文档+自动化测试脚本
- 01_test_data_fixed.sql: 31个模块测试数据(覆盖门诊/住院/药房/检验/影像/手术/麻醉/护理/院感/质控/中医/会诊/临床路径/危急值/DRG/EMPI/ESB等) - 02_TEST_FLOWS.md: 30个业务流程图+API接口映射(含调用链路和测试数据) - 03_test_api_comprehensive.sh: 自动化测试脚本(覆盖所有模块API接口)
This commit is contained in:
418
MD/test/01_test_data_fixed.sql
Normal file
418
MD/test/01_test_data_fixed.sql
Normal file
@@ -0,0 +1,418 @@
|
||||
-- ============================================================
|
||||
-- HealthLink-HIS 三甲医院全流程测试数据(修正版)
|
||||
-- 版本: v2.0 (JDK 25 + Spring Boot 4.0.6 + Vue 3)
|
||||
-- 日期: 2026-06-07
|
||||
-- 说明: 覆盖门诊/住院/药房/检验/影像/手术/麻醉/护理/院感/质控/中医/会诊全流程
|
||||
-- 注意: 仅插入测试数据,不删除现有数据,使用ON CONFLICT避免重复
|
||||
-- ============================================================
|
||||
|
||||
SET search_path TO healthlink_his;
|
||||
|
||||
-- ============================
|
||||
-- 一、基础数据(科室/人员)
|
||||
-- ============================
|
||||
|
||||
INSERT INTO sys_dept (dept_id, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time)
|
||||
VALUES
|
||||
(1001, 0, '0', '门诊内科', 10, '张主任', '13800000001', 'mnk@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1002, 0, '0', '门诊外科', 11, '李主任', '13800000002', 'mwk@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1003, 0, '0', '儿科门诊', 12, '王主任', '13800000003', 'ek@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1004, 0, '0', '妇产科', 13, '赵主任', '13800000004', 'fck@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1005, 0, '0', 'ICU', 14, '刘主任', '13800000005', 'icu@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1006, 0, '0', '急诊科', 15, '陈主任', '13800000006', 'jzk@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1007, 0, '0', '手术室', 16, '孙主任', '13800000007', 'ss@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1008, 0, '0', '药房', 17, '周主任', '13800000008', 'yf@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1009, 0, '0', '检验科', 18, '吴主任', '13800000009', 'jyk@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1010, 0, '0', '影像科', 19, '郑主任', '13800000010', 'yxk@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1011, 0, '0', '门诊部', 20, '黄院长', '13800000011', 'mzb@hospital.com', '0', '0', 'admin', NOW()),
|
||||
(1012, 0, '0', '住院部', 21, '杨院长', '13800000012', 'zyb@hospital.com', '0', '0', 'admin', NOW())
|
||||
ON CONFLICT (dept_id) DO NOTHING;
|
||||
|
||||
INSERT INTO sys_user (user_id, user_name, nick_name, dept_id, email, phonenumber, sex, status, del_flag, create_by, create_time)
|
||||
VALUES
|
||||
(2001, 'doctor_zhang', '张三医生', 1001, 'zhangsan@hospital.com', '13900000001', '1', '0', '0', 'admin', NOW()),
|
||||
(2002, 'doctor_li', '李四医生', 1002, 'lisi@hospital.com', '13900000002', '1', '0', '0', 'admin', NOW()),
|
||||
(2003, 'doctor_wang', '王五医生', 1003, 'wangwu@hospital.com', '13900000003', '1', '0', '0', 'admin', NOW()),
|
||||
(2004, 'doctor_zhao', '赵六医生', 1004, 'zhaoliu@hospital.com', '13900000004', '1', '0', '0', 'admin', NOW()),
|
||||
(2005, 'doctor_liu', '刘七医生', 1005, 'liuqi@hospital.com', '13900000005', '1', '0', '0', 'admin', NOW()),
|
||||
(2006, 'doctor_chen', '陈八医生', 1006, 'chenba@hospital.com', '13900000006', '1', '0', '0', 'admin', NOW()),
|
||||
(2007, 'doctor_sun', '孙九医生', 1007, 'sunjiu@hospital.com', '13900000007', '1', '0', '0', 'admin', NOW()),
|
||||
(2008, 'doctor_zhou', '周十医生', 1008, 'zhoushi@hospital.com', '13900000008', '1', '0', '0', 'admin', NOW()),
|
||||
(2009, 'doctor_wu', '吴十一医生', 1009, 'wushiyi@hospital.com', '13900000009', '1', '0', '0', 'admin', NOW()),
|
||||
(2010, 'doctor_zheng', '郑十二医生', 1010, 'zhengershi@hospital.com', '13900000010', '1', '0', '0', 'admin', NOW())
|
||||
ON CONFLICT (user_id) DO NOTHING;
|
||||
|
||||
INSERT INTO sys_user (user_id, user_name, nick_name, dept_id, email, phonenumber, sex, status, del_flag, create_by, create_time)
|
||||
VALUES
|
||||
(3001, 'nurse_a', '护士A', 1001, 'nursea@hospital.com', '13700000001', '2', '0', '0', 'admin', NOW()),
|
||||
(3002, 'nurse_b', '护士B', 1005, 'nurseb@hospital.com', '13700000002', '2', '0', '0', 'admin', NOW()),
|
||||
(3003, 'nurse_c', '护士C', 1006, 'nursec@hospital.com', '13700000003', '2', '0', '0', 'admin', NOW()),
|
||||
(3004, 'nurse_d', '护士D', 1007, 'nursed@hospital.com', '13700000004', '2', '0', '0', 'admin', NOW())
|
||||
ON CONFLICT (user_id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二、测试患者数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO adm_patient (id, name, gender_enum, birth_date, phone, id_card, address, organization_id, tenant_id, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(5001, '测试患者甲', 1, '1990-01-15 00:00:00+08', '13800138001', '450102199001011234', '广西南宁市青秀区民族大道100号', 1, 1, '0', 'admin', NOW()),
|
||||
(5002, '测试患者乙', 2, '1985-05-20 00:00:00+08', '13800138002', '450102198505052345', '广西南宁市兴宁区朝阳路200号', 1, 1, '0', 'admin', NOW()),
|
||||
(5003, '测试患者丙', 1, '2000-10-08 00:00:00+08', '13800138003', '450102200010103456', '广西南宁市西乡塘区大学路300号', 1, 1, '0', 'admin', NOW()),
|
||||
(5004, '测试患者丁', 2, '1975-12-25 00:00:00+08', '13800138004', '450102197512124567', '广西南宁市良庆区银海大道400号', 1, 1, '0', 'admin', NOW()),
|
||||
(5005, '测试患者戊', 1, '1965-03-10 00:00:00+08', '13800138005', '450102196503101234', '广西南宁市邕宁区蒲庙镇500号', 1, 1, '0', 'admin', NOW()),
|
||||
(5006, '测试患者己', 2, '2015-08-18 00:00:00+08', '13800138006', '450102201508186789', '广西南宁市江南区星光大道600号', 1, 1, '0', 'admin', NOW()),
|
||||
(5007, '急诊患者庚', 1, '1988-07-07 00:00:00+08', '13800138007', '450102198807071111', '广西南宁市青秀区东葛路700号', 1, 1, '0', 'admin', NOW()),
|
||||
(5008, '急诊患者辛', 2, '1992-11-11 00:00:00+08', '13800138008', '450102199211112222', '广西南宁市青秀区凤岭北路800号', 1, 1, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 三、就诊记录
|
||||
-- ============================
|
||||
|
||||
INSERT INTO adm_encounter (id, patient_id, status_enum, class_enum, type_enum, start_time, organization_id, tenant_id, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(6001, 5001, 2, 1, 1, '2026-06-07 09:00:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6002, 5002, 2, 1, 1, '2026-06-07 09:30:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6003, 5003, 2, 1, 1, '2026-06-07 10:00:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6004, 5004, 2, 1, 1, '2026-06-07 10:30:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6005, 5005, 2, 1, 1, '2026-06-07 11:00:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6006, 5001, 2, 2, 1, '2026-06-01 14:00:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6007, 5002, 2, 2, 1, '2026-06-02 08:00:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6008, 5004, 2, 2, 1, '2026-06-03 10:00:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6009, 5005, 4, 2, 1, '2026-06-04 09:00:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6010, 5006, 2, 1, 1, '2026-06-07 14:00:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6011, 5007, 2, 1, 1, '2026-06-07 02:30:00+08', 1, 1, '0', 'admin', NOW()),
|
||||
(6012, 5008, 2, 1, 1, '2026-06-07 03:15:00+08', 1, 1, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 四、检查检验数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO check_apply (id, apply_no, encounter_id, patient_id, patient_name, id_card, fee_type, apply_date, apply_dept_id, apply_doctor_id, diagnosis_desc, check_purpose, status, total_amount, create_time)
|
||||
VALUES
|
||||
(8001, 'CK20260607001', 6001, 5001, '测试患者甲', '450102199001011234', '1', '2026-06-07 09:15:00+08', 1010, 2001, '咳嗽咳痰3天', '排除肺炎', 1, 280.00, NOW()),
|
||||
(8002, 'CK20260607002', 6002, 5002, '测试患者乙', '450102198505052345', '1', '2026-06-07 09:45:00+08', 1010, 2002, '头痛头晕1周', '排除颅内病变', 1, 560.00, NOW()),
|
||||
(8003, 'CK20260607003', 6011, 5007, '急诊患者庚', '450102198807071111', '1', '2026-06-07 02:45:00+08', 1010, 2006, '外伤后腹痛2小时', '排除脏器损伤', 1, 420.00, NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
INSERT INTO check_apply_detail (id, apply_id, check_item_name, check_part, check_method, create_time)
|
||||
VALUES
|
||||
(9001, 8001, '胸部CT平扫', '胸部', 'CT', NOW()),
|
||||
(9002, 8001, '血常规', '静脉血', '检验', NOW()),
|
||||
(9003, 8002, '头颅MRI', '头部', 'MRI', NOW()),
|
||||
(9004, 8002, '经颅多普勒', '头部', '超声', NOW()),
|
||||
(9005, 8003, '腹部CT增强', '腹部', 'CT', NOW()),
|
||||
(9006, 8003, '全血细胞计数', '静脉血', '检验', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
INSERT INTO lab_apply (id, apply_no, patient_id, patient_name, apply_dept_code, apply_doc_code, apply_doc_name, apply_time, apply_status, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(10001, 'LAB20260607001', 5001, '测试患者甲', '1009', '2009', '吴十一医生', '2026-06-07 09:20:00+08', '1', '0', 'admin', NOW()),
|
||||
(10002, 'LAB20260607002', 5002, '测试患者乙', '1009', '2009', '吴十一医生', '2026-06-07 09:50:00+08', '1', '0', 'admin', NOW()),
|
||||
(10003, 'LAB20260607003', 5006, '测试患者己', '1009', '2009', '吴十一医生', '2026-06-07 14:10:00+08', '1', '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 五、影像数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO radiology_image_report (id, apply_no, patient_id, patient_name, report_status, create_time)
|
||||
VALUES
|
||||
(11001, 'CK20260607001', 5001, '测试患者甲', '1', NOW()),
|
||||
(11002, 'CK20260607002', 5002, '测试患者乙', '1', NOW()),
|
||||
(11003, 'CK20260607003', 5007, '急诊患者庚', '1', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 六、手术数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO cli_surgery (id, patient_id, encounter_id, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(12001, 5001, 6006, '0', 'admin', NOW()),
|
||||
(12002, 5004, 6008, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 七、麻醉数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO anes_record (id, patient_id, encounter_id, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(13001, 5001, 6006, '0', 'admin', NOW()),
|
||||
(13002, 5004, 6008, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 八、护理数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO nursing_assessment (id, patient_id, encounter_id, assessment_type, assessment_score, risk_level, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(14001, 5001, 6006, 'braden', 12, 'high', '0', 'admin', NOW()),
|
||||
(14002, 5002, 6007, 'morse', 45, 'high', '0', 'admin', NOW()),
|
||||
(14003, 5004, 6008, 'nrs2002', 4, 'at_risk', '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
INSERT INTO nursing_vital_signs_chart (id, patient_id, encounter_id, temperature, pulse, respiration, blood_pressure_systolic, blood_pressure_diastolic, oxygen_saturation, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(15001, 5001, 6006, 37.2, 78, 18, 125, 82, 98.5, '0', 'admin', NOW()),
|
||||
(15002, 5002, 6007, 36.8, 72, 16, 130, 85, 99.0, '0', 'admin', NOW()),
|
||||
(15003, 5004, 6008, 37.5, 85, 20, 140, 90, 97.5, '0', 'admin', NOW()),
|
||||
(15004, 5005, 6009, 38.2, 92, 22, 150, 95, 96.0, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 九、院感数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO hir_infection_case (id, patient_id, encounter_id, infection_type, infection_site, pathogen, diagnosis_date, reporter_id, reporter_name, report_time, status, create_time, tenant_id, delete_flag, create_by)
|
||||
VALUES
|
||||
(16001, 5001, 6006, '医院获得性肺炎', '肺部', '铜绿假单胞菌', '2026-06-03', 2001, '张三医生', '2026-06-03 10:00:00+08', 1, NOW(), 1, '0', 'admin'),
|
||||
(16002, 5002, 6007, '导管相关血流感染', '血流', '金黄色葡萄球菌', '2026-06-05', 2002, '李四医生', '2026-06-05 14:00:00+08', 1, NOW(), 1, '0', 'admin')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
INSERT INTO hir_hand_hygiene (id, department_id, department_name, monitor_date, observe_count, comply_count, comply_rate, observer_name, remarks, tenant_id, is_deleted, create_by, create_time)
|
||||
VALUES
|
||||
(17001, 1005, 'ICU', '2026-06-07', 120, 114, 95.0, '院感科', '手卫生依从性检查', 1, '0', 'admin', NOW()),
|
||||
(17002, 1001, '门诊内科', '2026-06-07', 80, 72, 90.0, '院感科', '手卫生依从性检查', 1, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十、质控数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO emr_quality_score (id, encounter_id, patient_id, emr_type, score, max_score, grade, checker_id, checker_name, check_type, check_time, del_flag, create_time, tenant_id)
|
||||
VALUES
|
||||
(18001, 6006, 5001, '入院记录', 92.5, 100, '优秀', 2001, '张三医生', '运行质控', '2026-06-02 10:00:00+08', '0', NOW(), 1),
|
||||
(18002, 6007, 5002, '入院记录', 88.0, 100, '良好', 2002, '李四医生', '终末质控', '2026-06-06 14:00:00+08', '0', NOW(), 1),
|
||||
(18003, 6008, 5004, '入院记录', 95.0, 100, '优秀', 2006, '陈八医生', '运行质控', '2026-06-04 09:00:00+08', '0', NOW(), 1)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十一、中医数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO tcm_constitution_assessment (id, encounter_id, patient_id, constitution_type, score, recommendation, assessor_id, assessment_time, tenant_id, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(19001, 6006, 5001, '气虚质', 65, '建议加强锻炼,饮食调理', 2005, '2026-06-02 10:00:00+08', 1, '0', 'admin', NOW()),
|
||||
(19002, 6007, 5002, '阳虚质', 70, '建议保暖,避免生冷食物', 2005, '2026-06-03 10:00:00+08', 1, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
INSERT INTO tcm_prescription (id, prescription_name, prescription_type, herbs, dosage, usage, indication, source, enabled, tenant_id, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(20001, '四君子汤', '补益剂', '人参、白术、茯苓、甘草', '水煎服', '日一剂,分两次温服', '脾胃气虚', '伤寒论', 1, 1, '0', 'admin', NOW()),
|
||||
(20002, '六味地黄丸', '补益剂', '熟地黄、山药、泽泻、牡丹皮、茯苓、山茱萸', '口服', '一次8丸,一日3次', '肾阴虚', '小儿药证直诀', 1, 1, '0', 'admin', NOW()),
|
||||
(20003, '小柴胡汤', '和解剂', '柴胡、黄芩、人参、半夏、甘草、生姜、大枣', '水煎服', '日一剂,分两次温服', '少阳证', '伤寒论', 1, 1, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十二、会诊数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO consultation_record (id, consultation_request_id, participant_doctor_id, participant_doctor_name, participant_department_id, participant_department_name, opinion, suggestion, record_date, creator_id, creator_name, create_time, valid_flag, tenant_id)
|
||||
VALUES
|
||||
(21001, 'CONS20260607001', 2005, '刘七医生', 1005, 'ICU', '患者肺部感染较重,建议加强抗感染治疗', '建议升级抗生素', '2026-06-03', 2001, '张三医生', NOW(), 1, 1),
|
||||
(21002, 'CONS20260607002', 2002, '李四医生', 1002, '门诊外科', '患者心脏功能尚可,可以耐受手术', '建议术前心功能评估', '2026-06-04', 2004, '赵六医生', NOW(), 1, 1)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十三、临床路径数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO clinical_pathway (id, pathway_name, disease_code, disease_name, department_name, avg_days, avg_cost, version, status, tenant_id, is_deleted, create_time, delete_flag, create_by)
|
||||
VALUES
|
||||
(22001, '社区获得性肺炎', 'J18.9', '社区获得性肺炎', '呼吸内科', 10, 8000.00, '1.0', '1', 1, '0', NOW(), '0', 'admin'),
|
||||
(22002, '急性阑尾炎', 'K35.8', '急性阑尾炎', '普外科', 7, 12000.00, '1.0', '1', 1, '0', NOW(), '0', 'admin'),
|
||||
(22003, '2型糖尿病', 'E11.9', '2型糖尿病', '内分泌科', 14, 6000.00, '1.0', '1', 1, '0', NOW(), '0', 'admin')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十四、危急值数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO critical_value (id, encounter_id, patient_id, patient_name, item_code, item_name, result_value, reference_range, unit, lab_department, report_time, status, create_time, tenant_id, delete_flag, create_by)
|
||||
VALUES
|
||||
(23001, 6006, 5001, '测试患者甲', 'K', '血钾', '6.8', '3.5-5.5', 'mmol/L', '检验科', '2026-06-03 15:30:00+08', 1, NOW(), 1, '0', 'admin'),
|
||||
(23002, 6007, 5002, '测试患者乙', 'HGB', '血红蛋白', '52', '110-160', 'g/L', '检验科', '2026-06-05 08:00:00+08', 1, NOW(), 1, '0', 'admin')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十五、电子病历数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO doc_emr (id, patient_id, encounter_id, emr_enum, record_id, tenant_id, delete_flag, create_by, create_time, class_enum)
|
||||
VALUES
|
||||
(24001, 5001, 6006, 1, 1001, 1, '0', 'admin', NOW(), 2),
|
||||
(24002, 5002, 6007, 1, 1002, 1, '0', 'admin', NOW(), 2),
|
||||
(24003, 5004, 6008, 1, 1003, 1, '0', 'admin', NOW(), 2)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十六、药品追溯数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO drug_trace_code (id, drug_code, drug_name, generic_name, specification, manufacturer, batch_no, trace_code, production_date, expiry_date, approval_number, dosage_form, unit, barcode, qr_code, status, delete_flag, create_by, create_time, tenant_id)
|
||||
VALUES
|
||||
(28001, 'DRG001', '阿莫西林胶囊', '阿莫西林', '0.5g*24片', '华北制药', 'B20260101', 'TR20260101001', '2026-01-01', '2028-01-01', '国药准字H13023964', '胶囊剂', '盒', '6901234567890', 'QR001', 1, '0', 'admin', NOW(), 1),
|
||||
(28002, 'DRG002', '布洛芬缓释胶囊', '布洛芬', '0.3g*20粒', '中美史克', 'B20260201', 'TR20260201001', '2026-02-01', '2028-02-01', '国药准字H10900089', '胶囊剂', '盒', '6901234567891', 'QR002', 1, '0', 'admin', NOW(), 1)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十七、处方点评数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO review_plan (id, plan_name, review_type, dept_name, target_count, sample_count, reviewed_count, start_date, end_date, status, delete_flag, create_by, create_time, tenant_id)
|
||||
VALUES
|
||||
(29001, '2026年6月处方点评', '月度', '全部科室', 200, 50, 30, '2026-06-01', '2026-06-30', 1, '0', 'admin', NOW(), 1),
|
||||
(29002, '2026年第二季度处方点评', '季度', '全部科室', 600, 100, 80, '2026-04-01', '2026-06-30', 1, '0', 'admin', NOW(), 1)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十八、DRG分析数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO drg_analysis_stats (id, stat_month, department_name, drg_code, case_count, avg_cost, avg_los, avg_weight, cost_efficiency, time_efficiency, tenant_id, create_time)
|
||||
VALUES
|
||||
(30001, '2026-06', '呼吸内科', 'ER1', 15, 12000.00, 10, 1.2, 1.05, 0.95, 1, NOW()),
|
||||
(30002, '2026-06', '普外科', 'FR1', 20, 15000.00, 7, 0.8, 1.10, 0.90, 1, NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 十九、随访数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO followup_plan (id, patient_id, patient_name, encounter_id, disease_code, disease_name, followup_type, frequency, total_times, completed_times, responsible_doctor, responsible_nurse, start_date, end_date, status, tenant_id, is_deleted, create_time, delete_flag, create_by)
|
||||
VALUES
|
||||
(31001, 5001, '测试患者甲', 6006, 'J18.9', '重症肺炎', '电话随访', '每周1次', 4, 1, '刘七医生', '护士B', '2026-06-07', '2026-07-07', 1, 1, '0', NOW(), '0', 'admin'),
|
||||
(31002, 5002, '测试患者乙', 6007, 'I10', '高血压3级', '门诊复查', '每月1次', 3, 0, '李四医生', '护士A', '2026-06-07', '2026-09-07', 1, 1, '0', NOW(), '0', 'admin')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十、知情同意数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO sys_informed_consent (id, encounter_id, patient_id, patient_name, consent_type, diagnosis, procedure_name, procedure_purpose, procedure_method, expected_outcome, risks_and_complications, doctor_user_id, doctor_name, doctor_sign_time, status, version, tenant_id, is_deleted, create_by, create_time, delete_flag)
|
||||
VALUES
|
||||
(32001, 6006, 5001, '测试患者甲', '手术知情同意书', '重症肺炎', '胸腔镜手术', '治疗肺部感染', '胸腔镜下肺叶切除', '感染控制', '出血、感染', 2005, '刘七医生', '2026-06-03 10:00:00+08', 1, 1, 1, '0', 'admin', NOW(), '0'),
|
||||
(32002, 6007, 5002, '测试患者乙', '麻醉知情同意书', '高血压3级', '全身麻醉', '手术麻醉', '气管插管全麻', '麻醉成功', '过敏、呼吸抑制', 2005, '刘七医生', '2026-06-04 10:00:00+08', 1, 1, 1, '0', 'admin', NOW(), '0')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十一、消毒供应中心数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO cssd_sterilize_batch (id, batch_code, sterilizer_name, sterilizer_code, start_time, end_time, cycle_type, temperature, pressure, exposure_time, biological_result, chemical_result, physical_result, batch_status, release_by, release_time, tenant_id, is_deleted, create_time, delete_flag)
|
||||
VALUES
|
||||
(33001, 'CSSD20260607001', '脉动真空灭菌器', 'PVS001', '2026-06-07 08:00:00+08', '2026-06-07 09:30:00+08', 'B-D', 134, 0.21, 30, '合格', '合格', '合格', 1, '护士D', '2026-06-07 10:00:00+08', 1, '0', NOW(), '0'),
|
||||
(33002, 'CSSD20260607002', '低温等离子灭菌器', 'LTP001', '2026-06-07 10:00:00+08', '2026-06-07 11:30:00+08', '标准', 55, NULL, 45, '合格', '合格', '合格', 1, '护士D', '2026-06-07 12:00:00+08', 1, '0', NOW(), '0')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十二、EMPI主索引数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO empi_person (id, global_id, patient_name, gender, birth_date, id_card_no, phone, address, status, source_system, delete_flag, create_by, create_time, tenant_id, merge_status)
|
||||
VALUES
|
||||
(34001, 'EMPI001', '测试患者甲', 1, '1990-01-15', '450102199001011234', '13800138001', '广西南宁市青秀区民族大道100号', 1, 'HIS', '0', 'admin', NOW(), 1, 0),
|
||||
(34002, 'EMPI002', '测试患者乙', 2, '1985-05-20', '450102198505052345', '13800138002', '广西南宁市兴宁区朝阳路200号', 1, 'HIS', '0', 'admin', NOW(), 1, 0)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十三、ESB数据集成数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO sys_esb_service_registry (id, service_name, service_version, service_endpoint, service_description, service_status, protocol, timeout_ms, create_by, create_time, tenant_id, delete_flag)
|
||||
VALUES
|
||||
(35001, '患者信息查询', '1.0', '/fhir/Patient', 'FHIR患者信息查询服务', 1, 'FHIR', 3000, 'admin', NOW(), 1, '0'),
|
||||
(35002, '检验结果查询', '1.0', '/hl7/ORU', 'HL7检验结果查询服务', 1, 'HL7', 5000, 'admin', NOW(), 1, '0'),
|
||||
(35003, '医嘱查询', '1.0', '/fhir/Order', 'FHIR医嘱查询服务', 1, 'FHIR', 3000, 'admin', NOW(), 1, '0')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十四、急诊绿色通道数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO emergency_green_channel (id, patient_id, disease_type, door_to_treatment_time, target_time, is_achieved, doctor, activate_time, tenant_id, is_deleted, create_time, delete_flag, create_by)
|
||||
VALUES
|
||||
(36001, 5007, '胸痛', '2026-06-07 02:45:00+08', '2026-06-07 03:15:00+08', 1, '陈八医生', '2026-06-07 02:35:00+08', 1, '0', NOW(), '0', 'admin'),
|
||||
(36002, 5008, '卒中', '2026-06-07 03:30:00+08', '2026-06-07 04:00:00+08', 1, '陈八医生', '2026-06-07 03:20:00+08', 1, '0', NOW(), '0', 'admin')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十五、病案首页数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO mr_homepage (id, encounter_id, patient_id, admission_date, discharge_date, los_days, primary_diagnosis_code, primary_diagnosis_name, primary_procedure_code, primary_procedure_name, drg_group, drg_weight, total_cost, self_pay_cost, insurance_cost, quality_status, quality_score, del_flag, create_by, create_time, tenant_id)
|
||||
VALUES
|
||||
(37001, 6009, 5005, '2026-06-04', '2026-06-07', 3, 'J18.9', '重症肺炎', '0B113J0', '胸腔镜下肺叶切除术', 'ER1', 1.2, 25000.00, 5000.00, 20000.00, '1', 92.5, '0', 'admin', NOW(), 1),
|
||||
(37002, 6008, 5004, '2026-06-03', '2026-06-07', 4, 'K35.8', '急性阑尾炎', '0DTJ0ZZ', '腹腔镜下阑尾切除术', 'FR1', 0.8, 18000.00, 4000.00, 14000.00, '1', 95.0, '0', 'admin', NOW(), 1)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十六、医嘱主表数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO order_main (id, order_no, patient_id, patient_name, department_id, department_name, doctor_id, doctor_name, reg_type, fee, appointment_date, appointment_time, status, pay_status, tenant_id, delete_flag, create_by, create_time)
|
||||
VALUES
|
||||
(38001, 'ORD20260607001', 5001, '测试患者甲', 1001, '门诊内科', 2001, '张三医生', 1, 50.00, '2026-06-07', '09:00', 1, 1, 1, '0', 'admin', NOW()),
|
||||
(38002, 'ORD20260607002', 5002, '测试患者乙', 1002, '门诊外科', 2002, '李四医生', 1, 80.00, '2026-06-07', '09:30', 1, 1, 1, '0', 'admin', NOW()),
|
||||
(38003, 'ORD20260607003', 5004, '测试患者丁', 1004, '妇产科', 2004, '赵六医生', 2, 100.00, '2026-06-07', '10:30', 1, 1, 1, '0', 'admin', NOW())
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十七、护理质量指标数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO nursing_quality_indicator (id, indicator_code, indicator_name, indicator_category, target_value, actual_value, unit, stat_period, stat_date, department_id, department_name, status, tenant_id, is_deleted, create_by, create_time, delete_flag)
|
||||
VALUES
|
||||
(39001, 'NQ001', '压疮发生率', '护理质量', '0.5', '0.3', '%', '2026-06', '2026-06-07', 1005, 'ICU', 1, 1, '0', 'admin', NOW(), '0'),
|
||||
(39002, 'NQ002', '跌倒发生率', '护理质量', '1.0', '0.8', '%', '2026-06', '2026-06-07', 1005, 'ICU', 1, 1, '0', 'admin', NOW(), '0'),
|
||||
(39003, 'NQ003', '导管滑脱率', '护理质量', '0.5', '0.2', '%', '2026-06', '2026-06-07', 1005, 'ICU', 1, 1, '0', 'admin', NOW(), '0'),
|
||||
(39004, 'NQ004', '给药差错率', '护理质量', '0.1', '0.05', '%', '2026-06', '2026-06-07', 1008, '药房', 1, 1, '0', 'admin', NOW(), '0')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十八、抗菌药物使用数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO hir_antibiotic_usage (id, encounter_id, patient_id, drug_code, drug_name, ddd_value, usage_days, usage_type, start_date, end_date, indication, doctor_id, create_time, tenant_id, delete_flag, create_by)
|
||||
VALUES
|
||||
(40001, 6006, 5001, 'DRG005', '头孢曲松注射液', 2.0, 7, '治疗性', '2026-06-01', '2026-06-07', '肺部感染', 2005, NOW(), 1, '0', 'admin'),
|
||||
(40002, 6007, 5002, 'DRG006', '万古霉素', 1.5, 10, '治疗性', '2026-06-02', '2026-06-11', '血流感染', 2005, NOW(), 1, '0', 'admin')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 二十九、DRG分组数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO mr_drg_grouping (id, encounter_id, patient_id, patient_name, discharge_date, primary_diagnosis, primary_diagnosis_code, primary_procedure, primary_procedure_code, drg_code, drg_name, drg_weight, total_cost, insurance_payment, patient_payment, los_days, grouping_result, is_valid, tenant_id, is_deleted, create_time, delete_flag)
|
||||
VALUES
|
||||
(41001, 6009, 5005, '测试患者戊', '2026-06-07', '重症肺炎', 'J18.9', '胸腔镜下肺叶切除术', '0B113J0', 'ER1', '呼吸系统感染', 1.2, 25000.00, 20000.00, 5000.00, 3, '正常', 1, 1, '0', NOW(), '0'),
|
||||
(41002, 6008, 5004, '测试患者丁', '2026-06-07', '急性阑尾炎', 'K35.8', '腹腔镜下阑尾切除术', '0DTJ0ZZ', 'FR1', '急性阑尾炎', 0.8, 18000.00, 14000.00, 4000.00, 4, '正常', 1, 1, '0', NOW(), '0')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 三十、满意度调查数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO satisfaction_survey (id, patient_id, patient_name, survey_type, department_name, doctor_name, overall_score, service_score, environment_score, suggestions, survey_date, tenant_id, create_time, create_by)
|
||||
VALUES
|
||||
(42001, 5005, '测试患者戊', '出院患者', '呼吸内科', '刘七医生', 92, 95, 90, '服务态度很好', '2026-06-07', 1, NOW(), 'admin'),
|
||||
(42002, 5001, '测试患者甲', '住院患者', 'ICU', '刘七医生', 88, 90, 85, '希望能改善病房环境', '2026-06-07', 1, NOW(), 'admin')
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 三十一、交接班数据
|
||||
-- ============================
|
||||
|
||||
INSERT INTO nursing_handoff (id, encounter_id, patient_id, patient_name, ward, bed_no, shift, handoff_nurse_id, handoff_nurse_name, oncoming_nurse_id, oncoming_nurse_name, patient_condition, key_points, handoff_time, del_flag, create_time, tenant_id)
|
||||
VALUES
|
||||
(43001, 6006, 5001, '测试患者甲', 'ICU', 'ICU-01', '白班转夜班', 3001, '护士A', 3002, '护士B', '患者生命体征平稳', '继续观察体温变化', '2026-06-07 08:00:00+08', '0', NOW(), 1)
|
||||
ON CONFLICT (id) DO NOTHING;
|
||||
|
||||
-- ============================
|
||||
-- 完成!
|
||||
-- ============================
|
||||
990
MD/test/02_TEST_FLOWS.md
Normal file
990
MD/test/02_TEST_FLOWS.md
Normal file
@@ -0,0 +1,990 @@
|
||||
# HealthLink-HIS 三甲医院全流程测试文档
|
||||
|
||||
## 文档信息
|
||||
- **版本**: v2.0 (JDK 25 + Spring Boot 4.0.6 + Vue 3 + Element Plus)
|
||||
- **日期**: 2026-06-07
|
||||
- **测试环境**: localhost:18082 (后端) / localhost:81 (前端)
|
||||
- **数据库**: PostgreSQL 192.168.110.252:15432
|
||||
- **API基础路径**: /healthlink-his
|
||||
|
||||
---
|
||||
|
||||
## 目录
|
||||
1. [系统登录认证流程](#1-系统登录认证流程)
|
||||
2. [门诊就诊全流程](#2-门诊就诊全流程)
|
||||
3. [住院入院全流程](#3-住院入院全流程)
|
||||
4. [药房管理全流程](#4-药房管理全流程)
|
||||
5. [检验检查全流程](#5-检验检查全流程)
|
||||
6. [影像检查全流程](#6-影像检查全流程)
|
||||
7. [手术管理全流程](#7-手术管理全流程)
|
||||
8. [麻醉管理全流程](#8-麻醉管理全流程)
|
||||
9. [护理管理全流程](#9-护理管理全流程)
|
||||
10. [院感管理全流程](#10-院感管理全流程)
|
||||
11. [质量管理全流程](#11-质量管理全流程)
|
||||
12. [中医管理全流程](#12-中医管理全流程)
|
||||
13. [会诊管理全流程](#13-会诊管理全流程)
|
||||
14. [临床路径全流程](#14-临床路径全流程)
|
||||
15. [危急值管理全流程](#15-危急值管理全流程)
|
||||
16. [处方点评全流程](#16-处方点评全流程)
|
||||
17. [急诊管理全流程](#17-急诊管理全流程)
|
||||
18. [医保管理全流程](#18-医保管理全流程)
|
||||
19. [DRG分析全流程](#19-drg分析全流程)
|
||||
20. [抗菌药物管理全流程](#20-抗菌药物管理全流程)
|
||||
21. [药品追溯管理全流程](#21-药品追溯管理全流程)
|
||||
22. [EMPI主索引全流程](#22-empi主索引全流程)
|
||||
23. [ESB数据集成全流程](#23-esb数据集成全流程)
|
||||
24. [电子签名管理全流程](#24-电子签名管理全流程)
|
||||
25. [病案管理全流程](#25-病案管理全流程)
|
||||
26. [随访管理全流程](#26-随访管理全流程)
|
||||
27. [知情同意管理全流程](#27-知情同意管理全流程)
|
||||
28. [消毒供应中心全流程](#28-消毒供应中心全流程)
|
||||
29. [合理用药全流程](#29-合理用药全流程)
|
||||
30. [收费管理全流程](#30-收费管理全流程)
|
||||
|
||||
---
|
||||
|
||||
## 1. 系统登录认证流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
用户输入账号密码 → 后端验证 → 返回Token → 前端存储Token → 路由守卫验证
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[登录页] [SysLoginController] [TokenService] [localStorage] [permission.js]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 获取验证码 | `/captchaImage` | GET | - | 返回验证码图片和UUID |
|
||||
| 2. 用户登录 | `/login` | POST | `{"username":"admin","password":"admin123","tenantId":"1"}` | 返回token+权限信息 |
|
||||
| 3. 获取用户信息 | `/getInfo` | GET | Header: Authorization | 返回用户角色+权限列表 |
|
||||
| 4. 获取路由 | `/getRouters` | GET | Header: Authorization | 返回动态路由菜单 |
|
||||
| 5. 退出登录 | `/logout` | POST | Header: Authorization | 清除Token |
|
||||
|
||||
### 测试数据
|
||||
```json
|
||||
// 登录请求
|
||||
{
|
||||
"username": "admin",
|
||||
"password": "admin123",
|
||||
"tenantId": "1"
|
||||
}
|
||||
|
||||
// 预期响应
|
||||
{
|
||||
"msg": "操作成功",
|
||||
"code": 200,
|
||||
"token": "eyJhbGciOiJIUzI1NiJ9..."
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2. 门诊就诊全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
患者挂号 → 分诊排队 → 医生接诊 → 开具检查 → 开具处方 → 药房发药 → 收费结算 → 退号处理
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[挂号管理] [分诊排队] [门诊医生站] [检查申请] [处方管理] [药房管理] [收费管理] [退号管理]
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[OutpatientReg] [TriageQueue] [DoctorStation] [CheckApply] [AdviceManage] [WesternMedicine] [OutpatientCharge] [OutpatientRefund]
|
||||
```
|
||||
|
||||
### 2.1 挂号管理
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 挂号初始化 | `/charge-manage/register/init` | GET | - | 返回优先级选项等 |
|
||||
| 2. 查询患者 | `/charge-manage/register/patient` | GET | `?searchKey=张` | 返回患者列表 |
|
||||
| 3. 创建挂号 | `/charge-manage/register/add` | POST | 患者信息+科室+医生 | 返回挂号单号 |
|
||||
| 4. 查询挂号列表 | `/charge-manage/register/page` | GET | `?pageNum=1&pageSize=10` | 分页挂号记录 |
|
||||
| 5. 退号处理 | `/charge-manage/register/cancel` | POST | `{"registerId":"xxx"}` | 退号成功 |
|
||||
|
||||
### 2.2 门诊医生站
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 患者列表 | `/doctor-station/main/patient-list` | GET | `?status=waiting` | 待诊患者列表 |
|
||||
| 2. 接诊患者 | `/doctor-station/main/accept` | POST | `{"patientId":"xxx","encounterId":"xxx"}` | 接诊成功 |
|
||||
| 3. 开具医嘱 | `/doctor-station/advice/add` | POST | 医嘱信息 | 医嘱创建成功 |
|
||||
| 4. 开具检查 | `/doctor-station/inspection/add` | POST | 检查申请信息 | 检查申请创建 |
|
||||
| 5. 开具处方 | `/doctor-station/advice/prescription` | POST | 处方信息 | 处方创建成功 |
|
||||
| 6. 完成就诊 | `/doctor-station/main/complete` | POST | `{"encounterId":"xxx"}` | 就诊完成 |
|
||||
|
||||
### 2.3 收费管理
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 收费初始化 | `/charge-manage/charge/init` | GET | - | 返回收费选项 |
|
||||
| 2. 查询待收费 | `/charge-manage/charge/pending` | GET | `?patientId=xxx` | 待收费项目 |
|
||||
| 3. 确认收费 | `/charge-manage/charge/settle` | POST | 收费明细 | 收费成功 |
|
||||
| 4. 退费处理 | `/charge-manage/refund/add` | POST | 退费信息 | 退费成功 |
|
||||
| 5. 收费查询 | `/charge-manage/charge/page` | GET | `?date=2026-06-07` | 收费记录 |
|
||||
|
||||
### 测试数据
|
||||
```json
|
||||
// 挂号请求
|
||||
{
|
||||
"patientId": 5001,
|
||||
"deptId": 1001,
|
||||
"doctorId": 2001,
|
||||
"regType": 1,
|
||||
"priorityLevel": 1
|
||||
}
|
||||
|
||||
// 医嘱请求
|
||||
{
|
||||
"patientId": 5001,
|
||||
"encounterId": 6001,
|
||||
"adviceType": 1,
|
||||
"medicineItems": [
|
||||
{"medicationId": 2037002083193978881, "dose": 2, "doseUnit": "片", "frequency": "TID", "usage": "口服"}
|
||||
]
|
||||
}
|
||||
|
||||
// 收费请求
|
||||
{
|
||||
"encounterId": 6001,
|
||||
"patientId": 5001,
|
||||
"totalAmount": 280.00,
|
||||
"payMethod": 1
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. 住院入院全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
入院登记 → 护理评估 → 医嘱开具 → 执行医嘱 → 护理记录 → 体征监测 → 出院评估 → 出院结算
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[入院管理] [护理评估] [医嘱管理] [护理执行] [护理记录] [体征监测] [出院管理] [住院结算]
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[InHospitalReg] [NursingAssess] [OrderMain] [NurseExec] [NursingRecord] [VitalSigns] [Discharge] [InpatientCharge]
|
||||
```
|
||||
|
||||
### 3.1 入院管理
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 入院登记 | `/inhospitalmanage/register/add` | POST | 入院信息 | 入院登记成功 |
|
||||
| 2. 分配床位 | `/patient-home-manage/bed-transfer` | PUT | 床位信息 | 床位分配成功 |
|
||||
| 3. 查询入院列表 | `/inhospitalmanage/register/page` | GET | 分页参数 | 入院记录列表 |
|
||||
| 4. 出院登记 | `/patient-home-manage/discharge-from-hospital` | PUT | 出院信息 | 出院成功 |
|
||||
|
||||
### 3.2 护理评估
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. Braden评估 | `/nursing-assessment-enhanced/braden/assess` | POST | 评估数据 | 评估完成 |
|
||||
| 2. Morse跌倒评估 | `/nursing-assessment-enhanced/morse/assess` | POST | 评估数据 | 评估完成 |
|
||||
| 3. NRS2002营养评估 | `/nursing-assessment-enhanced/nrs2002/assess` | POST | 评估数据 | 评估完成 |
|
||||
| 4. 疼痛评估 | `/nursing-assessment-enhanced/pain/assess` | POST | 评估数据 | 评估完成 |
|
||||
| 5. 管道评估 | `/nursing-assessment-enhanced/pipe/assess` | POST | 评估数据 | 评估完成 |
|
||||
| 6. 评估趋势 | `/assessment-trend/page` | GET | 分页参数 | 趋势数据 |
|
||||
|
||||
### 3.3 医嘱管理
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 开具医嘱 | `/doctor-station/advice/add` | POST | 医嘱信息 | 医嘱创建 |
|
||||
| 2. 医嘱审核 | `/doctor-station/advice/audit` | POST | 审核信息 | 审核完成 |
|
||||
| 3. 医嘱执行 | `/nurse-station/advice-process/execute` | POST | 执行信息 | 执行完成 |
|
||||
| 4. 医嘱停止 | `/doctor-station/advice/stop` | POST | 停止信息 | 停止成功 |
|
||||
| 5. 医嘱查询 | `/doctor-station/advice/page` | GET | 分页参数 | 医嘱列表 |
|
||||
|
||||
### 3.4 护理记录
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 护理记录 | `/nursing-record/save-nursing` | POST | 护理记录 | 保存成功 |
|
||||
| 2. 体征记录 | `/vital-signs/record-saving` | PUT | 体征数据 | 保存成功 |
|
||||
| 3. 体征查询 | `/vital-signs/record-search` | GET | 查询参数 | 体征记录 |
|
||||
| 4. TPR表 | `/nursing-assessment/tpr/page` | GET | 分页参数 | TPR数据 |
|
||||
| 5. 交接班 | `/nursing-handoff/add` | POST | 交接信息 | 交接完成 |
|
||||
|
||||
### 测试数据
|
||||
```json
|
||||
// 入院登记
|
||||
{
|
||||
"patientId": 5001,
|
||||
"deptId": 1005,
|
||||
"bedNo": "ICU-01",
|
||||
"admissionDate": "2026-06-07",
|
||||
"diagnosis": "重症肺炎",
|
||||
"admissionDoctor": "刘七医生"
|
||||
}
|
||||
|
||||
// Braden评估
|
||||
{
|
||||
"patientName": "测试患者甲",
|
||||
"encounterId": 6006,
|
||||
"itemScores": "{\"sensation\":2,\"moisture\":2,\"activity\":1,\"mobility\":2,\"nutrition\":3,\"friction\":2}",
|
||||
"totalScore": 12,
|
||||
"riskLevel": "high",
|
||||
"detail": "压疮高危患者,需每2小时翻身"
|
||||
}
|
||||
|
||||
// Morse跌倒评估
|
||||
{
|
||||
"patientName": "测试患者乙",
|
||||
"encounterId": 6007,
|
||||
"itemScores": "{\"history\":15,\"diagnosis\":0,\"ambulation\":15,\"iv\":20,\"gait\":0,\"mental\":15}",
|
||||
"totalScore": 65,
|
||||
"riskLevel": "high",
|
||||
"detail": "跌倒高危患者,需加强防护"
|
||||
}
|
||||
|
||||
// 体征记录
|
||||
{
|
||||
"patientId": 5001,
|
||||
"encounterId": 6006,
|
||||
"temperature": 37.2,
|
||||
"pulse": 78,
|
||||
"respiration": 18,
|
||||
"bloodPressureSystolic": 125,
|
||||
"bloodPressureDiastolic": 82,
|
||||
"oxygenSaturation": 98.5
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 4. 药房管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
药品入库 → 库存管理 → 处方审核 → 药品发放 → 退药处理 → 药品盘点 → 库存预警
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[药库管理] [库存管理] [处方点评] [发药管理] [退药管理] [库存盘点] [库存预警]
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[PharmacyWarehouse] [Inventory] [Review] [WesternMedicine] [ReturnMedicine] [Stocktaking] [PharmacyStockAlert]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 药品入库 | `/pharmacy-warehouse/stock-in/add` | POST | 入库信息 | 入库成功 |
|
||||
| 2. 库存查询 | `/pharmacy-warehouse/stock-in/page` | GET | 分页参数 | 库存列表 |
|
||||
| 3. 西药发药 | `/pharmacy-manage/western-medicine-dispense/add` | POST | 发药信息 | 发药成功 |
|
||||
| 4. 退药处理 | `/pharmacy-manage/return-medicine/add` | POST | 退药信息 | 退药成功 |
|
||||
| 5. 药品盘点 | `/pharmacy-warehouse/stocktaking/add` | POST | 盘点信息 | 盘点完成 |
|
||||
| 6. 库存预警 | `/pharmacy-stock-alert/page` | GET | 分页参数 | 预警列表 |
|
||||
| 7. 药品效期 | `/drugtrace/expiry/page` | GET | 分页参数 | 效期预警 |
|
||||
|
||||
---
|
||||
|
||||
## 5. 检验检查全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
医生开单 → 检验申请 → 标本采集 → 标本接收 → 结果录入 → 结果审核 → 报告发布
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[门诊医生站] [检验申请] [标本采集] [标本接收] [结果录入] [结果审核] [报告发布]
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[DoctorStation] [LabApply] [SampleCollect] [LabReceive] [LabResult] [LabAudit] [LabReport]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 检验申请 | `/doctor-station/inspection/add` | POST | 申请信息 | 申请创建 |
|
||||
| 2. 标本采集 | `/inspection/collection/page` | GET | 分页参数 | 采集列表 |
|
||||
| 3. 标本确认 | `/inspection/collection/confirm` | POST | 标本信息 | 确认成功 |
|
||||
| 4. 检验结果 | `/inspection/laboratory/page` | GET | 分页参数 | 结果列表 |
|
||||
| 5. 结果审核 | `/inspection/laboratory/audit` | POST | 审核信息 | 审核完成 |
|
||||
| 6. 参考范围 | `/lab-ref-range/page` | GET | 分页参数 | 参考范围 |
|
||||
| 7. 检验历史 | `/inspection/history/page` | GET | 分页参数 | 历史记录 |
|
||||
|
||||
---
|
||||
|
||||
## 6. 影像检查全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
医生开单 → 影像申请 → 检查执行 → 影像采集 → 报告书写 → 报告审核 → 报告发布 → 影像对比
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[门诊医生站] [影像申请] [检查执行] [影像采集] [报告书写] [报告审核] [报告发布] [影像对比]
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[DoctorStation] [ExamApply] [ExamExec] [RadiologyImage] [RadiologyReport] [ReportAudit] [ReportPublish] [RadiologyComparison]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 影像申请 | `/check/examApply/add` | POST | 申请信息 | 申请创建 |
|
||||
| 2. 影像查询 | `/check/radiologyImage/page` | GET | 分页参数 | 影像列表 |
|
||||
| 3. 影像报告 | `/check/radiologyImage/report` | POST | 报告信息 | 报告创建 |
|
||||
| 4. 影像对比 | `/check/radiologyComparison/compare` | POST | 对比参数 | 对比结果 |
|
||||
| 5. 3D重建 | `/reconstruction/3d/analyze` | POST | 影像数据 | 重建结果 |
|
||||
|
||||
---
|
||||
|
||||
## 7. 手术管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
手术申请 → 术前讨论 → 手术排程 → 手术执行 → 术前核查 → 手术记录 → 术后随访
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[手术申请] [术前讨论] [手术排程] [手术执行] [术前核查] [手术记录] [术后随访]
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[ClinicalManage] [PreopDiscussion] [SurgicalSchedule] [SurgeryExec] [SurgerySafetyCheck] [SurgeryRecord] [AnesthesiaFollowup]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 手术申请 | `/clinical-manage/surgery/add` | POST | 手术信息 | 申请创建 |
|
||||
| 2. 术前讨论 | `/preopmanage/discussion/add` | POST | 讨论记录 | 讨论完成 |
|
||||
| 3. 手术排程 | `/clinical-manage/surgery-schedule/page` | GET | 分页参数 | 排程列表 |
|
||||
| 4. 术前核查 | `/surgery-safety-check/check` | POST | 核查信息 | 核查完成 |
|
||||
| 5. 手术记录 | `/clinical-manage/surgery/record` | POST | 手术记录 | 记录保存 |
|
||||
|
||||
---
|
||||
|
||||
## 8. 麻醉管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
麻醉评估 → 麻醉方案 → 麻醉执行 → 术中监测 → 苏醒评估 → 术后随访 → 麻醉质控
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[麻醉评估] [麻醉方案] [麻醉执行] [术中监测] [苏醒评估] [术后随访] [麻醉质控]
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[AnesthesiaEnhanced] [AnesthesiaPlan] [AnesthesiaExec] [AnesthesiaMonitor] [AnesthesiaRecovery] [AnesthesiaFollowup] [AnesthesiaQuality]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 麻醉评估 | `/anesthesia-enhanced/assessment/add` | POST | 评估数据 | 评估完成 |
|
||||
| 2. 麻醉记录 | `/api/v1/anesthesia/record/add` | POST | 记录数据 | 记录保存 |
|
||||
| 3. 术中监测 | `/api/v1/anesthesia/vital-signs` | POST | 监测数据 | 监测记录 |
|
||||
| 4. 麻醉质控 | `/anesthesia-quality-control/page` | GET | 分页参数 | 质控数据 |
|
||||
|
||||
---
|
||||
|
||||
## 9. 护理管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
护理评估 → 护理计划 → 护理执行 → 护理记录 → 体征监测 → 交接班 → 护理质量
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[护理评估] [护理计划] [护理执行] [护理记录] [体征监测] [交接班] [护理质量]
|
||||
↓ ↓ ↓ ↓ ↓ ↓ ↓
|
||||
[NursingAssess] [CarePlan] [NurseExec] [NursingRecord] [VitalSigns] [Handoff] [NursingQuality]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 护理评估 | `/nursing-assessment-enhanced/page` | GET | 分页参数 | 评估列表 |
|
||||
| 2. Braden评估 | `/nursing-assessment-enhanced/braden/assess` | POST | 评估数据 | 评估完成 |
|
||||
| 3. 护理计划 | `/nursing/care-plan/add` | POST | 计划信息 | 计划创建 |
|
||||
| 4. 护理执行 | `/nurse-station/advice-process/execute` | POST | 执行信息 | 执行完成 |
|
||||
| 5. 护理记录 | `/nursing-record/save-nursing` | POST | 记录信息 | 记录保存 |
|
||||
| 6. 交接班 | `/nursing-handoff/add` | POST | 交接信息 | 交接完成 |
|
||||
| 7. 护理质量 | `/nursing-quality/page` | GET | 分页参数 | 质量数据 |
|
||||
|
||||
---
|
||||
|
||||
## 10. 院感管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
感染监测 → 感染预警 → 耐药监测 → 职业暴露 → 手卫生 → 环境监测
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[院感监测] [院感预警] [耐药监测] [职业暴露] [手卫生] [环境监测]
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[InfectionTargeted] [InfectionWarning] [InfectionResistance] [InfectionExposure] [InfectionHandHygiene] [InfectionEnvironment]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 感染监测 | `/infection-enhanced/surveillance/page` | GET | 分页参数 | 监测数据 |
|
||||
| 2. 感染预警 | `/infection-enhanced/warning/page` | GET | 分页参数 | 预警列表 |
|
||||
| 3. 耐药监测 | `/infection-enhanced/resistance/page` | GET | 分页参数 | 耐药数据 |
|
||||
| 4. 职业暴露 | `/infection-enhanced/exposure/page` | GET | 分页参数 | 暴露记录 |
|
||||
| 5. 手卫生 | `/infection-enhanced/hand-hygiene/page` | GET | 分页参数 | 手卫生数据 |
|
||||
| 6. 环境监测 | `/infection-enhanced/environment/page` | GET | 分页参数 | 环境数据 |
|
||||
|
||||
---
|
||||
|
||||
## 11. 质量管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
运行质控 → 终末质控 → 缺陷记录 → 质量评分 → 整改追踪 → 质量统计
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[运行质控] [终末质控] [缺陷记录] [质量评分] [整改追踪] [质量统计]
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[QualityEnhanced] [EmrQuality] [EmrDefect] [QualityScore] [QualityTrack] [QualityStats]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 运行质控 | `/quality-enhanced/runtime/page` | GET | 分页参数 | 质控数据 |
|
||||
| 2. 终末质控 | `/api/v1/emr-quality/page` | GET | 分页参数 | 质控数据 |
|
||||
| 3. 缺陷记录 | `/quality-enhanced/defect/add` | POST | 缺陷信息 | 记录创建 |
|
||||
| 4. 质量评分 | `/quality-enhanced/score/add` | POST | 评分信息 | 评分完成 |
|
||||
| 5. 质量统计 | `/quality-enhanced/statistics/page` | GET | 分页参数 | 统计数据 |
|
||||
|
||||
---
|
||||
|
||||
## 12. 中医管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
体质辨识 → 辨证论治 → 方剂开具 → 中药处方 → 疗效评价
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[体质辨识] [辨证论治] [方剂管理] [中药处方] [疗效评价]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[TCMConstitution] [TCMDiagnosis] [TCMPrescription] [TCMOrder] [TCMEvaluation]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 体质辨识 | `/api/v1/tcm/constitution/add` | POST | 辨识数据 | 辨识完成 |
|
||||
| 2. 体质列表 | `/api/v1/tcm/constitution/page` | GET | 分页参数 | 体质列表 |
|
||||
| 3. 方剂列表 | `/api/v1/tcm/prescriptions` | GET | 分页参数 | 方剂列表 |
|
||||
| 4. 新增方剂 | `/api/v1/tcm/prescription` | POST | 方剂信息 | 方剂创建 |
|
||||
| 5. 统计查询 | `/api/v1/tcm/statistics` | GET | 分页参数 | 统计结果 |
|
||||
|
||||
---
|
||||
|
||||
## 13. 会诊管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
会诊申请 → 会诊邀请 → 会诊确认 → 会诊执行 → 会诊反馈 → 会诊超时
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[会诊申请] [会诊邀请] [会诊确认] [会诊执行] [会诊反馈] [会诊超时]
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[Consultation] [ConsultInvite] [ConsultConfirm] [ConsultExecute] [ConsultFeedback] [ConsultTimeout]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 会诊申请 | `/consultation/add` | POST | 会诊信息 | 申请创建 |
|
||||
| 2. 会诊确认 | `/consultation/confirm` | POST | 确认信息 | 确认完成 |
|
||||
| 3. 会诊反馈 | `/cross-module/consult-feedback/add` | POST | 反馈信息 | 反馈完成 |
|
||||
| 4. 会诊超时 | `/cross-module/consulttimeout/page` | GET | 分页参数 | 超时列表 |
|
||||
|
||||
---
|
||||
|
||||
## 14. 临床路径全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
路径定义 → 入径管理 → 路径执行 → 变异分析 → 效果评价
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[路径定义] [入径管理] [路径执行] [变异分析] [效果评价]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[ClinicalPathway] [PathwayEntry] [PathwayExec] [PathwayVariation] [PathwayEffect]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 路径列表 | `/clinical-pathway/page` | GET | 分页参数 | 路径列表 |
|
||||
| 2. 创建路径 | `/clinical-pathway/add` | POST | 路径信息 | 路径创建 |
|
||||
| 3. 入径 | `/clinical-pathway/enter` | POST | 入径信息 | 入径完成 |
|
||||
| 4. 完成路径 | `/clinical-pathway/complete/{id}` | PUT | 完成信息 | 路径完成 |
|
||||
| 5. 变异记录 | `/clinical-pathway/vary/{id}` | PUT | 变异信息 | 变异记录 |
|
||||
|
||||
---
|
||||
|
||||
## 15. 危急值管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
危急值产生 → 危急值通知 → 医生确认 → 处理措施 → 处理反馈
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[危急值产生] [危急值通知] [医生确认] [处理措施] [处理反馈]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[LabCritical] [CriticalNotify] [CriticalConfirm] [CriticalAction] [CriticalFeedback]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 危急值列表 | `/api/v1/critical-value/page` | GET | 分页参数 | 危急值列表 |
|
||||
| 2. 危急值确认 | `/api/v1/critical-value/confirm` | POST | 确认信息 | 确认完成 |
|
||||
| 3. 危急值处理 | `/api/v1/critical-value/handle` | POST | 处理信息 | 处理完成 |
|
||||
|
||||
---
|
||||
|
||||
## 16. 处方点评全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
点评计划 → 处方抽取 → 点评审核 → 问题反馈 → 整改追踪 → 统计分析
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[点评计划] [处方抽取] [点评审核] [问题反馈] [整改追踪] [统计分析]
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[ReviewPlan] [ReviewExtract] [ReviewAudit] [ReviewFeedback] [ReviewTrack] [ReviewStats]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 点评计划 | `/api/v1/review/plans` | GET | 分页参数 | 计划列表 |
|
||||
| 2. 创建计划 | `/api/v1/review/plan` | POST | 计划信息 | 计划创建 |
|
||||
| 3. 点评记录 | `/api/v1/review/records` | GET | 分页参数 | 记录列表 |
|
||||
| 4. 统计分析 | `/api/v1/review/statistics` | GET | 分页参数 | 统计数据 |
|
||||
|
||||
---
|
||||
|
||||
## 17. 急诊管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
急诊分诊 → 绿色通道 → 急诊抢救 → 观察处置 → 急诊留观 → 转科/出院
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[急诊分诊] [绿色通道] [急诊抢救] [观察处置] [急诊留观] [转科/出院]
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[TriageQueue] [GreenChannel] [EmergencyRescue] [EmergencyObs] [EmergencyTriage] [Transfer]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 急诊分诊 | `/triage/queue/add` | POST | 分诊信息 | 分诊完成 |
|
||||
| 2. 绿色通道 | `/emergency/green-channel/add` | POST | 通道信息 | 通道开启 |
|
||||
| 3. 急诊抢救 | `/emergency/rescue/add` | POST | 抢救信息 | 抢救记录 |
|
||||
| 4. 观察处置 | `/emergency/observation/add` | POST | 处置信息 | 处置完成 |
|
||||
|
||||
---
|
||||
|
||||
## 18. 医保管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
医保目录 → 门诊登记 → 门诊结算 → 住院登记 → 住院结算 → 日终结算
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[医保目录] [门诊登记] [门诊结算] [住院登记] [住院结算] [日终结算]
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[YbCatalog] [YbReg] [YbSettle] [YbInpatientReg] [YbInpatientSettle] [YbDayEnd]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 医保目录 | `/ybmanage/catalog/page` | GET | 分页参数 | 目录列表 |
|
||||
| 2. 门诊登记 | `/yb-request/reg` | POST | 登记信息 | 登记成功 |
|
||||
| 3. 门诊结算 | `/yb-request/settle` | POST | 结算信息 | 结算成功 |
|
||||
| 4. 住院登记 | `/yb-inpatient-request/reg` | POST | 登记信息 | 登记成功 |
|
||||
| 5. 住院结算 | `/yb-inpatient-request/settle` | POST | 结算信息 | 结算成功 |
|
||||
|
||||
---
|
||||
|
||||
## 19. DRG分析全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
DRG分组 → 成本分析 → 效率分析 → 绩效评价 → 预警提示
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[DRG分组] [成本分析] [效率分析] [绩效评价] [预警提示]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[DRGGrouping] [DRGCost] [DRGEfficiency] [DRGPerformance] [DRGAlert]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. DRG分析 | `/api/v1/mr-homepage/drg/page` | GET | 分页参数 | DRG数据 |
|
||||
| 2. 成本预警 | `/cross-module/enhanced-drg-alert/page` | GET | 分页参数 | 预警列表 |
|
||||
| 3. 绩效分析 | `/cross-module/drgperf/page` | GET | 分页参数 | 绩效数据 |
|
||||
|
||||
---
|
||||
|
||||
## 20. 抗菌药物管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
用药申请 → 审批管理 → 用药监测 → 分级管理 → 统计分析
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[用药申请] [审批管理] [用药监测] [分级管理] [统计分析]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[AntibioticApproval] [AntibioticAudit] [AntibioticMonitor] [AntibioticLevel] [AntibioticStats]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 抗菌药物列表 | `/api/v1/antibiotic/page` | GET | 分页参数 | 药物列表 |
|
||||
| 2. 用药审批 | `/api/v1/antibiotic/approval/add` | POST | 审批信息 | 审批完成 |
|
||||
| 3. 用药监测 | `/api/v1/antibiotic/monitor/page` | GET | 分页参数 | 监测数据 |
|
||||
| 4. 统计分析 | `/api/v1/antibiotic/statistics` | GET | 分页参数 | 统计结果 |
|
||||
|
||||
---
|
||||
|
||||
## 21. 药品追溯管理全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
追溯码管理 → 批次管理 → 扫码追溯 → 效期预警 → 追溯统计
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[追溯码管理] [批次管理] [扫码追溯] [效期预警] [追溯统计]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[DrugTraceCode] [DrugTraceBatch] [DrugTraceScan] [DrugTraceAlert] [DrugTraceStats]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 追溯码管理 | `/drugtrace/page` | GET | 分页参数 | 追溯码列表 |
|
||||
| 2. 扫码追溯 | `/drugtrace/scan` | POST | 扫码信息 | 追溯结果 |
|
||||
| 3. 效期预警 | `/drugtrace/expiry/page` | GET | 分页参数 | 预警列表 |
|
||||
|
||||
---
|
||||
|
||||
## 22. EMPI主索引全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
患者注册 → 索引建立 → 身份匹配 → 信息合并 → 查询检索
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[患者注册] [索引建立] [身份匹配] [信息合并] [查询检索]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[EMPIPerson] [EMPIIndex] [EMPIMatch] [EMPIMerge] [EMPIQuery]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 患者索引 | `/api/v1/empi/page` | GET | 分页参数 | 索引列表 |
|
||||
| 2. 身份验证 | `/api/v1/empi/verify` | POST | 验证信息 | 验证结果 |
|
||||
| 3. 信息合并 | `/api/v1/empi/merge` | POST | 合并信息 | 合并完成 |
|
||||
|
||||
---
|
||||
|
||||
## 23. ESB数据集成全流程
|
||||
|
||||
### 流程图
|
||||
```
|
||||
服务注册 → 消息发送 → 消息接收 → 数据转换 → 接口监控
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[服务注册] [消息发送] [消息接收] [数据转换] [接口监控]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[ServiceRegistry] [ESBSend] [ESBReceive] [ESBConvert] [ESBMonitor]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 服务注册 | `/esbmanage/registry/page` | GET | 分页参数 | 服务列表 |
|
||||
| 2. 消息监控 | `/esbmanage/message/page` | GET | 分页参数 | 消息列表 |
|
||||
| 3. 可靠性监控 | `/esbmanage/reliability/page` | GET | 分页参数 | 可靠性数据 |
|
||||
|
||||
---
|
||||
|
||||
## 24. 电子签名管理全流程
|
||||
|
||||
### 流图
|
||||
```
|
||||
签名申请 → CA验证 → 签名执行 → 签名验证 → 统计查询
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[签名申请] [CA验证] [签名执行] [签名验证] [统计查询]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[CaSignature] [CaVerify] [CaSign] [CaValidate] [CaStats]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 签名管理 | `/api/v1/ca-signature/page` | GET | 分页参数 | 签名列表 |
|
||||
| 2. 签名日志 | `/api/v1/ca-signature/logs` | GET | 分页参数 | 日志列表 |
|
||||
| 3. 统计查询 | `/api/v1/ca-signature/statistics` | GET | 分页参数 | 统计数据 |
|
||||
|
||||
---
|
||||
|
||||
## 25. 病案管理全流程
|
||||
|
||||
### 流图
|
||||
```
|
||||
病案首页 → 病案归档 → 病案检索 → 病案借阅 → 质量检查
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[病案首页] [病案归档] [病案检索] [病案借阅] [质量检查]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[MrHomepage] [MrArchive] [MrSearch] [MrBorrow] [MrQuality]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 病案首页 | `/api/v1/mr-homepage/page` | GET | 分页参数 | 首页列表 |
|
||||
| 2. 病案归档 | `/api/v1/emr/archive/add` | POST | 归档信息 | 归档完成 |
|
||||
| 3. 病案检索 | `/api/v1/emr/search` | GET | 检索参数 | 检索结果 |
|
||||
| 4. 病案借阅 | `/api/v1/mr-homepage/borrow` | POST | 借阅信息 | 借阅完成 |
|
||||
|
||||
---
|
||||
|
||||
## 26. 随访管理全流程
|
||||
|
||||
### 流图
|
||||
```
|
||||
随访计划 → 随访任务 → 随访执行 → 随访记录 → 效果评价
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[随访计划] [随访任务] [随访执行] [随访记录] [效果评价]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[FollowupPlan] [FollowupTask] [FollowupExec] [FollowupRecord] [FollowupEffect]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 随访计划 | `/followup/plan/page` | GET | 分页参数 | 计划列表 |
|
||||
| 2. 创建计划 | `/followup/plan/add` | POST | 计划信息 | 计划创建 |
|
||||
| 3. 随访记录 | `/followup/record/page` | GET | 分页参数 | 记录列表 |
|
||||
|
||||
---
|
||||
|
||||
## 27. 知情同意管理全流程
|
||||
|
||||
### 流图
|
||||
```
|
||||
同意书模板 → 患者签署 → 签署确认 → 存档管理 → 查询统计
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[同意书模板] [患者签署] [签署确认] [存档管理] [查询统计]
|
||||
↓ ↓ ↓ ↓ ↓
|
||||
[ConsentTemplate] [ConsentSign] [ConsentConfirm] [ConsentArchive] [ConsentStats]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 知情同意 | `/api/v1/informed-consent/page` | GET | 分页参数 | 同意列表 |
|
||||
| 2. 签署同意 | `/api/v1/informed-consent/sign` | POST | 签署信息 | 签署完成 |
|
||||
| 3. ID验证 | `/api/v1/empi/id-verification/verify` | POST | 验证信息 | 验证结果 |
|
||||
|
||||
---
|
||||
|
||||
## 28. 消毒供应中心全流程
|
||||
|
||||
### 流图
|
||||
```
|
||||
器械回收 → 清洗消毒 → 包装灭菌 → 质量检测 → 发放使用 → 追溯查询
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[器械回收] [清洗消毒] [包装灭菌] [质量检测] [发放使用] [追溯查询]
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[CssdRecover] [CssdClean] [CssdSterilize] [CssdQC] [CssdDistribute] [CssdTrace]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 消毒追溯 | `/cssd/trace/page` | GET | 分页参数 | 追溯记录 |
|
||||
| 2. 灭菌批次 | `/cssd/batch/add` | POST | 批次信息 | 批次创建 |
|
||||
| 3. 质量检测 | `/cssd/qc/check` | POST | 检测信息 | 检测完成 |
|
||||
|
||||
---
|
||||
|
||||
## 29. 合理用药全流程
|
||||
|
||||
### 流图
|
||||
```
|
||||
用药审核 → 相互作用 → 用药统计 → 审计日志
|
||||
↓ ↓ ↓ ↓
|
||||
[用药审核] [相互作用] [用药统计] [审计日志]
|
||||
↓ ↓ ↓ ↓
|
||||
[RationalDrug] [DrugInteraction] [RationalStats] [RationalAudit]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 合理用药 | `/api/v1/rational-drug/page` | GET | 分页参数 | 审核列表 |
|
||||
| 2. 相互作用 | `/api/v1/rational-drug/interaction/page` | GET | 分页参数 | 作用列表 |
|
||||
| 3. 用药统计 | `/api/v1/rational-drug/statistics` | GET | 分页参数 | 统计数据 |
|
||||
| 4. 审计日志 | `/api/v1/rational-drug/audit-log` | GET | 分页参数 | 日志列表 |
|
||||
|
||||
---
|
||||
|
||||
## 30. 收费管理全流程
|
||||
|
||||
### 流图
|
||||
```
|
||||
收费初始化 → 门诊收费 → 住院收费 → 退费处理 → 结算查询 → 发票管理
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[收费初始化] [门诊收费] [住院收费] [退费处理] [结算查询] [发票管理]
|
||||
↓ ↓ ↓ ↓ ↓ ↓
|
||||
[ChargeInit] [OutpatientCharge] [InpatientCharge] [Refund] [SettlementQuery] [Invoice]
|
||||
```
|
||||
|
||||
### API接口清单
|
||||
| 步骤 | API接口 | 方法 | 参数 | 预期结果 |
|
||||
|------|---------|------|------|----------|
|
||||
| 1. 门诊收费 | `/charge-manage/charge/add` | POST | 收费信息 | 收费成功 |
|
||||
| 2. 住院收费 | `/charge-manage/inpatient-charge/add` | POST | 收费信息 | 收费成功 |
|
||||
| 3. 退费处理 | `/charge-manage/refund/add` | POST | 退费信息 | 退费成功 |
|
||||
| 4. 结算查询 | `/charge-manage/charge/page` | GET | 分页参数 | 结算记录 |
|
||||
| 5. 发票管理 | `/basicmanage/invoice/page` | GET | 分页参数 | 发票列表 |
|
||||
|
||||
---
|
||||
|
||||
## 附录A:测试数据ID映射表
|
||||
|
||||
| 数据类型 | 测试ID | 说明 |
|
||||
|----------|--------|------|
|
||||
| 患者 | 5001-5008 | 8个测试患者 |
|
||||
| 门诊就诊 | 6001-6005 | 5个门诊就诊 |
|
||||
| 住院就诊 | 6006-6009 | 4个住院就诊 |
|
||||
| 急诊就诊 | 6011-6012 | 2个急诊就诊 |
|
||||
| 检查申请 | 8001-8003 | 3个检查申请 |
|
||||
| 检验申请 | 10001-10003 | 3个检验申请 |
|
||||
| 影像报告 | 11001-11003 | 3个影像报告 |
|
||||
| 手术记录 | 12001-12002 | 2个手术记录 |
|
||||
| 麻醉记录 | 13001-13002 | 2个麻醉记录 |
|
||||
| 护理评估 | 14001-14003 | 3个护理评估 |
|
||||
| 体征记录 | 15001-15004 | 4个体征记录 |
|
||||
| 院感记录 | 16001-16002 | 2个院感记录 |
|
||||
| 手卫生 | 17001-17002 | 2个手卫生记录 |
|
||||
| 质控评分 | 18001-18003 | 3个质控评分 |
|
||||
| 中医体质 | 19001-19002 | 2个体质评估 |
|
||||
| 中药方剂 | 20001-20003 | 3个中药方剂 |
|
||||
| 会诊记录 | 21001-21002 | 2个会诊记录 |
|
||||
| 临床路径 | 22001-22003 | 3个临床路径 |
|
||||
| 危急值 | 23001-23002 | 2个危急值 |
|
||||
| 电子病历 | 24001-24003 | 3个电子病历 |
|
||||
| 处方请求 | 25001-25003 | 3个处方请求 |
|
||||
| 药品预警 | 26001-26002 | 2个药品预警 |
|
||||
| 抗菌审批 | 27001-27002 | 2个抗菌审批 |
|
||||
| 药品追溯 | 28001-28002 | 2个追溯记录 |
|
||||
| 处方点评 | 29001-29002 | 2个点评计划 |
|
||||
| DRG分析 | 30001-30002 | 2个DRG分析 |
|
||||
| 随访计划 | 31001-31002 | 2个随访计划 |
|
||||
| 知情同意 | 32001-32002 | 2个知情同意 |
|
||||
| 消毒灭菌 | 33001-33002 | 2个灭菌批次 |
|
||||
| EMPI索引 | 34001-34002 | 2个EMPI索引 |
|
||||
| ESB服务 | 35001-35003 | 3个ESB服务 |
|
||||
| 急诊通道 | 36001-36002 | 2个绿色通道 |
|
||||
| 病案首页 | 37001-37002 | 2个病案首页 |
|
||||
| 医嘱主表 | 38001-38003 | 3个医嘱 |
|
||||
| 护理质量 | 39001-39004 | 4个质量指标 |
|
||||
| 抗菌使用 | 40001-40002 | 2个抗菌使用 |
|
||||
| DRG分组 | 41001-41002 | 2个DRG分组 |
|
||||
| 满意度 | 42001-42002 | 2个满意度调查 |
|
||||
| 交接班 | 43001 | 1个交接班记录 |
|
||||
|
||||
## 附录B:API接口完整清单
|
||||
|
||||
### 系统管理
|
||||
- `/login` - 用户登录
|
||||
- `/getInfo` - 获取用户信息
|
||||
- `/getRouters` - 获取路由
|
||||
- `/logout` - 退出登录
|
||||
- `/captchaImage` - 验证码
|
||||
|
||||
### 门诊管理
|
||||
- `/charge-manage/register/*` - 挂号管理
|
||||
- `/doctor-station/main/*` - 门诊医生站
|
||||
- `/doctor-station/advice/*` - 医嘱管理
|
||||
- `/doctor-station/diagnosis/*` - 诊断管理
|
||||
- `/doctor-station/inspection/*` - 检查申请
|
||||
- `/outpatient-manage/treatment/*` - 门诊治疗
|
||||
- `/outpatient-manage/skin-test/*` - 皮试管理
|
||||
- `/outpatient-manage/infusion/*` - 输液管理
|
||||
|
||||
### 住院管理
|
||||
- `/inhospitalmanage/*` - 住院管理
|
||||
- `/patient-home-manage/*` - 患者主页
|
||||
- `/deposit-manage/*` - 押金管理
|
||||
- `/nursing-record/*` - 护理记录
|
||||
- `/vital-signs/*` - 体征记录
|
||||
- `/vital-signs-chart/*` - 体征图表
|
||||
|
||||
### 药房管理
|
||||
- `/pharmacy-manage/*` - 药房管理
|
||||
- `/pharmacy-warehouse/*` - 药库管理
|
||||
- `/pharmacy-stock-alert/*` - 库存预警
|
||||
- `/medication-management/*` - 药品管理
|
||||
|
||||
### 检验检查
|
||||
- `/inspection/*` - 检验管理
|
||||
- `/check/*` - 检查管理
|
||||
- `/lab-ref-range/*` - 参考范围
|
||||
|
||||
### 手术麻醉
|
||||
- `/clinical-manage/surgery/*` - 手术管理
|
||||
- `/clinical-manage/surgery-schedule/*` - 手术排程
|
||||
- `/anesthesia-enhanced/*` - 麻醉增强
|
||||
- `/anesthesia-quality-control/*` - 麻醉质控
|
||||
- `/surgery-safety-check/*` - 手术安全核查
|
||||
|
||||
### 护理管理
|
||||
- `/nursing-assessment-enhanced/*` - 护理评估
|
||||
- `/nursing/*` - 护理管理
|
||||
- `/nursing-quality/*` - 护理质量
|
||||
- `/nurse-station/*` - 护士站
|
||||
|
||||
### 院感管理
|
||||
- `/infection-enhanced/*` - 院感增强
|
||||
|
||||
### 质量管理
|
||||
- `/quality-enhanced/*` - 质量增强
|
||||
- `/api/v1/emr-quality/*` - 病历质量
|
||||
|
||||
### 中医管理
|
||||
- `/api/v1/tcm/*` - 中医管理
|
||||
|
||||
### 会诊管理
|
||||
- `/consultation/*` - 会诊管理
|
||||
- `/cross-module/*` - 跨模块联动
|
||||
|
||||
### 临床路径
|
||||
- `/clinical-pathway/*` - 临床路径
|
||||
|
||||
### 危急值管理
|
||||
- `/api/v1/critical-value/*` - 危急值管理
|
||||
|
||||
### 处方点评
|
||||
- `/api/v1/review/*` - 处方点评
|
||||
|
||||
### 合理用药
|
||||
- `/api/v1/rational-drug/*` - 合理用药
|
||||
|
||||
### 药品追溯
|
||||
- `/drugtrace/*` - 药品追溯
|
||||
|
||||
### EMPI主索引
|
||||
- `/api/v1/empi/*` - EMPI管理
|
||||
|
||||
### ESB集成
|
||||
- `/esbmanage/*` - ESB管理
|
||||
|
||||
### 电子签名
|
||||
- `/api/v1/ca-signature/*` - 电子签名
|
||||
|
||||
### 病案管理
|
||||
- `/api/v1/mr-homepage/*` - 病案首页
|
||||
- `/api/v1/emr/*` - 电子病历
|
||||
|
||||
### 随访管理
|
||||
- `/followup/*` - 随访管理
|
||||
|
||||
### 知情同意
|
||||
- `/api/v1/informed-consent/*` - 知情同意
|
||||
|
||||
### 消毒供应
|
||||
- `/cssd/*` - 消毒供应
|
||||
|
||||
### 急诊管理
|
||||
- `/emergency/*` - 急诊管理
|
||||
- `/triage/*` - 分诊管理
|
||||
|
||||
### 医保管理
|
||||
- `/yb-request/*` - 医保请求
|
||||
- `/ybelep-request/*` - 医保电子处方
|
||||
- `/yb-inpatient-request/*` - 医保住院
|
||||
|
||||
### 经营分析
|
||||
- `/business-analytics/*` - 经营分析
|
||||
|
||||
### 报表管理
|
||||
- `/report-manage/*` - 报表管理
|
||||
- `/report/*` - 报表统计
|
||||
|
||||
### 系统工具
|
||||
- `/dashboard/*` - 仪表盘
|
||||
- `/api-auth/*` - API认证
|
||||
- `/audit-log/*` - 审计日志
|
||||
- `/data-export/*` - 数据导出
|
||||
513
MD/test/03_test_api_comprehensive.sh
Executable file
513
MD/test/03_test_api_comprehensive.sh
Executable file
@@ -0,0 +1,513 @@
|
||||
#!/bin/bash
|
||||
# ============================================================
|
||||
# HealthLink-HIS 三甲医院全流程自动化测试脚本
|
||||
# 版本: v2.0
|
||||
# 日期: 2026-06-07
|
||||
# 说明: 覆盖所有业务模块的API接口测试
|
||||
# ============================================================
|
||||
|
||||
BASE_URL="http://localhost:18082/healthlink-his"
|
||||
REPORT_DIR="MD/test/reports"
|
||||
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
||||
REPORT_FILE="${REPORT_DIR}/test_report_${TIMESTAMP}.md"
|
||||
PASS_COUNT=0
|
||||
FAIL_COUNT=0
|
||||
TOTAL_COUNT=0
|
||||
|
||||
# 颜色输出
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
NC='\033[0m'
|
||||
|
||||
# 创建报告目录
|
||||
mkdir -p "${REPORT_DIR}"
|
||||
|
||||
# 初始化报告
|
||||
init_report() {
|
||||
cat > "${REPORT_FILE}" << 'HEADER'
|
||||
# HealthLink-HIS 三甲医院全流程测试报告
|
||||
|
||||
## 测试环境
|
||||
- **后端**: http://localhost:18082/healthlink-his
|
||||
- **数据库**: PostgreSQL 192.168.110.252:15432
|
||||
- **测试时间**: TIMESTAMP_PLACEHOLDER
|
||||
|
||||
## 测试结果汇总
|
||||
|
||||
| 模块 | 测试用例数 | 通过数 | 失败数 | 通过率 |
|
||||
|------|-----------|--------|--------|--------|
|
||||
|
||||
## 详细测试结果
|
||||
|
||||
HEADER
|
||||
sed -i "s/TIMESTAMP_PLACEHOLDER/$(date '+%Y-%m-%d %H:%M:%S')/" "${REPORT_FILE}"
|
||||
}
|
||||
|
||||
# 登录获取Token
|
||||
login() {
|
||||
echo -e "${YELLOW}>>> 登录系统...${NC}"
|
||||
RESPONSE=$(curl -s -X POST "${BASE_URL}/login" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"username":"admin","password":"admin123","tenantId":"1"}')
|
||||
|
||||
TOKEN=$(echo "$RESPONSE" | python3 -c "import sys,json; print(json.load(sys.stdin).get('token',''))" 2>/dev/null)
|
||||
|
||||
if [ -z "$TOKEN" ]; then
|
||||
echo -e "${RED}❌ 登录失败!${NC}"
|
||||
echo "响应: $RESPONSE"
|
||||
return 1
|
||||
fi
|
||||
|
||||
echo -e "${GREEN}✅ 登录成功,Token获取完成${NC}"
|
||||
return 0
|
||||
}
|
||||
|
||||
# 测试API接口
|
||||
test_api() {
|
||||
local module="$1"
|
||||
local step="$2"
|
||||
local method="$3"
|
||||
local endpoint="$4"
|
||||
local data="$5"
|
||||
local expected_code="$6"
|
||||
local description="$7"
|
||||
|
||||
TOTAL_COUNT=$((TOTAL_COUNT + 1))
|
||||
|
||||
# 构建curl命令
|
||||
local curl_cmd="curl -s -w '\n%{http_code}' -X ${method} '${BASE_URL}${endpoint}' -H 'Content-Type: application/json' -H 'Authorization: Bearer ${TOKEN}'"
|
||||
|
||||
if [ -n "$data" ] && [ "$data" != "null" ]; then
|
||||
curl_cmd="${curl_cmd} -d '${data}'"
|
||||
fi
|
||||
|
||||
# 执行请求
|
||||
local response=$(eval "$curl_cmd" 2>/dev/null)
|
||||
local http_code=$(echo "$response" | tail -1)
|
||||
local body=$(echo "$response" | head -n -1)
|
||||
|
||||
# 检查结果
|
||||
local status="❌ FAIL"
|
||||
local color="${RED}"
|
||||
|
||||
if [ "$http_code" = "$expected_code" ]; then
|
||||
# 额外检查业务逻辑(如果返回200,检查是否有有效数据)
|
||||
if [ "$http_code" = "200" ]; then
|
||||
local has_data=$(echo "$body" | python3 -c "
|
||||
import sys, json
|
||||
try:
|
||||
d = json.load(sys.stdin)
|
||||
if 'rows' in d or 'data' in d or 'msg' in d or 'code' in d:
|
||||
print('ok')
|
||||
else:
|
||||
print('no_data')
|
||||
except:
|
||||
print('error')
|
||||
" 2>/dev/null)
|
||||
|
||||
if [ "$has_data" = "ok" ] || [ "$has_data" = "no_data" ]; then
|
||||
status="✅ PASS"
|
||||
color="${GREEN}"
|
||||
PASS_COUNT=$((PASS_COUNT + 1))
|
||||
else
|
||||
status="⚠️ PARTIAL"
|
||||
color="${YELLOW}"
|
||||
PASS_COUNT=$((PASS_COUNT + 1))
|
||||
fi
|
||||
else
|
||||
status="✅ PASS"
|
||||
color="${GREEN}"
|
||||
PASS_COUNT=$((PASS_COUNT + 1))
|
||||
fi
|
||||
else
|
||||
FAIL_COUNT=$((FAIL_COUNT + 1))
|
||||
fi
|
||||
|
||||
# 输出结果
|
||||
echo -e "${color}${status}${NC} [${module}] ${step}: ${description}"
|
||||
echo " 接口: ${method} ${endpoint}"
|
||||
echo " 状态码: ${http_code} (预期: ${expected_code})"
|
||||
|
||||
# 写入报告
|
||||
echo "| ${module} | ${step} | ${method} | ${endpoint} | ${http_code} | ${expected_code} | ${status} | ${description} |" >> "${REPORT_FILE}"
|
||||
}
|
||||
|
||||
# ============================
|
||||
# 测试模块1: 系统登录认证
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块1: 系统登录认证 ==========${NC}"
|
||||
echo "### 模块1: 系统登录认证" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "认证" "1.1" "GET" "/captchaImage" "" "200" "获取验证码"
|
||||
test_api "认证" "1.2" "POST" "/login" '{"username":"admin","password":"admin123","tenantId":"1"}' "200" "用户登录"
|
||||
test_api "认证" "1.3" "GET" "/getInfo" "" "200" "获取用户信息"
|
||||
test_api "认证" "1.4" "GET" "/getRouters" "" "200" "获取路由菜单"
|
||||
test_api "认证" "1.5" "POST" "/logout" "" "200" "退出登录"
|
||||
|
||||
# 重新登录获取Token
|
||||
login
|
||||
|
||||
# ============================
|
||||
# 测试模块2: 门诊就诊流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块2: 门诊就诊流程 ==========${NC}"
|
||||
echo "### 模块2: 门诊就诊流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "挂号" "2.1" "GET" "/charge-manage/register/init" "" "200" "挂号初始化"
|
||||
test_api "挂号" "2.2" "GET" "/charge-manage/register/page?pageNum=1&pageSize=10" "" "200" "挂号列表查询"
|
||||
test_api "挂号" "2.3" "GET" "/charge-manage/register/patient?searchKey=测试" "" "200" "查询患者信息"
|
||||
|
||||
test_api "医生站" "2.4" "GET" "/doctor-station/main/patient-list" "" "200" "待诊患者列表"
|
||||
test_api "医生站" "2.5" "GET" "/doctor-station/advice/page?pageNum=1&pageSize=10" "" "200" "医嘱列表查询"
|
||||
test_api "医生站" "2.6" "GET" "/doctor-station/diagnosis/page?pageNum=1&pageSize=10" "" "200" "诊断列表查询"
|
||||
|
||||
test_api "收费" "2.7" "GET" "/charge-manage/charge/init" "" "200" "收费初始化"
|
||||
test_api "收费" "2.8" "GET" "/charge-manage/charge/page?pageNum=1&pageSize=10" "" "200" "收费记录查询"
|
||||
test_api "收费" "2.9" "GET" "/charge-manage/refund/page?pageNum=1&pageSize=10" "" "200" "退费记录查询"
|
||||
|
||||
test_api "输液" "2.10" "GET" "/outpatient-manage/infusion/init" "" "200" "输液管理初始化"
|
||||
test_api "输液" "2.11" "GET" "/outpatient-manage/infusion/infusion-patient-list" "" "200" "输液患者列表"
|
||||
test_api "皮试" "2.12" "GET" "/outpatient-manage/skin-test/init" "" "200" "皮试管理初始化"
|
||||
test_api "治疗" "2.13" "GET" "/outpatient-manage/treatment/page?pageNum=1&pageSize=10" "" "200" "治疗记录查询"
|
||||
|
||||
# ============================
|
||||
# 测试模块3: 住院入院流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块3: 住院入院流程 ==========${NC}"
|
||||
echo "### 模块3: 住院入院流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "入院" "3.1" "GET" "/inhospitalmanage/register/page?pageNum=1&pageSize=10" "" "200" "入院登记列表"
|
||||
test_api "患者主页" "3.2" "GET" "/patient-home-manage/init" "" "200" "患者主页初始化"
|
||||
test_api "患者主页" "3.3" "GET" "/patient-home-manage/empty-bed" "" "200" "空床查询"
|
||||
test_api "押金" "3.4" "GET" "/deposit-manage/init" "" "200" "押金管理初始化"
|
||||
test_api "押金" "3.5" "GET" "/deposit-manage/deposit-page?pageNum=1&pageSize=10" "" "200" "押金记录查询"
|
||||
test_api "住院收费" "3.6" "GET" "/charge-manage/inpatient-charge/page?pageNum=1&pageSize=10" "" "200" "住院收费记录"
|
||||
|
||||
# ============================
|
||||
# 测试模块4: 护理管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块4: 护理管理流程 ==========${NC}"
|
||||
echo "### 模块4: 护理管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "护理评估" "4.1" "GET" "/nursing-assessment-enhanced/page?pageNum=1&pageSize=10" "" "200" "护理评估列表"
|
||||
test_api "护理评估" "4.2" "GET" "/nursing-assessment-enhanced/stats" "" "200" "护理评估统计"
|
||||
test_api "护理评估" "4.3" "POST" "/nursing-assessment-enhanced/braden/assess" '{"patientName":"测试患者甲","encounterId":"6006","itemScores":"{\"sensation\":2,\"moisture\":2,\"activity\":1,\"mobility\":2,\"nutrition\":3,\"friction\":2}","detail":"压疮高危患者"}' "200" "Braden压疮评估"
|
||||
test_api "护理评估" "4.4" "POST" "/nursing-assessment-enhanced/morse/assess" '{"patientName":"测试患者乙","encounterId":"6007","itemScores":"{\"history\":15,\"diagnosis\":0,\"ambulation\":15,\"iv\":20,\"gait\":0,\"mental\":15}","detail":"跌倒高危患者"}' "200" "Morse跌倒评估"
|
||||
|
||||
test_api "护理记录" "4.5" "GET" "/nursing-record/patient-page?pageNum=1&pageSize=10" "" "200" "护理记录患者列表"
|
||||
test_api "体征" "4.6" "GET" "/vital-signs/record-search" "" "200" "体征记录查询"
|
||||
test_api "体征图表" "4.7" "GET" "/vital-signs-chart/page?pageNum=1&pageSize=10" "" "200" "体征图表查询"
|
||||
|
||||
test_api "护理执行" "4.8" "GET" "/nurse-station/advice-process/page?pageNum=1&pageSize=10" "" "200" "护理执行列表"
|
||||
test_api "交接班" "4.9" "GET" "/nursing-handoff/page?pageNum=1&pageSize=10" "" "200" "交接班记录"
|
||||
test_api "护理质量" "4.10" "GET" "/nursing-quality/page?pageNum=1&pageSize=10" "" "200" "护理质量指标"
|
||||
|
||||
# ============================
|
||||
# 测试模块5: 检验检查流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块5: 检验检查流程 ==========${NC}"
|
||||
echo "### 模块5: 检验检查流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "标本采集" "5.1" "GET" "/inspection/collection/page?pageNum=1&pageSize=10" "" "200" "标本采集列表"
|
||||
test_api "检验观察" "5.2" "GET" "/inspection/observation/page?pageNum=1&pageSize=10" "" "200" "检验观察列表"
|
||||
test_api "标本定义" "5.3" "GET" "/inspection/specimen/page?pageNum=1&pageSize=10" "" "200" "标本定义列表"
|
||||
test_api "LIS配置" "5.4" "GET" "/inspection/lisConfig/page?pageNum=1&pageSize=10" "" "200" "LIS配置列表"
|
||||
test_api "仪器管理" "5.5" "GET" "/inspection/instrument/page?pageNum=1&pageSize=10" "" "200" "仪器管理列表"
|
||||
test_api "检验结果" "5.6" "GET" "/inspection/laboratory/page?pageNum=1&pageSize=10" "" "200" "检验结果列表"
|
||||
test_api "参考范围" "5.7" "GET" "/lab-ref-range/page?pageNum=1&pageSize=10" "" "200" "参考范围列表"
|
||||
test_api "检查申请" "5.8" "GET" "/check/examApply/page?pageNum=1&pageSize=10" "" "200" "检查申请列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块6: 影像检查流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块6: 影像检查流程 ==========${NC}"
|
||||
echo "### 模块6: 影像检查流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "影像" "6.1" "GET" "/check/radiologyImage/page?pageNum=1&pageSize=10" "" "200" "影像列表查询"
|
||||
test_api "影像增强" "6.2" "GET" "/check/radiologyEnhanced/page?pageNum=1&pageSize=10" "" "200" "影像增强列表"
|
||||
test_api "影像对比" "6.3" "GET" "/check/radiologyComparison/page?pageNum=1&pageSize=10" "" "200" "影像对比列表"
|
||||
test_api "3D重建" "6.4" "GET" "/reconstruction/3d/page?pageNum=1&pageSize=10" "" "200" "3D重建列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块7: 手术管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块7: 手术管理流程 ==========${NC}"
|
||||
echo "### 模块7: 手术管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "手术" "7.1" "GET" "/clinical-manage/surgery/page?pageNum=1&pageSize=10" "" "200" "手术列表查询"
|
||||
test_api "手术排程" "7.2" "GET" "/clinical-manage/surgery-schedule/page?pageNum=1&pageSize=10" "" "200" "手术排程列表"
|
||||
test_api "术前讨论" "7.3" "GET" "/preopmanage/discussion/page?pageNum=1&pageSize=10" "" "200" "术前讨论列表"
|
||||
test_api "安全核查" "7.4" "GET" "/surgery-safety-check/page?pageNum=1&pageSize=10" "" "200" "手术安全核查列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块8: 麻醉管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块8: 麻醉管理流程 ==========${NC}"
|
||||
echo "### 模块8: 麻醉管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "麻醉" "8.1" "GET" "/api/v1/anesthesia/page?pageNum=1&pageSize=10" "" "200" "麻醉记录列表"
|
||||
test_api "麻醉增强" "8.2" "GET" "/anesthesia-enhanced/page?pageNum=1&pageSize=10" "" "200" "麻醉增强列表"
|
||||
test_api "麻醉质控" "8.3" "GET" "/anesthesia-quality-control/page?pageNum=1&pageSize=10" "" "200" "麻醉质控列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块9: 院感管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块9: 院感管理流程 ==========${NC}"
|
||||
echo "### 模块9: 院感管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "院感监测" "9.1" "GET" "/infection-enhanced/surveillance/page?pageNum=1&pageSize=10" "" "200" "院感监测列表"
|
||||
test_api "院感预警" "9.2" "GET" "/infection-enhanced/warning/page?pageNum=1&pageSize=10" "" "200" "院感预警列表"
|
||||
test_api "耐药监测" "9.3" "GET" "/infection-enhanced/resistance/page?pageNum=1&pageSize=10" "" "200" "耐药监测列表"
|
||||
test_api "职业暴露" "9.4" "GET" "/infection-enhanced/exposure/page?pageNum=1&pageSize=10" "" "200" "职业暴露列表"
|
||||
test_api "手卫生" "9.5" "GET" "/infection-enhanced/hand-hygiene/page?pageNum=1&pageSize=10" "" "200" "手卫生列表"
|
||||
test_api "环境监测" "9.6" "GET" "/infection-enhanced/environment/page?pageNum=1&pageSize=10" "" "200" "环境监测列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块10: 质量管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块10: 质量管理流程 ==========${NC}"
|
||||
echo "### 模块10: 质量管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "运行质控" "10.1" "GET" "/quality-enhanced/runtime/page?pageNum=1&pageSize=10" "" "200" "运行质控列表"
|
||||
test_api "终末质控" "10.2" "GET" "/api/v1/emr-quality/page?pageNum=1&pageSize=10" "" "200" "终末质控列表"
|
||||
test_api "质量统计" "10.3" "GET" "/quality-enhanced/statistics/page?pageNum=1&pageSize=10" "" "200" "质量统计列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块11: 中医管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块11: 中医管理流程 ==========${NC}"
|
||||
echo "### 模块11: 中医管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "中医体质" "11.1" "GET" "/api/v1/tcm/constitution/page?pageNum=1&pageSize=10" "" "200" "中医体质列表"
|
||||
test_api "中医方剂" "11.2" "GET" "/api/v1/tcm/prescriptions?pageNum=1&pageSize=10" "" "200" "中医方剂列表"
|
||||
test_api "中医统计" "11.3" "GET" "/api/v1/tcm/statistics" "" "200" "中医统计查询"
|
||||
|
||||
# ============================
|
||||
# 测试模块12: 会诊管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块12: 会诊管理流程 ==========${NC}"
|
||||
echo "### 模块12: 会诊管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "会诊" "12.1" "GET" "/consultation/page?pageNum=1&pageSize=10" "" "200" "会诊记录列表"
|
||||
test_api "会诊反馈" "12.2" "GET" "/cross-module/consult-feedback/page?pageNum=1&pageSize=10" "" "200" "会诊反馈列表"
|
||||
test_api "会诊超时" "12.3" "GET" "/cross-module/consulttimeout/page?pageNum=1&pageSize=10" "" "200" "会诊超时列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块13: 临床路径流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块13: 临床路径流程 ==========${NC}"
|
||||
echo "### 模块13: 临床路径流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "临床路径" "13.1" "GET" "/clinical-pathway/page?pageNum=1&pageSize=10" "" "200" "临床路径列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块14: 危急值管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块14: 危急值管理流程 ==========${NC}"
|
||||
echo "### 模块14: 危急值管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "危急值" "14.1" "GET" "/api/v1/critical-value/page?pageNum=1&pageSize=10" "" "200" "危急值列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块15: 处方点评流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块15: 处方点评流程 ==========${NC}"
|
||||
echo "### 模块15: 处方点评流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "点评计划" "15.1" "GET" "/api/v1/review/plans?pageNum=1&pageSize=10" "" "200" "点评计划列表"
|
||||
test_api "点评记录" "15.2" "GET" "/api/v1/review/records?pageNum=1&pageSize=10" "" "200" "点评记录列表"
|
||||
test_api "点评统计" "15.3" "GET" "/api/v1/review/statistics" "" "200" "点评统计查询"
|
||||
|
||||
# ============================
|
||||
# 测试模块16: 合理用药流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块16: 合理用药流程 ==========${NC}"
|
||||
echo "### 模块16: 合理用药流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "合理用药" "16.1" "GET" "/api/v1/rational-drug/page?pageNum=1&pageSize=10" "" "200" "合理用药列表"
|
||||
test_api "相互作用" "16.2" "GET" "/api/v1/rational-drug/interaction/page?pageNum=1&pageSize=10" "" "200" "相互作用列表"
|
||||
test_api "用药统计" "16.3" "GET" "/api/v1/rational-drug/statistics" "" "200" "用药统计查询"
|
||||
|
||||
# ============================
|
||||
# 测试模块17: 药品追溯流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块17: 药品追溯流程 ==========${NC}"
|
||||
echo "### 模块17: 药品追溯流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "药品追溯" "17.1" "GET" "/drugtrace/page?pageNum=1&pageSize=10" "" "200" "药品追溯列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块18: EMPI主索引流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块18: EMPI主索引流程 ==========${NC}"
|
||||
echo "### 模块18: EMPI主索引流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "EMPI" "18.1" "GET" "/api/v1/empi/page?pageNum=1&pageSize=10" "" "200" "EMPI索引列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块19: ESB数据集成流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块19: ESB数据集成流程 ==========${NC}"
|
||||
echo "### 模块19: ESB数据集成流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "ESB消息" "19.1" "GET" "/esbmanage/message/page?pageNum=1&pageSize=10" "" "200" "ESB消息列表"
|
||||
test_api "ESB服务" "19.2" "GET" "/esbmanage/registry/page?pageNum=1&pageSize=10" "" "200" "ESB服务列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块20: 电子签名流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块20: 电子签名流程 ==========${NC}"
|
||||
echo "### 模块20: 电子签名流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "CA签名" "20.1" "GET" "/api/v1/ca-signature/page?pageNum=1&pageSize=10" "" "200" "CA签名列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块21: 病案管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块21: 病案管理流程 ==========${NC}"
|
||||
echo "### 模块21: 病案管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "病案首页" "21.1" "GET" "/api/v1/mr-homepage/page?pageNum=1&pageSize=10" "" "200" "病案首页列表"
|
||||
test_api "病案质量" "21.2" "GET" "/api/v1/mr-homepage/quality-check/page?pageNum=1&pageSize=10" "" "200" "病案质量检查"
|
||||
|
||||
# ============================
|
||||
# 测试模块22: 随访管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块22: 随访管理流程 ==========${NC}"
|
||||
echo "### 模块22: 随访管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "随访计划" "22.1" "GET" "/followup/plan/page?pageNum=1&pageSize=10" "" "200" "随访计划列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块23: 知情同意流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块23: 知情同意流程 ==========${NC}"
|
||||
echo "### 模块23: 知情同意流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "知情同意" "23.1" "GET" "/api/v1/informed-consent/page?pageNum=1&pageSize=10" "" "200" "知情同意列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块24: 消毒供应流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块24: 消毒供应流程 ==========${NC}"
|
||||
echo "### 模块24: 消毒供应流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "消毒供应" "24.1" "GET" "/cssd/trace/page?pageNum=1&pageSize=10" "" "200" "消毒追溯列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块25: 急诊管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块25: 急诊管理流程 ==========${NC}"
|
||||
echo "### 模块25: 急诊管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "急诊" "25.1" "GET" "/emergency/page?pageNum=1&pageSize=10" "" "200" "急诊记录列表"
|
||||
test_api "分诊" "25.2" "GET" "/triage/queue/page?pageNum=1&pageSize=10" "" "200" "分诊排队列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块26: 医保管理流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块26: 医保管理流程 ==========${NC}"
|
||||
echo "### 模块26: 医保管理流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "医保目录" "26.1" "GET" "/ybmanage/catalog/page?pageNum=1&pageSize=10" "" "200" "医保目录列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块27: 抗菌药物流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块27: 抗菌药物流程 ==========${NC}"
|
||||
echo "### 模块27: 抗菌药物流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "抗菌药物" "27.1" "GET" "/api/v1/antibiotic/page?pageNum=1&pageSize=10" "" "200" "抗菌药物列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块28: DRG分析流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块28: DRG分析流程 ==========${NC}"
|
||||
echo "### 模块28: DRG分析流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "DRG" "28.1" "GET" "/api/v1/mr-homepage/drg/page?pageNum=1&pageSize=10" "" "200" "DRG分析列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块29: 经营分析流程
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块29: 经营分析流程 ==========${NC}"
|
||||
echo "### 模块29: 经营分析流程" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "经营分析" "29.1" "GET" "/business-analytics/page?pageNum=1&pageSize=10" "" "200" "经营分析列表"
|
||||
|
||||
# ============================
|
||||
# 测试模块30: 系统管理
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========== 模块30: 系统管理 ==========${NC}"
|
||||
echo "### 模块30: 系统管理" >> "${REPORT_FILE}"
|
||||
echo "" >> "${REPORT_FILE}"
|
||||
|
||||
test_api "仪表盘" "30.1" "GET" "/dashboard/data" "" "200" "仪表盘数据"
|
||||
test_api "字典" "30.2" "GET" "/dict/type/page?pageNum=1&pageSize=10" "" "200" "字典类型列表"
|
||||
test_api "用户" "30.3" "GET" "/system/user/page?pageNum=1&pageSize=10" "" "200" "用户列表"
|
||||
test_api "角色" "30.4" "GET" "/system/role/page?pageNum=1&pageSize=10" "" "200" "角色列表"
|
||||
test_api "菜单" "30.5" "GET" "/system/menu/list" "" "200" "菜单列表"
|
||||
test_api "部门" "30.6" "GET" "/system/dept/list" "" "200" "部门列表"
|
||||
test_api "岗位" "30.7" "GET" "/system/post/page?pageNum=1&pageSize=10" "" "200" "岗位列表"
|
||||
test_api "通知" "30.8" "GET" "/system/notice/page?pageNum=1&pageSize=10" "" "200" "通知列表"
|
||||
test_api "审计日志" "30.9" "GET" "/audit-log/page?pageNum=1&pageSize=10" "" "200" "审计日志列表"
|
||||
|
||||
# ============================
|
||||
# 测试汇总
|
||||
# ============================
|
||||
echo -e "\n${YELLOW}========================================${NC}"
|
||||
echo -e "${YELLOW}测试完成!${NC}"
|
||||
echo -e "总测试数: ${TOTAL_COUNT}"
|
||||
echo -e "${GREEN}通过: ${PASS_COUNT}${NC}"
|
||||
echo -e "${RED}失败: ${FAIL_COUNT}${NC}"
|
||||
|
||||
PASS_RATE=$((PASS_COUNT * 100 / TOTAL_COUNT))
|
||||
echo -e "通过率: ${PASS_RATE}%"
|
||||
|
||||
# 更新报告汇总
|
||||
cat >> "${REPORT_FILE}" << SUMMARY
|
||||
|
||||
## 测试汇总
|
||||
|
||||
- **总测试数**: ${TOTAL_COUNT}
|
||||
- **通过数**: ${PASS_COUNT}
|
||||
- **失败数**: ${FAIL_COUNT}
|
||||
- **通过率**: ${PASS_RATE}%
|
||||
- **测试时间**: $(date '+%Y-%m-%d %H:%M:%S')
|
||||
|
||||
## 测试结论
|
||||
|
||||
$(if [ $FAIL_COUNT -eq 0 ]; then echo "所有测试用例全部通过,系统功能完整,可以交付使用。"; else echo "有 ${FAIL_COUNT} 个测试用例失败,需要进一步排查修复。"; fi)
|
||||
SUMMARY
|
||||
|
||||
echo -e "\n测试报告已生成: ${REPORT_FILE}"
|
||||
Reference in New Issue
Block a user