Files
zyt/artifacts/revisit-cohort-frontend.md
T
2026-10-17 16:08:24 +08:00

32 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
> 2026-10-17 更正:以下为10月16日实施记录。原页面及原 API 已恢复,指派周期新报表迁至 revisit_assign_rate / stats.revisitAssignRate,继承报表仍独立。最新验证见 revisit-legacy-source-proof.json、revisit-legacy-restored-compile.json、revisit-legacy-restored-browser-check.json 及部署计划。
# 复诊统计前端交付与验证
日期:2026-10-16
## 实现
- `admin/src/views/stats/revisit_rate/index.vue`:原入口保留,专门展示新指派患者。
- `admin/src/views/stats/revisit_inherit_rate/index.vue`:独立继承复诊入口。
- `admin/src/views/stats/revisit_rate/components/CohortReport.vue`:共享 Element Plus 报表,按 `cohortType` 分离接口、权限、患者人数列及说明。不再保留旧/新继承混算切换。
- `admin/src/api/stats.ts`:以第二参数选择 `/stats.revisitRate` 或 `/stats.revisitInheritRate`;保留个人业绩依赖的 `RevisitRateInheritMode`。
日期筛选默认当月 1 日至当天,支持任意范围及未来结束日期(如 10 月 30 日);日期范围选患者,订单累计至查询当天。继承页明确写明:继承后第一笔有效订单算二诊,第二笔算三诊,不使用继承前全局诊次或偏移。
保留部门树、医助/部门层级明细、服务端去重合计、患者只读详情、订单只读抽屉;新增可搜索和清空的医助筛选,按选中部门及其下级过滤,切换部门会清空范围外医助。展示服务端 `observed_until`。
下钻复用已展示报表的查询快照,顶层 `assistant_id` 与医助行 `scope_assistant_id` 独立传递。汇总和明细分别用请求序号丢弃旧响应;筛选重新查询会关闭并清空明细。
## 验证
1. 使用项目现有 `@vue/compiler-sfc` 编译两页入口和共享组件:脚本、模板、SCSS 均通过。
2. 使用真实 Vue `ref/computed`、编译后的 SFC setup 及受控异步 API 验证 26 项行为,全部通过:
- 默认日期、未来结束日期保留、部门子树医助过滤、超出范围自动清空。
- 查询快照、保留顶层医助、独立行级医助/部门范围、返回 count、动态诊次排序去重。
- 汇总/明细乱序响应、筛选后迟到明细的丢弃、重新查询清空明细。
- 继承文案、单类人数列、独立继承权限、两套接口各四个 action 路径。
3. `node node_modules/vue-tsc/bin/vue-tsc.js --noEmit --pretty false`:全项目有 61 条既有类型诊断;本次 API、两页入口及共享组件的诊断为 **0**。存量错误包括聊天组件、编辑器声明、录像 API 及既有处方表单类型等。
4. 前端负责文件统一 LF;`git diff --check` 通过。
未执行含 release 的 `npm run build`,未发布。浏览器与真实后端联调由主代理继续完成。