# excel-input Specification ## Purpose TBD - created by archiving change add-tts-voiceover-system. Update Purpose after archive. ## Requirements ### Requirement: Excel File Loading 系統 SHALL 支援載入 .xlsx 格式的 Excel 檔案作為講稿輸入來源。 #### Scenario: Valid Excel file selected - **WHEN** 使用者選擇有效的 .xlsx 檔案 - **THEN** 系統解析檔案內容並準備處理 #### Scenario: Invalid file format rejected - **WHEN** 使用者選擇非 .xlsx 格式檔案 - **THEN** 系統顯示格式錯誤警告,不進行處理 ### Requirement: Column Parsing 系統 SHALL 解析 Excel 檔案的標準欄位結構,包含 Filename、Text、Lang 三個欄位。 #### Scenario: Required columns present - **WHEN** Excel 檔案包含 Filename 與 Text 欄位 - **THEN** 系統成功解析所有資料列 #### Scenario: Missing required column - **WHEN** Excel 檔案缺少 Filename 或 Text 欄位 - **THEN** 系統顯示欄位缺失錯誤,停止處理 #### Scenario: Optional Lang column handling - **WHEN** Lang 欄位為空或不存在 - **THEN** 系統預設使用 "zh" 作為語言設定 ### Requirement: Data Validation 系統 SHALL 驗證每一列資料的有效性,確保必要欄位非空。 #### Scenario: Empty text field - **WHEN** 某列的 Text 欄位為空 - **THEN** 系統記錄警告並跳過該列 #### Scenario: Empty filename field - **WHEN** 某列的 Filename 欄位為空 - **THEN** 系統記錄警告並跳過該列 #### Scenario: Valid row processing - **WHEN** Filename 與 Text 欄位皆有值 - **THEN** 系統將該列加入處理佇列