手冊首頁 / AI 分析 / 報表與儀表板功能群總覽

報表與儀表板功能群總覽(Reporting Overview)

選單歸屬(2026-07-06 對齊產品選單):專案摘要報表掛在側欄「專案與任務」群(產品選單它與專案列表同群);本群(AI 分析)項下為 AI 儀表板。本頁仍是兩者共用的領域總覽。

本檔放「本功能群多個頁面共用的知識」:頁面地圖、報表 / 儀表板兩類產出、版本歷史機制、角色基調。

各頁面 spec 引用本檔,只寫自己頁面的差異——改共用邏輯時改這裡一份

事實基準:2026-07-05 從 FE(views/project-summary-report/views/dynamic-dashboard/config/router/index.js)/ BE(api/project_summary_reportapi/ai_dashboard)code 與 db_schema.json 掃出;route 存廢對 public.ui_routes

1. 頁面地圖

本群是稽核成果的對外呈現層:把專案資料整理成可讀報表 / 視覺化儀表板。

頁面 FE route 用途一句話 持久性 spec
專案摘要報表 /project-summary-report(+ -tab-view / -history 每專案富文本總結報告,可匯出、有版本歷史 存 DB ⬜ project-summary-report.md
AI 儀表板 /dashboard/ai-dashboard 自然語言 prompt → 即時生成動態儀表板 即時(不落 DB) ⬜ ai-dashboard.md
rp_report_landscape 報表與儀表板全景:三類產出、兩種持久性 cluster_persist 持久化報表(存 DB + 版本歷史) cluster_ephemeral 即時生成(不落 DB,per-request) cluster_grc GRC 內建儀表板(見其他群) psr 專案摘要報表 compliance.project_summary_reports 富文本 summary + 匯出 + 版本歷史 (本群 · project-summary-report) hist project_summary_report_histories type U=更新 / R=還原 psr->hist 每次存檔快照 ai AI 動態儀表板 自然語言 prompt → auto-generate (本群 · ai-dashboard) gd 全域落地儀表板 / 專案儀表板 /grc/dashboard/summary · /project/dashboard (→ 專案管理群 project-dashboard) dead 已除名 scaffold(非功能): analysis(Sigma.js demo) customer-dashboard-editor(grid demo, enable=0)
報表與儀表板全景:持久化摘要報表 vs 即時 AI 儀表板 vs GRC 內建儀表板;兩個已除名 scaffold

相鄰但不在本群:GRC 內建儀表板(全域落地頁 /project/dashboard/grc/dashboard/summary、每 AP 儀表板)歸專案管理群 project-dashboard;證據分類報表歸證據管理群

已除名(驗死,2026-07-05)

  • analysis/analysis):ThreatAnalysis.vue 為 Sigma.js 硬編範例 demo(節點 John / Mary / Sushis…),無 API、ui_routes 無此列、0 個 nav 進入點——scaffolding 殘留,非功能頁。
  • customer-dashboard-editor/dashboard/customer-dashboard-editor):DashboardEditor.vuevue-grid-layout demo(TodoCard / BarStatsCard / PeiStatsCard 假卡),無 API、無持久化、template 留有未完成 item.h"npm typo、ui_routes enable=0(選單停用)——未完成 scaffold。

2. 兩類產出

  1. 持久化報表(專案摘要報表)compliance.project_summary_reports——每專案一份富文本(TipTap 編輯器)總結,summary text 欄存 HTML;支援匯出與版本歷史project_summary_report_historiestype U=更新 / R=還原)。這是傳統「編輯 → 存檔 → 匯出」報表。
  2. 即時 AI 儀表板:使用者輸入自然語言 prompt(/ai-dashboard/auto-generate),後端生成儀表板配置 / widget,前端渲染。per-request 生成、不落 DB(無專屬儀表板表)。/ai-dashboard/health 檢查生成服務可用性。

3. 版本歷史機制(摘要報表)

專案摘要報表的歷史與問卷填答歷史同 pattern:

  • 每次存檔在 project_summary_report_histories 寫一筆快照(type=U);還原某版時把快照套回主檔並記一筆 type=R
  • 版本鏈只增不減;還原不刪後續版本。

4. 角色基調

角色是誰

  • 專案 manager / 參與者——稽核告一段落後撰寫 / 更新專案摘要報表,匯出給客戶或主管看。「身為 manager,我要把這輪稽核的重點整理成一份摘要報表,匯出交給利害關係人。」

  • 一般使用者(有 AI 儀表板選單能力者)——用自然語言直接生出想看的資料視覺化,不用等人做報表。「身為使用者,我要打一句話描述我想看的統計,馬上生成一個儀表板。」

  • 專案摘要報表:專案層功能(project_id 綁定),實際 endpoint 守門以該頁 §3 為準。

  • AI 儀表板:全域工具,只要登入就能用,靠選單能力決定看不看得到入口。

  • 各頁的實際權限強制以該頁 §3 為準(多為 JWT + 選單能力)。

5. 本群共用的已知坑

  1. 摘要報表 summary 存 HTML:TipTap 富文本輸出 HTML 字串存 text 欄;渲染 / 匯出 / 匯入時注意 XSS 與 HTML 淨化。
  2. AI 儀表板不持久:生成結果 per-request,重整即失;別假設有「我的儀表板」清單可回讀。
  3. 本群兩個 scaffold 已除名analysis / customer-dashboard-editor 是 demo,勿誤當功能頁重寫(見 §1)。
  4. GRC 儀表板不在本群/grc/dashboard/summary/project/dashboard 的規格在專案管理群,別在本群重複。