Skip to content

ux(etl): improve ETL management UI — form grouping, progress visualization, Cron validation, row actions #540

@cct08311github

Description

@cct08311github

問題描述

ETL 管理介面有多項 UX 問題,增加操作門檻:

1. Create view 17 個欄位擠在一頁

EtlJobDefinitionVM 的 Create/Edit view 將所有欄位(連線設定、排程設定、watermark 設定、進階設定)混合在兩欄 layout,認知負擔大。WatermarkColumnWatermarkTimeZoneInitialWatermarkValue 只在 WatermarkType != FullLoad 時有意義,但表單不會根據選擇動態顯示/隱藏。

2. 無進度視覺化頁面

_EtlMonitorControllerRunningProgress 端點存在,但沒有對應的前端頁面,管理者只能用 API 工具查看 JSON。

3. Cron 表達式無即時驗證

CronExpression 欄位使用普通 textbox,輸入時無即時格式驗證,也不顯示「下次觸發時間」。後端有 CronExpression.IsValidExpression() 可呼叫,但未串接前端。

4. Job 列表缺少行級別操作按鈕

TriggerNowPauseResumeAbortSkipNext 都是 POST API,但 Index 頁面的 grid 沒有行級別按鈕,操作者必須直接呼叫 API。

預期行為

  • Create 表單按「基本設定 / 排程設定 / Watermark 設定 / 進階設定」分組,非必要欄位動態隱藏
  • 提供 ETL Job 執行進度頁面(進度條 + 即時更新)
  • Cron 輸入框在 blur 或 input 時顯示驗證結果及下次 3 次觸發時間
  • Job 列表每行提供「立即執行 / 暫停 / 中止」快捷操作按鈕

影響範圍

  • 對象:ETL 管理者的日常操作效率
  • 嚴重度:P2(可用但操作不便)

Priority: P2

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestetlETL moduleux

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions