sky121113
4dad775568
[FIX] 修正台灣地址解析經緯度失敗問題
...
1. 新增 cleanFloorInfo 方法,過濾地址末尾的樓層、室、地下室等非門牌雜訊,防範 Nominatim 解析失敗。
2. 重構 parseTaiwanAddress 的路名拆分正則表達式,導入層級感知台灣地址結構,避免含有「巷、弄」的地址被提前截斷。
2026-05-22 09:51:05 +08:00
sky121113
178c0d8ac9
[RELEASE] 晉升 demo 至 main 生產環境
...
1. [FEAT] 實作調撥與補貨單商品快照機制,並修復商品無圖片時的預設圖示 fallback 顯示。
2. [FEAT] 重構 Discord 雙 Tab 告警設定與機台自適應溫控三層繼承鏈,並導入 Modal 內拉式複製 UX。
3. [FIX] 優化溫度告警狀態轉移邏輯與完善機台專屬通知設定 UI。
4. [FIX] 修正機台設定中公司篩選下拉選單的 AJAX 後選中狀態及誤顯示繼承公司設定徽章之問題。
5. [MIGRATION] 新增機台型號設定、機台設定與訂單快照等 3 個資料庫遷移檔案。
2026-05-22 09:13:40 +08:00
sky121113
a76f6323a2
[PROMOTE] 晉升 dev 至 demo 環境
...
1. [STYLE] 將 Discord 溫度過低告警側邊條顏色從預設藍色 (cyan-600) 調整為警示紅色 (rose-600),以與溫度過高告警顏色保持警示一致性。
2026-05-21 17:09:10 +08:00
sky121113
b6e5b825a5
[STYLE] 將溫度過低告警側邊條顏色調整為警示紅色
2026-05-21 17:09:00 +08:00
sky121113
43989ada2d
[PROMOTE] 晉升 dev 至 demo 環境
...
1. [FIX] 修正機台設定公司篩選下拉選單兩項問題:選取後自動觸發 AJAX 篩選、重設按鈕透過 HSSelect.setValue() 正確清除 Preline 下拉選單 UI、調整 Preline autoInit 與 Alpine initTree 初始化順序以 requestAnimationFrame 確保 DOM 更新完畢後才執行 Alpine。
2. [FIX] 補強公司篩選下拉選單 AJAX 後選中狀態顯示:option 元素補上 server-side selected 屬性、fetchTabContent 完成後主動呼叫 HSSelect.setValue() 強制同步顯示文字。
2026-05-21 17:05:49 +08:00
sky121113
e88d68d3b1
Merge branch 'feat/discord-notification' into dev
2026-05-21 17:02:03 +08:00
sky121113
18162dfa4c
[FIX] 補強公司篩選下拉選單的 AJAX 後選中狀態顯示
...
1. 為 option 元素補上 server-side selected 屬性,確保 Preline autoInit 重建時能正確讀取已選中的公司選項。
2. 在 fetchTabContent AJAX 完成後,主動呼叫 HSSelect.setValue() 強制同步下拉選單的顯示文字,消除選中狀態消失的視覺問題。
2026-05-21 17:01:47 +08:00
sky121113
90192dbed9
[FIX] 修正機台設定公司篩選下拉選單兩項問題
...
1. 選取公司後自動觸發 AJAX 篩選,無需手動按搜尋按鈕
2. 修正重設按鈕邏輯,透過 HSSelect.setValue() 正確清除 Preline 下拉選單 UI 顯示
3. 調整 fetchTabContent 的 Preline autoInit 與 Alpine initTree 初始化順序,以 requestAnimationFrame 確保 DOM 更新完畢後才執行 Alpine,解決 AJAX 後下拉選單選中狀態遺失的問題
2026-05-21 16:58:14 +08:00
sky121113
3db5a7aeec
[PROMOTE] 晉升 dev 至 demo 環境
...
1. [FIX] 修正機台告警設定列表中,當公司告警類型尚未設定時,機台列表誤顯示「繼承公司設定」徽章之問題。
2026-05-21 16:51:42 +08:00
sky121113
905d2bf459
Merge branch 'feat/discord-notification' into dev
2026-05-21 16:49:30 +08:00
sky121113
ac48546c76
[FIX] 修正當公司告警類型尚未設定時,機台列表誤顯示繼承公司設定徽章之問題
2026-05-21 16:48:20 +08:00
sky121113
07e6d56fd3
[PROMOTE] 晉升 dev 至 demo 環境
...
1. 實作調撥與補貨單商品快照機制,修復商品被刪除時的名稱、barcode、圖片 Fallback,並解決無圖片時的立方體預設圖示 fallback 顯示。
2. 重構 Discord Webhook 告警設定與機台自適應溫控三層繼承鏈,補齊多語系 Key,完善機台型號與通知設定 UI。
3. 修正 Discord 通知頁面的麵包屑層級為 儀表板 > 基本設定 > Discord通知。
2026-05-21 16:42:01 +08:00
sky121113
95ed1494e2
Merge branch 'feat/discord-notification' into dev
...
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2026-05-21 16:39:32 +08:00
sky121113
4ac25f476b
[STYLE] 修正 Discord 通知頁面的麵包屑層級
2026-05-21 16:35:22 +08:00
sky121113
a3a00b1403
[FEAT] 實作調撥與補貨單商品快照機制,並修復商品無圖片或載入失敗時的立方體預設圖示顯示
...
1. 資料庫結構擴充:為 transfer_order_items 與 replenishment_order_items 表新增商品快照欄位,完成遷移。
2. Model 調整與防禦:重構 TransferOrderItem 與 ReplenishmentOrderItem Model,實現商品軟刪除/物理刪除的 name、barcode、image_url 安全 Fallback 及多語系字典動態解析,並防禦性過濾 /storage 等無效圖片路徑。
3. Controller 效能優化:重構寫入與詳情加載邏輯,預載入關聯以防範 N+1 查詢,優化批量寫入效率。
4. 前端圖片載入錯誤處理:在調撥與補貨單明細中,利用 Alpine.js 增加圖片 x-on:error 錯誤監聽,在圖片加載失敗時自動 fallback 顯示與訂單詳情一致的灰色立方體 icon。
2026-05-21 16:31:23 +08:00
sky121113
14ecfdcc8d
feat(warehouse): 實作調撥與補貨單商品快照機制,並修復商品無圖片時的預設圖示 fallback 顯示
2026-05-21 16:25:48 +08:00
sky121113
88a58d33c0
fix: 修正 A4 列印表格在商品名稱過長時被過度擠壓換行的排版 bug
2026-05-21 15:56:51 +08:00
sky121113
99e6e37953
feat: 補足調撥單與機台補貨單列印功能之多語系翻譯與測試優化
2026-05-21 15:55:21 +08:00
sky121113
dac00291a7
feat: 實作調撥單與機台補貨單的 A4 極簡奢華風列印功能與多租戶雙重防護
2026-05-21 15:43:43 +08:00
sky121113
205da14e94
[FEAT] 優化溫度告警狀態轉移邏輯與完善機台專屬通知設定 UI
...
1. 修正 `ProcessHeartbeat.php` 溫度告警判定邏輯,避免溫度在「高低溫異常狀態」直接轉換時,誤發含有異常溫度的「恢復正常」通知。
2. 實作機台層級自訂通知類型 (`notify_types_mode`) 功能,支援繼承全域設定或獨立指派通知類型(連線、溫度、硬體異常)。
3. 優化前端 UI 邏輯,當選擇自訂通知且包含「溫度告警」時,方才顯示溫度上下限輸入區塊。
4. 修正複製機台設定功能 (copy-machine) 的行為,確保能正確複製 `discord_notify_types` 並重設選擇器狀態。
5. 新增與更新中、英、日語系翻譯字串。
2026-05-21 14:34:55 +08:00
sky121113
2e3d6e5572
[STYLE] 優化機台型號與通知設定介面並調整溫度為整數告警
...
1. 調整 Discord 通知設定介面的間距與對齊,使其與基本設定中的機台設定保持一致。
2. 重構機台型號設定 Modal,將溫度上下限的輸入框改為「極簡奢華風」的加減按鈕元件。
3. 更新機台型號溫度相關的設定與顯示,強制限制與轉換為整數 (移除小數點)。
4. 將機台型號的溫度限制相關介面文字更新為「告警」相關字眼 (預設溫度告警上限、預設溫度告警下限等)。
5. 於中、英、日語系檔案中新增溫度告警相關之翻譯鍵值。
2026-05-21 13:25:28 +08:00
sky121113
cde2718d2a
i18n: 補齊 Discord 告警設定與型號溫控相關的繁中/英/日多語系 Key
2026-05-21 10:18:50 +08:00
sky121113
b3d00a9bef
feat: 重構 Discord 雙 Tab 告警設定與機台自適應溫控三層繼承鏈,並導入 Modal 內拉式複製 UX
2026-05-21 10:05:36 +08:00
sky121113
c8577ee377
[FIX] 熱修復 Flatpickr 初始化中 Blade 大括號內不必要的反斜線轉義
2026-05-20 14:20:30 +08:00
sky121113
059b25f438
[FIX] 熱修復 Flatpickr 初始化中 Blade 大括號內不必要的反斜線轉義
2026-05-20 14:19:47 +08:00
sky121113
1678fd1775
[FIX] 修正銷售紀錄與出貨紀錄 Flatpickr 初始化中 Blade 大括號內不必要的反斜線轉義以防 PHP 解析錯誤
2026-05-20 14:19:32 +08:00
sky121113
d505ecfbae
[RELEASE] 晉升 demo 變更至 main 生產環境
...
本次晉升包含以下修復與更新項目:
1. [FIX] 全站 Flatpickr 日期時間選擇器在行動端統一啟用 disableMobile 確保 24 小時制與極簡奢華風 UI 一致,解決行動端被強制轉為 12 小時制的問題。
2. [FIX] 修正庫存與校期管理頁面 Alpine.js 變數未定義報錯。
3. [DOCS] 更新 .gitignore 以忽略 Antigravity CLI 本地端設定。
2026-05-20 14:14:38 +08:00
sky121113
55f5a4f72a
[PROMOTE] 晉升 dev 變更至 demo
...
1. [FIX] 修正庫存與校期管理頁面 Alpine.js 變數未定義報錯
2. [DOCS] 更新 .gitignore 以忽略 Antigravity CLI 本地端設定
2026-05-20 13:31:46 +08:00
sky121113
42c882aeb8
[DOCS] 更新 .gitignore 以忽略 Antigravity CLI 本地端設定
...
1. 在 .gitignore 中加上 /.antigravitycli 以忽略本地 AI 工作區檔案。
2026-05-20 13:29:34 +08:00
sky121113
a92a2500c4
[FIX] 修正庫存與校期管理頁面 Alpine.js 變數未定義報錯
...
1. 在 resources/views/admin/remote/stock.blade.php 的 stockApp() 初始化狀態中,補上 selectedSlot: null 宣告。
2. 解決因 selectedSlot 變數未在 data scope 聲明,導致 Alpine.js 首次解析 DOM 範本時拋出 ReferenceError 的錯誤。
2026-05-20 13:23:56 +08:00
sky121113
d15bf133ce
Merge branch 'dev' into demo
2026-05-20 13:03:42 +08:00
sky121113
775d7bc967
fix(views): 全站 Flatpickr 日期時間選擇器在行動端統一啟用 disableMobile 確保 24 小時制與極簡奢華風 UI 一致
2026-05-20 13:02:34 +08:00
sky121113
76ec9be6ef
[PROMOTE] 晉升 dev 變更至 demo 環境
...
1. 修復行動端時間篩選器強制轉為 12 小時制的問題 (be127ba )
2026-05-20 11:53:19 +08:00
sky121113
be127bab76
[FIX] 修復行動端時間篩選器強制轉為 12 小時制的問題
...
1. 修正取貨碼使用紀錄篩選器 (tab-logs.blade.php):為 Flatpickr 開始/結束時間初始化配置補上 disableMobile: true,避免手機系統 12 小時制覆蓋。
2. 修正遠端指令歷史紀錄篩選器 (tab-history-index.blade.php):為 Flatpickr 起迄時間初始化配置補上 disableMobile: true,防止行動端原生選擇器轉換。
3. 修正遠端庫存操作紀錄篩選器 (tab-history.blade.php):為 Flatpickr 起迄時間初始化配置補上 disableMobile: true,確保與電腦版一致維持 24 小時制顯示。
2026-05-20 11:52:14 +08:00
sky121113
0f020afa6c
[RELEASE] 晉升 demo 到 main 正式上線商品軟刪除與圖片破圖優化
...
1. 於 DispenseRecord、OrderItem 及 MachineStockMovement 模型之 product 關聯中加入 withTrashed(),使軟刪除商品的歷史快照仍可正常讀取。
2. 將列表、側邊詳情面板與報表導出中的 product->name 統一修改為 product->localized_name ?? __('Unknown Product'),支援多語系切換與翻譯並更正為 '未知商品'。
3. 在銷售明細的商品圖片區塊整合 Alpine.js x-on:error 動態防呆,一旦破圖自動無縫退回 3D 箱子預設占位 SVG,解決與 Blade 內建 @error 衝突引起的編譯錯誤。
2026-05-19 17:27:20 +08:00
sky121113
8b290ff297
[PROMOTE] 晉升 dev 到 demo 進行商品軟刪除與圖片破圖優化驗收
...
1. 於 DispenseRecord、OrderItem 及 MachineStockMovement 模型之 product 關聯中加入 withTrashed(),使軟刪除商品的歷史快照仍可正常讀取。
2. 將列表、側邊詳情面板與報表導出中的 product->name 統一修改為 product->localized_name ?? __('Unknown Product'),支援多語系切換與翻譯並更正為 '未知商品'。
3. 在銷售明細的商品圖片區塊整合 Alpine.js x-on:error 動態防呆,一旦破圖自動無縫退回 3D 箱子預設占位 SVG,解決與 Blade 內建 @error 衝突引起的編譯錯誤。
2026-05-19 17:25:50 +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
4b6b431a91
[RELEASE] demo 晉升至 main
...
本次生產環境發布合併了 demo 分支的已驗收變更,主要包含以下功能:
1. 實作 Web 管理後台「單一帳號僅能單一設備登入」的安全防禦機制。
2. 於 '/dashboard' 及 '/admin' 路由群組中套用 'auth.session' 中極簡安全校驗。
3. 確保機台端 (IoT) 使用的 Stateless Bearer Token API 完全不受 Session 機制干擾。
2026-05-19 16:55:19 +08:00
sky121113
3d1a876c60
[PROMOTE] dev 晉升至 demo
...
本次晉升合併了 dev 分支上的最新變更,主要包含以下功能開發:
1. 實作 Web 管理後台「單一帳號僅能單一設備登入」的安全防禦機制。
2. 於 '/dashboard' 及 '/admin' 路由群組中套用 'auth.session' 中間件,保障 Session 即時一致性。
3. 確保機台端 (IoT) 使用的 Stateless Bearer Token API 完全不受 Session 機制干擾。
2026-05-19 16:52:18 +08:00
sky121113
1ee57f3e88
feat(auth): 實作後台單一設備登入,並套用 auth.session 中間件
2026-05-19 16:51:43 +08:00
sky121113
b3dcdb3104
[RELEASE] 釋出銷售中心與導出體驗優化至生產環境
...
本次釋出包含以下功能與修復項目:
1. 升級銷售紀錄(交易紀錄、電子發票、遠端出貨紀錄)高奢翡翠綠導出下拉選單,支援 CSV、Excel、複製至剪貼簿、高規列印與 PDF 五大管道。
2. 透過隱藏的 iframe 下載技術修復 CSV/Excel 導出時主視窗進度條卡死在 95% 的經典問題。
3. 新增員工卡下載範本 download 屬性與 Alpine.js 重置機制,解決全域進度條卡死。
4. 比照商品報表新增「CSV/Excel 報表導出成功」的高奢 Toast 提示。
5. 修正 zh_TW.json 中 Machine Serial No 翻譯重複鍵。
2026-05-19 12:38:46 +08:00
sky121113
bd7682c418
[PROMOTE] 合併 dev 變更至 demo 環境
...
本次晉升包含以下功能與修復:
1. 升級銷售紀錄(交易紀錄、電子發票、遠端出貨紀錄)高奢翡翠綠導出下拉選單,支援 CSV、Excel、複製至剪貼簿、高規列印與 PDF 五大管道。
2. 透過隱藏的 iframe 下載技術修復 CSV/Excel 導出時主視窗進度條卡死在 95% 的經典問題。
3. 新增員工卡下載範本 download 屬性與 Alpine.js 重置機制,解決全域進度條卡死。
4. 比照商品報表新增「CSV/Excel 報表導出成功」的高奢 Toast 提示。
5. 修正 zh_TW.json 中 Machine Serial No 翻譯重複鍵。
2026-05-19 12:35:12 +08:00
sky121113
1aa5aed72e
feat(sales): 升級銷售紀錄高奢翡翠綠導出下拉選單與修復進度條卡死
2026-05-19 12:33:06 +08:00
sky121113
8170234d70
[RELEASE] 晉升庫存過低動態比例一致性優化至正式生產環境
...
1. 將所有視圖(遠端管理、機台列表庫存抽屜、倉庫機台庫存)原本寫死的庫存過低判斷值改為統一的動態比例 (stock <= max_stock * 0.2)。
2026-05-19 12:03:02 +08:00
sky121113
a8d93293dd
[PROMOTE] 晉升庫存過低動態比例一致性優化至 demo 環境
...
1. 將所有視圖(遠端管理、機台列表庫存抽屜、倉庫機台庫存)原本寫死的庫存過低判斷值改為統一的動態比例 (stock <= max_stock * 0.2)。
2026-05-19 11:56:16 +08:00
sky121113
b5259a5b28
style: align low stock logic to stock <= max_stock * 0.2 across all views
2026-05-19 11:55:26 +08:00
sky121113
5d7d094974
[RELEASE] 晉升員工卡匯入空白字元過濾修復至正式生產環境
...
1. 於 `StaffCardImportService` 中,將讀取自 Excel 的員工編號(employee_id)與卡片 UID(card_uid)使用 `trim()` 自動過濾,剔除前後空白,防止因貼上夾帶空格導致後續比對與搜尋失效。
2026-05-19 11:46:58 +08:00
sky121113
2c9b75c871
[PROMOTE] 晉升員工卡匯入空白字元過濾修復至 demo 環境
...
1. 於 `StaffCardImportService` 中,將讀取自 Excel 的所有欄位(尤其是 employee_id 與 card_uid)前後空白使用 `trim()` 自動過濾,提升匯入容錯率。
2026-05-19 11:45:56 +08:00
sky121113
1778d48a00
[FIX] 員工卡匯入時自動清除欄位前後空白字元
...
1. 於 `StaffCardImportService` 中,將讀取自 Excel 的員工編號(employee_id)與卡片 UID(card_uid)使用 `trim()` 去除前後空白字元,防止因複製貼上夾帶空格導致後續比對與搜尋失效。
2. 同步將姓名(name)與備註(notes)也進行去空白處理,提升資料的一致性與品質。
2026-05-19 11:40:59 +08:00
sky121113
cfbe4655da
[RELEASE] 晉升銷售紀錄員工卡資訊功能至正式生產環境
...
1. 新增 Order 模型中的 `staffCardLog` 一對一關聯關係。
2. 於 SalesController 列表與詳情查詢中進行 Eager Loading 欄位限定優化,完全避免 N+1 查詢。
3. 擴充銷售紀錄模糊搜尋,支援依員工姓名、工號(Employee ID)與感應卡號(Card UID)進行即時篩選。
4. 調整桌面版表格、手機 RWD 卡片,於員工卡支付之訂單下方呈現感應卡圖示與 `姓名 (工號)`。
5. 於訂單詳情側滑面板中新增專屬「員工卡資訊」網格區塊。
6. 補齊 Traditional Chinese(zh_TW)、English(en)、Japanese(ja)三語系之相關翻譯與搜尋框 Placeholder 提示詞。
2026-05-19 11:10:13 +08:00