Files
ewoooc/docs/daily_sales_implementation_checklist.md
ogt 1b4f3a7bbe
Some checks failed
CD Pipeline / deploy (push) Failing after 59s
feat: EwoooC 初始化 — 完整專案推版至 Gitea
- 建立 Gitea Actions CD pipeline (.gitea/workflows/cd.yaml)
- 部署模式: rsync Python 檔案至 188 → docker restart (volume mount)
- Dockerfile/requirements 變動時自動重建 Docker image
- 部署通知: Telegram (開始/成功/失敗)
- 健康檢查: https://mo.wooo.work/health (最多 5 次重試)
- 同步最新 CLAUDE.md / ADR-008 / memory (2026-04-19)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-19 01:21:13 +08:00

6.4 KiB
Raw Blame History

每日業績儀表板 - 實作檢查清單

📋 Phase 1: 資料庫與後端基礎 (預計 2-3 天)

資料庫設計

  • 建立 daily_sales 表格(完整欄位對應 realtime_sales_monthly
  • 建立 daily_sales_summary 表格(每日統計摘要)
  • 建立必要索引日期、商品ID、訂單編號
  • 撰寫資料庫 migration 腳本
  • 測試資料庫結構

Excel 匯入後端

  • 安裝 pandasopenpyxl 套件
  • 實作 Excel 檔案讀取功能
  • 實作欄位驗證邏輯
    • 必填欄位檢查
    • 日期格式驗證
    • 數值型別驗證
  • 實作重複訂單處理邏輯
  • 實作批次寫入功能(使用 transaction
  • 實作匯入結果回報

API 端點開發

  • POST /api/daily_sales/validate - 驗證 Excel 檔案
  • POST /api/daily_sales/import - 匯入資料
  • GET /api/daily_sales/calendar - 取得月度資料
  • GET /api/daily_sales/detail - 取得單日詳情
  • GET /api/daily_sales/compare - 業績對比
  • GET /api/daily_sales/trends - 趨勢資料
  • GET /api/daily_sales/top_products - 熱銷商品

業績計算邏輯

  • 實作每日統計摘要計算
  • 實作 DoD (日對日) 成長率計算
  • 實作 WoW (週對週同日) 成長率計算
  • 實作 MoM (月對月) 成長率計算
  • 實作 YoY (年對年) 成長率計算
  • 撰寫單元測試

🎨 Phase 2: 前端開發 (預計 3-4 天)

頁面架構

  • 建立新路由 /daily_sales
  • 建立 HTML 模板(延續現有設計風格)
  • 整合 Bootstrap 5.3 樣式
  • 加入 Font Awesome 圖示
  • 響應式設計測試

行事曆整合

  • 安裝 FullCalendar.js
  • 初始化行事曆元件
  • 客製化日期格子樣式
  • 顯示每日業績摘要
    • 總業績金額
    • 成長率指標
    • 狀態顏色(紅/綠/灰)
  • 實作月份切換功能
  • 實作「今天」快速跳轉

Excel 匯入介面

  • 設計檔案上傳區域(拖拉或點選)
  • 整合 SheetJS (xlsx) 前端處理
  • 實作檔案預覽功能(顯示前 10 筆)
  • 實作驗證結果顯示
  • 實作進度條顯示(匯入中)
  • 實作匯入結果摘要(成功/失敗筆數)
  • 錯誤訊息友善顯示

日期詳情 Modal

  • 設計 Modal 視窗
  • 顯示當日完整統計
    • 總業績、訂單數、客單價
    • Top 10 熱銷商品表格
    • 各類別業績圓餅圖
    • 時段業績折線圖
  • 實作資料載入動畫

📊 Phase 3: 對比分析與視覺化 (預計 2-3 天)

業績對比功能

  • 設計對比控制面板
    • 日期選擇器date picker
    • 對比類型選擇DoD/WoW/MoM/YoY
    • 「對比」按鈕
  • 實作對比結果顯示
    • 指標對比表格
    • 差異數值和百分比
    • 上升/下降箭頭圖示

Chart.js 圖表

  • 業績趨勢折線圖(過去 30 天)
    • 顯示業績曲線
    • 標註特殊日期(活動日)
    • 懸停顯示詳細數據
  • 週同日對比長條圖
    • 顯示過去 4 週同日數據
    • 標示成長率
    • 顏色區分正負成長
  • 熱銷商品水平長條圖
    • Top 10 商品排名
    • 顯示銷售件數
  • 類別業績圓餅圖
    • 各商品館佔比
    • 懸停顯示百分比

儀表板卡片

  • 設計 4 張 KPI 卡片
    • 今日業績卡片
    • 本週業績卡片
    • 本月業績卡片
    • 熱銷商品卡片
  • 實作卡片 hover 動畫
  • 實作即時更新

🔗 Phase 4: 整合與優化 (預計 2-3 天)

與現有儀表板整合

  • /sales_analysis 加入「每日業績」連結
  • /sales_analysis 顯示「今日業績快覽」卡片
  • 實作資料累加邏輯
    • 定時任務(每日凌晨 00:30
    • 將 daily_sales 累加到 realtime_sales_monthly
  • 更新導航列,加入「每日業績」選項

定時任務

  • 安裝排程工具APScheduler 或 cron
  • 撰寫每日統計計算任務
  • 撰寫成長率計算任務
  • 撰寫資料累加任務
  • 測試定時執行

效能優化

  • 資料庫查詢優化(使用索引)
  • API 回應快取Redis
  • 前端分頁載入
  • 大量資料匯入使用背景任務
  • 壓縮圖表資料大小

測試

  • 單元測試(後端邏輯)
  • API 測試(使用 Postman/pytest
  • 前端功能測試
    • Excel 匯入流程
    • 行事曆互動
    • 對比分析功能
    • 圖表顯示
  • 整合測試(完整流程)
  • 瀏覽器相容性測試
  • 行動裝置測試

上線前檢查

資料備份

  • 建立自動備份機制
  • 測試資料還原流程

文件

  • 撰寫使用者操作手冊
  • 撰寫 API 文件
  • 更新系統架構文件

安全性

  • 檔案上傳大小限制
  • 檔案類型驗證
  • SQL Injection 防護
  • XSS 防護
  • CSRF Token

效能

  • 頁面載入速度測試 (< 3 秒)
  • API 回應時間測試 (< 500ms)
  • 大量資料匯入測試 (10,000+ 筆)

部署

  • 更新依賴套件清單requirements.txt
  • 更新資料庫 migration
  • 設定環境變數
  • 重啟服務測試

📝 額外功能(選配)

進階功能

  • 業績目標設定介面
  • 目標達成率追蹤
  • 業績預測(使用移動平均)
  • 異常檢測(業績驟降警示)
  • Email 通知(業績報表)
  • 資料匯出Excel/PDF

行動支援

  • 優化行事曆行動版顯示
  • 手勢操作(滑動切換月份)
  • PWA 支援(離線查看)

🎯 開發時間估算

階段 預計天數 備註
Phase 1: 後端基礎 2-3 天 資料庫 + API
Phase 2: 前端開發 3-4 天 UI + 匯入功能
Phase 3: 對比分析 2-3 天 圖表 + 計算
Phase 4: 整合優化 2-3 天 測試 + 上線
總計 9-13 天

💡 重要提醒

  1. 先做 MVP:優先完成核心功能(匯入 + 行事曆顯示),再逐步加入對比分析
  2. 增量開發:每完成一個 Phase 就進行測試和驗證
  3. 保持溝通:每個階段結束後與需求方確認
  4. 文件先行:確保資料庫設計和 API 規格文件完整
  5. 備份優先:匯入前必須備份現有資料

準備開始時間: 2026-01-13明天 預計完成時間: 2026-01-24