Commit Graph

9 Commits

Author SHA1 Message Date
sky121113
e01e8077f9 [FEAT] 新增訂單收件人姓名遮罩與商品詞彙通用化調整
1. 於 Order Model 新增收件人姓名遮罩邏輯 (masked_pickup_recipient),將 member_barcode 進行去識別化處理以保護隱私,並保留括號/換行等後綴資訊。
2. 新增 OrderPickupRecipientMaskTest 單元測試,驗證中文字元及包含換行/括號的後綴遮罩正確性。
3. 更新後台銷售管理介面 (order-detail-panel.blade.php、tab-orders.blade.php),將原先顯示明文的 member_barcode 改用遮罩後的屬性展示。
4. 將機器通訊協定與狀態代碼中的「便當 (Bento)」字詞統一調整為「商品 (Product)」,以符合各機型通用語意。
5. 更新相關語系翻譯檔案 (zh_TW.json, en.json, ja.json) 及 MQTT 通訊規範文件中的詞彙對應。
6. 修改 MachineLog 中的翻譯取得邏輯,確保能透過錯誤代碼表對應到最新的商品語意。
2026-05-29 14:37:28 +08:00
sky121113
8d380e4902 [FEAT] 增加訂單出貨交付狀態(delivery_status)與多語系支援
1. 新增資料庫遷移:在  資料表增加 (出貨狀態:0 失敗、1 成功、2 部分成功),預設值為 1 並允許 NULL 以完美向下相容舊機台。
2. 升級  Model:加入  到可填充與轉型,並宣告常量與  取得本地化文字的 Accessor。
3. 更新  邏輯:在  中自動解析並記錄 。新增  輔助函式,當 Payload 未指定訂單狀態時,可動態從個別貨道出貨紀錄 ( 陣列) 計算出整筆訂單的出貨交付結果。
4. 銷售紀錄列表 (tab-orders.blade.php) UI 優化:將原先「狀態」欄位重命名為「付款狀態」,並在右側新增「出貨狀態」欄位,使用極簡奢華風的彩色 Badge 呈現出貨結果;桌機版空狀態  修正為 8 防止破版;手機版卡片同步支援。
5. 側邊明細面板 (order-detail-panel.blade.php) UI 優化:將基本狀態卡片升級為 3 欄網格,將付款狀態、支付類型與新增的出貨狀態 Badge 完美並排。
6. 報表匯出功能 (SalesController.php) 整合:在 Excel 及 CSV 匯出中同步修正「付款狀態」欄位標題與轉換標籤,並新增「出貨狀態」欄位以匯出 。
7. 多語系精準對齊:新增 , , ,  及  的繁、英、日翻譯對照,並進行字母升冪排序 (ksort)。
2026-05-29 12:17:36 +08:00
sky121113
da11241f72 sales: localize pickup recipient wording for payment_type 42 2026-05-28 16:14:02 +08:00
sky121113
7d8b342a85 sales: unify pickup recipient wording for payment_type 42 2026-05-28 16:08:35 +08:00
sky121113
ea8c277ee9 sales: show member_barcode for payment_type 42 in records UI 2026-05-28 15:54:53 +08:00
sky121113
39ea74a52e [FIX] 修正商品軟刪除之出貨歷史關聯與圖片破圖優化
1. 於 DispenseRecord、OrderItem 及 MachineStockMovement 模型之 product 關聯中加入 withTrashed(),確保被軟刪除商品的歷史快照仍可正常讀取。
2. 將 tab-dispense.blade.php、order-detail-panel.blade.php 及 SalesController 報表導出中的 product->name 統一修改為 product->localized_name ?? __('Unknown Product'),支援多語系切換與翻譯並替換 'Unknown' 為 '未知商品'。
3. 在銷售明細的商品圖片區塊整合 Alpine.js x-on:error 動態破圖防呆機制,一旦偵測到破圖或刪除實體圖,自動無縫退回精緻的 3D 箱子預設占位 SVG,消除破圖小圖標以維護全站極簡奢華風的視覺美感。
2026-05-19 17:25:10 +08:00
sky121113
433714d9b0 [FEAT] 銷售紀錄新增員工卡交易資訊關聯、搜尋與介面展示
1. 於 Order 模型中定義 staffCardLog 關係以關聯 StaffCardLog。
2. 於 SalesController 列表查詢(index)與單筆詳情(show)中進行極致效能優化,限定 Eager Loading 僅撈取必要欄位(id, employee_id, name, card_uid),避免 N+1 查詢與記憶體開銷。
3. 擴充 SalesController 的銷售紀錄搜尋過濾邏輯,新增支援員工姓名、工號與感應卡號的模糊搜尋。
4. 修改 tab-orders 桌面版表格與手機版卡片視圖,為員工卡支付的訂單加上精美的員工卡 icon 與「姓名 (工號)」徽章。
5. 修改 order-detail-panel 側滑詳情面板,新增「員工卡資訊」網格區塊,展示員工姓名、工號、卡片 UID 與備註欄位。
6. 更新 zh_TW.json 補齊「員工卡資訊」的繁體中文翻譯,確保全站語言一致。
2026-05-19 10:54:18 +08:00
sky121113
15b975efac [FEAT] 新增員工卡管理模組與 B012 API 文檔完善
1. 新增員工卡 (staff_cards) 與員工卡感應日誌 (staff_card_logs) 模型與遷移檔。
2. 實作 StaffCardController 與相關管理介面,支援狀態切換與 CRUD。
3. 擴充 routes/web.php 加入員工卡管理路由。
4. 更新 api-docs.php 文檔,補全 B012 (Unified Sync) 的商品同步回應範例。
5. 實作 PaymentTypeSeeder 並整合至 DatabaseSeeder 以標準化支付類型。
6. 優化銷售中心訂單標籤與倉庫機台庫存顯示邏輯。
7. 側邊欄選單加入員工卡管理入口。
8. 重構 TransactionService 以支援員工卡工作階段 (session_token) 驗證。
2026-05-05 14:06:43 +08:00
sky121113
023f639fb4 [STYLE] 銷售中心 UI 優化與出貨紀錄邏輯校正
1. 優化「出貨紀錄」介面,重新排列欄位優先級並移除冗餘的機台流水號。
2. 統一出貨紀錄中的商品與貨道樣式,與取貨碼模組視覺語言同步。
3. 修正出貨紀錄搜尋邏輯,支援商品名稱與貨道編號模糊搜尋。
4. 修正「訂單詳情」側滑面板中的金額顯示(修正 price/subtotal 映射)。
5. 補強訂單詳情的出貨狀態 (dispense_status) 標籤顯示邏輯。
6. 將出貨紀錄中的「數量」表頭修正為「金額」,確保與 MQTT 協議回傳資料語意一致。
7. 更新多語系檔,新增搜尋欄位 placeholder 與相關 UI 標籤翻譯。
8. 新增發票資料表 machine_time 欄位遷移檔,以完整記錄機台開立時間。
2026-05-04 17:20:43 +08:00