|
|
46a7076460
|
Merge branch 'develop' of http://192.168.110.253:3000/wangyizhe/his into develop
|
2026-04-25 21:07:43 +08:00 |
|
|
|
e0e6693897
|
fix: 修正Playwright测试方案架构问题(诸葛亮审查反馈)
- 新增fixtures/auth.ts 登录认证夹具
- 新增pages/LoginPage.ts 页面对象模型
- 新增specs/login.spec.ts 登录测试用例(成功/失败/空用户名)
- 新增specs/bug-regression.spec.ts Bug回归测试(#437/#427)
- 新增.env.test 测试环境变量模板
- package.json添加test:e2e/test:e2e:ui/test:e2e:report脚本
- 移除test-data.ts中密码硬编码,改用环境变量
- .gitignore添加.env.test.local/playwright-report/test-results
感谢诸葛亮架构审查!
|
2026-04-25 21:07:40 +08:00 |
|
guanyu
|
7d1e50d045
|
fix: 修复#443手术计费签发耗材报错
根因: handleAddDeviceBilling方法中对locationId的验证过于严格,
当前端未传递locationId时直接抛出ServiceException导致签发失败。
修复: 将严格验证改为预处理设置默认值,
当advice.getLocationId()为null时, 使用SecurityUtils.getLoginUser().getOrgId()作为默认位置ID。
|
2026-04-25 21:05:05 +08:00 |
|
|
|
25ce12cebf
|
Merge branch 'develop' of http://192.168.110.253:3000/wangyizhe/his into develop
|
2026-04-25 21:02:16 +08:00 |
|
|
|
7d55717037
|
feat: 添加Playwright E2E自动化测试完整方案
- 创建完整Playwright测试方案文档(docs/specs/)
- 创建Playwright配置文件(tests/playwright.config.ts)
- 创建测试数据工具类(tests/e2e/utils/test-data.ts)
- 建立测试目录结构:fixtures/pages/specs/utils
- 支持CI/CD集成,测试失败阻断发布
- 覆盖登录、门诊医生站、手术计费、Bug回归测试
关联任务: UI功能性测试方案落地
|
2026-04-25 21:02:13 +08:00 |
|
guanyu
|
290e8f8f15
|
fix: 修复#445门诊手术待生成列表未剔除已生成医嘱
根因: getSurgeryPage查询只查cli_surgery表,没有关联wor_service_request表检查是否已生成医嘱。
所有手术都会显示在待生成列表中,不管是否已处理。
修复: 在getSurgeryPage查询中LEFT JOIN wor_service_request表,
通过sr.id IS NULL过滤掉已生成医嘱的手术。
|
2026-04-25 20:10:31 +08:00 |
|
|
|
fc84fd61ab
|
fix(#437): 数据库层修复手术计费重复生成收费项
- 添加复合唯一约束 uk_charge_item_encounter_service_product_source
防止同一就诊下同一来源服务+产品产生重复收费项
约束字段:encounter_id + service_table + service_id + product_table + product_id + generate_source_enum
- 添加索引 idx_charge_item_generate_source_product 加速手术计费查询
- 添加索引 idx_charge_item_encounter_status 加速按就诊状态查询
- 提供重复数据检测SQL供运维排查历史数据
根因分析:
1. adm_charge_item 表无任何唯一约束,同一收费项可被多次插入
2. 前端手术计费页面使用 sourceBillNo 过滤,但该字段不存在于 ChargeItem 实体中
3. 多处代码路径(SurgeryAppServiceImpl/RequestFormManageAppServiceImpl)均可生成收费项
4. 缺少数据库层面的兜底防护
Author: xunyu
|
2026-04-25 20:04:54 +08:00 |
|
guanyu
|
d79690a371
|
fix: 修复#442手术计费删除待签发耗材报错
根因: handleDel方法中使用iProcedureService.listByIds(requestIds)错误,
requestIds是WOR_DEVICE_REQUEST/WOR_SERVICE_REQUEST表主键,
不是CLI_PROCEDURE表主键。
修复: 改用iProcedureService.getProcedureRecords(requestIds, serviceTable)
通过request_id字段正确关联执行记录。
|
2026-04-25 20:02:11 +08:00 |
|
|
|
7bccbc7085
|
fix: Bug #427 检查项目分类手风琴展开 + Bug #437 手术计费重复记录修复
- #427: switchCategory函数已实现手风琴逻辑(切换时收起其他分类)
- #437: prescriptionlist.vue添加isSaving防重复提交锁
- #437: 使用JSON.parse(JSON.stringify(row))清理Vue响应式对象
- #437: 添加finally块确保锁释放
|
2026-04-25 19:47:05 +08:00 |
|
guanyu
|
059ef483ca
|
fix: 修复#447住院医生站手术申请弹窗无法加载手术类诊疗目录数据
根因: adviceType=3(诊疗)查询时强制排除手术项(category_code!='手术'且!='24'),
导致通过categoryCode='24'显式查询手术项目时结果为空。
修复: 仅在未指定categoryCode时才排除手术,
当显式指定categoryCode='24'或'手术'时允许加载手术类项目。
|
2026-04-25 16:12:03 +08:00 |
|
guanyu
|
4beb4c40c5
|
fix: 修复#448门诊划价项目分类过滤失效 - 耗材和诊疗查询缺少categoryCode过滤条件
- adviceType=2(耗材)查询添加categoryCode过滤
- adviceType=3(诊疗)查询添加categoryCode过滤
- 与adviceType=1(药品)保持一致的过滤逻辑
- 修复选择耗材类型时仍检索出药品的问题
|
2026-04-25 15:27:02 +08:00 |
|
|
|
914f2d8229
|
docs: 按刘备建议结构重新整理《HIS项目发布检查清单 v1.0》
|
2026-04-25 12:12:41 +08:00 |
|
|
|
2f57b3e7c1
|
docs: 整合四份清单为《HIS项目发布检查清单 v1.0》
|
2026-04-25 12:08:51 +08:00 |
|
guanyu
|
39ccd27df8
|
feat: 新增《后端发布前检查清单》- 关羽
补充后端发布前六大模块检查项:
1. Maven编译验证
2. Spring Boot多环境配置
3. MyBatis Plus规范(实体映射/SQL安全/事务管理)
4. RESTful API设计(统一返回/参数校验/版本管理)
5. 安全与合规(数据脱敏/权限控制/审计日志)
6. 性能检查(N+1查询/慢查询优化)
与陈琳的前端清单形成对称体系,覆盖getDepartmentList类问题的后端等价场景。
|
2026-04-24 19:19:23 +08:00 |
|
|
|
d370b6a888
|
docs: 补充ESLint flat config配置示例到CI/CD门禁规范
|
2026-04-24 19:16:44 +08:00 |
|
|
|
3c61e39e09
|
docs: 修正构建门禁文档中的命令不一致问题 - 统一前端构建命令为 build:prod,后端编译命令为 mvn clean package -DskipTests
|
2026-04-24 19:06:23 +08:00 |
|
|
|
f2c71b08bb
|
feat: 启用ESLint import规则 - 实时检测缺失导出,防止构建失败
|
2026-04-24 18:12:27 +08:00 |
|
|
|
90cf7f43d7
|
Merge branch 'develop' of http://192.168.110.253:3000/wangyizhe/his into develop
|
2026-04-24 18:06:44 +08:00 |
|
|
|
1f5d392c08
|
chore: 清理.git残留的.orig文件
|
2026-04-24 18:06:39 +08:00 |
|
|
|
d52bbda8c3
|
docs: 完善三份构建门禁文档 - 补充前后端协同检查、Java后端门禁、数据库变更字段
架构评审改进项:
- frontend-checklist.md: 增加后端Maven编译、数据库脚本、接口兼容性检查
- cicd-gatekeeper.md: 补充Java后端构建配置(SpotBugs)、分阶段覆盖率目标
- commit-template.md: 增加数据库变更影响评估字段、精简截图要求
|
2026-04-24 18:03:45 +08:00 |
|
guanyu
|
986510278b
|
feat: 配置Husky pre-commit钩子 - 提交前自动执行前端构建检查
- 创建.husky/pre-commit文件
- 配置提交前自动执行npm run build:dev检查语法
- 添加node_modules存在性校验
- 预留ESLint检查接口(待赵云配置后启用)
- 更新openhis-ui-vue3/package.json添加lint-staged配置
【关羽】构建门禁第一步落地
|
2026-04-24 18:02:27 +08:00 |
|
|
|
758921b633
|
Merge branch 'develop' of http://192.168.110.253:3000/wangyizhe/his into develop
|
2026-04-24 17:14:29 +08:00 |
|
|
|
8e7ebd3461
|
chore: 更新package-lock.json(husky安装)
|
2026-04-24 17:13:31 +08:00 |
|
|
|
8c05782549
|
fix: 修复bloodTransfusion.vue构建报错 - public.js补充getDepartmentList导出
|
2026-04-24 17:11:20 +08:00 |
|
|
|
060d1910dd
|
Merge branch 'develop' of http://192.168.110.253:3000/wangyizhe/his into develop
|
2026-04-24 17:05:23 +08:00 |
|
|
|
44ae216612
|
feat: 添加husky pre-commit hook配置实现构建验证 (#441)
- 配置husky作为pre-commit钩子
- 添加构建验证脚本,提交前自动执行构建检查
- 防止构建失败的代码被提交到仓库
关联任务: 自动化构建门禁方案第一步
|
2026-04-24 17:04:49 +08:00 |
|
|
|
0076753c19
|
docs: 添加三份构建门禁相关文档
- 《前端发布前检查清单》
- 《CI/CD构建门禁规范》
- 《代码提交变更说明模板》
为解决getDepartmentList导入错误等构建问题提供标准化文档支持
|
2026-04-24 17:04:42 +08:00 |
|
wangjian963
|
957d426042
|
Merge remote-tracking branch 'origin/develop' into develop
|
2026-04-24 16:54:02 +08:00 |
|
wangjian963
|
76094d6eff
|
fix: 修复 Bug #388 #409 #410
会诊意见格式化存储,确保参加医师和意见完整回显
预约签到挂号时修正 serviceTypeId 为预约类型而非挂号类型
分诊队列显示诊室而非科室,区分预约/挂号类型
|
2026-04-24 16:52:33 +08:00 |
|
|
|
dc43ce335a
|
fix: 清理public.js中重复的getDepartmentList函数
- 移除重复定义的getDepartmentList函数
- 保留一份干净的科室列表接口导出
- 确保4个申请单组件构建正常
|
2026-04-24 16:30:22 +08:00 |
|
|
|
d27b5147ec
|
fix: 修复bloodTransfusion.vue构建失败 - public.js添加getDepartmentList导出函数
- 在public.js中新增getDepartmentList()函数
- 调用/app-common/department-list接口返回完整科室树
- 解决4个申请单组件导入不存在的函数导致构建失败问题
|
2026-04-24 16:26:20 +08:00 |
|
|
|
4fb540cfa5
|
fix: 修复getDepartmentList缺失导出问题 - public.js中补充getDepartmentList函数
4个申请单组件(bloodTransfusion/laboratoryTests/surgery/medicalExaminations)
从@/api/public.js导入getDepartmentList,但该函数未导出导致构建失败
|
2026-04-24 16:25:51 +08:00 |
|
|
|
72e1f927e9
|
feat: 实现Bug#428 #430联动功能
#428: 检查申请分类联动检查方法 - 展开分类时自动加载对应检查方法
#430: 套餐金额实时同步 - 选择检查方法后自动更新申请单总金额
|
2026-04-24 16:03:04 +08:00 |
|
guanyu
|
e7beb3f5c3
|
fix: Bug #436/#438 手术计费显示问题 - 修复chargeItemContext条件判断中的尾随空格
|
2026-04-24 15:17:17 +08:00 |
|
guanyu
|
dc7e3c1de8
|
fix: Bug #432 门诊手术安排新增保存报错 - 修复登录用户null校验缺失导致NPE
|
2026-04-24 15:17:17 +08:00 |
|
|
|
1242d41499
|
fix: Bug #418 #419 #421 #424 检查申请发往科室未自动赋值/下拉无数据 - 修复科室数据源接口问题
主要修复:
- 4个申请单组件统一使用getDepartmentList()替代getOrgList()
- 使用/app-common/department-list接口替代分页接口,确保科室树完整加载
- 添加findTreeItem递归查找函数,支持树形结构科室匹配
- 优化分页大小:pageSize从10000降至500,提升加载性能
- #415 后端添加价格非负验证,防止单价显示负数
涉及文件:
- laboratoryTests.vue/medicalExaminations.vue/bloodTransfusion.vue/surgery.vue
- DoctorStationAdviceAppServiceImpl.java
|
2026-04-24 15:15:32 +08:00 |
|
|
|
091b6e83b6
|
fix: 修复Bug#429检查方法字段不应自动预填
移除examinationApplication.vue中自动填充inspectionMethod的逻辑
用户应手动选择检查方法,而不是由系统自动赋值
|
2026-04-24 15:11:19 +08:00 |
|
|
|
b53cdfa617
|
fix: 修复Bug#439领用出库总库存数量未显示
1. 保留selectRow中sourceLocationId不被清空(handleAddRow已设置)
2. 取消注释handleLocationClick调用,自动获取库存数量
|
2026-04-24 15:08:29 +08:00 |
|
|
|
fe2a79773f
|
fix: 修复Bug#440用户管理修改提交报错hasOwnProperty
Vue 3 reactive proxy对象不支持直接调用hasOwnProperty方法
使用Object.prototype.hasOwnProperty.call替代,解决'hasOwnProperty is not a function'报错
|
2026-04-24 15:00:38 +08:00 |
|
|
|
22b47fcc95
|
fix: 修复前端Bug#431 #433 #434 #435
#431 会诊申请单:标签文案修改「需要病员及会诊目的」为「简要病史及会诊目的」
#433 手术安排编辑:麻醉方法回显为代码 - 添加Number类型转换
#434 手术安排编辑:切口类型未回显 - 添加Number类型转换
#435 手术安排编辑:费用类别未回显 - 确保字段正确赋值
|
2026-04-24 14:39:49 +08:00 |
|
|
|
328ccbbd99
|
feat: verify Bug #414 frontend build working
|
2026-04-24 11:16:05 +08:00 |
|
|
|
6b6e56c79b
|
fix: BUG#280 会诊申请单打印逻辑修复(点击具体记录打印该条,不传参数时打印全部)
|
2026-04-24 10:07:42 +08:00 |
|
|
|
41fe89447f
|
fix: 修复#416布局调整引入的inspectionApplication.vue标签未闭合问题(恢复为正确结构)
|
2026-04-24 08:43:57 +08:00 |
|
|
|
0d11d411ea
|
fix: register.vue构建失败 - 替换不存在的login-background.jpg为渐变背景
|
2026-04-24 08:40:31 +08:00 |
|
guanyu
|
d525a50f52
|
fix: Bug #414 检验项目列表加载缓慢 - 优化分页查询性能
- 限制分页大小默认20,最大50,防止一次性加载过多数据
- 修复pageSize参数验证逻辑错误(之前编辑导致语法错误)
- 使用MyBatis-Plus优化COUNT查询(optimizeCountSql=true)
- 规范化pageNo参数默认值为1
- 同步保留Bug #415价格非负校验
|
2026-04-24 08:37:16 +08:00 |
|
guanyu
|
5d97975e7f
|
fix: Bug #415 项目单价显示负数问题 - 添加价格非负验证
|
2026-04-23 23:13:51 +08:00 |
|
guanyu
|
03e89e0577
|
fix: Bug #418 #419 #421 #424 检查申请发往科室未自动赋值/下拉无数据
- ExamApplyController: 使用前端传入的performDeptCode查询科室ID
- 优先使用执行科室代码,查询不到时使用当前用户科室
- 两处ServiceRequest创建位置均已修复
【guanyu】
|
2026-04-23 22:24:46 +08:00 |
|
|
|
9c48744cb1
|
fix: Bug #413 医生个人报卡管理界面统一(弹窗宽度1100px+标题对齐门诊医生站)
|
2026-04-23 22:19:41 +08:00 |
|
|
|
24758414f2
|
fix: Bug #416/#423 检验/检查申请单布局调整(左右布局+宽度优化)
|
2026-04-23 22:15:25 +08:00 |
|
|
|
2d55387ba9
|
fix: Bug #412 门诊医生站传染病报告卡保存失败(添加临时卡号生成避免空值)
|
2026-04-23 22:05:16 +08:00 |
|