sky121113
|
e779880f9b
|
[FEAT] 整合 MQTT 交易完成 (Finalize) 流程並更新 API 技術規格文件
1. 整合交易流程:將 B600 (交易紀錄)、B601 (發票紀錄) 與 B602 (出貨紀錄) 整合為單一原子化的 MQTT 'finalize' 操作,確保資料一致性。
2. 實作非同步 Job:新增 ProcessTransactionFinalized Job 負責解析複合式 Payload 並寫入訂單、發票與出貨日誌。
3. 重構交易服務:更新 TransactionService 以支援同時處理訂單與發票資料,並修正產品 ID 驗證邏輯以避免外鍵衝突。
4. 更新技術文件:同步更新 api-docs.php 與 .agents/skills 中的 MQTT 規格,定義詳細的 finalize payload 結構與範例。
5. 優化文件 UI:改善 api-docs.blade.php 的描述渲染,支援換行符號以提升閱讀體驗。
6. 更新監聽指令:在 ListenMqttQueue 中加入 finalize 動作的處理分支並對接至新實作的 Job。
|
2026-05-04 10:18:30 +08:00 |
|
sky121113
|
8feca33f13
|
[FEAT] 優化機台日誌管理、新增庫存變動紀錄與取貨碼/通行碼介面改善
1. 新增機台異常日誌手動解除功能,包含資料庫欄位更新與 UI 操作按鈕。
2. 實作機台庫存變動紀錄系統 (Machine Stock Movements),支援追蹤補貨與銷售產生的庫存異動。
3. 重構取貨碼 (Pickup Code) 與通行碼 (Pass Code) 管理介面,採用極簡奢華風 UI 並拆分 Partial Views 提升可維護性。
4. 優化取貨操作日誌,明確區分「取貨成功」與「取貨失敗」,並加入顏色標籤增強辨識度。
5. 擴充多語系支援 (繁中、英文、日文),確保所有新功能與操作狀態均有對應翻譯。
6. 更新 IoT API 規格文件與相關 Service 邏輯,加強指令確認 (ACK) 處理機制。
|
2026-05-04 08:43:35 +08:00 |
|
sky121113
|
40aec884b0
|
[REFACTOR] 溫度回報邏輯優化與 MQTT 規格標準化
1. 優化 ProcessHeartbeat 溫度處理邏輯,改為「變動即記錄」並標準化為整數型態。
2. 在 Machine Model 中新增 temperature 欄位的 integer cast。
3. 更新 MQTT 與 API 技術規格技能文件 (SKILL.md),同步最新的溫度記錄規則。
4. 更新 config/api-docs.php,明確標註心跳上報之溫度規格與日誌規則。
5. 移除 routes/api.php 中已廢棄之 B600 與機台日誌 REST API 路由。
6. 清理 docs 目錄,將初期計畫文件遷移至 docs/plan/。
|
2026-04-22 17:02:24 +08:00 |
|
sky121113
|
ae554ef130
|
[FEAT] 重構與深化 MQTT 通訊規範並優化 API 文件中心
1. 重構 config/api-docs.php,將 HTTP API 與 MQTT Topic 徹底解耦,建立清晰的協議分類。
2. 實作 api-docs.blade.php 雙頁籤 (HTTP/MQTT) 介面,優化「極簡奢華風」視覺呈現與互動體驗。
3. 詳細定義 MQTT 指令下發 Payload,包含遠端出貨、庫存同步、遠端找零及系統控制。
4. 新增 Heartbeat (心跳) 與 Transaction (交易) MQTT 主題規範,確保 APP 端有明確的對接基準。
5. 修正 Heartbeat Payload 參數,僅保留實際傳送的溫度與韌體版本,確保文件與現況對齊。
6. 移除 B012 (商品同步) 尚未實作的 PATCH 方法,統一只保留 GET 方法以維持系統一致性。
7. 同步更新 SKILL.md 技術規格文件,確保開發規範與實際程式碼邏輯完全對等。
|
2026-04-22 16:25:48 +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
|
1d5aff2f2e
|
[REFACTOR] 遷移遠端管理指令至 MQTT 非同步架構與邏輯優化
1. 實作 MqttService 統一管理 MQTT 指令發送。
2. 遷移「遠端庫存與效期中心」至 MQTT 流程,並加入 batch_no (批號) 支援。
3. 修改 RemoteController 指令中心所有指令同步改由 MQTT 推送。
4. 修正 Go Gateway redis_consumer.go 確保 JSON 格式符合最新規格(移除寫死的 target/message_id)。
5. 實作 ProcessCommandAck 自動更新指令結果、異常回滾 (Rollback) 與機台自動亮燈 (Online)。
6. 完善 mqtt-communication-specs 規格文件,補齊所有指令定義與 ACK 範例。
7. 強化指令狀態保護,確保只有 pending 狀態的指令能被更新結果,防止重複處理。
|
2026-04-22 11:30:39 +08:00 |
|
sky121113
|
c1bf9294cd
|
[DELETE] 移除 B010 (Heartbeat) HTTP API 殘留與文件
1. 從 config/api-docs.php 中完全移除 B010 配置。
2. 清理 routes/api.php 中關於 B010 的註解。
3. 更新 api-technical-specs/SKILL.md,將依賴 B010 的觸發描述改為 MQTT 指令。
4. 補上 B010 在 SKILL.md 中的廢棄區塊並導向 MQTT 規範。
|
2026-04-21 16:50:30 +08:00 |
|
sky121113
|
82832d04db
|
[DELETE] 移除已過時的 B013 HTTP API 端點
1. 移除 routes/api.php 中的 B013 路由。
2. 移除 MachineController@reportError 方法及其註解。
3. 更新 config/api-docs.php,移除 B013 文件配置。
4. 更新 api-technical-specs/SKILL.md,將 B013 標註為已廢棄並引導至 MQTT 规范。
|
2026-04-21 16:46:54 +08:00 |
|
sky121113
|
d0f84eb82b
|
[REFACTOR] 廢棄 B010 HTTP API 並整合 MQTT 心跳回報流程
1. 移除 routes/api.php 中的 B010 心跳上報路由。
2. 刪除 MachineController.php 中的 heartbeat 方法與相關過期邏輯。
3. 刪除 docs/b010_technical_spec.md 並更新相關技術規格文件。
4. 修改 ListenMqttQueue.php,移除獨立的溫度與版本號處理,統一由 heartbeat 任務分發。
5. 更新 MQTT 通訊規範,廢棄獨立的屬性 Topic (temperature, firmware_version)。
|
2026-04-21 15:48:49 +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
|
f49938d1a7
|
[DOCS] 補齊 B024, B027, B055 API 技術規格與文檔定義
1. 更新技術手冊 (SKILL.md) 與 API 規格文件 (api-docs.php),補齊 B024, B027, B055 之定義。
2. 修正文件序號跳號問題,確保 B017 序號正確銜接。
3. 詳細說明 B055 之指令 ID 遠端出貨運作機制。
|
2026-04-14 17:36:56 +08:00 |
|
sky121113
|
2702e5a655
|
[REFACTOR] 標準化 IoT API 方法並修正日期格式
1. 將 B014 (參數下載) 與 B017 (貨道同步) 路由從 POST 改為 GET。
2. 移除 B017 冗餘的 machine 參數,改由 Bearer Token 自動識別。
3. 修正 B017 回傳資料中 expiry_date 的 ISO 8601 格式問題,統一為 Y-m-d。
4. 同步更新所有技術規格文件 (.agents/ 規範) 與 API 說明配置 (config/api-docs.php)。
|
2026-04-14 16:46:35 +08:00 |
|
sky121113
|
66f7c1ffb8
|
[FEAT] 實作 B017 貨道庫存全量同步 API 與多語系支援
1. 實作 B017 (reload_msg) 端點,支援貨道庫存、效期與批號的全量同步。
2. 將 B017 回傳欄位映射至 App 需求:slot_no -> tid, stock -> num。
3. 新增 expiry_date (效期) 與 batch_no (批號) 欄位支援。
4. 實作指令狀態閉環邏輯,成功同步後自動將相關 reload_stock 指令標記為成功。
5. 將指令備註欄位多語系化,新增「庫存已與機台同步」繁中、英文、日文翻譯。
6. 更新 API 技術規格文件 (.agents/skills) 與系統 API 文件配置 (config/api-docs.php)。
|
2026-04-14 15:06:51 +08:00 |
|
sky121113
|
8f008ffb61
|
[FEAT] 實作 B014 機台參數下載 API 與 B000 登入認證強化
1. 強化 B000 登入接口:驗證成功後回傳 Sanctum Token 供後續初始化使用。
2. 實作 B014 (getSettings) API:整合機台、金流與發票設定,並映射至 Android App 預期欄位。
3. 強化安全性:B014 API 掛載 auth:sanctum 並執行 RBAC 權限檢查。
4. 更新 API 說明文件 (iot-spec.md, api-docs.php) 及技術規範 (SKILL.md)。
|
2026-04-13 17:04:52 +08:00 |
|
sky121113
|
a599b14df1
|
[FEAT] 優化機台硬體通訊協議與管理介面互動性
1. 修復帳號管理與角色權限頁面搜尋功能,支援 Enter 鍵快捷提交。
2. 完成 B013 (機台故障上報) API 實作,改用非同步隊列 (ProcessMachineError) 處理日誌上報。
3. 精簡 B013 API 參數,移除冗餘的 message 欄位,統一由雲端對照表翻譯。
4. 更新技術規格文件 (SKILL.md) 與系統 API 文件配置 (api-docs.php)。
5. 修正平台管理員帳號在搜尋過濾時的資料隔離邏輯。
|
2026-04-08 14:52:00 +08:00 |
|
sky121113
|
c343df34ee
|
[FEAT] 實作 B012 商品同步 API 與統一圖片絕對網址格式
1. 實作 B012 API:新增 /api/v1/app/machine/products/B012 端點,支援 GET (全量) 與 PATCH (增量) 同步邏輯。
2. 統一圖片 URL:在 B005 與 B012 API 中使用 asset() 確保回傳絕對網址 (Absolute URL),解決 App 端下載相對路徑的問題。
3. 文件更新:同步更新 SKILL.md 的欄位定義,並在 api-docs.php 補上 B012 的正式規格說明。
4. 資料庫變更:新增 machine_slots 表的 type 欄位與相關註解遷移。
5. 格式優化:為技術規格文件中的 API 欄位與狀態碼加上反引號,提升文件中心可讀性。
|
2026-04-07 17:05:28 +08:00 |
|
sky121113
|
f2147ae6c4
|
[FEAT] 完善 IoT API 規范化、機台管理介面優化與 B005 改為 GET
1. 將 B005 (廣告同步) 從 POST 改為 GET,符合 RESTful 規範。
2. 完善 B009 (庫存回報) 回應規格,加入業務代碼 (200 OK)。
3. API 文件 UI 優化:新增 Method Badge (方法標籤),並修正 JSON 中文/斜線轉義問題。
4. 機台管理介面優化:實作「唯讀庫存與效期」面板,並將日誌圖示改為「👁️」。
5. 標準化 ID 識別邏輯:資料表全面移除對 sku 的依賴,改以 id 為主、barcode 為輔。
6. 新增 Migration:正式移除 sku 欄位並同步 barcode 指向。
7. 更新多語系支援 (zh_TW, en, ja)。
|
2026-04-07 14:37:57 +08:00 |
|
sky121113
|
b60afc3abe
|
[FIX] 修正與標準化 B005 廣告下載 API 以相容既有 Android App
1. 修改 MachineController@getAdvertisements 回傳欄位,將 t070v02 改為播放秒數,t070v03 改為位置代碼 (Flag)。
2. 根據 Android App 原始碼分析結果,調整位置對應:3 為待機廣告 (HomeActivity),1 為販賣頁廣告 (FontendActivity)。
3. 在 AdvertisementController@getMachineAds 增加 sort_order 排序,確保後台管理介面視圖與 API 輸出順序一致。
4. 更新廣告下載 API 的技術文件 (SKILL.md),明確標記欄位用途與位置代碼。
5. 在 routes/api.php 補上 B005 與 B009 的路由定義。
|
2026-04-07 11:41:24 +08:00 |
|
sky121113
|
08b6c60d2e
|
[FEAT] 實作 B000 機台登入 API 並同步 API 規格文件
1. 於 routes/api.php 新增 B000 登入驗證路由,並設定速率限制。
2. 更新 .agents/skills/api-technical-specs/SKILL.md,補上 B000 規格並根據 Java App 實作精簡 B010 指令碼。
3. 同步更新 config/api-docs.php 中的 API 說明文件。
4. 調整 RemoteController 指令歷史紀錄上限為 5 筆以優化效能。
5. 統一機台編輯頁面之圖片上傳文字說明與標題。
6. 補齊多語系翻譯檔案 (zh_TW, en, ja) 出現的新字串。
|
2026-04-02 17:24:13 +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
|
ac51027dda
|
[DOCS] 建立獨立 API 技術規格技能 (api-technical-specs) 並精簡 IoT 通訊規範
|
2026-03-26 15:03:00 +08:00 |
|