Files
his/MD/xinchuang_architecture.svg
chenqi 575f5d6c32 fix(database): 修复数据库字典重复和表结构缺失问题
- 删除手术状态下拉框的重复字典数据,保留每组中dict_code最小的记录
- 修复HisBaseEntity列缺失问题,为多个表添加create_by、update_by、update_time等基础字段
- 为adm_patient表添加邮政编码、户籍地址、监护人信息、患者来源等缺失字段
- 添加文化程度字典类型和相关字典数据,补充3919到3914等10个学历级别选项
- 为adm_patient_identifier表创建tenant_id和patient_id的联合索引以提升查询性能
- 修复prescription_intercept_log和clinical_pathway_execution表的基础实体字段缺失
- 为wor_device_request表增加医嘱退回相关的back_reason、performer_check_id等字段
- 创建EMPI核心表empi_person和empi_person_id_mapping用于全局患者主索引管理
- 为empi_merge_log表添加create_time字段以完善审计信息
- 更新院感管理和评审保障模块的设计文档,明确各模块实现状态和缺失功能
2026-06-17 11:46:56 +08:00

94 lines
5.8 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 520" font-family="Microsoft YaHei, SimHei, Arial" font-size="13">
<defs>
<linearGradient id="g1" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#1a478a"/>
<stop offset="100%" stop-color="#2c5fa1"/>
</linearGradient>
<linearGradient id="g2" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#3a7bd5"/>
<stop offset="100%" stop-color="#5a9ae6"/>
</linearGradient>
<linearGradient id="g3" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#4a90d9"/>
<stop offset="100%" stop-color="#6bb3f0"/>
</linearGradient>
<linearGradient id="g4" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#2e7d32"/>
<stop offset="100%" stop-color="#43a047"/>
</linearGradient>
<linearGradient id="g5" x1="0" y1="0" x2="0" y2="1">
<stop offset="0%" stop-color="#5c6bc0"/>
<stop offset="100%" stop-color="#7986cb"/>
</linearGradient>
<filter id="shadow" x="-2%" y="-2%" width="104%" height="104%">
<feDropShadow dx="0" dy="2" stdDeviation="3" flood-color="#000" flood-opacity="0.15"/>
</filter>
</defs>
<!-- Title -->
<text x="400" y="28" text-anchor="middle" font-size="18" font-weight="bold" fill="#1a478a">HealthLink-HIS 全栈信创部署架构</text>
<!-- Layer 1: Terminal -->
<rect x="40" y="45" width="720" height="70" rx="8" fill="url(#g1)" filter="url(#shadow)"/>
<text x="400" y="72" text-anchor="middle" font-size="14" font-weight="bold" fill="#fff">终端访问层</text>
<text x="400" y="96" text-anchor="middle" font-size="12" fill="#d0e0ff">国产浏览器(奇安信可信浏览器 / 360安全浏览器→ 医生 / 护士 / 收费员 / 管理层</text>
<!-- Arrow -->
<polygon points="400,115 393,125 407,125" fill="#1a478a"/>
<!-- Layer 2: Middleware -->
<rect x="40" y="130" width="720" height="55" rx="8" fill="url(#g2)" filter="url(#shadow)"/>
<text x="400" y="155" text-anchor="middle" font-size="14" font-weight="bold" fill="#fff">应用中间件层</text>
<text x="400" y="175" text-anchor="middle" font-size="12" fill="#d0e8ff">Spring Boot 4.0.6(内嵌 Tomcat/ 东方通 TongWeb / 宝兰德 BES</text>
<!-- Arrow -->
<polygon points="400,185 393,195 407,195" fill="#3a7bd5"/>
<!-- Layer 3: App Server -->
<rect x="40" y="200" width="720" height="100" rx="8" fill="url(#g3)" filter="url(#shadow)"/>
<text x="400" y="225" text-anchor="middle" font-size="14" font-weight="bold" fill="#fff">应用服务器层</text>
<!-- App Server boxes -->
<rect x="60" y="238" width="210" height="48" rx="5" fill="rgba(255,255,255,0.2)" stroke="rgba(255,255,255,0.5)" stroke-width="1"/>
<text x="165" y="258" text-anchor="middle" font-size="12" fill="#fff" font-weight="bold">国产 JDK</text>
<text x="165" y="276" text-anchor="middle" font-size="11" fill="#e0f0ff">华为毕昇 / 阿里 Dragonwell / 腾讯 Kona</text>
<rect x="295" y="238" width="210" height="48" rx="5" fill="rgba(255,255,255,0.2)" stroke="rgba(255,255,255,0.5)" stroke-width="1"/>
<text x="400" y="258" text-anchor="middle" font-size="12" fill="#fff" font-weight="bold">国产 CPU</text>
<text x="400" y="276" text-anchor="middle" font-size="11" fill="#e0f0ff">鲲鹏 920 / 飞腾 S5000C / 海光</text>
<rect x="530" y="238" width="210" height="48" rx="5" fill="rgba(255,255,255,0.2)" stroke="rgba(255,255,255,0.5)" stroke-width="1"/>
<text x="635" y="258" text-anchor="middle" font-size="12" fill="#fff" font-weight="bold">国产操作系统</text>
<text x="635" y="276" text-anchor="middle" font-size="11" fill="#e0f0ff">银河麒麟 V11 / 统信 UOS V20</text>
<!-- Arrow -->
<polygon points="400,300 393,310 407,310" fill="#4a90d9"/>
<!-- Layer 4: Database -->
<rect x="40" y="315" width="720" height="100" rx="8" fill="url(#g4)" filter="url(#shadow)"/>
<text x="400" y="340" text-anchor="middle" font-size="14" font-weight="bold" fill="#fff">数据库层</text>
<rect x="60" y="353" width="210" height="48" rx="5" fill="rgba(255,255,255,0.2)" stroke="rgba(255,255,255,0.5)" stroke-width="1"/>
<text x="165" y="373" text-anchor="middle" font-size="12" fill="#fff" font-weight="bold">国产数据库</text>
<text x="165" y="391" text-anchor="middle" font-size="11" fill="#e0ffe0">openGauss / 达梦 DM8 / 人大金仓</text>
<rect x="295" y="353" width="210" height="48" rx="5" fill="rgba(255,255,255,0.2)" stroke="rgba(255,255,255,0.5)" stroke-width="1"/>
<text x="400" y="373" text-anchor="middle" font-size="12" fill="#fff" font-weight="bold">国产 CPU</text>
<text x="400" y="391" text-anchor="middle" font-size="11" fill="#e0ffe0">鲲鹏 920 / 飞腾 S5000C</text>
<rect x="530" y="353" width="210" height="48" rx="5" fill="rgba(255,255,255,0.2)" stroke="rgba(255,255,255,0.5)" stroke-width="1"/>
<text x="635" y="373" text-anchor="middle" font-size="12" fill="#fff" font-weight="bold">高可用架构</text>
<text x="635" y="391" text-anchor="middle" font-size="11" fill="#e0ffe0">主从热备 + 自动故障切换</text>
<!-- Arrow -->
<polygon points="400,415 393,425 407,425" fill="#2e7d32"/>
<!-- Layer 5: Infrastructure -->
<rect x="40" y="430" width="720" height="55" rx="8" fill="url(#g5)" filter="url(#shadow)"/>
<text x="400" y="455" text-anchor="middle" font-size="14" font-weight="bold" fill="#fff">基础网络层</text>
<text x="400" y="475" text-anchor="middle" font-size="12" fill="#e0e0ff">国产存储(华为 / 浪潮)+ 国产交换机(锐捷 / 华为)+ 国产防火墙(深信服 / 奇安信)</text>
<!-- Right side badge -->
<rect x="700" y="45" width="60" height="440" rx="6" fill="none" stroke="#c0392b" stroke-width="2" stroke-dasharray="6,3"/>
<text x="730" y="270" text-anchor="middle" font-size="11" fill="#c0392b" font-weight="bold" transform="rotate(90,730,270)">全栈国产化</text>
</svg>