修复: P1-b Dashboard统计源解耦(治翻页/筛选后统计数字错乱 H6/H7)

- 统计走后端 count_tasks 独立通道,不再 filter(state.tasks) 当前页数据

- state 加 activeTaskCount/projectTaskCounts 缓存,loadStats action 并发 count 填充 + df-data-changed task 分支联动刷新

- Dashboard loadAll 删 loadTasks 改 loadStats(不再消费 state.tasks 全量)

- ActiveProjectsPanel getProjectTaskCount 改读 store.projectTaskCounts

- 后端零改(复用已注册 count_tasks IPC + count_by_query)
This commit is contained in:
lxy
2026-08-02 12:29:44 +08:00
parent 9e85cadb3f
commit d1321af880
4 changed files with 45 additions and 4 deletions
@@ -51,8 +51,11 @@ function goDetail(projectId: string) {
router.push(`/projects/${projectId}`)
}
// P1-b A0:统计走后端 count_tasks 独立通道,不再 filter(store.tasks)。
// store.tasks 是 Tasks 视图当前筛选+分页数据,filter 会让面板数字随 Tasks 翻页/筛选错乱。
// store.projectTaskCounts[projectId] = 后端该项目 in_progress 任务数(loadStats 填充)。
function getProjectTaskCount(projectId: string): number {
return store.tasks.filter(t => t.project_id === projectId && t.status === 'in_progress').length
return store.projectTaskCounts[projectId] ?? 0
}
// 阶段 label key:projectStageInfo 返回的 stage 值(coding/testing/release/planning)