sky121113
|
46e8bdfaae
|
[FIX] 修復商品報表篩選 UI 邏輯與選項選取狀態
1. 調整商品報表篩選區塊順序,將「公司篩選」移至「商品篩選」前方,符合依公司過濾商品的操作邏輯。
2. 修復 <x-searchable-select> 在透過 slot 傳入選項時,無法正確綁定 selected 狀態的問題,手動於 <option> 標籤中補上選取狀態判斷。
|
2026-05-18 15:51:45 +08:00 |
|
sky121113
|
e4c63bbf38
|
[FIX] 修正排行欄位顯示空白問題
1. 將 product-reports.blade.php 中 13 處誤植為 pageSize 的變數,統一修正為 Alpine.js component data 物件所定義之 perPage 屬性。
2. 徹底解決因 pageSize 未定義而導致計算出 NaN、從而造成排行列內容空白未顯示的 Bug。
|
2026-05-18 14:57:26 +08:00 |
|
sky121113
|
90a77404fe
|
[FEAT] 新增商品銷售排行欄位與尊榮徽章,並更新資料匯出引擎
1. 於商品成本分析報表(電腦版 Table)最左側新增「排行」欄位,完美對齊圓角卡片樣式。
2. 針對前三名(Top 3)銷售商品設計尊榮徽章:第 1 名黃金徽章、第 2 名白銀徽章、第 3 名青銅徽章,其餘名次採用精緻 Mono 灰字。
3. 行動版 Card 移除原先通用包裹圖示,替換為智能偵測之獎牌徽章(🥇、🥈、🥉)或排行數字。
4. 全面升級資料複製(TSV)、CSV、Excel 與 PDF 列印等四大導出引擎,將「排行」業務指標同步注入首欄,並處理 colspan 對齊。
5. 補強多語系翻譯,於 zh_TW.json、en.json 與 ja.json 中完美新增「Rank / 排行 / 順位」鍵值。
|
2026-05-18 14:55:23 +08:00 |
|
sky121113
|
1dc79f2cec
|
[STYLE] 修正商品報表日期篩選之 Icon 與文字左間距,對齊銷貨紀錄規格
|
2026-05-18 14:49:20 +08:00 |
|
sky121113
|
154a2e0553
|
[FEAT] 重構與優化商品利潤統計報表功能
1. 【後端優化】重構 AnalysisController.php,以高效單次 SQL 統計計算銷量、銷額、總成本與淨利,套用 company_id 進行多租戶隔離,支援超級管理員跨租戶查詢,並解決 MySQL only_full_group_by 嚴格模式的 group by 語法相容問題。
2. 【前端介面】全新實作 product-reports.blade.php 極簡奢華風視圖,整合 Flatpickr 雙向日期區間選擇與「近 7 日、今日、本週、上週、本月、上月」快速切換快捷按鈕。
3. 【圖表自適應】整合 ApexCharts 銷售走勢曲線與圓餅圖,設計 PHP 端走勢數據日補零機制,並導入 ResizeObserver 進行圖表寬度百分之百響應式重繪。
4. 【尊榮數據導出】提供複製 (tsv)、CSV、Excel 與 PDF/列印的多維度導出引擎控制項。
5. 【高級前端分頁】對齊銷售紀錄規格,實作 Alpine.js 純前端高級分頁與 Show 10/25/50/100 筆數選擇器,並修復 select 動態 option 渲染時 ES6 template string 逸出問題。
6. 【細節齊平與遮擋修正】將日期 Input 寬度由 sm:w-56 拓寬至 sm:w-72,將日曆 Icon 左邊距從 pl-3.5 改進為 pl-5,Input 文字內左距調整為 pl-13,達到與 searchable-select 的 100% 齊平對齊,並配置跨卡片遞降 z-index 層級(z-40 -> z-30 -> z-20)徹底解決下拉選單在電腦版被下方走勢圖 Card 遮擋/截斷的 Bug。
7. 【多語系支援】於 zh_TW.json, en.json, ja.json 補強指標中英日翻譯。
8. 【選單整合】於 sidebar-menu.blade.php 的數據分析模組下正式啟用「商品報表」選單項目。
|
2026-05-18 14:46:17 +08:00 |
|
sky121113
|
17c7a26ef4
|
[FIX] 修復員工識別卡最後使用狀態更新、刪除頁面顯示 JSON 與語系遺漏問題
1. 在 StaffCardLog 模型中實作 booted() 事件監聽器,於刷卡日誌建立後自動更新關聯員工識別卡的「最後使用時間」與「最後使用機台」,並使用 withoutGlobalScopes 確保寫入安全。
2. 修正 StaffCardController 刪除方法(destroy),判斷 AJAX 請求以回傳 JSON,其餘一般表單刪除後則正常重導向回列表頁,解決刪除時跳轉至 JSON 純文字的問題。
3. 補齊多語系語系檔(zh_TW.json, en.json, ja.json)中有關「刪除員工識別卡」的翻譯對照,確保 UI 刪除警告在不同語言環境下均能完美呈現。
|
2026-05-18 13:37:21 +08:00 |
|
sky121113
|
e29826a0a6
|
[STYLE] 優化機台補貨語意,將「一鍵補貨」修正為「自動補貨單」
1. 修改 lang/zh_TW.json 的翻譯鍵 "Auto Replenishment" 對照值為「自動補貨單」,使其與手動「新增補貨單」在視覺與語意上形成直覺的對比,實事求是,消除「一鍵」但仍需彈窗選倉庫的 UX 誤導。
2. 同步將 app/Http/Controllers/Admin/WarehouseController.php 中的 autoReplenishment PHPDoc 註解替換為「自動補貨單」。
3. 同步修改 resources/views/admin/warehouses/replenishments.blade.php 中的 JS 代碼註解,將「一鍵補貨」修正為「自動補貨單」。
4. 同步更新 resources/views/admin/warehouses/partials/modal-replenishment-auto.blade.php 模板首行的 Blade 註解。
|
2026-05-18 13:14:29 +08:00 |
|
sky121113
|
7bf8dc173d
|
[FIX] 修正機台稼動率圖表 tooltip 顯示 undefined 與 accessibility 提示框問題
1. 修正 utilization.blade.php 自訂 Tooltip 中獲取小時標籤的寫法,改為直接使用 scope 中的 labels 變數,解決動態數據加載時顯示 undefined 的問題。
2. 於 ApexCharts 的 chart 配置中設定 accessibility.enabled = false,防止瀏覽器或輔助擴充套件顯示 ARIA 輔助提示框。
|
2026-05-18 10:25:10 +08:00 |
|
sky121113
|
86e895a4ae
|
[FEAT] 實作智慧型機台登入異常告警與自動自我修復機制
1. [Models] 修改 Machine.php,增加 has_login_warning 動態屬性,設定未解決之登入失敗日誌須達 3 筆以上才亮起「登入異常」警報。
2. [Models] 重構 scopeHasAnyAlert 查詢,確保當未解決之登入失敗日誌未達 3 筆時,不會計入儀表板的「待處理告警 (Alerts Pending)」統計。
3. [API] 修改 MachineAuthController.php,在 B000 登入成功時加入自動自我修復 (Self-healing) 邏輯,一鍵將先前該機台的所有未解決登入失敗日誌標記為已解決 (is_resolved = true)。
4. [Views] 修改 admin.dashboard 及 admin.machines.index,新增登入異常警告 (Login Alert) 的琥珀色徽章與動態提示,並將儀表板上的機台卡片標題改為點擊可跳轉至對應機台之篩選列表。
5. [Lang] 更新 zh_TW.json、en.json 與 ja.json,新增多語系翻譯對照詞彙。
|
2026-05-18 09:50:51 +08:00 |
|
sky121113
|
536d10234d
|
[FIX] 修復角色選單側邊欄顯示異常與重構機台補貨按鈕權限防禦
1. 修復 resources/views/layouts/partials/sidebar-menu.blade.php 中倉庫、銷售、遠端管理子選單未被 Spatie 權限包裹的 UI 異常,完美隱藏未授權子項目。
2. 重構 resources/views/admin/warehouses/machine-inventory.blade.php 的補貨按鈕文字,將「一鍵補貨」變更為「產生補貨單」。
3. 於 machine-inventory.blade.php 的 Alpine.js 控制器中動態宣告 hasReplenishPermission 權限判斷,若當前使用者不具備 menu.warehouses.replenishments 權限,點擊按鈕時將攔截跳轉並透過 dispatch 發送全域紅色 Error Toast 警告。
4. 擴充 zh_TW.json、en.json、ja.json 多語系翻譯檔,補齊「產生補貨單」與「無權限存取補貨單」之三語系翻譯。
|
2026-05-18 09:15:11 +08:00 |
|
sky121113
|
223fcddbc5
|
fix(ui): apply dynamic z-index pattern to resolve searchable select dropdown overlap in user modals
|
2026-05-17 13:24:32 +08:00 |
|
sky121113
|
4e65aca18e
|
style(favicon): add cache busting query parameter to favicon.ico link to bypass browser caching
|
2026-05-17 13:20:43 +08:00 |
|
sky121113
|
eb11ff0a93
|
Merge branch 'feat/login-ui-redesign' into dev
|
2026-05-17 13:14:36 +08:00 |
|
sky121113
|
1b63ec6c56
|
feat(profile): increase profile photo upload limit to 5MB and verify webp storage
|
2026-05-17 13:09:39 +08:00 |
|
sky121113
|
3857abe2e5
|
Merge branch 'feat/login-ui-redesign' into dev (珍珠白底載入 Logo)
|
2026-05-17 12:46:57 +08:00 |
|
sky121113
|
a77236bda8
|
[STYLE] 將全螢幕載入畫面中央 Logo 的背景框更改為珍珠白底
1. 將 loading-screen.blade.php 中央 Logo 的背景樣式 bg-slate-900/80 改為 bg-white,大幅提升深藍色品牌圖標的清晰度與對比度。
2. 微調內邊距 p-2 與邊框 border-slate-100,讓品牌 Icon 在旋轉霓虹光環中央更加醒目與精緻。
|
2026-05-17 12:46:42 +08:00 |
|
sky121113
|
b4c6ddc225
|
Merge branch 'feat/login-ui-redesign' into dev
|
2026-05-17 12:43:37 +08:00 |
|
sky121113
|
9eb314f0e2
|
[STYLE] 更新 Favicon 與側邊欄品牌標誌
1. 使用 Pillow 將新品牌 Logo 自適應裁切並生成 512x512 PNG 格式的 starcloud_icon.png。
2. 生成包含多種主流尺寸(16x16 至 256x256)的全新 favicon.ico。
3. 於後台管理主模板 (admin.blade.php) 與登入視圖 (login.blade.php) 中加入 Favicon 宣告。
4. 替換後台主模板 (admin.blade.php)、全螢幕載入畫面 (loading-screen.blade.php) 以及 Logo 元件 (application-logo.blade.php) 中所有舊的 S1_cropped_transparent.png 為全新星雲品牌 icon。
|
2026-05-17 12:43:22 +08:00 |
|
sky121113
|
b8aeef4262
|
feat: 重新設計登入頁面,採用方案 B 白金極簡懸浮卡片,移除點點底紋與表單背景,調大品牌 Logo,並提升販賣機浮水印至 20% 透明度
|
2026-05-17 12:38:46 +08:00 |
|
sky121113
|
ea438d55d1
|
[FEAT] 實作系統管理員切換帳號 (Impersonate) 功能
1. 新增 `ImpersonateController` 處理帳號切換與退出邏輯,並提供公司與使用者的動態下拉選單 API (包含 username 支援)。
2. 於 `admin.blade.php` 的 Header 個人選單中加入「切換帳號」入口,並支援退出切換狀態的顯示。
3. 實作 `modal.blade.php` Alpine.js 彈窗,使用專案規範的 `x-searchable-select` 動態重建模式 (Dynamic Rebuild Pattern) 與 `focus-within:z-[60]` 防護。
4. 註冊相關 Web Routes。
5. 更新 `ui-minimal-luxury/SKILL.md`,新增 Alpine.js Modal 實作規範,並禁止使用 `hs-overlay` 避免層級堆疊問題。
|
2026-05-17 11:07:41 +08:00 |
|
sky121113
|
cf2c2f6e39
|
[FIX] 修正通行碼載入失敗問題,並標準化所有單據模組的日期篩選器 UI
|
2026-05-16 23:41:23 +08:00 |
|
sky121113
|
88f522c60d
|
[FIX] 修正機台管理下拉選單遮擋問題,導入 focus-within:z-index 動態層級模式
|
2026-05-16 22:11:14 +08:00 |
|
sky121113
|
c014d7431c
|
[FIX] 修正重啟後產生重複機台日誌的問題並重構邏輯一致性
1. 修正 ProcessHeartbeat 在快取失效時會誤報韌體與溫度的問題。
2. 引入 Database Fallback 機制:當 Redis 無紀錄時自動比對資料庫現有值。
3. 統一韌體與溫度的偵測邏輯,確保兩者皆為「比對舊值 -> 異動才記 -> 補回快取」。
4. 提升系統對 CI/CD 重啟或快取清理的容錯能力。
|
2026-05-16 21:45:18 +08:00 |
|
sky121113
|
080412d2b3
|
[FEAT] 優化遠端管理與庫存歷史紀錄之日期篩選介面
1. 將單一日期區間選擇器拆分為獨立的「開始時間」與「結束時間」輸入框,提升手機版適應性。
2. 修正後端解析邏輯,移除強制 startOfDay() 以支援使用者選擇的精確分鐘數。
3. 修復庫存管理頁面中「截止日」欄位的 HTML 標籤閉合錯誤 (r">" 亂碼)。
4. 導入 Flatpickr defaultDate 與 position 參數,解決時間選擇器 UI 不對齊與邊緣裁切問題。
5. 更新標籤翻譯為「開始時間」與「結束時間」,並補齊庫存分頁的 Alpine.js 預設日期狀態。
|
2026-05-16 21:25:47 +08:00 |
|
sky121113
|
9fce030f5c
|
merge: remote performance optimization
|
2026-05-16 20:39:01 +08:00 |
|
sky121113
|
51d5ac87c7
|
refactor: optimize command center and stock management performance with lightweight JSON and DB indexes
|
2026-05-16 20:38:05 +08:00 |
|
sky121113
|
5574f845ab
|
merge: integrate inventory threshold 20% fix
|
2026-05-16 20:08:20 +08:00 |
|
sky121113
|
9bf670b951
|
fix: update low stock warning threshold to 20% of max_stock
1. 移除硬編碼的門檻值 5。
2. 改用 stock <= (max_stock * 0.2) 進行動態判斷。
3. 增加 max_stock > 0 過濾,避免空貨道產生錯誤警示。
|
2026-05-16 20:07:12 +08:00 |
|
sky121113
|
88dde0dd25
|
fix: remove redundant 4-hour temperature fallback log to reduce noise
|
2026-05-16 16:49:38 +08:00 |
|
sky121113
|
450e6dbe67
|
[FEAT] 金流配置優化:公司名稱改為選填並優化列表顯示
1. 新增資料庫遷移腳本,將 payment_configs 資料表的 company_id 欄位改為可為空 (nullable)。
2. 修改 PaymentConfigController 的驗證邏輯,允許 company_id 為空值。
3. 調整金流配置的新增與編輯頁面,移除公司名稱的必填限制及相關 JavaScript 攔截邏輯。
4. 優化金流配置列表,當配置未綁定公司時,將顯示標籤改為「系統」。
|
2026-05-15 17:28:33 +08:00 |
|
sky121113
|
2f550839cc
|
[FEAT] 客戶管理欄位(客戶代號、起始日)非必填化
1. 新增遷移檔將 companies.code 改為 nullable 並增加長度至 100,解決刪除時字串過長的問題。
2. 修改 CompanyController 驗證邏輯,允許 code 與 start_date 為空。
3. 更新前端公司管理頁面,移除 code 與 start_date 的必填限制與 UI 標記。
|
2026-05-15 17:02:59 +08:00 |
|
sky121113
|
cfaa8dfe54
|
[FEAT] 同步生產環境部署流程至與 Demo 站一致的嚴謹架構
|
2026-05-15 16:22:03 +08:00 |
|
sky121113
|
21d1a0e3c1
|
[FIX] 修正標籤映射以支援 Node.js 環境
|
2026-05-15 16:19:18 +08:00 |
|
sky121113
|
9471332d49
|
[FIX] 解決部署流程衝突並應用生產環境本地 Runner 優化
|
2026-05-15 16:15:49 +08:00 |
|
sky121113
|
c412b9c43d
|
[FEAT] 優化生產環境部署流程與 Runner 設定
1. 在生產環境主機 (star-cloud-prod) 安裝並啟動獨立的 act_runner (標籤: prod)。
2. 修改 .gitea/workflows/deploy-prod.yaml,將部署模式從 SSH/Rsync 改為本地 Docker 模式。
3. 確保 demo 與 prod 環境隔離,提升部署效率與安全性。
|
2026-05-15 16:15:16 +08:00 |
|
sky121113
|
74de9abdac
|
Merge branch 'demo'
|
2026-05-15 15:53:49 +08:00 |
|
sky121113
|
bc7c94ca0d
|
Merge branch 'dev' into demo
|
2026-05-15 15:53:36 +08:00 |
|
sky121113
|
b2e6e2567a
|
[FIX] 實施生產環境 Runner 隔離\n\n1. 修改 deploy-prod.yaml 將 runs-on 設定為 [ubuntu-latest, prod]\n2. 確保生產環境任務只由 gitea_work 專用機器執行
|
2026-05-15 15:53:32 +08:00 |
|
sky121113
|
8262637454
|
Merge branch 'dev' into demo
|
2026-05-15 15:52:14 +08:00 |
|
sky121113
|
928a1a8370
|
[STYLE] 調整 Demo 部署標籤為 ubuntu-latest 搭配 demo\n\n1. 將 runs-on 修改為 [ubuntu-latest, demo]\n2. 此舉能確保使用 Runner 預設的 ubuntu 環境標籤並精確鎖定至 demo 專用機
|
2026-05-15 15:52:06 +08:00 |
|
sky121113
|
8998de9179
|
Merge branch 'dev' into demo
|
2026-05-15 15:50:12 +08:00 |
|
sky121113
|
7662b20598
|
[FIX] 修正 Runner 標籤配置以支援 Docker 環境執行\n\n1. 將 self-hosted 標籤從 host 模式改為 docker 模式\n2. 確保 Actions 可以在容器內找到 node 執行環境
|
2026-05-15 15:50:12 +08:00 |
|
sky121113
|
cec0ed6394
|
Merge branch 'dev' into demo
|
2026-05-15 15:44:36 +08:00 |
|
sky121113
|
46dbeb59fb
|
[CI] Update demo runner label to [self-hosted, demo]
|
2026-05-15 15:44:36 +08:00 |
|
sky121113
|
c15f28eaa7
|
[RELEASE] Promote demo to main (2026-05-15) - UI Cleanup and Admin Fix
|
2026-05-15 15:32:31 +08:00 |
|
sky121113
|
b40257f676
|
[SYNC] Update local main from remote
|
2026-05-15 15:32:31 +08:00 |
|
sky121113
|
c705e01f4f
|
[SYNC] Merge main back to demo to sync CI fixes
|
2026-05-15 15:28:40 +08:00 |
|
sky121113
|
0e2f2d8ed4
|
[FEAT] 隱藏機台列表的刷卡機/掃碼機顯示與日誌中的設備狀態紀錄分頁
|
2026-05-15 15:15:31 +08:00 |
|
sky121113
|
239ab7fafd
|
[FIX] 修正新增客戶時初始帳號未標記為管理員的問題
1. 在 CompanyController 新增客戶時,明確為初始管理員帳號加上 is_admin = true,確保其在各權限管理介面能正確顯示。
|
2026-05-15 15:05:43 +08:00 |
|
sky121113
|
320af5c0c6
|
refactor(ci): use native ssh instead of appleboy/ssh-action to avoid download issues
|
2026-05-15 14:09:21 +08:00 |
|