Files

3.3 KiB

诊单编辑:日历矩阵汇总 Tab

Goal

admin/src/views/tcm/diagnosis/edit.vue 中,把现有“血糖血压记录 / 饮食记录 / 运动打卡记录 / 待办事项”4 个独立 tab,替换为 1 个“日常记录”汇总 tab,使用日期矩阵视图统一展示并支持点击新增/编辑。

What I already know

  • 当前相关组件位于:
    • admin/src/views/tcm/diagnosis/components/BloodRecordList.vue
    • admin/src/views/tcm/diagnosis/components/DietRecordList.vue
    • admin/src/views/tcm/diagnosis/components/ExerciseRecordList.vue
    • admin/src/views/tcm/diagnosis/components/DiagnosisTodoList.vue
  • 现有只读矩阵参考实现位于:
    • admin/src/views/tcm/diagnosis/components/TrackingMatrix.vue
    • admin/src/views/tcm/diagnosis/readonly.vue
  • 现有接口已具备:
    • diagnosisTrackingWindow
    • bloodRecordAdd / bloodRecordEdit / bloodRecordDetail
    • dietRecordAdd / dietRecordEdit
    • exerciseRecordAdd / exerciseRecordEdit
  • 现有阈值工具可复用:admin/src/utils/blood-thresholds.ts

User Decisions

  • 完全替换原 4 个 tab,不并存
  • 默认最近 7 天
  • 待办事项不进矩阵,作为独立列表放矩阵下方
  • 点击单元格后用对话框编辑/新增,不做内联编辑

Requirements

  • 新建 admin/src/views/tcm/diagnosis/components/DailyMatrix.vue
  • edit.vue 中删除原 4 个 tab,引入 1 个“日常记录”tab
  • 矩阵横向按天,纵向按指标,空单元格也可点击新增
  • 最近 7 天场景下,表格应尽量填满可用宽度,避免右侧大块空白
  • 默认选择最近 7 天
  • 在待办事项上方新增折线图区域,时间范围与上方矩阵联动
  • 折线图先展示两条曲线:空腹血糖、餐后血糖
  • 权限统一收口:删除原血糖/饮食/运动相关按钮权限,新增 1 个“日常记录”权限,待办查看/操作权限也归入该权限域
  • 待办事项沿用 DiagnosisTodoList,放在矩阵下方
  • 支持 7 天 / 30 天 / 自定义日期范围
  • 支持 viewOnly 模式下禁用点击和新增
  • 不删除旧组件文件,仅停止在 edit.vue 中使用

Acceptance Criteria

  • edit.vue 中原 4 个 tab 不再显示
  • 新 tab “日常记录”可在诊单保存后显示矩阵
  • 默认最近 7 天,可切换 30 天和自定义范围
  • 最近 7 天时矩阵不会在右侧留下明显大块空白
  • 待办事项上方折线图可随时间范围联动刷新
  • 日常记录相关前端权限判断与菜单权限已统一,不再散落在旧血糖/饮食/运动/待办权限上
  • 点击空单元格可新增,点击已有单元格可编辑
  • 待办事项在矩阵下方正常显示
  • viewOnly 模式下矩阵不可编辑

Out of Scope

  • 不修改后端 trackingWindow 接口
  • 不删除旧组件文件
  • 不重做只读页 readonly.vue 的整体结构

Technical Notes

  • 新建主组件:admin/src/views/tcm/diagnosis/components/DailyMatrix.vue
  • 修改入口页:admin/src/views/tcm/diagnosis/edit.vue
  • 参考实现:admin/src/views/tcm/diagnosis/components/TrackingMatrix.vue
  • 复用阈值工具:admin/src/utils/blood-thresholds.ts

Research References