Skip to content

NTT v2.2.0 release

Choose a tag to compare

@Xyf0606 Xyf0606 released this 28 May 09:33
· 14 commits to main since this release
25cc365

[2.2.0] - 2025-05-28

🌐 统一启动方式

Web 服务器集成

  • 新增 CLI 应用中集成 Web 服务器启动功能
  • 新增 在主菜单中添加"启动 Web 服务器"选项
  • 新增 Web 服务器配置界面,支持端口和 Web 资源目录设置
  • 新增 Web 服务器状态管理,支持启动、停止和状态查询
  • 新增 智能端口配置,支持自定义端口并保存到配置文件

启动脚本简化

  • 新增 统一启动脚本 start.bat (Windows) 和 start.sh (Linux/macOS)
  • 移除 独立的 Web 启动脚本,简化项目结构
  • 改进 启动脚本提供中英文双语说明
  • 优化 错误处理和用户提示信息

用户体验改进

  • 新增 Web 服务器后台运行模式,用户可继续使用 CLI 功能
  • 新增 Web 服务器访问 URL 显示,方便用户打开浏览器
  • 新增 Web 服务器使用说明和操作指导
  • 新增 智能冲突检测,避免重复启动服务器

🎯 自定义置信度交互优化

选项式交互界面

  • 改进 自定义置信度设置改为选项式交互,提升用户体验
  • 新增 选项 1:手动输入自定义置信度值和标准值文件
  • 新增 选项 2:从示例文件目录加载预设置信度配置
  • 新增 示例文件自动扫描和列表显示功能

示例文件管理

  • 新增 自动扫描 data/sample/ConfidenceLevel/ 目录中的示例文件
  • 新增 支持 JSON 和 CSV 格式的示例文件选择
  • 新增 示例文件置信度自动检测和显示
  • 新增 示例文件加载的智能错误处理

🧮 核心算法优化

智能趋势判断逻辑

  • 重大改进 诺依曼趋势测试的整体趋势判断算法
  • 新增 药物稳定性测试专用的智能趋势检测逻辑
  • 实现 末端连续趋势点检测:如果末端连续有 2 个或更多趋势点,判断为存在显著趋势
  • 新增 少量测试点的特殊处理:对于 ≤3 个测试点,如果超过一半显示趋势也判断为有趋势
  • 移除 简单的"只要有一个测试点判断存在趋势,整体就视为存在趋势"的旧逻辑
  • 优化 趋势判断更适合药物稳定性研究的实际需求

结果显示一致性修复

  • 修复 汇总结果和测试结论使用不同判断逻辑的问题
  • 统一 所有结果显示组件使用相同的overallTrend判断标准
  • 移除 平均 PG 值与 1.0 比较的旧逻辑,改为使用智能趋势判断结果
  • 确保 CLI 界面、Web 界面、批量处理报告的结果显示一致性

🎨 用户界面改进

菜单显示优化

  • 修复 主菜单编号对齐问题,数字位数不同导致的文本内容不对齐
  • 新增 菜单项编号固定宽度格式化,使用std::setw(2)确保对齐
  • 支持 最多 99 个菜单项的对齐显示
  • 改进 菜单视觉美观度和可读性

状态栏双语支持

  • 修复 右上角置信度显示硬编码英文"Confidence"的问题
  • 新增 status.confidence翻译键,支持中英文双语显示
  • 实现 置信度显示的完整国际化支持
  • 统一 状态栏所有元素的双语适配

🔧 技术架构改进

Web 服务器集成架构

  • 新增 TerminalUI 类中的 Web 服务器成员变量和管理方法
  • 新增 startWebServer() 方法实现完整的 Web 服务器生命周期管理
  • 新增 Web 服务器配置持久化,端口设置自动保存
  • 新增 析构函数确保 Web 服务器正确停止

翻译系统扩展

  • 新增 Web 服务器相关的完整中英文翻译键
  • 新增 自定义置信度交互相关的翻译键
  • 新增 错误处理和用户提示的翻译支持

📚 文档更新

用户文档

  • 更新 README.md,反映新的统一启动方式
  • 更新 版本号从 v2.1.0 升级到 v2.2.0
  • 更新 发布包结构说明,移除独立 Web 应用
  • 更新 使用指南,详细说明 Web 服务器集成功能

项目结构

  • 简化 启动脚本,只保留统一的 start.bat 和 start.sh
  • 优化 项目根目录结构,减少文件数量
  • 改进 发布包组织,更加简洁明了

🐛 问题修复

交互体验修复

  • 🐛 修复 自定义置信度设置的用户体验问题
  • 🐛 修复 示例文件路径处理的兼容性问题
  • 🐛 修复 Web 服务器重复启动的检测逻辑

核心算法修复

  • 🐛 修复 趋势判断逻辑不一致导致的用户困惑问题
  • 🐛 修复 汇总结果显示与测试结论不匹配的问题
  • 🐛 修复 平均 PG 值判断逻辑与实际趋势检测结果不符的问题

显示问题修复

  • 🐛 修复 主菜单编号对齐问题
  • 🐛 修复 置信度显示语言硬编码问题
  • 🐛 修复 翻译文件中置信度显示格式不一致问题

⚠️ 重要变更

  1. 趋势判断算法:采用新的智能趋势判断逻辑,更适合药物稳定性测试
  2. 启动方式变更:现在只需要运行一个启动脚本,Web 功能集成在 CLI 中
  3. Web 服务器管理:Web 服务器现在作为 CLI 的一个功能模块,而非独立应用
  4. 自定义置信度交互:改为更友好的选项式交互方式
  5. 项目结构简化:移除了独立的 Web 启动脚本

🔄 向后兼容性

  • 保持 所有现有配置文件格式兼容
  • 保持 数据文件和标准值文件格式兼容
  • 保持 CLI 功能完全兼容
  • 保持 Web 界面功能完全兼容

[2.1.0] - 2025-05-26

🎨 用户界面增强

置信度配置系统优化

  • 新增 可视化置信度设置菜单,支持预设值选择(90%, 95%, 99%)
  • 新增 自定义置信度输入功能,支持 0.0-1.0 范围内任意值
  • 新增 置信度配置持久化保存,重启后保持用户设置
  • 改进 置信度选择界面,动态显示支持的置信度水平
  • 新增 默认值标识,清晰显示推荐的 95%置信度

状态栏显示系统

  • 新增 右上角状态栏,实时显示当前置信度水平
  • 新增 应用标题和状态信息的美观布局
  • 新增 彩色状态栏,使用青色和绿色突出显示重要信息
  • 改进 终端宽度自适应,确保状态栏在不同终端下正确显示

测试流程优化

  • 改进 新建测试流程,自动使用配置的置信度而非每次询问
  • 新增 置信度使用提示,告知用户当前使用的置信度水平
  • 新增 设置修改引导,提示用户可在设置菜单中更改置信度
  • 优化 测试结果显示,更清晰地展示使用的置信度参数

结果显示美化

  • 改进 测试结果汇总框的边框设计,使用完整的闭合边框
  • 优化 边框宽度计算,确保内容正确对齐
  • 新增 彩色边框支持,根据测试结果使用不同颜色
  • 改进 内容填充计算,解决边框对齐问题

🔧 配置系统改进

配置文件路径管理

  • 新增 setConfigFilePath() 方法,支持动态设置配置文件路径;导出的svg文件默认保存在data/svg目录下
  • 修复 配置保存路径不一致问题,确保加载和保存使用相同路径
  • 改进 启动逻辑,正确设置配置文件路径后再进行保存操作
  • 新增 配置目录自动创建,确保配置文件能够正确保存

语言设置持久化

  • 修复 语言设置无法持久保存的问题
  • 改进 语言切换流程,立即保存设置并提供用户反馈
  • 新增 配置保存状态提示,告知用户设置是否成功保存
  • 优化 语言菜单返回逻辑,设置完成后自动返回主菜单

🏗️ 架构优化

应用启动流程改进

  • 改进 CLI 应用启动逻辑,正确处理 release 文件结构
  • 修复 配置文件加载顺序,确保路径设置在配置保存之前完成
  • 新增 配置目录检查和创建逻辑
  • 优化 错误处理,提供更友好的启动失败提示

代码质量提升

  • 改进 边框计算逻辑,使用更精确的宽度计算方法
  • 优化 颜色输出代码,统一使用 TerminalUtils 进行彩色输出
  • 重构 状态栏显示代码,提高代码可维护性
  • 完善 注释和文档,提高代码可读性

🐛 问题修复

显示问题修复

  • 🐛 修复 测试结果汇总框边框对齐问题
  • 🐛 修复 状态栏在不同终端宽度下的显示问题
  • 🐛 修复 彩色输出在某些终端下的兼容性问题
  • 🐛 修复 边框宽度计算错误导致的显示异常

配置问题修复

  • 🐛 修复 置信度设置无法保存的问题
  • 🐛 修复 语言设置重启后丢失的问题
  • 🐛 修复 配置文件路径不一致导致的保存失败
  • 🐛 修复 配置目录不存在时的创建失败问题

📚 文档更新

用户文档

  • 更新 README.md,添加 v2.1.0 新功能说明
  • 新增 置信度配置使用指南
  • 新增 状态栏功能说明
  • 更新 版本号和发布包信息

开发文档

  • 完善 代码注释,特别是新增功能的注释
  • 更新 变更日志,详细记录所有改进和修复
  • 新增 配置系统架构说明

⚠️ 重要变更

  1. 配置文件路径:现在正确支持 release 文件结构下的配置保存
  2. 置信度设置:新的可视化设置界面,支持更灵活的配置
  3. 状态栏显示:新增的状态栏提供实时的应用状态信息
  4. 测试流程:简化的测试流程,减少用户重复输入

🔄 向后兼容性

  • 保持 所有现有配置文件格式兼容
  • 保持 命令行参数和 API 兼容性
  • 支持 旧版本配置文件自动升级
  • 保持 数据文件格式完全兼容

其他

  • 移除 .vscode/文件索引