本卡屬 FR-145(母卡見子卡清單回填),卡 4:報告包。等卡 3(報告 Word/PDF)。

這一棒在做什麼(白話)

按「下載報告包」拿一個 zip,裡面有:完整報告 Word 與 PDF、一張證據對照表 Excel(一列一筆佐證,告訴你每個控制項的證據在包裡哪個資料夾)、每個稽核次一個資料夾放稽核計畫、稽核報告、工作表、還有一個「證據」資料夾依控制族群/控制項/評估目標分層放證據原檔。證據用稽核次結案時凍結的那個版本,不是現在的;問卷類佐證轉成一份 PDF(題目加答案)放進去;連結類打不包只記在對照表;沒被採用的佐證對照表留一列但不收檔。定稿時把 zip 存一份,歷史頁可重新下載那一版。

首腦核對過的現況

在哪裡

app/closing_report/service/closing_report_bundle_service.py   新:build(report) → BytesIO;資料夾與檔名規則
app/closing_report/service/evidence_index_workbook.py          新:證據對照表 xlsx
app/closing_report/service/survey_answer_pdf.py                新:問卷填答 → PDF
app/closing_report/service/closing_report_app_service.py       issue() 接 bundle 存檔;加 bundle 端點
api/closing_report/routes/closing_report_route.py              GET …/bundle、GET …/history/<uid>/bundle
compliance-manager-fe …ClosingReportView.vue                   下載下拉「報告包 zip」「報告包內容」接上

怎麼做