star-cloud/app/Models
sky121113 d9edeb0d5d [FEAT] 電子發票後台開立、對帳、補開與作廢流程
1. 新增發票狀態機(pending/issued/failed/void)與冪等鍵 relate_number,並補上 last_checked_at、retry_count、voided_at、void_reason 欄位(migration 全欄位 nullable/有預設,對既有資料零影響並回填既有狀態)。
2. finalize 帶入發票輸入時改為先建 pending 發票,commit 後派發 IssueInvoiceJob 非同步向綠界開立,避免在交易內等待 ECPay 造成長交易。
3. 新增 EcpayInvoiceService 封裝綠界 B2C API(GetIssue 查詢、Issue 補開、Invalid 作廢),金鑰仍取自各機台 payment_configs。
4. 新增 invoices:reconcile 排程指令,每 5 分鐘對 pending 發票以 RelateNumber 向綠界 GetIssue 查證,補登 issued 或標記 failed 待補開。
5. SalesController 新增 reconcileInvoice/reissueInvoice/voidInvoice 三個後台操作端點與對應路由。
6. 發票列表改以 created_at 篩選(pending/failed 尚無 invoice_date 也能顯示),新增狀態過濾器與查詢/補開/作廢操作按鈕,狀態徽章改以狀態機顯示。
7. recordInvoice 改以 flow_id updateOrCreate 收斂,避免重送產生重複發票列;查詢機台/訂單時加上 withoutGlobalScopes。
8. 同步新增相關三語系字串並加入 ecpay_invoice base_url 設定。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 16:18:33 +08:00
..
Machine [REFACTOR] 機台系統設定 settings JSON 化與編輯介面多語系/UI 優化 2026-06-09 17:34:11 +08:00
Member [FEAT] 重構機台日誌 UI 與增加多語系支援,並整合 IoT API 核心架構 2026-03-16 17:29:15 +08:00
Product [FEAT] 商品與機台多語系架構,並補上系統設定同步操作 2026-06-15 09:00:10 +08:00
System [FEAT] 商品與機台多語系架構,並補上系統設定同步操作 2026-06-15 09:00:10 +08:00
Transaction [FEAT] 電子發票後台開立、對帳、補開與作廢流程 2026-06-15 16:18:33 +08:00
Warehouse feat(warehouse): 實作調撥與補貨單商品快照機制,並修復商品無圖片時的預設圖示 fallback 顯示 2026-05-21 16:25:48 +08:00
StaffCard.php [FEAT] 新增員工卡管理模組與 B012 API 文檔完善 2026-05-05 14:06:43 +08:00
StaffCardLog.php [FIX] 修復員工識別卡最後使用狀態更新、刪除頁面顯示 JSON 與語系遺漏問題 2026-05-18 13:37:21 +08:00