Commit Graph

21 Commits

Author SHA1 Message Date
sky121113
871b223440 [FEAT] 遠端控制新增「強制重啟 APP」(reboot_force) 指令
1. RemoteController storeCommand 驗證白名單新增 reboot_force
2. ProcessCommandAck 將 reboot_force 納入維護類指令日誌記錄
3. 遠端控制頁新增強制重啟按鈕(琥珀色,提示卡死時使用,無視忙碌狀態)
4. 指令歷史篩選與庫存頁指令名稱對應補上 reboot_force
5. 三語系新增 Machine Force Reboot / command.reboot_force / 忙碌狀態提示,並 ksort 對齊

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 14:05:52 +08:00
sky121113
779c59138f [FEAT] 商品與機台多語系架構,並補上系統設定同步操作
1. 新增 config/locales.php:定義 11 種系統支援語系白名單(原文+中文註記)、每台機台上限 5 種與 fallback (zh_TW)。
2. Company 新增 activeLocalesFor()/activeLocales():計算公司所有機台已開語系的聯集(去重、依白名單排序、保底 zh_TW),加快取與 forgetActiveLocales() 失效機制。
3. products 新增 spec_dictionary_key 欄位(migration);Product 新增 localized_spec accessor 與 specTranslations 關聯,商品規格比照名稱支援多語系。
4. ProductController 商品建立/更新改收 names 與 specs 物件,寫入 translations(group=product/product_spec),既有商品首次編輯補建 spec key,刪除時一併清除規格翻譯。
5. ProductCatalogService(B012)保留既有 t060v01_en/_jp 欄位,新增 t060v01_i18n/t060v03_i18n locale map,依公司語系聯集輸出並回退 zh_TW,確保線上舊 App 相容。
6. 機台系統設定(updateSystemSettings)新增 languages 顯示語系驗證與寫入(最多 5 種、白名單、去重,僅系統管理員),異動時失效語系聯集快取並重建商品目錄。
7. B014(getSettings)新增 LangSet 下發機台顯示語系(Languages 有序清單+Default 預設)。
8. 商品建立/編輯頁名稱與規格改為多語系 Tab(讀公司機台語系聯集、完成度標記),新增共用元件 product-locale-tabs;機台系統設定彈窗新增顯示語系勾選 UI(限 5 選、預設標記)。
9. 三語系 JSON(zh_TW/en/ja)新增 5 組對齊鍵並維持字母排序。
10. 同步更新文件:docs/API/product_multilingual_spec.md(規格書)、api-technical-specs SKILL.md(B012 i18n/B014 LangSet)、config/api-docs.php(B012/B014 範例與欄位)。
11. 系統設定同步:新增 sync-settings 路由與 update_settings 指令類型,ProcessCommandAck 與遠端指令歷史(remote index/tab-history)支援 update_settings 標籤,機台系統設定頁新增「同步設定」操作按鈕,並補 B016 回寫測試。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-15 09:00:10 +08:00
sky121113
953581db38 [FEAT] 新增環境溫度上限監測與遠端風扇指令控制功能
1. 資料庫移轉:新增機台環境溫度、環境溫度上限設定,以及是否啟用環境溫度監測等欄位。
2. 後端核心:更新 Machine Model 與 MachineController,實作機台環境溫度設定的更新與歷史日誌 Ajax API。
3. MQTT 佇列:於 ListenMqttQueue 指令與 ProcessAmbientTemp Job 實作機台上報環境溫度的接收與寫入,並加入 Redis 快取防止重複日誌洗版。
4. 遠端指令:擴充 RemoteController 並於指令中心實作 'fanon'、'fanoff'、'fanauto' 與 'ambient_temp_limit' (環境溫度上限) 指令下發。
5. 前端頁面:於機台列表加入「環境溫度上限」微調計數器 UI,並整合 ApexCharts 折線圖展示溫度趨勢;更新遠端控制中心按鈕與歷史篩選器。
6. 多語系:同步更新並完美對齊 'zh_TW.json'、'en.json' 與 'ja.json',遵循字母 ksort 排序與斜線不逸出規範。
2026-06-04 11:45:48 +08:00
sky121113
ba609719cc [FIX] 統計 APK 部署狀態時將 sent (已送出) 納入準備中統計 2026-05-29 11:05:45 +08:00
sky121113
aedc0e3921 [FIX] 修復遠端指令中心 Modal 排版異常
1. 補回 Confirm Modal 內「操作備註」遺失的 HTML 標籤(<label> 與 <div>),解決 UI 渲染破損的問題。
2. 補回「選擇目標貨道」遺失的 <label> 標籤,確保排版樣式正確。
2026-05-14 12:07:40 +08:00
sky121113
a9d44de98b [STYLE] 調整商品管理與遠端控制頁面之 UI 佈局與格式
1. 修正商品管理頁面 (Products Index) 中多處語系標籤的換行問題。
2. 調整遠端控制頁面 (Remote Index) 中 Slot No 標籤的顯示格式。
3. 優化 UI 組件的 HTML 縮排與可讀性。
4. 補齊同步商品機制相關之繁體中文翻譯 (Connection error, Failed to send command)。
2026-05-14 10:32:07 +08:00
sky121113
9ff9abef89 [FEAT] 實作「同步到所有機台」功能與商品資料同步機制
1. 在商品管理介面新增「同步到所有機台」按鈕與 Alpine.js 確認彈窗。
2. 實作後端 syncToAllMachines 控制器邏輯,並加入同一公司 1 分鐘內禁止重複發送的限制。
3. 建立 SyncProductsToMachinesJob 與 SendProductSyncCommandJob 非同步隊列任務,支援舊指令覆蓋機制。
4. 補全繁體中文、英文與日文的多語系翻譯字串。
5. 更新遠端指令日誌視圖,支援展示商品同步指令及其備註。
6. 更新 MQTT 通訊規範與 API 技術規格文檔,納入 update_products 指令。
7. 整合 update_ads 與 update_products 指令至 config/api-docs.php 的系統指令規格中。
2026-05-14 09:33:43 +08:00
sky121113
ce87f453a2 [FEAT] 優化廣告同步與指令中心 UI
1. 廣告管理:將原生 confirm 替換為極簡奢華風 Alpine.js 彈窗,並新增「操作備註」欄位與「目標機台」顯示。
2. 指令中心:在指令確認彈窗中新增「目標機台」顯示,並優化 UI 佈局。
3. 多語系支援:新增 Sync Ads (同步廣告) 至 zh_TW, en, ja 語系檔,並應用於指令中心與篩選列。
4. 後端邏輯:更新 AdvertisementController,將操作備註正確存入 RemoteCommand 的 remark 欄位。
5. 指令規範:同步更新 MQTT 通訊規範 (SKILL.md) 與 API 文件 (api-docs.php),加入 update_ads 指令說明。
2026-05-13 13:51:24 +08:00
sky121113
83f4178790 [FIX] 補全遠端指令中心歷史紀錄頁面的逾時 (Timeout) 樣式與多語系
1. 更新 index.blade.php 的 Alpine.js translations 物件,新增 'Timeout' 與詳細備註的翻譯映射。
2. 修正 index.blade.php 的 getCommandBadgeClass 與 getCommandStatus,補全 timeout 狀態的樣式 (rose) 與顯示文字。
3. 於 tab-history-index.blade.php 補全逾時狀態的小圓點視覺引導 (dot logic)。
4. 在歷史紀錄篩選下拉選單中加入「逾時 (Timeout)」選項。
2026-05-12 09:03:32 +08:00
sky121113
ce09120483 [STYLE] 調整遠端指令中心按鈕順序
1. 將「機台 APP 鎖定」與「機台 APP 解鎖」按鈕位置互換以符合操作直覺。
2026-05-11 13:28:03 +08:00
sky121113
9c94552268 fix(i18n): exhaustive fix for remote command labels and translations 2026-05-07 17:25:30 +08:00
sky121113
2e181886aa fix(i18n): correct remote command labels and sync translations 2026-05-07 17:18:14 +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
b42695c4b8 [FEAT] 優化通行碼與取貨碼模組、補齊多國語系系統及介面風格調整
1. 通行碼與取貨碼:新增代碼預覽、重新產生功能與到期時間預覽邏輯。
2. 通行碼:允許天數設為 0 (永久),並改用搜尋式下拉選單選取機台。
3. 取貨碼:加強表單檢核並整合自訂 Toast 提示。
4. 語系優化:補齊繁中、英文鍵值,並完整建立日文語系目錄 (lang/ja) 與 JSON 檔案。
5. 組件優化:更新 PageHeader 與 TabNav 組件,提升 UI 互動性與一致性。
6. 訪客功能:新增通行碼訪客端查詢介面與控制器。
7. 其他模組:同步調整機台、遠端與倉庫模組視圖以符合極簡奢華風。
2026-04-29 16:54:21 +08:00
sky121113
315c226560 [FEAT] 倉儲管理系統模組實作與全站 UI/UX 標準化優化
1. 實作倉儲管理系統 (Warehouse Management):包含總覽、庫存、調撥、機台庫存與補貨模組。
2. 建立倉儲相關資料結構:新增 warehouses, warehouse_stocks, stock_in_orders, stock_movements, transfer_orders, replenishment_orders 等資料表。
3. 優化商品管理 (Product Management) 介面:調整商品與類別管理的分頁、搜尋與編輯邏輯,並導入極簡奢華風 UI。
4. 增強遠端機台管理 (Remote Machine Management):優化機台清單、庫存監控與遠端出貨介面,提升載入效能。
5. 更新全站導覽選單 (Sidebar):整合倉儲管理入口,並修復側邊欄語法錯誤。
6. 標準化分頁組件 (Pagination):套用 luxury 奢華風分頁樣式。
7. 補齊多語系語系檔 (i18n):更新 zh_TW.json,包含倉儲與商品模組相關詞彙。
2026-04-23 11:51:08 +08:00
sky121113
9114269a7a [FEAT] 完善遠端出貨與庫存異動的併發控制與視覺回饋
1. 修正 RemoteController 中的 MachineService 注入問題,解決遠端出貨指令失效的 500 錯誤。
2. 在 MachineService 實作貨道鎖定機制 (lockSlot/unlockSlot),防止重複扣庫存導致的數據不一致。
3. 採用樂觀扣除模式,發送指令時即更新預扣庫存,並在 ProcessCommandAck 實作失敗自動 Rollback。
4. 優化 UI 互動:在操作紀錄詳情顯示庫存變化 (如 6 -> 5),且針對執行失敗的指令加上刪除線樣式。
5. 完成指令詳情、操作紀錄與庫存歷史的語系對照表同步 (zh_TW, en, ja)。
2026-04-22 15:02:00 +08:00
sky121113
b21ea670bf [FIX] 修正遠端指令中心機台列表顯示與規格文件更新
1. 修正 `tab-machines-index.blade.php` 最後通訊時間的 HTML `<template>` 渲染錯誤,確保正常顯示。
2. 更新 `index.blade.php` 的 `formatTime` 邏輯,超過 2 小時的通訊時間將顯示完整日期與時間,與庫存頁面格式統一。
3. 更新 `tab-machines.blade.php` 與語系檔,將庫存警示相關文案精準化為「庫存警示 (Inventory Alerts)」與「庫存穩定 (Inventory Stable)」。
4. 更新 `api-technical-specs/SKILL.md` 中對於 B017 API 的描述,強調其為機台端主動拉取資料,而非單純依賴 MQTT 觸發。
5. 修正 `iot-communication/SKILL.md` 中 Redis Key 前綴的說明,對齊實際讀取 `.env` (`MQTT_REDIS_PREFIX`) 的設定。
2026-04-22 12:33:01 +08:00
sky121113
24553d9b73 [FEAT] 遠端指令中心 AJAX 化與介面標準化
1. 將遠端指令中心 (Remote Command Center) 兩大分頁 (操作紀錄、新增指令) 改為 AJAX 異步載入,提升切換速度。
2. 建立抽離的 Blade Partials 結構 (partials/tab-history-index.blade.php, tab-machines-index.blade.php) 以利維護。
3. 實作全域 Loading Bar 與 Luxury Spinner 視覺回饋,確保 AJAX 過程中有明確狀態。
4. 修正庫存管理與指令中心在機台圖片不存在時的 `Undefined array key 0` 錯誤。
5. 標準化操作紀錄搜尋行為:文字搜尋改為 Enter 觸發,日期範圍改為手動按下搜尋按鈕觸發,並新增「重設」功能。
6. 設定 Flatpickr 日期時間選擇器預設時間為 `00:00`。
7. 修正 `stock.blade.php` 中的 PHP 語法錯誤 (括號未閉合)。
8. 同步更新多語系翻譯檔案 (zh_TW, en, ja)。
2026-04-15 13:17:25 +08:00
sky121113
376f43fa3a [FIX] 修正 IoT 管理介面分頁持久化與實作 B055 遠端出貨 API
1. 視圖持久化優化:將 index/stock 視圖切換從 x-if 改為 x-show,解決 HSSelect 在切換分頁後失效的問題。
2. 變數存取安全:為所有 selectedMachine 屬性存取補上可選鏈 (?.) 保護,防止 x-show 模式下的 null 錯誤。
3. UI 體驗提升:放大「指令中心」與「庫存管理」歷史紀錄的時間字體至 15px 並加粗顯示。
4. API 功能實作:在 routes/api.php 與 MachineController 中實作 B055 遠端指令出貨控制端點。
5. 文件同步:更新 SKILL.md 技術規格文件,明確定義 B055 的請求與回應格式。
6. 樣式調整:修改 app.css 優化奢華風 UI 字體與間距細節。
2026-04-15 10:54:58 +08:00
sky121113
e085058d63 [FEAT] 遠端指令中心優化與規格同步
1. 實作遠端指令去重機制 (Supersede):避免重複下達相同待執行指令。
2. 修正遠端指令發送後的 Toast 提示邏輯,確保頁面跳轉後正確顯示回饋。
3. 增加 RemoteCommand 操作者 (user_id) 紀錄與狀態列舉擴充 (superseded)。
4. 修復機台列表「最後頁面」欄位對照錯誤,同步更新 Machine Model 與 API 規格。
5. 優化遠端指令中心 UI:放大卡片字體、調整側面欄間距,符合極簡奢華風規範。
6. 更新 API 技術規格書 (SKILL.md) 與 config/api-docs.php,補全所有機台代碼 (66-611) 與指令。
7. 補全繁體中文、英文、日文多語系翻譯檔案。
2026-04-02 14:57:41 +08:00
sky121113
e7ad7e3dc3 [FEAT] 整合遠端管理指揮中心與 UI 佈局優化
1. 實作「遠端管理指揮中心」,整合重啟、結帳、鎖定、找零、出貨等指令至單一介面。
2. 對接 B010 心跳 API 與 B017 庫存 API,實作異步指令下發與效期/批號同步邏輯。
3. 修正 sidebar-menu.blade.php 中的舊版路由連結,解決 RouteNotFoundException 錯誤。
4. 修正 index.blade.php 中的 AJAX 請求名稱,補上 admin. 前綴以符合路由分群。
5. 優化主內容區頂部間距,將 pt-10 縮減為 pt-5,提昇介面緊湊度。
2026-04-01 16:59:29 +08:00