Commit Graph

117 Commits

Author SHA1 Message Date
TaiwanStar Developer
8e4a0993c7 style: 優化首頁購物按鈕樣式與文字,並新增 logo 資源
- 優化首頁 (activity_home.xml) 的購物按鈕 (startButton) 樣式:
  1. 寬度由 0dp 改為固定寬度 400dp。
  2. 按鈕文字由「購物去」調整為「開始購物」。
  3. 背景與文字顏色改為套用主題色系 (@color/primary 與 @color/onPrimary)。
- 新增星雲 LOGO 圓形圖示資源 (starcloud_logo_circle.png)。
2026-06-09 16:46:11 +08:00
TaiwanStar Developer
4d7717edc3 style: 優化後台貨道清單介面佈局與狀態顯示
- 狀態辨識度提升:
  1. 貨道編號新增「貨道」前綴字樣。
  2. 販售與停售狀態加入顏色識別,文字與 Switch 顏色會根據狀態動態切換(成功色/警告色)。
- 佈局與操作體驗優化:
  1. 重新排列操作區塊,將「清空貨道」按鈕移至卡片最下方。
  2. 放大庫存加減按鈕的觸控範圍(高度調整為 60dp)與字體大小,提升機台觸控體驗。
  3. 「清空貨道」按鈕改用 warning 警示色系。
- 視覺微調:移除卡片外框線,使列表視覺更為乾淨。
2026-06-09 16:14:36 +08:00
sky121113
5f480d6cb6 [FIX] 修正非中國醫專案的物料代碼一致性驗證邏輯並升級修補版號
1. 於 VmcSlotListActivity 限制 validateMaterialCodeConsistency 僅在中國醫 (CMUH) 專案下執行,其他專案直接跳過。
2. 調整 app/build.gradle 的修補版號 (verPatch) 變數值,由 67 遞增至 68。
2026-06-09 16:00:58 +08:00
TaiwanStar Developer
b1732987ce feat: 優化商品搜尋介面並修復後台貨道編輯 Bug
- 商品搜尋介面大改版:
  1. 搜尋列表從單欄改為 3 欄網格排列,並導入 MaterialCardView 重新設計商品卡片。
  2. 搜尋框體驗優化:隱藏原生圖示,新增清空按鈕;支援點擊列表或候選字時自動收起鍵盤。
  3. 點擊候選字邏輯修改為直接套用完整字詞。
  4. 擴大點擊範圍,改為點擊整張商品卡片即可選取。
- 貨道編輯清單修復:
  1. 將 textCount 隱藏狀態改為 INVISIBLE 解決 GONE 導致輸入框寬度壓縮為 0 的問題。
  2. 輸入數量時改用 numberPassword 並移除密碼遮罩,以喚起乾淨的純數字鍵盤。
- 資源與樣式:
  1. 新增 button_outline_black.xml 黑框按鈕樣式。
  2. 修正圖片檔名大小寫 (eTicket -> eticket)。
2026-06-09 15:59:36 +08:00
TaiwanStar Developer
d917f6445c style(ui): 將出貨頁面標題改為灰色背景與黑色文字 2026-06-08 15:33:34 +08:00
TaiwanStar Developer
d1bf7d18ce style: 調整出貨清單 UI 的文字顏色與出貨中狀態格式
- 將商品名稱、順序(槽位號)與已出貨數量資訊的文字顏色改為黑色(@color/black)

- 將出貨中狀態的格式「出貨中(1)」改為「出貨中(1件)」
2026-06-08 14:34:26 +08:00
TaiwanStar Developer
f2ed393686 style(ui): 優化出貨進度對話框結構、版面自適應與配色調整
- 頁面標題改為「出貨進度」,背景調整為主色 (primary)
- 新增並更新多國語言字串 (processing, dispatch_progress)
- 重構底部的當前出貨進度區塊結構,移除冗餘嵌套,將區塊背景設為 cardSurface
- 取消按鈕樣式改為 warning/onWarning 配色,扁平化結構並去除冗餘 FrameLayout
- 清單區域高度改為 weight=1 自適應剩餘空間,移除 Space 元件,背景改為 background 色
2026-06-08 13:59:32 +08:00
TaiwanStar Developer
907d5095d5 style: 重構員工卡支付對話框佈局並更新身分證/員工卡相關圖檔資源 2026-06-08 11:54:15 +08:00
TaiwanStar Developer
28a3d623f0 feat: 新增支付管道與接受付款類型相關圖片資源 2026-06-08 09:53:40 +08:00
TaiwanStar Developer
2e71cc29b8 feat: 修改 VMC 貨道清單之未配置商品圖示、卡片背景色與一鍵補貨按鈕配色 2026-06-05 17:24:37 +08:00
TaiwanStar Developer
8f6b5217d6 feat(ui): 貨道停售中狀態時在商品圖片上方顯示透明黑色遮罩 2026-06-05 16:19:51 +08:00
TaiwanStar Developer
5d9c5ba5cf style(ui): 調整貨道管理儲存與一鍵補貨按鈕配色,並將 Switch 選中狀態設為 primary 色 2026-06-05 16:18:26 +08:00
TaiwanStar Developer
a933bb22f6 feat(ui): 改造貨道管理列表為卡片式 Grid 佈局與 Adapter 邏輯對接 2026-06-05 16:16:27 +08:00
TaiwanStar Developer
aed8d9bc1f style(ui): 依據參考介面調整貨道管理版面
調整項目:
1. 頂部區域:保留「貨道管理」標題,省略機櫃選擇與命名的部分。
2. 列表區域:將 recyclerSlotList 改為 Grid 網格排版,設定 spanCount 為 3。
3. 底部區域:省略批量匯出、批量匯入按鈕。將「返回」與「清空」按鈕設為隱藏以維持程式碼 ViewBinding 相容性。
4. 儲存按鈕:原「上傳後台並返回」按鈕文字修改為「儲存」,並維持原有點擊與同步邏輯。
2026-06-05 15:40:36 +08:00
sky121113
abe3ac14c1 Merge branch 'dev' into main for release v21.1.67 2026-06-04 16:29:04 +08:00
TaiwanStar Developer
54e0c9ffa5 style(ui): 調整廣告區域容器比例至 21:9 與等比例縮放
1. 將廣告區域容器比例從 16:9 調整為 21:9

2. 設定影片播放器屬性為 app:resize_mode=zoom

3. 設定廣告圖片屬性為 android:scaleType=centerCrop
2026-06-04 16:28:34 +08:00
sky121113
0637f71e34 [FIX] 優化機台鎖定防護流程與遞增版本號
1. 遞增修補版號 verPatch 至 67 以落實機台 OTA 更新規範。
2. 於 FontendActivity 的 onCreate 流程新增機台鎖定狀態檢查,若鎖定則強制跳轉至 MaintenanceActivity 並清除 Activity 棧。
3. 修正 MqttService 的鎖定命令跳轉旗標,改用 Intent.FLAG_ACTIVITY_CLEAR_TASK 確保舊 Activity 棧被完整清理。
4. 移除 AppUtils 中未使用的 MqttManager 引用。
2026-06-04 16:07:31 +08:00
TaiwanStar Developer
02ae6623d9 style(ui): 調整前端首頁資訊排版與背景色
1. 將版本號與 TC/VC 移至最底部釘選

2. 頂部資訊順序改為「時間 | 溫度 | 網路」,文字改為 @color/gray

3. 上下區塊背景改為 @color/light_gray,文字改為 @color/gray

4. 頁面背景及商品卡片區域背景改為 @color/background
2026-06-04 15:41:56 +08:00
TaiwanStar Developer
12e61d2a10 feat(ui): 替換 VMC 購買清單為新版佈局並調適 Adapter
1. 替換 recycler_vmc_buy_list.xml 為新版 CardView 結構,微調定位使 textPrice 相容舊版價格邏輯
2. 將貨道 textSlot 移至左上角,大小設為 18sp,顏色改用 primary/onPrimary 語意色
3. 將庫存 textStock 獨立定位於右下角,大小設為 18sp,顏色改用 gray/black 資源
4. 修改 RecyclerVmcBuyListAdpter 綁定庫存數量,並將貨道文字調整為「貨道value」無補零格式
2026-06-04 15:24:22 +08:00
TaiwanStar Developer
c7d75a8522 fix(layout): 移除佈局 XML 檔案的 UTF-8 BOM 檔頭
修復 DataBinding 元件在 Gradle 建置過程中因 XML 檔案包含 BOM (Byte Order Mark) 檔頭而解析失敗的問題。

原因:XML 檔頭的前導字元 EF BB BF 導致 LayoutFileParser 在解析 root 節點時發生 NullPointerException。

調整項目:- 批次移除 layout 目錄下所有 XML 佈局檔案的 UTF-8 BOM 檔頭。
2026-06-04 14:22:32 +08:00
TaiwanStar Developer
c7b8372dfc style(ui): 簡化色彩系統設定與對齊佈局配置 2026-06-04 13:57:06 +08:00
sky121113
bfc2915403 [FIX] 修復中國醫多貨道庫存分配異常與遞增發版版號
1. 修復 SaleFlowHandler.java:重構中國醫客製領藥流程中的多商品貨道分配演算法,引進動態多貨道輪替分配機制,徹底解決一筆單多商品(如 3 個同商品)時貨道重複分配為 3, 4, 4 的 Bug。
2. 更新 build.gradle:配合生產發版,將修補版號 verPatch 遞增至 66,並在背景成功編譯產出正式 Release APK (CmuhS9XYURelease)。
2026-06-02 17:49:40 +08:00
sky121113
0967f8445e Merge branch 'dev' into main for release 65 2026-06-02 16:01:05 +08:00
sky121113
a5add7d8ae RELEASE: 修正多商品取貨 UI 倒數閃跳與 3 分鐘閒置崩潰問題,發佈版本 65 2026-06-02 16:00:58 +08:00
sky121113
31a073475e [PROMOTE] 晉升開發分支 dev 至生產分支 main
包含以下主要功能與修復:
1. [FIX] 修正 OTA 連線超時與首頁執行緒併發競態導致 UI 異常問題 (808b9c4)
2. [FEAT] 優化 OTA 靜默安裝邏輯,支援降版本覆蓋安裝 (8768e95)
3. [STYLE] 優化 CMUH 專屬佈局元件比例與樣式排版 (2ea55b9)
4. [FEAT] 新增 CMUH 客製初始畫面跳轉與多處頁面重啟邏輯優化 (7b9b96c)
5. [FIX] 修正中國醫 (CMUH) 領藥異常處理與銷貨流水號關聯 (4c9fb5e)
6. [FIX] 實作半途出貨失敗的 MQTT Finalize 結案回報機制 (b2b6776)
7. [REFACTOR] 優化中國醫(Cmuh)售貨與領藥流程,並重構 API 連線模組 (71a0591)
8. [FEAT] 主控台 UI 全面翻新 (Console UI Overhaul) (984bbe7)
9. [REFACTOR] 重構銷售流程至雙維度 Flavor 架構與版本計算規範 (3409f93)
10. [FEAT] 新增遠端 MQTT 應用程式 OTA 更新功能與雙版號動態計算機制 (e15d020)
2026-06-02 10:52:50 +08:00
sky121113
808b9c40d9 [FIX] 修正 OTA 連線超時與首頁執行緒併發競態導致 UI 異常問題
1. OtaManager.java: 將下載的連線逾時從 15 秒調高至 30 秒,讀取逾時調高至 120 秒,提升 OTA 下載穩定性。
2. FontendActivity.java: 修正多執行緒更新 UI 時,共用 logs 緩衝區所引發的競態條件 (Race Condition) 導致欄位變空的問題,改採區域變數更新;並安全封裝重構 reportOnScheduler 的生命週期管理方法;調整閒置逾時為 5 分鐘。
3. build.gradle: 依據實體機台 OTA 版號自動化規範,安全遞增 verPatch 修補版號至 56。
4. compiler-apk.md: 優化編譯工作流中的後台更新說明提示欄位。
2026-06-01 17:48:32 +08:00
sky121113
8768e95178 [FEAT] 優化 OTA 靜默安裝邏輯,支援降版本覆蓋安裝
1. 於 OtaManager.java 中執行 pm install 時新增 -d 參數,允許降級 (downgrade) 安裝,以因應測試與緊急回滾情境。
2. 遞增 app/build.gradle 中的修補版號 verPatch 至 38。
2026-05-29 17:20:41 +08:00
sky121113
2ea55b9fbb [STYLE] 優化 CMUH 專屬佈局元件比例與樣式排版
1. 調整 Cmuh 專屬之 activity_fontend.xml 佈局,優化影片播放器比例與首頁容器 Constraint 限制。
2. 調整 fragment_vmc.xml 中掃描按鈕之 LinearLayout 屬性順序與排版樣式。
3. 遞增 app/build.gradle 的修補版號 verPatch 至 37 以配合發版需求。
2026-05-29 16:45:31 +08:00
sky121113
7b9b96ce66 [FEAT] 新增 CMUH 客製初始畫面跳轉與多處頁面重啟邏輯優化
1. 新增 AppEntry 工具類別,集中管理 Cmuh 專案判斷與動態初始 Activity 的獲取邏輯。
2. 於 HomeActivity 中新增 Cmuh 專案判斷,若為 CMUH 則直接導向至 FontendActivity 以跳過一般首頁。
3. 將 MainActivity、MqttService 與 FontendActivity 中的硬編碼 HomeActivity 導向重構為呼叫 AppEntry.initialActivity()。
4. 新增 Cmuh 專屬之 activity_fontend.xml 佈局檔案。
5. 遞增 app/build.gradle 中的修補版號 verPatch 至 35。
2026-05-29 15:15:24 +08:00
sky121113
f3867dcb4b [DOCS] 修正 release-apk 工作流中寫死 S12XYU 的問題
1. release-apk.md: 調整為依據專案 Flavor (Cmuh) 動態判斷硬體變體 (S9XYU) 與對應的螢幕尺寸與路徑。
2026-05-29 14:42:11 +08:00
sky121113
6d1733dfa9 [RELEASE] 升級修補版號以準備中國醫發版
1. build.gradle: verPatch 33 -> 34
2026-05-29 14:37:27 +08:00
sky121113
4c9fb5e000 [FIX] 修正中國醫 (CMUH) 領藥異常處理與銷貨流水號關聯
1. build.gradle: 升級修補版號 verPatch 31 -> 33。
2. TransactionFinalizeBuilder.java: 新增 orderNo 欄位並提供 setter。預設 orderNo 同 flowId,若呼叫 setOrderNo 則於組建 OrderPayload 時覆寫 order_no。
3. DispatchDialog.java (CMUH):
   - 中國醫 (Cmuh) 取物單 SN 序號改為覆寫 order_no,不再覆寫 flow_id、OrderId 與 ReportFlowId,避免機台底層流程因 ID 重複而拋錯。
   - 修正領藥失敗的 Memo 寫入邏輯:機台未回應重試逾時,移除 insertDrgnoToMemo()。
   - 整單出貨失敗結案時,檢查是否有任何出貨成功紀錄(新增 hasAnySuccessfulDispatch()),僅在有成功出貨時才寫入 Memo,整單未出貨時不寫入,允許使用者重新掃碼領藥。
2026-05-29 13:56:21 +08:00
sky121113
b2b6776665 [FIX] 實作半途出貨失敗的 MQTT Finalize 結案回報機制
1. 遞增 app/build.gradle 修補版本號為 1.31。
2. 於 TransactionFinalizePayload 新增 delivery_status 出貨狀態欄位(0=失敗, 1=成功, 2=部分失敗)。
3. 於 TransactionFinalizeBuilder 實作自動計算出貨狀態與建構回報的邏輯。
4. 於 DispatchDialog 實作 finalizeFailedDispatch 機制,當多筆商品出貨至半途失敗時,自動將剩餘未出貨的商品標記為失敗並上報 MQTT Finalize 結案。
2026-05-29 12:17:42 +08:00
sky121113
47acd44e61 [FIX] 整合中國醫功能優化、連續出貨修復與多國語系字串調整
1. 遞增 app/build.gradle 修補版本號為 1.30。
2. 優化 StarCloudAPI 登入追蹤日誌並調整日誌前綴。
3. 修正 DispatchDialog 出貨邏輯,移除單筆出貨防呆,恢復支援多筆連續出貨。
4. 新增與調整多國語系 strings.xml (繁中、英文、日文) 中國醫無庫存與未設定貨道的提示訊息。
2026-05-29 11:08:42 +08:00
sky121113
71a059183a [REFACTOR] 優化中國醫(Cmuh)售貨與領藥流程,重構 API 連線模組,並自動升版至 24
1. 重構 Cmuh 的 SaleFlowHandler:新增 ORDC_EMPTY、MATERIAL_NOT_FOUND、STOCK_NOT_ENOUGH 等明確領藥錯誤代碼,最佳化多貨道庫存匹配與扣減邏輯,改善掃碼按鈕的動態 UI 綁定時序。
2. 增強 Dialog UI 提示:重構 PickupErrorTipDialog 與 DispatchDialog,優化 dialog_pickup_error_tip.xml 佈局結構,確保出貨異常時能正確顯示對應的中文 Toast 與圖示。
3. 重構 HttpAPI 與網路層:重構後台 API 與 HttpConnect 的 Socket/連線異常處理,確實向 UI 回傳網路錯誤訊息(非吞例外),提升在極端網路環境下的穩定度。
4. 健全持久化與日誌模組:強化 StarCloudAPI 機台 Token 變更時的本地 SQLite 同步邏輯,提升 Logs 模組的非同步儲存與排程上傳穩定性。
5. 自動升版:配合實體機台 OTA 發版鐵律,將 app/build.gradle 中的 verPatch 變數由 23 遞增至 24。
6. 更新工作流說明:優化 .agents/workflows/compiler-apk.md 文件中的智慧尺寸判斷指令說明。
2026-05-28 17:48:03 +08:00
sky121113
46c24fcd2e [DOCS] 更新忽略設定以過濾本地測試資料庫
1. .gitignore:加入 *.db 與 mydata.db 規則,避免本機測試資料庫檔案干擾 Git 狀態追蹤。
2026-05-27 17:38:45 +08:00
sky121113
984bbe722c [FEAT] 主控台 UI 全面翻新 (Console UI Overhaul)
1. MainActivity.java:重構按鈕點擊邏輯,改用 Lambda 取代匿名 Runnable;新增 activeLoginDialog 追蹤機制,登入成功後自動關閉對話框並呼叫 updateLoginStatus();新增頂部登入/登出狀態按鈕 (btnStatusAction) 切換邏輯。
2. activity_main.xml:全面翻新 UI 佈局,導入卡片式分組選單、現代化 Header 區塊(含 Logo、版本號、機台狀態)、功能按鈕網格排版,以及底部版權列。
3. colors.xml:建立完整 Material 3 色彩系統,包含 primary/secondary/surface/background 色階,以及 success/warning/error/info 四種語意狀態色;調整 black 為深灰 (#272727)。
4. dimens.xml:新增 welcome 標題、Header Logo、選單按鈕圖示及間距等全套尺寸規格變數。
5. 新增三個 Drawable 資源:bg_button_primary.xml (主要按鈕樣式)、bg_button_outline.xml (外框按鈕樣式)、bg_input_modern.xml (現代化輸入框背景)。
6. 新增 values-sw720dp/dimens.xml:針對 720dp 以上大螢幕(10吋機台)的適配尺寸規格。
7. 新增主控台各功能示意圖資源(drawable/*.png):binding_machine、card_reader_checkout、card_reader_reboot、cargo_lane_management、product_list、reboot_app、sales_page、scanner_test、system_settings、taiwan_star_tech_logo、view_log_records、vending_machine_scenario_v1/v2。
8. app/build.gradle:verPatch 從 1 升至 6,對應本次多功能迭代開發。
9. dialog_admin_login.xml:新增獨立的管理員登入對話框佈局。
2026-05-27 17:15:07 +08:00
sky121113
3409f93f07 [REFACTOR] 重構銷售流程至雙維度 Flavor 架構、統一忙碌狀態並修正版本規範
1. 引進 SaleFlowHandler 與 SaleFlowCallback 介面,分離通用版 (General)、晟崴版 (Chengwai) 與中國醫版 (Cmuh) 的前台銷售進入點,降低 FontendActivity 耦合度。
2. 建立 src/Chengwai/、src/Cmuh/、src/General/ 目錄,將客製 dialog(如 FontendPickupCodeDialog、TakeMedicineDialog)與 layout 移入對應的專屬目錄。
3. 統一狀態檢查機制,將全專案背景排程、定時重啟與日誌備份中的舊 isShowDialog() 替換為更安全的 isMachineBusy();於 NFC 交易與鍵盤 Enter 防誤觸中特意保留原 isShowDialog() 以守護安全性防線。
4. 修正英文 values-en/strings.xml 缺漏與預設 locale 對齊的 sync_product/sync_product_warning,解決 lintVital 報告的 ExtraTranslation 錯誤,使 Release 打包 100% 成功。
5. 微調 app/build.gradle,將起點版號重置為 10_01_1,自動連動 versionCode 100101 與 versionName 10_01_1_R。
6. 修正 .agents/rules/versioning.md 規範,將 S 修正為「來源 (Source)」,將 verMajor 修正為「螢幕大小」,並補齊官方命名規範對照圖表與欄位解析。
7. 升級一鍵編譯 /compiler-apk(新增中文與英文別名智慧防呆映射)與新建發版 /release-apk 工作流。
2026-05-27 14:48:22 +08:00
sky121113
6b3e05051f [FIX] 升級補丁版號至 10.8.8 並優化 APK 自動編譯與發布腳本
1. 遞增 app/build.gradle 中的 verPatch 變數至 8(對應版本為 10_08_8_R,versionCode 為 100808),以利機台正常觸發 OTA 覆蓋安裝。
2. 重構 .agents/workflows/compiler-apk.md 腳本中的 APK 複製與命名機制,改為動態尋找並使用原始檔名,避免寫死檔名導致版本變更時失效。
3. 在編譯腳本中加入自動提取與計算版本資訊的輸出(包含 versionName 與 versionCode),方便在 StarCloud 後台登記時作為參考。
4. 更新 ADB 自動安裝路徑尋找方式,使其與動態尋找 APK 機制保持一致。
2026-05-27 10:16:56 +08:00
sky121113
e15d0209c6 [FEAT] 新增遠端 MQTT 應用程式 OTA 更新功能與雙版號動態計算機制
1. 新增 OtaManager.java:實現背景下載 APK 檔案至應用程式私有快取空間,並透過 Root 權限 (su 與 pm install -r) 進行靜默覆蓋安裝的完整邏輯。
2. 修改 MqttService.java:支援 update_app MQTT 指令,解析 payload 中的 url 參數並啟動 OtaManager 進行 OTA 更新。
3. 修改 app/build.gradle:實作雙版號動態計算機制,定義 verMajor、verMinor、verPatch,以符合實體機台的 OTA 覆蓋安裝規範。
4. 新增 .agents/rules/versioning.md:制訂專案版號與發版規範。
5. 修改 .agents/workflows/compiler-apk.md:調整編譯工作流,在編譯前自動檢查程式碼變更與遞增版號,並支援動態尋找編譯產出的最新 APK。
6. 修改 .gitignore:排除 .antigravitycli/ 工具產生的目錄。
7. 修改 .vscode/settings.json:設定自動更新 Java 的建置組態。
2026-05-22 16:04:52 +08:00
sky121113
465125f614 [FIX] 修復整點閒置重啟時觸發兩次的問題
1. 於 HomeActivity.java 中引進 SharedPreferences 持久化機制,比對當前日期與時間 Slot(如 yyyy-MM-dd HH:mm),避免同一分鐘內或 App 被 kill 掉重啟後重複觸發 RestartAPP2 背景等待執行緒。

2. 於 FontendActivity.java 中同步套用 SharedPreferences 限制邏輯,確保在首頁或購物頁面皆能共享同個重啟記錄,防止發生 90 秒後二次重啟的 Bug。
2026-05-20 14:07:50 +08:00
sky121113
ee8143032a [STYLE] 修正系統設定按鈕文字為安卓設定頁
1. 將 activity_main.xml 中的進入系統畫面按鈕(buttonOpenSystemSettings)之文字由「進入系統畫面」修改為「安卓設定頁」,以更精確描述其功能。
2026-05-20 13:44:16 +08:00
sky121113
3c1f805d97 [DOCS] 更新開發歷史紀錄
1. 補齊 2026/05/05 開發紀錄的第 3 點(登入 API 與 ApiKey 持久化機制修復)。
2. 補齊 2026/05/07 至 2026/05/20(最新合併至 main)的 Git 開發歷程。
2026-05-20 13:36:43 +08:00
sky121113
422459a0c3 [FIX] 修復閒置逾時觸發與資源釋放問題,並修正介面字串
1. 於 AppCompatActivityAbstract 覆寫 onUserInteraction(),在使用者互動時主動更新最後互動時間。
2. 於 HomeActivity.onDestroy() 增加 reportOnScheduler 的生命週期管理,於銷毀時執行 shutdown() 以防止執行緒洩漏。
3. 於 FontendActivity 的閒置逾時機制中,增加開發者/主控台模式判定,若處於該模式則重設計時器、不返回待機頁。
4. 修改 strings.xml 中的 slave_machine_software 字串,由「結構設定APP」修正為「下位機設定」。
2026-05-20 11:30:39 +08:00
sky121113
d13546b379 [FIX] 優化點選商品之出貨口狀態判斷與防重複點擊機制
1. 重構 checkSlotHaveProduct 方法以支援安全回呼與 3000ms 超時保護。
2. 修正 DevCheckSlotByVMC 串口讀取未重置 haveThings 導致的狀態殘留 Bug。
3. 加入 isCheckingSlot 點選鎖,防呆避免非同步檢查期間重複點擊商品。
4. 於異常 AlertDialog 手動與自動關閉路徑中,正確釋放點選鎖。
5. 更新中英日三語系取貨口有物文字為「取貨口有東西,請先取出」,並將 Dialog 字體放大至 24sp。
6. 將 checkSlot 的串口讀取延遲由 2000ms 降至 800ms,大幅加速點選商品的反應時間。
2026-05-19 16:35:13 +08:00
sky121113
ab8b828aa2 [FIX] 優化貨道上傳流程與隱藏出貨完成後的取貨確認按鈕
1. 於 DispatchDialog.java 中隱藏出貨流程最後的「取貨確認」按鈕,改為僅以 15 秒倒數後自動關閉對話框,防範使用者干預流程。
2. 於 VmcSlotListActivity.java 調整貨道同步邏輯,在上傳成功後自動返回前一頁。
3. 於 VmcSlotListActivity.java 實作上傳失敗時的彈出對話框,提供「重新嘗試」與「直接返回」選項,防止因返回鍵隱藏而造成介面卡死。
4. 調整 activity_vmc_slot_list.xml 佈局,隱藏「返回」按鈕,並將儲存按鈕文字調整為「上傳後台並返回」。
5. 修改 MqttManager.java,將心跳包定時器初始化延遲設定為 10 秒,避免開機初始化期間發生資源競合。
2026-05-18 13:15:30 +08:00
sky121113
d68482a005 [REFACTOR] 關閉閒置 30 分鐘主動重啟機制以維持連線穩定
1. 註解掉 FontendActivity 中的閒置 30 分鐘重啟邏輯。
2. 改為僅依賴每 4 小時一次的定時重啟,優化 MQTT 連線紀錄的穩定性並減少頻繁斷線。
2026-05-16 18:16:54 +08:00
sky121113
65dd123d0c [FEAT] 實作機器連線環境切換功能 (Demo vs 正式站)
1. 在 activity_setting.xml 新增環境切換單選鈕 (RadioGroup)。
2. 修改 SettingActivity.java 處理環境切換邏輯與 UI 初始化。
3. 修改 MachineStructure.java 新增 mqttEnv 欄位以儲存環境狀態。
4. 修改 MyApp.java 在啟動時從資料庫載入環境設定。
5. 修改 StarCloudAPI.java 使 API BASE_URL 根據環境設定動態切換。
6. 修改 MqttManager.java 使 MQTT Broker Host 根據環境設定動態切換。
7. 更新正式站 API (starcloud.taiwan-star.com.tw) 與 MQTT (emqx.taiwan-star.com.tw) 位址。
2026-05-15 12:55:15 +08:00
sky121113
43b1a8b3e3 [FEAT] 最佳化主介面佈局並實作 MQTT 優雅重啟邏輯
1. 在主介面 (activity_main.xml) 加入 ScrollView 容器,支援更多功能按鈕的滾動顯示。
2. 新增「進入系統畫面」按鈕,方便開發與偵錯。
3. 實作 MQTT 優雅斷線機制,在 App 手動或自動重啟前先行中斷 MQTT 連線,避免觸發 LWT 離線告警。
4. 修正貨道商品價格顯示邏輯,當價格為 0 時自動隱藏售價標籤。
5. 調整 VmcFragment 中的售價合法性判斷基準。
6. 更新 compiler-apk 工作流說明文件。
2026-05-14 17:42:30 +08:00
sky121113
4105d33956 [STYLE] 修正銷售平台圖片廣告下方的間距問題
1. 將 activity_fontend.xml 中的 imageAd 元件高度由 wrap_content 改為 match_parent,使其強制填滿 16:9 廣告區域,消除與下方商品列表間的間距。
2. 移除 imageAd 中無效的 app:layout_constraintDimensionRatio="16:9" 屬性。
2026-05-14 12:42:18 +08:00