Files
his/docs/HIS项目Bug修复记录-v1.0.md

244 lines
15 KiB
Markdown
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.

# HIS项目Bug修复记录 v1.0
> **编制人:** 陈琳
> **编制日期:** 2026-05-01
> **统计范围:** 2026-04-01 至 2026-05-01
> **项目版本:** OpenHIS v2.0
> **文档版本:** v1.0
---
## 一、修复概览
| 指标 | 数量 |
|------|------|
| Bug修复总次数 | 约 **80+** 次(含合并提交) |
| 涉及Bug编号 | #249 ~ #472(含部分无编号修复) |
| 参与修复人员 | 关羽、赵云、张飞、刘备、诸葛亮、华佗、陈琦等 |
| 涉及模块 | 门诊医生站、住院医生站、检验申请、检查申请、手术计费、门诊划价、预约挂号、会诊管理、疾病报卡、用户管理等 |
---
## 二、修复记录明细
### 2.1 门诊医生站模块
| Bug # | 问题描述 | 修复人 | 修复日期 | Commit |
|-------|---------|--------|---------|--------|
| #449/#450 | 门诊医生站接诊/数据加载失败 — TodayOutpatientServiceImpl中receivePatient/completeVisit/cancelVisit方法为空壳 | 关羽 | 2026-04-28 | `9b86557` |
| #451 | 门诊医生站-提交新增手术申请后列表刷新失败 | 赵云 | 2026-04-28 | `d1be841` |
| #456 | 门诊医生站医嘱类型和状态异常 | 关羽 | 2026-04-29 | `ec89ead` |
| #395 | 疾病报告卡添加撤销审核功能 / 前端调用与Controller重复映射 | 张飞/刘备/关羽 | 2026-04-23 | `988c17c` `2a8e662` `6962a8b` |
| #396/#397 | 前端编译报错 - useUserStore导入方式错误 | 赵云 | 2026-04-23 | `87d4214` `17e148c` |
| #398/#399 | 门诊预约已预约和已取号记录不应被时间过滤 | 刘备 | 2026-04-23 | `2a8e662` `6962a8b` |
| #405/#406/#408 | 前端多处界面缺陷 | 赵云 | 2026-04-22 | `72c0cea` |
| #412 | 门诊医生站传染病报告卡保存失败(添加临时卡号生成避免空值) | 刘备 | 2026-04-23 | `2d55387` |
| #413 | 医生个人报卡管理界面统一弹窗宽度1100px+标题对齐门诊医生站) | 刘备 | 2026-04-23 | `9c48744` |
| #330 | 门诊医生站诊断保存失败 | 陈琦 | 2026-04-03 | `22de02f` |
| #282 | 医嘱TAB页面总量字段的单位显示数字/给药途径字段的值显示不全 | his-dev | 2026-04-15 | `6922aa1` |
| #368 | 门诊医生站待写病历标签页功能冗余 | aprilry | 2026-04-15 | `4e2097f` |
| #366 | 手术医嘱逻辑错误,"待签发"状态的手术医嘱提前流转至收费端 | his-dev | 2026-04-15 | `e294952` |
| #333/#335/#336 | 医嘱保存报错 — 添加practitionerId/founderOrgId自动补全 | 关羽 | 2026-04-06 | `098aae5` |
### 2.2 检验申请模块
| Bug # | 问题描述 | 修复人 | 修复日期 | Commit |
|-------|---------|--------|---------|--------|
| #469 | 检验申请操作列临床业务逻辑 | 关羽 | 2026-05-01 | `97b4e39` |
| #459 | 检验申请报错仍生成记录 | 关羽 | 2026-04-29 | `136235f` `c2cac12` |
| #465 | 检验项目列表限制500项 | 关羽 | 2026-04-29 | `783ee48` |
| #414 | 检验项目列表加载缓慢 — 优化分页查询性能 | 关羽 | 2026-04-24 | `d525a50` |
| #415 | 项目单价显示负数问题 — 添加价格非负验证 | 关羽 | 2026-04-23 | `5d97975` |
| #416/#423 | 检验/检查申请单布局调整(左右布局+宽度优化) | 刘备 | 2026-04-23 | `2475841` |
| #420 | 检验申请单项目列表显示售价/单位 | 刘备 | 2026-04-23 | `2786769` |
| #428 | 检查申请分类联动功能 / selectedItems.push缺少isPackage和packageId字段 | 赵云 | 2026-04-30~05-01 | `616aa46` `2174323` |
| #326 | 检验申请单套餐项目回充数据不完整 — 后端补全套餐信息,前端树形展开 | aprilry | 2026-04-15 | `4e2097f` |
| #328 | 检验申请单生成的医嘱签发失败 | aprilry | 2026-04-13 | `d99daa3` |
| #329 | 检验申请执行科室默认值设置错误 | aprilry | 2026-04-15 | `4e2097f` |
| #334 | 检验申请界面顶部操作栏占用空间过大 — 按钮移至卡片头部 | 赵云 | 2026-04-06 | `720cac8` |
### 2.3 检查申请模块
| Bug # | 问题描述 | 修复人 | 修复日期 | Commit |
|-------|---------|--------|---------|--------|
| #407/#385 | 检查申请医嘱分类错误致数据库报错 / 预结算账户验证修复 | 关羽/诸葛亮/aprilry | 2026-04-23 | `acc59ab` `78bcdef` `95e379e` |
| #418/#419/#421/#424 | 检查申请发往科室未自动赋值/下拉无数据 — 修复科室数据源接口 | 关羽/诸葛亮 | 2026-04-23~24 | `03e89e0` `1242d41` |
| #422 | 检查申请单项目列表显示单价/单位 | 刘备 | 2026-04-23 | `2786769` |
| #425 | 检查申请申请单号显示自动生成 | 刘备 | 2026-04-23 | `2786769` |
| #426 | 检查申请单已选择列表支持树形展开显示套餐明细 | 刘备 | 2026-04-23 | `adc89a5` |
| #427 | 检查项目分类手风琴展开 | 赵云 | 2026-04-25 | `7bccbc7` |
| #429 | 检查方法字段不应自动预填 | 赵云 | 2026-04-24 | `091b6e8` |
| #430 | 检查申请套餐金额变更联动 | 赵云 | 2026-04-24 | `72e1f92` |
| #462 | 诊疗目录标本下拉框无数据 | 关羽 | 2026-04-29 | `decac54` |
| #376 | 检查页签申请单列表过滤异常,显示历史检查就诊记录 | 1677036288@qq.com | 2026-04-16 | `210c463` |
| #377 | 检查申请单"执行科室"未获取配置默认值且字段交互逻辑不规范 | 1677036288@qq.com | 2026-04-16 | `210c463` |
| #384 | 检查方法联动功能完善,增加套餐价格查询和项目卡片展开选择 | aprilry | 2026-04-21 | `994ffcb` |
### 2.4 手术计费/手术申请模块
| Bug # | 问题描述 | 修复人 | 修复日期 | Commit |
|-------|---------|--------|---------|--------|
| #432 | 门诊手术安排新增保存报错 — 修复登录用户null校验缺失导致NPE | 关羽 | 2026-04-24 | `dc7e3c1` |
| #436/#438 | 手术计费显示问题 — 修复chargeItemContext条件判断尾随空格 / 门诊划价选'西药'无数据 | 关羽 | 2026-04-24~29 | `e7beb3f` `fd1880f` |
| #437 | 手术计费重复记录修复 | 赵云 | 2026-04-25 | `7bccbc7` |
| #442 | 手术计费删除待签发耗材报错 | 关羽 | 2026-04-25 | `d79690a` |
| #443 | 手术计费签发耗材报错 | 关羽 | 2026-04-25 | `7d1e50d` |
| #445 | 门诊手术待生成列表未剔除已生成医嘱 | 关羽 | 2026-04-25 | `290e8f8` |
| #447 | 住院医生站手术申请弹窗无法加载手术类诊疗目录数据 / 申请单adviceTypes格式错误 | 关羽 | 2026-04-25~05-01 | `059ef48` `701f5fe` |
| #453/#455 | 申请单adviceTypes格式错误 | 关羽 | 2026-05-01 | `701f5fe` |
| #457 | 门诊收费手术医嘱不显示名称 | 关羽 | 2026-04-29 | `e1ad496` |
| #470 | 手术/输血申请单加载项目耗时过长 | 关羽 | 2026-04-30 | `d62ac41` |
| #471 | 手术申请查询混入脏数据 | 关羽 | 2026-04-29 | `b424d73` |
| #472 | 住院医生站手术申请单勾选无效 | 关羽 | 2026-04-29 | `caa45c3` |
| #249 | 门诊手术安排查询未过滤已删除手术申请单 — LEFT JOIN改INNER JOIN | 关羽 | 2026-04-28 | `405a9df` |
| #375 | 住院医生站签发按钮提示语错误,显示"保存成功"且签发业务未实现 | 1677036288@qq.com | 2026-04-16 | `210c463` |
| #320 | 手术管理-门诊手术安排:新增手术安排界面的就诊卡号取值错误 | his-dev | 2026-04-08 | `a894f0f` |
### 2.5 门诊划价模块
| Bug # | 问题描述 | 修复人 | 修复日期 | Commit |
|-------|---------|--------|---------|--------|
| #448 | 门诊划价项目分类过滤失效 — 耗材和诊疗查询缺少categoryCode过滤条件 | 关羽 | 2026-04-25 | `4beb4c4` |
| #338 | 门诊划价新增时未校验就诊状态 — 未接诊患者也可新增划价项目 | 华佗 | 2026-04-05~09 | `8deefd2` `efc97c8` `5497c99` |
### 2.6 预约挂号模块
| Bug # | 问题描述 | 修复人 | 修复日期 | Commit |
|-------|---------|--------|---------|--------|
| #343 | 门诊预约挂号:系统未校验重复预约 | his-dev | 2026-04-08 | `5d28064` |
| #344 | 取消预约后重新获取医生余号数据 / 前端状态过滤字段映射 / 时间过滤 | 赵云/关羽 | 2026-04-09 | `4d976ad` `c210d57` `82951fe` |
| #337 | 挂号时间显示异常 — SQL别名register_time改为registerTime | 关羽 | 2026-04-06 | `054f4c3` |
### 2.7 住院医生站模块
| Bug # | 问题描述 | 修复人 | 修复日期 | Commit |
|-------|---------|--------|---------|--------|
| #402 | 住院医生站诊断录入:保存后列表出现重复记录且元数据缺失 | 关羽 | 2026-04-22 | `cd54a39` |
| #403/#404 | 住院医生工作站:应用医嘱组套后药品明细字段丢失 / 医嘱组套编辑字段回显丢失 | 关羽/诸葛亮 | 2026-04-22~30 | `e2808fd` `0cfdce0` `81daacd` |
| #363 | 入科时间编辑时同步更新就诊表start_time字段 / 入院日期选择器改为datetime类型 | 关羽/赵云 | 2026-04-08~22 | `063eb1f` `d663c46` `4142723` |
| #362 | 添加入科时间字段并修正显示 | 赵云 | 2026-04-09 | `0cb6ebe` |
| #364 | 修正病历号列绑定字段为patientBusNo / 添加病历号搜索支持 | 赵云 | 2026-04-09 | `583a77f` `d8511ec` |
| #417 | 住院护士站记账页面空白 — 补充provide handleGetPrescription修复inject失败 | 刘备 | 2026-04-23 | `1fc2032` |
| #439 | 领用出库总库存数量未显示 | 赵云 | 2026-04-24 | `b53cdfa` |
| #440 | 用户管理修改提交报错hasOwnProperty | 赵云 | 2026-04-24 | `fe2a797` |
| #431/#433/#434/#435 | 前端多处界面缺陷批量修复 | 赵云 | 2026-04-24 | `22b47fc` |
### 2.8 会诊管理模块
| Bug # | 问题描述 | 修复人 | 修复日期 | Commit |
|-------|---------|--------|---------|--------|
| #280 | 会诊申请单打印逻辑修复 — 点击具体记录打印该条,不传参数时打印全部 | 刘备 | 2026-04-24 | `6b6e56c` |
| #388/#409/#410 | 会诊意见格式化存储,确保参加医师和意见完整回显 | aprilry | 2026-04-24 | `76094d6` |
### 2.9 其他模块
| Bug # | 问题描述 | 模块 | 修复人 | 修复日期 | Commit |
|-------|---------|------|--------|---------|--------|
| #355 | 预约签到性别字段回显不一致 | 预约挂号 | 关羽 | 2026-04-06 | `7827e58` |
| #363(入院时间) | 入院时间早于申请时间校验 | 住院登记 | 关羽 | 2026-04-08 | `4142723` |
| #444 | 计费药品列表未显示药品名称 | 住院医生站 | 赵云 | 2026-05-01 | `97d0011` |
| #446 | 临时医嘱提交后弹窗关闭逻辑 | 住院医生站 | 赵云 | 2026-05-01 | `70726f6` |
| #375 | 签发按钮提示语错误 | 住院医生站 | 1677036288@qq.com | 2026-04-16 | `210c463` |
| #380/#381 | 临床诊断获取主诊断字段名修正 | 门诊医生站 | aprilry | 2026-04-21 | `994ffcb` |
| #382 | 选择项目后保持当前页签状态 | 门诊医生站 | aprilry | 2026-04-21 | `994ffcb` |
| #386 | 检验申请删除时同步删除关联收费项目 | 门诊医生站 | aprilry | 2026-04-21 | `994ffcb` |
| #387 | 套餐项目回充默认展开并自动加载明细 | 门诊医生站 | aprilry | 2026-04-21 | `994ffcb` |
| #441 | 手术室护士站相关 | — | — | — | (待修复) |
| #454 | 删除"待签发"检验项目触发校验失败 | 检验申请 | — | — | (待修复) |
| N/A | register.vue构建失败 — 替换不存在的login-background.jpg | 前端构建 | 张飞 | 2026-04-24 | `0d11d41` |
| N/A | bloodTransfusion.vue构建报错 — public.js补充getDepartmentList导出 | 前端构建 | 赵云/张飞/诸葛亮 | 2026-04-24 | `8c05782` `d27b514` `4fb540c` |
| N/A | PostgreSQL时间函数CAST语法错误修正 | 后端SQL | 关羽 | 2026-04-09 | `9238044` |
| N/A | 前端获取版本号bug | 前端 | 1677036288@qq.com | 2026-04-29 | `b536ead` |
---
## 三、按修复人统计
| 修复人 | 修复Bug数量估算 | 主要模块 |
|--------|-------------------|---------|
| **关羽** | ~25 | 门诊医生站、检验申请、手术计费、检查申请、预约挂号 |
| **赵云** | ~20 | 住院医生站、前端界面、检验申请 |
| **刘备** | ~10 | 疾病报卡、检查申请、检验申请 |
| **诸葛亮** | ~5 | 检查申请、构建门禁文档 |
| **张飞** | ~4 | 前端构建修复、E2E测试 |
| **华佗** | ~2 | 门诊划价就诊状态校验 |
| **aprilry** | ~8 | 检验申请、检查申请、会诊管理 |
| **陈琦** | ~2 | 门诊医生站诊断保存、日期格式化 |
| **his-dev** | ~3 | 手术安排、门诊划价、重复预约 |
---
## 四、按严重程度统计
| 严重级别 | 数量 | 说明 |
|---------|------|------|
| 🔴 阻塞性 | ~8 | 导致页面空白、系统崩溃、数据丢失 |
| 🟠 功能性 | ~45 | 功能异常、数据不正确 |
| 🟡 体验性 | ~20 | UI布局、显示异常 |
| 🟢 优化类 | ~10 | 性能优化、代码规范 |
---
## 五、典型修复案例分析
### 案例1Bug #407 — 检查申请医嘱分类错误
**问题:** 检查申请被错误归类为药品类型,导致数据库报错和预结算失败。
**修复方案:**
- 后端 ExamApplyController 使用 ItemType 枚举正确分类
- DoctorStationAdviceAppService 按枚举标准分类医嘱
- IChargeBillService 补充 productId=0 时从 contentJson 获取项目名称
- PaymentRecService 预结算自动修复账户不存在的历史数据
**影响模块:** ExamApplyController、DoctorStationAdviceAppService、IChargeBillService、PaymentRecService
### 案例2Bug #449/#450 — 门诊医生站接诊数据加载失败
**问题:** TodayOutpatientServiceImpl 中 receivePatient/completeVisit/cancelVisit 方法为空壳实现。
**修复方案:** 改为调用 DoctorStationMainAppService 正确业务逻辑。
### 案例3Bug #326 — 检验申请单套餐项目回充数据不完整
**问题:** 套餐项目回充时缺少套餐明细信息。
**修复方案:**
- 后端回充时查询 LabActivityDefinition 补全套餐信息
- DTO 新增 activityId、feePackageId、isPackage、sampleType、unit 字段
- 前端实现套餐项目树形展开,懒加载套餐明细
---
## 六、待修复Bug清单
| Bug # | 问题描述 | 严重级别 | 状态 |
|-------|---------|---------|------|
| #454 | 删除"待签发"检验项目触发校验失败 | 🔴 阻塞性 | Active |
| #449 | 点击接诊患者报"数据加载失败" | 🔴 阻塞性 | 部分修复 |
| #430 | 检查申请套餐金额变更联动 | 🟠 功能性 | 进行中 |
| #441 | 手术室护士相关问题 | 🟠 功能性 | Active |
---
## 七、基础设施改进
| 改进项 | 说明 | 贡献人 | 日期 |
|--------|------|--------|------|
| Playwright E2E测试框架 | 12个测试用例全部通过 | 张飞/刘备 | 2026-04-25 |
| Husky pre-commit钩子 | 提交前自动执行前端构建检查 | 刘备/张飞 | 2026-04-24 |
| ESLint import规则 | 实时检测缺失导出,防止构建失败 | 诸葛亮 | 2026-04-24 |
| 构建门禁文档 | 三份构建门禁文档完善 | 诸葛亮 | 2026-04-24 |
---
## 八、修订记录
| 版本 | 日期 | 修订人 | 修订内容 |
|------|------|--------|---------|
| v1.0 | 2026-05-01 | 陈琳 | 初始版本汇总2026年4月全月Bug修复记录 |
---
> **说明:** 本文档基于Git提交记录自动生成可能存在遗漏或归类不准确之处请各修复人核实补充。