- 新增数字员工财务报告生成、邮件投递与渲染调度器 - 引入员工画像扫描调度与定时提醒任务 - 完善财务看板快照、排行口径与部门人员占比计算 - 优化数字员工工作看板仪表盘与技能目录 - 增强前端总览页图表、工作台摘要与顶部导航栏交互 - 新增差旅申请规划推动提醒与报销创建会话状态管理 - 补充财务报告、看板调度、数字员工工作记录测试覆盖
3.3 KiB
3.3 KiB
财务看板排行口径与部门人员占比 TODO
调研
- 盘点财务看板后端聚合、前端服务、页面布局和测试现状。[CONCEPT: 背景与问题] 证据:已检查
FinanceDashboardService、analytics.js、useOverviewView.js、OverviewView.vue、test_finance_dashboard_service.py。
契约
- 扩展
department_range支持本月 / 本季度 / 本年 / 全部。[CONCEPT: 功能能力] 证据:FinanceDashboardService._resolve_ranking_scope和departmentRangeOptions已更新。 - 响应体新增
department_employee_mix,部门排行新增employeeCount。[CONCEPT: 方案设计] 证据:FinanceDashboardRead、_department_ranking、_department_employee_mix已更新。
后端
- 修改财务看板服务的排行时间范围解析,统一驱动部门排行、个人排行、高额单据和人员占比。[CONCEPT: 方案设计] 证据:
ranking_claims同时供四类排行/图表使用。 - 新增部门人员报销占比聚合逻辑。[CONCEPT: 算法与公式] 证据:新增
_department_employee_mix,按部门和人员聚合金额并返回饼图数据。 - 更新快照缓存兼容新增字段。[CONCEPT: 接口] 证据:
SNAPSHOT_SCHEMA_VERSION = "finance-dashboard-ranking-v2"已加入快照缓存 key。
前端
- 更新前端服务归一化和筛选选项。[CONCEPT: 前端] 证据:
analytics.js支持departmentEmployeeMix,metrics.js选项为本月/本季度/本年/全部。 - 调整财务看板底部布局,新增部门人员报销占比饼图。[CONCEPT: 前端] 证据:
OverviewView.vue的top-claim-split左侧接入DonutChart。 - 部门排行和个人排行展示人员数、单据数等辅助信息,并占满卡片空间。[CONCEPT: 前端] 证据:
BarChart.vue支持meta,排行卡片跨度改为 6 栅格。
测试
- 补充后端定向测试,覆盖排行时间口径、人员数和部门人员占比。[CONCEPT: 测试方案] 证据:
test_finance_dashboard_ranking_range_supports_year_and_all_scope已新增。 - 补充前端源码测试,覆盖筛选器和新增图表字段。[CONCEPT: 测试方案] 证据:新增
web/tests/finance-dashboard-ranking.test.mjs。 - 在
x-financial-main容器内运行后端定向测试,超时不超过 60s。[CONCEPT: 测试方案] 证据:pytest -q server/tests/test_finance_dashboard_service.py,4 passed。 - 运行前端定向测试或构建验证。[CONCEPT: 测试方案] 证据:
node web/tests/finance-dashboard-ranking.test.mjs,3 passed;npm.cmd --prefix web run build通过。
验收
- 调用财务看板接口验证
department_range=全部返回新增字段。[CONCEPT: 指标与验收] 证据:接口返回has_department_employee_mix=true、department_employee_mix_count=6、部门排行含employeeCount=67。 - 更新本 TODO 的完成证据。[CONCEPT: 指标与验收] 证据:本文件已补充每项完成证据。
- 提交并推送本次功能改动,避免纳入无关脏工作区变更。[CONCEPT: 风险与开放问题] 阻塞:工作区已有大量未提交改动,且本次相关后端文件依赖未跟踪的财务看板快照/常量文件,直接提交会混入既有改动,单独提交又可能缺依赖。