VERSION_FILE_RAW(VERSION.md 原文,取自 __APP_VERSION_FILE__,为空时返回空串)suggestNextVersion(date?: string, logs?: VersionLog[]):按 v + YYYY.MM.DD + 当日最大序列号+1 推算下一个版本号(当天无记录为 01,历史为空为 v<今天>.01)VersionLog 增加 publisher(发布人)与 modules: string[](影响模块)字段;解析版本段落中的 - 发布人:X、- 影响模块:A、B(分隔符支持 、 / , / ,),为空时字段为空串/空数组buildVersionFile({ version, date, desc, publisher, modules, groups }):用新三行替换 CURRENT_VERSION_START/END 之间内容;在 <!-- CHANGELOG_START --> 之后插入新版本段落(含 - 发布人:、- 影响模块:,值为空则省略该行);其余原文原样保留buildVersionSection(...):仅生成新增版本段落文本,供「下载新增片段」使用buildVersionFile 增加标记区存在性校验:缺失时抛出明确中文错误,供页面降级为"仅生成片段"APP_VERSION / APP_VERSION_DATE / APP_VERSION_DESC / VERSION_LOGS / CURRENT_VERSION_LOG,解析行为不变Card + 顶部当前版本信息(Descriptions,3 列,labelStyle={{ width: 100 }})+ 常驻生效提示 Alert("版本号来源于项目根目录 VERSION.md,替换文件后需重新打包生效")Collapse 展开显示「新增 / 优化 / 修复」条目与发布人、影响模块;条目为"无"的分类隐藏;无记录时 Empty 空状态Modal 表单:版本号(自动预填 suggestNextVersion(),可编辑)、更新日期(DatePicker 中文:import 'dayjs/locale/zh-cn'; dayjs.locale('zh-cn') + locale={zhCN} + format="YYYY年MM月DD日",改动日期时重算版本号)、版本说明(Input)Input,默认当前登录用户 localStorage.userInfo.userName,可改)与「影响模块」(Select mode="tags",预置 DRG分组/DIP付费/医保控费预警/盈亏分析/基础数据/HIS数据/特例单议/系统管理/接口服务/其它,允许自由输入)Form.List,支持"添加一条"/删除,条目过滤空值与"无"message.warning 拦截)<pre> 固定高度滚动)+「复制全文」「下载 VERSION.md」「下载新增片段」三个按钮a.download(纯前端零依赖),文件 UTF-8;复制优先 navigator.clipboard,失败降级 document.execCommand('copy');成功/失败均 message 提示Select.Option 子组件(用 options 属性)、Modal 用 destroyOnHidden、日期组件中文本地化frontend/src/routes/menuRoutes.ts:keyToPath 新增 'system-version': '/system/version';menuTitleMap 新增 'system-version': '版本更新维护'frontend/src/routes/menuRouteRegistry.tsx:导入 VersionMaintenance(../pages/System/VersionMaintenance),MENU_RENDERERS 新增 'system-version': () => <VersionMaintenance />npm run dev 验证:控制台 [menuRoutes] 一致性校验通过,无 system-version 缺失告警;点击菜单可打开页面、URL 归一到 #/system/versionsystem-versionsystem-menu 同级)HistoryOutlined(或 TagsOutlined)/system/version- 发布人:、- 影响模块:),标记行完整、历史内容未被破坏(已用脚本验证 v2026.09.14.02 生成结果正确)VERSION.md → npm run build → 导航栏版本号更新为新版npm run build 后部署 dist 到生产目录(E:\DRG\dist)