本卡屬 FR-161(母卡見「母卡」欄),第 5 棒:把資源庫的程序書池 tab 改成照大類分段。吃卡 3 的欄位與 API。
顧問在資源庫編輯頁打開「程序書池」tab 時,客戶的事前資料已經在裡面。這張卡把這個 tab 從一條平的清單,改成照公司的大類分段顯示,每份標出是「客戶事前資料」還是「顧問上傳」,每份客戶資料旁邊有「這框架不用」。資源庫的 tab 列完全不動,不多開任何 tab(決策者裁示)。
雛形:~/Projects/Billows/Audit-Manager/compliance-manager-be/docs/features/FR-161-2610-pre-engagement-materials/prototype/library-docpool.html(畫面 2),右上可切 ISO 與 CMMC 兩個資源庫看效果。
src/components/grc/DocumentPoolPanel.vue(346 行);超過 800 行就拆子元件(例如 DocumentPoolCategoryGroup.vue)。不要往 ModuleFrameTemplateEditView.vue(1,402 行,已超標)加邏輯。GET /pre-engagement/categories。每段標題旁顯示「N 份」與「M 份此框架不用」(有才顯示)。沒有檔案的大類顯示一行「這個大類還沒有檔案」。pre_engagement_file_id 非空=「客戶事前資料」、空=「顧問上傳」);is_excluded=true 整列淡化並顯示「此框架不用」。category_id。is_excluded;已掛上但被標成不用的,顯示淡化+提示,不自動拆。dark-card、全站字級。icon-only 按鈕加 v-tooltip.top、非同步按鈕配 loading。