Commit Graph

673 Commits

Author SHA1 Message Date
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
sky121113
5a0c2953aa [PROMOTE] 晉升 dev 變更至 demo 環境
1. 補齊交易訂單員工卡資訊與搜尋框的英文與日文翻譯(lang/en.json, lang/ja.json)。
2026-05-19 11:06:18 +08:00
sky121113
a4d681e266 [FIX] 補齊交易訂單員工卡資訊與搜尋框的英文與日文翻譯
1. 於 `lang/en.json` 中補齊 `Search Order No / Cards & Codes...` 與 `Staff Card Info` 的英文鍵值對。
2. 於 `lang/ja.json` 中補齊對應的日文翻譯:`注文番号 / カード・コードを検索...` 與 `スタッフカード情報`。
2026-05-19 11:05:55 +08:00
sky121113
4a48b8c806 [PROMOTE] 簡化銷售紀錄搜尋框提示詞至 demo 環境
1. 銷售紀錄搜尋框提示詞更新為「搜尋 訂單號 / 卡號與代碼...」,兼顧未來通行碼與取貨碼擴充性並提升版面潔淨度。
2026-05-19 11:04:02 +08:00
sky121113
6cddc5b1b8 [STYLE] 簡化銷售紀錄搜尋框提示詞,優化版面潔淨度
1. 修改 tab-orders.blade.php,將搜尋提示詞簡化為「Search Order No / Cards & Codes...」,移除冗長且非核心的流水號與發票提示。
2. 更新 zh_TW.json 翻譯,對應為「搜尋 訂單號 / 卡號與代碼...」,兼顧未來的通行碼與取貨碼擴充性。
2026-05-19 11:03:47 +08:00
sky121113
99f49ced0c [PROMOTE] 晉升搜尋框提示詞優化至 demo 環境
1. 銷售紀錄搜尋框提示詞更新為「搜尋 訂單號 / 流水號 / 發票號碼 / 員工資訊...」,提示管理員可進行員工資訊查詢。
2026-05-19 11:01:42 +08:00
sky121113
d9423a3fb1 [STYLE] 更新銷售紀錄搜尋框提示詞,支援員工資訊提示
1. 修改 tab-orders.blade.php,將搜尋框提示詞更新為「Search Order No / Flow ID / Invoice / Staff Info...」。
2. 更新 zh_TW.json 翻譯,對應為「搜尋 訂單號 / 流水號 / 發票號碼 / 員工資訊...」。
2026-05-19 11:01:27 +08:00
sky121113
307b98f86e [PROMOTE] 晉升 dev 變更至 demo 測試環境
1. 銷售紀錄(Orders)與員工卡交易資訊進行全關聯。
2. 新增支援員工姓名、工號與感應卡號的模糊搜尋與過濾條件。
3. 桌面版與手機 RWD 版銷售列表,新增刷卡資訊與 icon 精美徽章展示。
4. 銷售詳情側滑面板,新增專屬的「員工卡資訊」網格區塊。
2026-05-19 10:54:59 +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
5c3e4538ee [RELEASE] 晉升 demo 變更至 main 生產環境
1. [FEAT] 新增分析管理與其子項目的角色權限配置與選單防禦,限制租戶管理員預設僅有「商品報表」權限。
2. [FEAT] 補齊與優化商品銷售排行、商品利潤統計報表功能,新增尊榮徽章與排行數據匯出。
3. [FIX] 修正排行欄位空白、商品報表篩選 UI 邏輯。
4. [STYLE] 修復 Flatpickr 日期選擇器寬度與 padding,防止右側月曆裁剪.
5. [STYLE] 修正歷史 migration 的 SQLite 相容性,新增 AnalysisPermissionTest 自動化 Feature 測試並全數綠燈通過。
6. [FIX] 補齊廣告與機台管理相關語系翻譯,修正多語系標記換行問題。
2026-05-18 17:34:43 +08:00
sky121113
8725c276cb [PROMOTE] 晉升 dev 變更至 demo 環境
1. [FEAT] 新增分析管理子項目的角色權限配置與路由選單防護,限制租戶管理員僅擁有「商品報表」權限。
2. [FIX] 補齊廣告、機台管理等翻譯文字,修復多語系標記換行問題。
3. [STYLE] 修復歷史 migration 的 SQLite 相容性,新增 AnalysisPermissionTest 自動化 Feature 測試並全數綠燈通過。
2026-05-18 17:26:05 +08:00
sky121113
916d0891f1 [FEAT] 新增分析管理與子項目的角色權限配置
1. 在 RoleSeeder 中註冊分析管理的 4 個子權限(零錢庫存、機台報表、商品報表、問卷分析),並僅指派「商品報表」權限給租戶管理員模板。
2. 在 PermissionController 與視圖 (role-list, role-card) 的 activeModules 白名單中加入 menu.analysis,使數據分析大項能正常被撈取與顯示。
3. 修改 sidebar-menu.blade.php,用 @can 防護數據分析子選單;修改 web.php 為 4 個分析路由掛載 middleware('can:...') 路由防護。
4. 補全 zh_TW.json、en.json、ja.json 翻譯檔案中關於 4 個新分析權限的金鑰與翻譯文字。
5. 修復 2026_05_11_163543_add_missing_types_to_machine_stock_movements_table.php 歷史 migration 以相容 SQLite 測試。
6. 新增 AnalysisPermissionTest.php 測試案例並於本地測試通過,保證多租戶與 RBAC 架構之權限隔離與防越權機制 100% 正確運作。
2026-05-18 17:22:45 +08:00
sky121113
ecb3750abe [FIX] 補齊廣告與機台管理相關語系翻譯並修正多語系標記換行問題
1. 補齊 'Target Position' 於 zh_TW.json、ja.json 及 en.json 的多語系翻譯字串,並維持字母排序。
2. 補齊 'Order updated successfully.' 於 zh_TW.json、ja.json 及 en.json 的多語系翻譯字串,並維持字母排序。
3. 修復多個視圖檔案(包含機台建立、分析儀表板、商品管理與遠端監控等 Blade views)中 `__()` 語系標記跨行問題,合併為單行以避免翻譯匹配失效。
2026-05-18 17:15:39 +08:00
sky121113
7991a9b662 Merge branch 'main' into dev 2026-05-18 17:02:18 +08:00
sky121113
4c2b1e7a54 Merge branch 'main' into demo 2026-05-18 17:02:02 +08:00
sky121113
cc8a594f1b Merge branch 'hotfix/fix-machine-ad-delete-confirm' into main 2026-05-18 17:01:43 +08:00
sky121113
91021021d9 [FIX] 修復刪除機台廣告設置時缺少自訂確認視窗與非同步載入圖示
1. 將原本使用瀏覽器原生 confirm 的解除綁定功能,重構為自訂極奢風確認彈窗 x-confirm-modal。
2. 擴充通用確認彈窗 confirm-modal.blade.php 支援 isSubmittingVar 屬性,在非同步提交中顯示按鈕 Spinner 並禁用操作。
3. 優化新增廣告設置彈窗 assign-modal.blade.php 支援 isSubmitting 狀態,點擊後按鈕出現 Spinner 並鎖定彈窗。
4. 整合 AJAX 載入狀態,在 fetchMachineAds() 載入資料期間顯示卡片層級雙環 x-luxury-spinner 載入圖示。
5. 補齊繁體中文、英文與日文的解除綁定多語系翻譯。
2026-05-18 17:01:17 +08:00
sky121113
f375d86189 [PROMOTE] 晉升 dev 至 demo
本次晉升包含以下功能與修復:
1. 重構與優化商品利潤統計報表功能
2. 新增商品銷售排行欄位與尊榮徽章,並更新資料匯出引擎
3. 修復商品報表日期篩選 UI 邏輯與選項選取狀態
4. 優化 Flatpickr 日期選擇器視覺樣式與間距調整
5. 更新多語系支援 (en, ja, zh_TW) 與側邊欄選單項目
2026-05-18 16:29:54 +08:00
sky121113
fb1bf68cc5 Merge branch 'feat/analysis-report' into dev 2026-05-18 16:21:38 +08:00