Skip to content

enhancement(import): 匯入錯誤前端行號定位 + 範本新增欄位說明列 #615

@cct08311github

Description

@cct08311github

問題描述

兩個 BaseImportVM 的使用者體驗問題(與 #562 互補,#562 聚焦流程,本 Issue 聚焦呈現):

1. 匯入錯誤定位體驗不足

BaseImportVM 已產生 ErrorFileId 和錯誤資訊,但前端僅顯示「匯入失敗」+ 下載連結。使用者必須下載 Excel 才能看到哪行出錯。批量匯入 1000 筆遇到 30 個錯誤時,定位工作繁瑣。

2. 匯入範本無欄位說明

下載的匯入範本只有欄位名稱,沒有格式要求、允許值、必填說明和範例資料列。使用者靠猜格式,導致大量驗證失敗。

業界對比

  • Django Import-Export 範本包含欄位說明行、資料驗證下拉和範例資料列
  • EasyExcel 匯入結果提供「行號 + 欄位 + 錯誤原因」表格,錯誤列標紅
  • SAP 批量匯入提供帶紅色批注的錯誤 Excel 回傳

建議修正方向

錯誤預覽:匯入失敗時,前端讀取 error summary,在 LayUI table 中即時顯示前 50 筆錯誤(行號、欄位名稱、錯誤原因),無需下載 Excel 即可定位

範本說明BaseImportVM.GenerateTemplate() 在第二行插入欄位說明(讀取 [Display][Required][StringLength][RegularExpression] attribute);在 [ImportColumn] attribute 新增可選 ExampleHelpText 屬性

[ImportColumn(Example = "2026-01-01", HelpText = "格式:YYYY-MM-DD")]
public DateTime OrderDate { get; set; }

驗收標準

  • 匯入失敗時前端顯示錯誤表格(行號、欄位、原因),不需下載才能看到錯誤
  • 匯入範本第二行含欄位說明(含格式/必填/長度限制)
  • [ImportColumn(Example = "...")] 在範本中顯示範例資料
  • 既有匯入功能向後相容(範本說明列不影響匯入讀取)
  • 說明列使用不同背景色區分(灰色或淡藍色)

Priority: P2
Labels: enhancement, import, ux

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Priority 2enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions