|
|
b74f6bf3f9
|
fix(#630): 请修复 Bug #630:[门诊医生站] 点击选择现诊患者列表报错
根因:
- **
- 门诊医生站点击现诊患者后,右侧病历区域加载失败,抛出异常。经过全链路分析(前端→Controller→Service→Mapper→DB),定位到两个可能的问题点:
- 1. `DoctorStationEmrController.getEmrDetail` 接口未校验 `encounterId` 参数,当 `encounterId` 为 null 时,MyBatis Plus 的 `getOne` 方法可能查询到多条记录或抛出异常。
- 2. `DoctorStationEmrController.getPatientEmrHistory` 接口未校验 `patientId` 参数,可能导致查询条件异常。
修复:
- **
- 在 `DoctorStationEmrAppServiceImpl.getPatientEmrHistory` 方法中增加 `patientId` 空值校验,为空时返回空分页结果,避免查询异常。
- 在 `DoctorStationEmrAppServiceImpl.getEmrDetail` 方法中增加 `encounterId` 空值校验,为空时直接返回 null;同时将 `emrService.getOne` 的第二个参数设为 `false`,避免多条记录时抛出异常。
- 修改文件:**
- `openhis-application/src/main/java/com/openhis/web/doctorstation/appservice/impl/DoctorStationEmrAppServiceImpl.java`
- 编译验证:**
- 运行 `mvn compile -pl openhis-application -am`,编译成功,无新增错误。
|
2026-05-31 00:41:58 +08:00 |
|
|
|
9f789cd3a3
|
fix(#629): 请修复 Bug #629:[住院医生站-临床医嘱] 录入长期医嘱“荆防颗粒”点击保存报错,数据无法写入
根因:
- `RegAdviceSaveDto`(子类)重复声明了父类 `AdviceSaveDto` 已有的 `private Integer categoryEnum` 字段。Lombok `@Data` 在两个类上各生成独立的 getter/setter,子类方法覆盖父类。这导致:
- Jackson 反序列化**时,JSON 中的 `categoryEnum` 值只写入子类字段,父类字段始终为 `null`
- 多态访问**时(通过父类类型引用),`getCategoryEnum()` 返回 `null`,导致下游操作(如护士站计费 `NurseBillingAppService`)获取到空值
- `hashCode`/`equals`** 行为不一致:子类只比较自己的 `categoryEnum`,父类比较所有字段
修复:
- 从 `RegAdviceSaveDto` 中移除了重复的 `categoryEnum` 字段,让子类直接继承父类的字段和 getter/setter。
- | 文件 | 变更 |
- |---|---|
- | `RegAdviceSaveDto.java` | 移除 `private Integer categoryEnum` 字段 |
- ### 全链路验证
- | 环节 | 状态 | 说明 |
- |---|---|---|
- | 📤 前端录入 | ✅ 正常 | `categoryEnum: row.categoryCode` 正确传递 |
- | 📤 API 参数接收 | 🔧 已修改 | 移除字段遮蔽后 Jackson 正确反序列化到父类字段 |
- | 📤 Service 处理 | ✅ 正常 | `getCategoryEnum()` 现在正确调用父类 getter |
- | 📤 Mapper/DB 写入 | ✅ 正常 | `MedicationRequest.categoryEnum` 正确赋值 |
- | 📥 查询展示 | ✅ 正常 | 数据正确入库,查询不受影响 |
- ### 编译验证
- `mvn compile -pl openhis-application -am` ✅ 通过
|
2026-05-30 16:37:41 +08:00 |
|
|
|
4c1222f0f4
|
fix(#631): 请修复 Bug #631:[住院医生站-临床医嘱] 诊疗类医嘱(如肌肉注射)录入执行科室后,医嘱列表“药房/科室”列未回显数据
根因:
- Bug #请修复 Bug #631 存在的问题
修复:
- 文件:`openhis-application/src/main/java/com/openhis/web/regdoctorstation/appservice/impl/AdviceManageAppServiceImpl.java`
- 第 630 行:`getPositionId()` → `getEffectiveOrgId()`
- 第 681 行:`getPositionId()` → `getEffectiveOrgId()`
- `getEffectiveOrgId()` 方法优先取 `orgId`,fallback 到 `positionId`,已在 `AdviceSaveDto` 中定义
- 验证**:`mvn compile -pl openhis-application -am -q` ✅
|
2026-05-30 09:45:21 +08:00 |
|
|
|
cfa073bdba
|
Fix Bug #547: 执行科室配置保存时时间冲突检测范围错误 — 根因:addOrEditOrgLoc 方法使用 getOrgLocListByActivityDefinitionId 跨科室查询同一诊疗的所有配置,导致不同科室间的正常时间重叠被误判为冲突;修复:改为 getOrgLocListByOrgIdAndActivityDefinitionId(orgId, activityDefId) 限定同科室范围;同时优化软删除科室处理,当冲突记录关联的科室已被删除时,使用"科室[ID]已删除"替代静默跳过
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 12:07:34 +08:00 |
|
|
|
021f7180c0
|
Fix Bug #559: 根因+修复方案摘要
|
2026-05-20 12:07:10 +08:00 |
|
Ranyunqiao
|
ee59fd5ea0
|
bug 555 558
|
2026-05-20 12:07:10 +08:00 |
|
|
|
20a372268b
|
Fix Bug #559: 根因+修复方案摘要
|
2026-05-20 11:04:39 +08:00 |
|
|
|
31f288c0dd
|
Fix Bug #559: 住院医生站-临床医嘱 组套功能添加医嘱后新增医嘱置顶显示
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 11:02:27 +08:00 |
|
|
|
5c97380a78
|
Fix Bug #547: 执行科室配置保存时时间冲突检测范围错误 — 根因:addOrEditOrgLoc 方法使用 getOrgLocListByActivityDefinitionId 跨科室查询同一诊疗的所有配置,导致不同科室间的正常时间重叠被误判为冲突;修复:改为 getOrgLocListByOrgIdAndActivityDefinitionId(orgId, activityDefId) 限定同科室范围;同时优化软删除科室处理,当冲突记录关联的科室已被删除时,使用"科室[ID]已删除"替代静默跳过
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 10:16:57 +08:00 |
|
|
|
30e5c92f0b
|
docs: 更新 Bug #547 分析报告 — 修正根因描述为跨科室误报
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 10:16:56 +08:00 |
|
|
|
7c6e35dcc3
|
Fix Bug #547: 冲突检测改为同科室范围 — 跨科室时间重叠不应阻断同一诊疗在不同科室的独立配置
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 10:16:29 +08:00 |
|
|
|
74b67401f3
|
Fix Bug #547: 合并冲突解决 — 保留 HEAD 版本的软删除科室跳过逻辑(continue),合并远程的手术安排时间字段回显修复
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 10:13:50 +08:00 |
|
|
|
81d954fceb
|
Fix Bug #547: 根因+修复方案摘要
|
2026-05-20 10:12:38 +08:00 |
|
|
|
c7da7440f6
|
Fix Bug #556: 就诊卡号改用busNo映射、执行时间默认当前时间、套餐标识增加packageName联合判断
根因:
1. medicalrecordNumber 绑定到 identifierNo(身份证号)而非 busNo(就诊卡号),导致字段为空
2. executeTime 初始化为 null 且未在 initData/resetForm 中设置默认值
3. loadApplicationToForm 中 isPackage 判断仅用 feePackageId != null,缺少 packageName 联合判断,
导致 feePackageId 非空但非套餐的项目被误标为"套餐"
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 10:11:16 +08:00 |
|
wangjian963
|
232a0db810
|
Merge remote-tracking branch 'origin/develop' into develop
|
2026-05-20 09:46:29 +08:00 |
|
wangjian963
|
3394aa54d7
|
549【住院医生站-临床医嘱-检验】打开“检验申请单”弹窗获取项目列表响应极其缓慢
546 【患者管理】-【患者列表】-【新增患者】,新增患者,保存成功,但没有数据
536 [门诊手术安排]“手术申请查询”弹窗底部,分页组件与界底部元素重叠,影响操作。
|
2026-05-20 09:45:33 +08:00 |
|
|
|
dc94978187
|
Fix Bug #557: ApplicationConfig 全局 Jackson LocalDateTime 反序列化器缺失 — 根因:JavaTimeModule 仅注册了 LocalDateTimeSerializer,未注册 LocalDateTimeDeserializer,导致默认反序列化器期望 ISO-8601 格式(T 分隔符),与前端 el-date-picker 空格分隔格式(YYYY-MM-DD HH:mm:ss)不匹配;修复:新增 LocalDateTimeDeserializer(pattern="yyyy-MM-dd HH:mm:ss")
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 09:42:20 +08:00 |
|
|
|
b925d6ba17
|
Fix Bug #557: 编辑手术安排时间字段保存报日期格式解析错误 — 根因:OpSchedule 实体中 admissionTime/entryTime/startTime/endTime/anesStart/anesEnd 六个时间字段的 @JsonFormat 使用 yyyy-MM-dd'T'HH:mm:ss(ISO T分隔符),而前端 el-date-picker 以 value-format="YYYY-MM-DD HH:mm:ss" 发送空格分隔格式,Jackson 反序列化失败;修复:统一改为 @JsonFormat + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-20 09:34:10 +08:00 |
|
|
|
72b9639ec0
|
Fix Bug #556: 根因+修复方案摘要
|
2026-05-19 19:12:56 +08:00 |
|
|
|
0e8fb32108
|
Fix Bug #556: 根因+修复方案摘要
|
2026-05-19 19:07:29 +08:00 |
|
|
|
955c72af41
|
Fix Bug #556: 根因+修复方案摘要
|
2026-05-19 19:05:33 +08:00 |
|
Ranyunqiao
|
be57c026ec
|
553 【住院护士站-医嘱校对】医嘱列表缺少“医嘱状态”显示列
|
2026-05-19 17:41:08 +08:00 |
|
|
|
3bf7e04a04
|
Fix Bug #469: 根因+修复方案摘要
|
2026-05-19 16:10:13 +08:00 |
|
|
|
7743bb5df4
|
Fix Bug #547: 执行科室配置保存时,冲突检测应跳过已被软删除科室的孤脏记录 — 根因:时间冲突校验未排除科室已删除的 OrganizationLocation 记录,导致已不存在的科室仍会阻断新配置保存
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-19 16:02:58 +08:00 |
|
|
|
f274ebaf5c
|
Fix Bug #478: 住院医生工作站检验申请详情「发往科室」显示为- — 根因:getLocationInfo 未对科室ID做类型归一化,recursionFun 中 item.id == targetDepartment 在类型不一致时匹配失败;修复:新增 normalizeOrgTreeIds 统一转 String,recursionFun 改用 String(item.id) === String(targetDepartment)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-19 15:09:23 +08:00 |
|
|
|
9826df98e3
|
Fix Bug #552: 根因+修复方案摘要
|
2026-05-19 15:04:12 +08:00 |
|
Ranyunqiao
|
fbe434f01f
|
Merge remote-tracking branch 'origin/develop' into develop
|
2026-05-19 14:23:21 +08:00 |
|
Ranyunqiao
|
c28b322e91
|
bug 443 444 445 478 494 521
|
2026-05-19 14:22:40 +08:00 |
|
|
|
7eeaafef59
|
bug550
|
2026-05-19 14:13:57 +08:00 |
|
|
|
05e7d54d87
|
Fix Bug #552: 双击待保存医嘱编辑保存后不应自动添加空医嘱 — 根因:handleSaveSign 中自动添加空行的条件缺少 isAdding.value 判断,导致双击编辑已有待保存医嘱也会触发 handleAddPrescription()
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-19 14:06:33 +08:00 |
|
|
|
c75b8038ec
|
Fix Bug #547: 根因+修复方案摘要
|
2026-05-19 14:02:45 +08:00 |
|
|
|
af17d1f460
|
Fix Bug #469: 根因+修复方案摘要
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-19 13:04:48 +08:00 |
|
|
|
efc1c100aa
|
Fix Bug #547: 根因+修复方案摘要
|
2026-05-19 13:01:36 +08:00 |
|
wangjian963
|
d9c975a950
|
Merge remote-tracking branch 'origin/develop' into develop
|
2026-05-19 12:16:46 +08:00 |
|
|
|
0874012dae
|
Fix Bug #547: 根因+修复方案摘要
|
2026-05-19 12:12:38 +08:00 |
|
wangjian963
|
cbad13bddc
|
Fix: 门诊预约挂号→签到→退号 slot/pool 状态流转对齐需求
- 枚举重排: SlotStatus LOCKED=4→2, CANCELLED=2→4,匹配需求编号
- 预约: lockSlotForBooking 写入 LOCKED(2) 替代 BOOKED(1),pool locked_num+1 原子递增
- 签到: LOCKED(2)→BOOKED(1) 替代 CHECKED_IN(3),加前置状态校验
- 退号: 加 BOOKED(1) 前置校验
- 池计数: refreshPoolStats booked_num=COUNT(1), locked_num=COUNT(2)
- SQL 状态值全部由 SlotStatus 枚举传入,消除硬编码
- 查询/显示: 加 locked 筛选分支,BOOKED→已取号, LOCKED→已锁定
- 前端常量同步,签到列表查询 book→locked
|
2026-05-19 12:12:16 +08:00 |
|
|
|
a91ee66368
|
bug446,468,541,548
|
2026-05-19 11:59:55 +08:00 |
|
|
|
871e2de574
|
fix: same idCard substring fix for top-level copy
|
2026-05-19 11:40:20 +08:00 |
|
|
|
3d279548f0
|
chore: update his-repo submodule (patient save fix)
|
2026-05-19 11:39:13 +08:00 |
|
|
|
c4a5932a5d
|
Fix Bug #469: 根因+修复方案摘要
|
2026-05-19 11:13:23 +08:00 |
|
|
|
7adb3b3ea4
|
bug542【病区护士站-住院记账】“补费”界面选择“耗材”类型时,即使后台已配置科室权限,仍检索不到任何耗材数据
|
2026-05-19 11:06:20 +08:00 |
|
|
|
e9953cd037
|
bug542【病区护士站-住院记账】“补费”界面选择“耗材”类型时,即使后台已配置科室权限,仍检索不到任何耗材数据
|
2026-05-19 11:00:45 +08:00 |
|
|
|
1e6704928a
|
Merge branch 'guanyu' of http://192.168.110.253:3000/wangyizhe/his into guanyu
# Conflicts:
# openhis-ui-vue3/src/views/surgicalschedule/index.vue
|
2026-05-19 09:08:06 +08:00 |
|
|
|
75e49f0237
|
Fix Bug #547: 时间冲突校验中"未知科室"提示改进 — 当冲突记录关联的科室已被删除时,将模糊的"未知科室"改为显示具体科室ID及"已删除"状态,便于运维定位数据问题;同时清理数据库中14条organization_id指向已删除科室的孤脏记录
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-19 09:06:30 +08:00 |
|
|
|
798c5e19e2
|
Fix Bug #548: 发往科室字段未能正确回显 — 编辑初始化时 transferValue 变化触发 projectWithDepartment 清空 form.targetDepartment,已加 isInitializing 标志拦截
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-19 09:00:15 +08:00 |
|
|
|
fa18e94cd9
|
Fix Bug #444: 引用计费时"已引用计费药品"列表混入非药品项目 — handleQuoteBilling 过滤逻辑仅用 item.adviceType !== 1 严格相等判断且缺少二次关键词过滤,导致后端错误标注 adviceType=1 的手术/检查项目被放行;已对齐 handleMedicalAdvice 的双重过滤策略(Number() 类型转换 + snake_case 回退 + 关键词排除)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-19 00:05:23 +08:00 |
|
|
|
69bb887d19
|
Fix Bug #547: 根因+修复方案摘要
|
2026-05-19 00:04:04 +08:00 |
|
|
|
2b6b00b6c2
|
Fix Bug #445: 根因+修复方案摘要
|
2026-05-18 23:03:39 +08:00 |
|
|
|
1ddf8a2ccd
|
Fix Bug #444: 引用计费时"已引用计费药品"列表显示非药品项目 — handleQuoteBilling 过滤逻辑缺少 Number() 类型转换和 snake_case 回退,且缺少关键词二次过滤,导致手术/检查/诊疗等非药品项目出现在列表中;已统一与 handleMedicalAdvice 的过滤逻辑
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-18 23:03:39 +08:00 |
|
|
|
b89f41048b
|
Fix Bug #445: 引用计费时已生成医嘱项目重新出现在待生成列表 — handleQuoteBilling 中先清空 temporaryAdvices 再执行 ID 匹配过滤,导致过滤逻辑对空数组无效;且 ID 匹配不可靠(新医嘱无 requestId/chargeItemId),已改为在清空前提取复合键(名称|||规格|||数量)并在数据加载后用该键过滤
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-18 22:05:38 +08:00 |
|