P2

US-2:維護贈品項目

manage-voucher-products

As a 管理員, I want 維護隨卡券或滿額贈送的贈品清單, So that 行銷活動與門市能彈性運用贈品.

Acceptance Scenarios

  • WHEN 管理員切到「贈品項目」分頁, THEN 清單欄位變成:分類/項目/備註(贈送條件)/庫存/建議售價/操作,一樣可以搜尋、篩類別、直接在列上改、新增、刪除
  • WHEN 這個贈品不追蹤庫存, THEN 庫存欄顯示「—」;WHEN 庫存剩 10 件以下, THEN 用紅字提醒要補貨
  • WHEN 管理員填寫備註欄位, THEN 可記錄贈送條件(如「染髮加贈」「滿 NT$ 6,000 贈」「搭配方案使用」)
  • WHEN 管理員填贈品價格, THEN 可以填 NT$ 0(純送的)或填建議售價(給會計做帳用)

Independent Test

新增一筆庫存 5 的贈品,確認出現紅字補貨提醒;新增一筆「不追蹤庫存」的贈品,確認顯示「—」;分別試 NT$0 和有金額的建議售價,確認都存得進去、顯示正確。

設計稿

贈品項目分頁(同頁切換)— 庫存/備註/建議售價欄位

贈品項目分頁(同頁切換)— 庫存/備註/建議售價欄位 開啟互動原型 ↗
出自 proposal

Edge Cases

  • 同一個分類裡名稱重複:新增時要擋下來或明確警告
  • 改了價格之後,已經開出去、還沒用完的卡,餘額和次數不能跟著變(以開卡當時的價格為準)
  • 兩個管理員同時改同一個方案:後存的那個要被告知「資料已經被別人改過了」
  • 分類固定六大類(洗剪燙染護頭皮),這期不開放自己加分類
  • 贈品「不追蹤庫存」跟「庫存剛好是 0」是兩回事,畫面要分得出來(不能都顯示「—」)
出自 proposal

Functional Requirements

  • FR-001: 卡券方案頁提供「卡券產品」/「贈品項目」兩個分頁,預設停在卡券產品
  • FR-002: 卡券產品分頁上方有 7 格數字(總項目數+六大類別各幾項與平均價格),可以點類別卡篩選、用名稱搜尋、用類別標籤篩選
  • FR-003: 卡券產品的欄位:分類、項目名稱、項目編號、單次價格;可以直接在列上新增/編輯/刪除,刪除等於下架(已開的卡不受影響)
  • FR-004: 贈品項目的欄位:分類、項目、備註(贈送條件)、庫存(可以是「不追蹤」或數字,10 以下顯示補貨提醒)、建議售價(可以是 NT$0);可以直接在列上新增/編輯/刪除
  • FR-005: 不管刪產品還是刪贈品,都不能影響已經開出去的卡和過去的報表數字
  • FR-006(2026-08-22 決議): 「匯入清單(.csv)」本期要真的做,匯入標的為當前分頁的資料(產品/贈品各一份)
  • FR-006a(2026-08-23 依設計稿補): 提供「匯出清單」,匯出格式與匯入格式相同,匯出檔即為匯入範本
  • FR-007(2026-08-22 決議): 產品和贈品的新增、編輯、刪除所有管理員都能做,管理員之間不分級
出自 proposal

Open Questions

2026-08-22 由 Jacky 逐題答覆(Ci 轉述)。決議彙整見 docs/grooming/2026-08-22-admin-console-open-questions-resolved.md

  • 「贈品」與「產品」的業務差異? — 已由本次改版釐清:贈品獨立分頁,欄位含庫存/備註/建議售價,價格可為 0
  • 方案欄位有哪些? — 已釐清:產品=分類/名稱/單次價格;贈品=分類/項目/備註/庫存/建議售價
  • 本期是否排除「匯入清單 (.csv)」功能2026-08-22 決議:不排除,會有匯入清單按鈕。設計稿上的按鈕不再是假動作,需真實作(見 FR-006)
  • 產品/贈品的 CRUD 是否需要權限分層2026-08-22 決議:所有管理員皆可操作,與 manage-account-permissions 的三層權限結論一致(見 FR-007)
  • 匯入標的是產品、贈品,還是兩者各一份依設計稿:匯入按鈕在分頁切換之上,匯入當前分頁的資料(產品/贈品各一份)
  • 檔案的欄位格式與範本設計稿同時有「匯出清單」,匯出格式即匯入範本,不需另行定義
  • NEEDS CLARIFICATION: 匯入遇到重複項目(同分類同名,見 Edge Cases)如何處理:跳過、覆蓋更新、還是整批中止?
    • 暫定預設:同分類同名視為更新,其餘新增;匯入前顯示預覽讓管理員確認
  • NEEDS CLARIFICATION(2026-08-23,答覆與現況不符): Jacky 回覆「這個頁面功能已經做好了,請維持」,但查證後端 products 模組只有 2 個唯讀 API,沒有任何新增/編輯/刪除/匯入能力。
    • 兩種可能:① 指的是設計稿已完成;② 與「卡券匯入」(001-voucher-account-binding,匯入的是顧客既有卡券)混淆
    • 風險:若照答覆標為「維持現狀」,整個產品/贈品維護頁都不會進開發範圍
    • 建議回問:「卡券方案那頁我查了後端,目前只能讀不能改,新增/編輯/刪除/匯入都還沒做。你說的『已經做好』是指設計稿嗎?」