1.5 KiB
1.5 KiB
Bug #426 修复报告
根因分析
Element Plus el-table 的懒加载树形模式(lazy + :load + tree-props="{ hasChildren: 'hasChildren' }")要求每一行数据必须包含 hasChildren: true 属性,才会在该行前渲染展开箭头(+ / -)。
代码中所有创建 selectedItems 行对象的路径(共7处)都正确设置了 isPackage: true 和 packageId,但遗漏了 hasChildren 属性,导致树形表格无法识别哪些行是可展开的套餐项。
影响范围
- 文件:
examinationApplication.vue(前端) - 涉及函数:
handleItemSelect、handleMethodSelect、handleRowClick、onDetailMethodChange - 数据表: 无数据库变更
修复方案
在7处代码路径中,当 packageId 存在时同步设置 hasChildren: true:
handleRowClick初始 item 创建:hasChildren: falsehandleRowClick回充时设置isPackage两处:hasChildren: truehandleMethodSelect已存在项更新:hasChildren: truehandleMethodSelect新项创建:hasChildren: !!(method.packageId || targetItem.packageId)handleItemSelect新行创建:hasChildren: !!(item.packageId)onDetailMethodChange方法切换:hasChildren: true
验证计划
- 在门诊医生站选择检查套餐后,"检查明细" tab 的树形表格应显示展开箭头
- 点击展开箭头应懒加载套餐明细(项目名称、数量、单价)
- 回充已保存申请单时套餐项应正确显示展开箭头
修复结果:✅ 成功,13行改动