3.2 KiB
3.2 KiB
Bug #733 诸葛亮分析报告
文档类型: Bug分析 分析时间: 2026-06-13 00:22:15 分析模型: mimo-v2.5 (LLM深度分析)
基本信息
- Bug #: 733
- 标题: 【目录管理-诊疗目录】点击“编辑”按钮报错,且无法弹出编辑窗口进行数据修改
- 模块: 系统管理
- 提出人: 陈显精
根因完全定位。分析结果如下:
一、Bug 理解
禅道 Bug #733:【目录管理-诊疗目录】点击"编辑"按钮报错,且无法弹出编辑窗口进行数据修改
- 重现步骤:登录系统 → 系统管理 > 目录管理 > 诊疗目录 → 选择任意行 → 点击【编辑】
- 结果:页面无响应,顶部红色报错:
No static resource data-dictionary/diagnosis-treatment/information-one for request '/healthlink-his/data-dictionary/diagnosis-treatment/information-one/'. - 期望:弹出"编辑诊疗项目"窗口,正确回显数据供修改
综合:用户在诊疗目录列表点击编辑时,前端请求后端获取详情接口失败,报 404 静态资源错误,编辑弹窗无法打开。根因是前端 API URL 写法有误。
二、根因分析
根因:getDiagnosisTreatmentOne 函数的 URL 末尾多了一个 /(trailing slash)
对比代码:
| 文件 | 行 | URL | 状态 |
|---|---|---|---|
diagnosistreatment.js:15 |
编辑用 | '/data-dictionary/diagnosis-treatment/information-one/' |
❌ 多了 / |
implementDepartment.js:65 |
同功能 | '/data-dictionary/diagnosis-treatment/information-one?id=' + id |
✅ 正确 |
disease.js:15 |
类似目录 | '/data-dictionary/disease/information-one' |
✅ 正确 |
device.js:15 |
类似目录 | '/data-dictionary/device/information-one' |
✅ 正确 |
后端 Controller (DiagnosisTreatmentController.java) 定义:
@GetMapping("/information-one")
public R<?> getDiseaseTreatmentOne(@RequestParam Long id)
请求链路:
getDiagnosisTreatmentOne(row.id)→ Axios 拼接 URL- Axios 将
params: {id}作为 query string 追加 - 因 URL 以
/结尾,实际请求变成:/healthlink-his/data-dictionary/diagnosis-treatment/information-one/?id=xxx - Spring Boot 将
/information-one/解析为目录路径,查找静态资源,返回 404No static resource
涉及文件(仅 1 个文件需修改):
healthlink-his-ui/src/views/catalog/diagnosistreatment/components/diagnosistreatment.js:15
三、修复方案
修改 diagnosistreatment.js 第 15 行,去掉 URL 末尾的 /:
- url: '/data-dictionary/diagnosis-treatment/information-one/',
+ url: '/data-dictionary/diagnosis-treatment/information-one',
仅此一处修改,前后端代码风格一致,后端无需任何改动。
四、路由决策
FIXER: zhaoyun(赵云)
REASON: 纯前端 API URL 拼写错误,后端接口正常(/information-one 映射正确),只需前端修复一个字符,赵云负责前端开发最合适。
路由决策
- FIXER_ID: zhaoyun
- 修复 Agent: zhaoyun(前端)
- 原因: LLM 分析决策
⚠️ 修复人员请先验证以上分析是否正确,再执行修复。