[FEAT] 依廠商規格全面重構 B013 硬體狀態碼並補齊三語系翻譯

1. 修改 MachineService 中的 0424 代碼標籤為 Purchase successful(購買成功)並改寫成功判定邏輯。
2. 移除 DiscordWebhookService 中重複且過時的 errorCodes 硬編碼對照,統一由 MachineService 作為單一真實來源。
3. 同步更新 MQTT 即時通訊規格文件中有關 0424 的定義與出貨結果判定規則。
4. 新增並以自動對齊腳本完美補齊 en/zh_TW/ja 三語系檔中所有 53 種硬體代碼翻譯,完成排序(ksort)與斜線不逸出處理。
This commit is contained in:
sky121113 2026-05-29 09:13:16 +08:00
parent 7766fce1d4
commit d9bf2bbe98
6 changed files with 317 additions and 96 deletions

View File

@ -129,17 +129,90 @@ Mqtt3Client client = MqttClient.builder()
``` ```
#### B013 硬體代碼對照表 (由 MachineService 自動翻譯) #### B013 硬體代碼對照表 (由 MachineService 自動翻譯)
> [!IMPORTANT]
> **出貨結果判定**:僅 `0402` (出貨成功) 與 `0424` (購買成功) 視為成功,其餘出貨結果碼均應觸發退款。
> 完整代碼定義於 `MachineService::ERROR_CODE_MAP`
**基本出貨流程:**
| 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 | | 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 |
| :--- | :--- | :--- | :--- | | :--- | :--- | :--- | :--- |
| **0402** | Dispense successful | info | 出貨成功 | | **0401** | Dispensing in progress | info | 正在出貨 |
| **0402** | Dispense successful | info | ✅ 出貨成功 |
| **0403** | Slot jammed | error | **貨道卡貨** (重大異常) | | **0403** | Slot jammed | error | **貨道卡貨** (重大異常) |
| **0202** | Product empty | warning | 貨道缺貨 | | **0404** | Motor not stopped | warning | 電機未正常停止 |
| **0412** | Elevator rise error | error | 昇降機上升異常 | | **0405** | Motor not found | error | 電機不存在 |
| **0415** | Pickup door error | error | 取貨門異常 | | **0406** | Motor not found (0406) | error | 電機不存在 (同 0405) |
| **5402** | Pickup door not closed | warning | **取貨門未關** (警告) | | **0407** | Elevator failure | error | 昇降機故障 |
| **5403** | Elevator failure | error | 昇降系統故障 |
*(註:`error_code` 應遵循此表定義,雲端將根據 `i18n` 自動轉換。`tid` 為貨道或任務 ID。)* **昇降機系統:**
| 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 |
| :--- | :--- | :--- | :--- |
| **040A** | Elevator belt self-check error | error | 昇降機皮帶自檢錯誤 |
| **0410** | Elevator rising | info | 昇降機正在上升 |
| **0411** | Elevator descending | info | 昇降機正在下降 |
| **0412** | Elevator rise error | error | 昇降機上升錯誤 |
| **0413** | Elevator descent error | error | 昇降機下降錯誤 |
| **0425** | Elevator support rod return error | error | 昇降台撐桿回位錯誤 |
| **0428** | Elevator support rod push error | error | 昇降台撐桿推出錯誤 |
| **0429** | Elevator enter microwave error | error | 昇降台進微波爐錯誤 |
| **0430** | Elevator exit microwave error | error | 昇降台出微波爐錯誤 |
**微波爐取貨口門:**
| 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 |
| :--- | :--- | :--- | :--- |
| **0414** | Microwave pickup door closing | info | 正在關閉微波爐取貨口門 |
| **0415** | Microwave pickup door close error | error | 微波爐取貨口門關閉錯誤 |
| **0426** | Microwave pickup door opening | info | 正在打開微波爐取貨口門 |
| **0427** | Microwave pickup door open error | error | 微波爐取貨口門打開錯誤 |
**微波爐進貨口門:**
| 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 |
| :--- | :--- | :--- | :--- |
| **0416** | Microwave delivery door opening | info | 正在打開微波爐進貨口門 |
| **0417** | Microwave delivery door open error | error | 微波爐進貨口門打開錯誤 |
| **0418** | Pushing bento into microwave | info | 正在將便當推入微波爐 |
| **0419** | Microwave delivery door closing | info | 正在關閉微波爐進貨口門 |
| **0420** | Microwave delivery door close error | error | 微波爐進貨口門關閉錯誤 |
**微波爐內部:**
| 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 |
| :--- | :--- | :--- | :--- |
| **0421** | Bento not detected in microwave | error | 微波爐內沒檢測到便當 |
| **0422** | Bento heating | info | 便當正在加熱 |
| **0423** | Bento heating remaining time | info | 便當加熱剩餘時間秒 |
| **0424** | Purchase successful | info | ✅ 購買成功 |
| **0431** | Microwave push rod push error | error | 微波爐內推桿推出錯誤 |
| **0432** | Microwave push rod retract error | error | 微波爐內推桿收回錯誤 |
**鮮奶機專用:**
| 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 |
| :--- | :--- | :--- | :--- |
| **040B** | Milk dispense timeout | error | 按鍵出奶超時 |
| **040C** | Cup dropper failure | error | 漏杯器漏杯失敗 |
| **040D** | Cup drop not detected | error | 未檢測到杯子掉落 |
**手環機專用:**
| 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 |
| :--- | :--- | :--- | :--- |
| **040E** | Bracelet scan failed | error | 沒掃碼到手環 |
| **040F** | Bracelet drop not detected | error | 沒檢測到手環掉入取貨斗 |
**取貨口門 / 購物車模式 / 液體機:**
| 代碼 | 英文 Key (i18n) | 級別 | 範例繁中翻譯 |
| :--- | :--- | :--- | :--- |
| **0433** | Pickup door opened (cart mode) | info | 取貨口門打開成功 (購物車) |
| **0434** | Pickup door closed (cart mode) | info | 取貨口門關閉成功 (購物車) |
| **0435** | Liquid dispense paused | warning | 暫停出液 (液體機) |
| **0441** | Pickup door unlocked | info | 取貨口門開鎖上報 |
| **04FF** | Bento purchase terminated | error | 便當購買終止 |
### 3.3 交易生命週期上報 (Transaction) - `machine/{serial_no}/transaction` ### 3.3 交易生命週期上報 (Transaction) - `machine/{serial_no}/transaction`

View File

@ -16,38 +16,82 @@ class MachineService
{ {
/** /**
* B013: 硬體狀態代碼對照表 (Hardware Status Code Mapping) * B013: 硬體狀態代碼對照表 (Hardware Status Code Mapping)
*
* 代碼格式Command 0x04 + Status Byte例如 0x04+0x03 = '0403'
* 出貨結果判定:僅 0402 (出貨成功) 0424 (便當取出成功) 視為成功,
* 其餘出貨結果碼均應觸發退款。
*
* 參考文件:廠商硬體通訊協議 Command(0x04) 狀態定義
*/ */
public const ERROR_CODE_MAP = [ public const ERROR_CODE_MAP = [
// 出貨狀態類 (Prefix: 04 - BUY_STATUS) // ═══════════════════════════════════════════════════════════════
'0401' => ['label' => 'Dispensing in progress', 'level' => 'info'], // 出貨與物理動作類 (Command 0x04 - BUY_STATUS)
'0402' => ['label' => 'Dispense successful', 'level' => 'info'], // ═══════════════════════════════════════════════════════════════
'0403' => ['label' => 'Slot jammed', 'level' => 'error'],
'0404' => ['label' => 'Motor not stopped', 'level' => 'warning'],
'0406' => ['label' => 'Slot not found', 'level' => 'error'],
'0407' => ['label' => 'Dispense error (0407)', 'level' => 'error'],
'0408' => ['label' => 'Dispense error (0408)', 'level' => 'error'],
'0409' => ['label' => 'Dispense error (0409)', 'level' => 'error'],
'040A' => ['label' => 'Dispense error (040A)', 'level' => 'error'],
'0410' => ['label' => 'Elevator rising', 'level' => 'info'],
'0411' => ['label' => 'Elevator descending', 'level' => 'info'],
'0412' => ['label' => 'Elevator rise error', 'level' => 'error'],
'0413' => ['label' => 'Elevator descent error', 'level' => 'error'],
'0414' => ['label' => 'Pickup door closed', 'level' => 'info'],
'0415' => ['label' => 'Pickup door error', 'level' => 'error'],
'0416' => ['label' => 'Delivery door opened', 'level' => 'info'],
'0417' => ['label' => 'Delivery door open error', 'level' => 'error'],
'0418' => ['label' => 'Delivering product', 'level' => 'info'],
'0419' => ['label' => 'Delivery door closed', 'level' => 'info'],
'0420' => ['label' => 'Delivery door close error', 'level' => 'error'],
'0421' => ['label' => 'Hopper empty', 'level' => 'warning'],
'0422' => ['label' => 'Hopper overheated', 'level' => 'warning'],
'0423' => ['label' => 'Hopper heating timeout', 'level' => 'error'],
'0424' => ['label' => 'Hopper error (0424)', 'level' => 'error'],
'0426' => ['label' => 'Microwave door opened', 'level' => 'info'],
'0427' => ['label' => 'Microwave door error', 'level' => 'error'],
'04FF' => ['label' => 'Dispense stopped', 'level' => 'info'],
// 貨道狀態類 (Prefix: 02 - SLOT_STATUS) // --- 基本出貨流程 ---
'0401' => ['label' => 'Dispensing in progress', 'level' => 'info'], // 正在出貨
'0402' => ['label' => 'Dispense successful', 'level' => 'info'], // ✅ 出貨成功
'0403' => ['label' => 'Slot jammed', 'level' => 'error'], // 貨道卡貨 (重大異常)
'0404' => ['label' => 'Motor not stopped', 'level' => 'warning'], // 電機未正常停止
'0405' => ['label' => 'Motor not found', 'level' => 'error'], // 電機不存在
'0406' => ['label' => 'Motor not found (0406)', 'level' => 'error'], // 電機不存在 (同 0405)
'0407' => ['label' => 'Elevator failure', 'level' => 'error'], // 昇降機故障
// --- 昇降機系統 ---
'040A' => ['label' => 'Elevator belt self-check error', 'level' => 'error'], // 昇降機皮帶自檢錯誤
'0410' => ['label' => 'Elevator rising', 'level' => 'info'], // 昇降機正在上升
'0411' => ['label' => 'Elevator descending', 'level' => 'info'], // 昇降機正在下降
'0412' => ['label' => 'Elevator rise error', 'level' => 'error'], // 昇降機上升錯誤
'0413' => ['label' => 'Elevator descent error', 'level' => 'error'], // 昇降機下降錯誤
'0425' => ['label' => 'Elevator support rod return error', 'level' => 'error'], // 昇降台撐桿回位錯誤
'0428' => ['label' => 'Elevator support rod push error', 'level' => 'error'], // 昇降台撐桿推出錯誤
'0429' => ['label' => 'Elevator enter microwave error', 'level' => 'error'], // 昇降台進微波爐錯誤
'0430' => ['label' => 'Elevator exit microwave error', 'level' => 'error'], // 昇降台出微波爐錯誤
// --- 微波爐取貨口門 ---
'0414' => ['label' => 'Microwave pickup door closing', 'level' => 'info'], // 正在關閉微波爐取貨口門
'0415' => ['label' => 'Microwave pickup door close error', 'level' => 'error'], // 微波爐取貨口門關閉錯誤
'0426' => ['label' => 'Microwave pickup door opening', 'level' => 'info'], // 正在打開微波爐取貨口門
'0427' => ['label' => 'Microwave pickup door open error', 'level' => 'error'], // 微波爐取貨口門打開錯誤
// --- 微波爐進貨口門 ---
'0416' => ['label' => 'Microwave delivery door opening', 'level' => 'info'], // 正在打開微波爐進貨口門
'0417' => ['label' => 'Microwave delivery door open error', 'level' => 'error'], // 微波爐進貨口門打開錯誤
'0418' => ['label' => 'Pushing bento into microwave', 'level' => 'info'], // 正在將便當推入微波爐
'0419' => ['label' => 'Microwave delivery door closing', 'level' => 'info'], // 正在關閉微波爐進貨口門
'0420' => ['label' => 'Microwave delivery door close error', 'level' => 'error'], // 微波爐進貨口門關閉錯誤
// --- 微波爐內部 ---
'0421' => ['label' => 'Bento not detected in microwave', 'level' => 'error'], // 微波爐內沒檢測到便當
'0422' => ['label' => 'Bento heating', 'level' => 'info'], // 便當正在加熱
'0423' => ['label' => 'Bento heating remaining time', 'level' => 'info'], // 便當加熱剩餘時間 (貨道號=秒數)
'0424' => ['label' => 'Purchase successful', 'level' => 'info'], // ✅ 購買成功 (原 Bento ready for pickup)
'0431' => ['label' => 'Microwave push rod push error', 'level' => 'error'], // 微波爐內推桿推出錯誤
'0432' => ['label' => 'Microwave push rod retract error', 'level' => 'error'], // 微波爐內推桿收回錯誤
// --- 鮮奶機專用 ---
'040B' => ['label' => 'Milk dispense timeout', 'level' => 'error'], // 按鍵出奶超時 (鮮奶機)
'040C' => ['label' => 'Cup dropper failure', 'level' => 'error'], // 漏杯器漏杯失敗 (鮮奶機)
'040D' => ['label' => 'Cup drop not detected', 'level' => 'error'], // 未檢測到杯子掉落 (鮮奶機)
// --- 手環機專用 ---
'040E' => ['label' => 'Bracelet scan failed', 'level' => 'error'], // 沒掃碼到手環
'040F' => ['label' => 'Bracelet drop not detected', 'level' => 'error'], // 沒檢測到手環掉入取貨斗
// --- 取貨口門 (購物車模式) ---
'0433' => ['label' => 'Pickup door opened (cart mode)', 'level' => 'info'], // 取貨口門打開成功 (購物車購買)
'0434' => ['label' => 'Pickup door closed (cart mode)', 'level' => 'info'], // 取貨口門關閉成功 (購物車購買)
'0441' => ['label' => 'Pickup door unlocked', 'level' => 'info'], // 取貨口門開鎖上報
// --- 液體機專用 ---
'0435' => ['label' => 'Liquid dispense paused', 'level' => 'warning'], // 暫停出液
// --- 終止 ---
'04FF' => ['label' => 'Bento purchase terminated', 'level' => 'error'], // 便當購買終止
// ═══════════════════════════════════════════════════════════════
// 貨道與馬達狀態類 (Prefix: 02 - SLOT_STATUS)
// ═══════════════════════════════════════════════════════════════
'0201' => ['label' => 'Slot normal', 'level' => 'info'], '0201' => ['label' => 'Slot normal', 'level' => 'info'],
'0202' => ['label' => 'Product empty', 'level' => 'warning'], '0202' => ['label' => 'Product empty', 'level' => 'warning'],
'0203' => ['label' => 'Slot empty', 'level' => 'warning'], '0203' => ['label' => 'Slot empty', 'level' => 'warning'],
@ -58,13 +102,24 @@ class MachineService
'0209' => ['label' => 'Slot motor error (0209)', 'level' => 'error'], '0209' => ['label' => 'Slot motor error (0209)', 'level' => 'error'],
'0212' => ['label' => 'Hopper empty (0212)', 'level' => 'warning'], '0212' => ['label' => 'Hopper empty (0212)', 'level' => 'warning'],
// ═══════════════════════════════════════════════════════════════
// 機台整體狀態類 (Prefix: 54 - MACHINE_STATUS) // 機台整體狀態類 (Prefix: 54 - MACHINE_STATUS)
// ═══════════════════════════════════════════════════════════════
'5400' => ['label' => 'Machine normal', 'level' => 'info'], '5400' => ['label' => 'Machine normal', 'level' => 'info'],
'5401' => ['label' => 'Elevator sensor error', 'level' => 'error'], '5401' => ['label' => 'Elevator sensor error', 'level' => 'error'],
'5402' => ['label' => 'Pickup door not closed', 'level' => 'warning'], '5402' => ['label' => 'Pickup door not closed', 'level' => 'warning'],
'5403' => ['label' => 'Elevator failure', 'level' => 'error'], '5403' => ['label' => 'Elevator failure', 'level' => 'error'],
]; ];
/**
* 出貨成功結果碼 (Dispense Success Codes)
*
* 僅以下代碼視為出貨成功,其餘出貨結果碼均應觸發退款。
* - 0402: 一般出貨成功
* - 0424: 便當取出成功 (微波爐機型)
*/
public const DISPENSE_SUCCESS_CODES = ['0402', '0424'];
/** /**
* Update machine heartbeat and status. * Update machine heartbeat and status.
* *

View File

@ -8,16 +8,7 @@ use Illuminate\Support\Facades\Log;
class DiscordWebhookService class DiscordWebhookService
{ {
// B013 硬體代碼中文翻譯對照 // B013 硬體代碼翻譯統一由 MachineService::ERROR_CODE_MAP 管理 (Single Source of Truth)
protected array $errorCodes = [
'0402' => '出貨成功',
'0403' => '貨道卡貨 (重大異常)',
'0202' => '貨道缺貨',
'0412' => '昇降機上升異常',
'0415' => '取貨門異常',
'5402' => '取貨門未關 (警告)',
'5403' => '昇降系統故障',
];
/** /**
* 發送測試通知 * 發送測試通知

View File

@ -5,8 +5,8 @@
"30s": "30s", "30s": "30s",
"60 Seconds": "60 Seconds", "60 Seconds": "60 Seconds",
"60s": "60s", "60s": "60s",
":count staff cards imported successfully": ":count staff cards imported successfully",
":count products imported successfully": ":count products imported successfully", ":count products imported successfully": ":count products imported successfully",
":count staff cards imported successfully": ":count staff cards imported successfully",
"A new verification link has been sent to your email address.": "A new verification link has been sent to your email address.", "A new verification link has been sent to your email address.": "A new verification link has been sent to your email address.",
"A sync command was recently sent. Please wait 1 minute.": "A sync command was recently sent. Please wait 1 minute.", "A sync command was recently sent. Please wait 1 minute.": "A sync command was recently sent. Please wait 1 minute.",
"AI Prediction": "AI Prediction", "AI Prediction": "AI Prediction",
@ -219,7 +219,13 @@
"Before Qty": "Before Qty", "Before Qty": "Before Qty",
"Belongs To": "Belongs To", "Belongs To": "Belongs To",
"Belongs To Company": "Belongs To Company", "Belongs To Company": "Belongs To Company",
"Bento heating": "Bento heating",
"Bento heating remaining time": "Bento heating remaining time",
"Bento not detected in microwave": "Bento not detected in microwave",
"Bento purchase terminated": "Bento purchase terminated",
"Bill Acceptor": "Bill Acceptor", "Bill Acceptor": "Bill Acceptor",
"Bracelet drop not detected": "Bracelet drop not detected",
"Bracelet scan failed": "Bracelet scan failed",
"Branch": "Branch", "Branch": "Branch",
"Branch Warehouses": "Branch Warehouses", "Branch Warehouses": "Branch Warehouses",
"Business Type": "Business Type", "Business Type": "Business Type",
@ -257,11 +263,11 @@
"Cash Module Function": "Cash Module Function", "Cash Module Function": "Cash Module Function",
"Category": "Category", "Category": "Category",
"Category Management": "Category Management", "Category Management": "Category Management",
"Category not found: :category": "Category not found: :category",
"Category Name": "Category Name", "Category Name": "Category Name",
"Category Name (en)": "Category Name (en)", "Category Name (en)": "Category Name (en)",
"Category Name (ja)": "Category Name (ja)", "Category Name (ja)": "Category Name (ja)",
"Category Name (zh_TW)": "Category Name (zh_TW)", "Category Name (zh_TW)": "Category Name (zh_TW)",
"Category not found: :category": "Category not found: :category",
"Change": "Change", "Change": "Change",
"Change Note": "Change Note", "Change Note": "Change Note",
"Change Stock": "Change Stock", "Change Stock": "Change Stock",
@ -394,6 +400,8 @@
"Critical": "Critical", "Critical": "Critical",
"Critical failures requiring immediate hands-on attention.": "Critical failures requiring immediate hands-on attention.", "Critical failures requiring immediate hands-on attention.": "Critical failures requiring immediate hands-on attention.",
"Cross-Company / Headquarter Global Stats": "Cross-Company / Headquarter Global Stats", "Cross-Company / Headquarter Global Stats": "Cross-Company / Headquarter Global Stats",
"Cup drop not detected": "Cup drop not detected",
"Cup dropper failure": "Cup dropper failure",
"Current": "Current", "Current": "Current",
"Current Password": "Current Password", "Current Password": "Current Password",
"Current Status": "Current Status", "Current Status": "Current Status",
@ -569,12 +577,17 @@
"Effective Alert Types": "Effective Alert Types", "Effective Alert Types": "Effective Alert Types",
"Electronic Invoice": "Electronic Invoice", "Electronic Invoice": "Electronic Invoice",
"Electronic Invoices": "Electronic Invoices", "Electronic Invoices": "Electronic Invoices",
"Elevator belt self-check error": "Elevator belt self-check error",
"Elevator descending": "Elevator descending", "Elevator descending": "Elevator descending",
"Elevator descent error": "Elevator descent error", "Elevator descent error": "Elevator descent error",
"Elevator enter microwave error": "Elevator enter microwave error",
"Elevator exit microwave error": "Elevator exit microwave error",
"Elevator failure": "Elevator failure", "Elevator failure": "Elevator failure",
"Elevator rise error": "Elevator rise error", "Elevator rise error": "Elevator rise error",
"Elevator rising": "Elevator rising", "Elevator rising": "Elevator rising",
"Elevator sensor error": "Elevator sensor error", "Elevator sensor error": "Elevator sensor error",
"Elevator support rod push error": "Elevator support rod push error",
"Elevator support rod return error": "Elevator support rod return error",
"Email": "Email", "Email": "Email",
"Emblem / Label": "Emblem / Label", "Emblem / Label": "Emblem / Label",
"Employee": "Employee", "Employee": "Employee",
@ -814,8 +827,8 @@
"Import Products": "Import Products", "Import Products": "Import Products",
"Import Staff Cards": "Import Staff Cards", "Import Staff Cards": "Import Staff Cards",
"Import failed": "Import failed", "Import failed": "Import failed",
"Imported with errors. Please check the console.": "Imported with errors. Please check the console.",
"Important Notice": "Important Notice", "Important Notice": "Important Notice",
"Imported with errors. Please check the console.": "Imported with errors. Please check the console.",
"In Stock": "In Stock", "In Stock": "In Stock",
"Inactive": "Inactive", "Inactive": "Inactive",
"Includes Credit Card/Mobile Pay": "Includes Credit Card/Mobile Pay", "Includes Credit Card/Mobile Pay": "Includes Credit Card/Mobile Pay",
@ -890,6 +903,7 @@
"LinePay Payment": "LinePay Payment", "LinePay Payment": "LinePay Payment",
"Link": "Link", "Link": "Link",
"Link Copied": "Link Copied", "Link Copied": "Link Copied",
"Liquid dispense paused": "Liquid dispense paused",
"Live Fleet Updates": "Live Fleet Updates", "Live Fleet Updates": "Live Fleet Updates",
"Loading Cabinet...": "Loading Cabinet...", "Loading Cabinet...": "Loading Cabinet...",
"Loading Data": "Loading Data", "Loading Data": "Loading Data",
@ -1070,8 +1084,19 @@
"Message": "Message", "Message": "Message",
"Message Content": "Message Content", "Message Content": "Message Content",
"Message Display": "Message Display", "Message Display": "Message Display",
"Microwave delivery door close error": "Microwave delivery door close error",
"Microwave delivery door closing": "Microwave delivery door closing",
"Microwave delivery door open error": "Microwave delivery door open error",
"Microwave delivery door opening": "Microwave delivery door opening",
"Microwave door error": "Microwave door error", "Microwave door error": "Microwave door error",
"Microwave door opened": "Microwave door opened", "Microwave door opened": "Microwave door opened",
"Microwave pickup door close error": "Microwave pickup door close error",
"Microwave pickup door closing": "Microwave pickup door closing",
"Microwave pickup door open error": "Microwave pickup door open error",
"Microwave pickup door opening": "Microwave pickup door opening",
"Microwave push rod push error": "Microwave push rod push error",
"Microwave push rod retract error": "Microwave push rod retract error",
"Milk dispense timeout": "Milk dispense timeout",
"Min 8 characters": "Min 8 characters", "Min 8 characters": "Min 8 characters",
"Model": "Model", "Model": "Model",
"Model Default": "Model Default", "Model Default": "Model Default",
@ -1087,6 +1112,8 @@
"Monthly Cumulative Revenue": "Monthly Cumulative Revenue", "Monthly Cumulative Revenue": "Monthly Cumulative Revenue",
"Monthly Transactions": "Monthly Transactions", "Monthly Transactions": "Monthly Transactions",
"Monthly cumulative revenue overview": "Monthly cumulative revenue overview", "Monthly cumulative revenue overview": "Monthly cumulative revenue overview",
"Motor not found": "Motor not found",
"Motor not found (0406)": "Motor not found (0406)",
"Motor not stopped": "Motor not stopped", "Motor not stopped": "Motor not stopped",
"Movement History": "Movement History", "Movement History": "Movement History",
"Movement Logs": "Movement Logs", "Movement Logs": "Movement Logs",
@ -1351,18 +1378,21 @@
"Picked up": "Picked up", "Picked up": "Picked up",
"Picked up Time": "Picked up Time", "Picked up Time": "Picked up Time",
"Pickup Code": "Pickup Code", "Pickup Code": "Pickup Code",
"Pickup Recipient Info": "Pickup Recipient Info",
"Pickup Recipient (Prescription Slip)": "Pickup Recipient (Prescription Slip)",
"Pickup Code (8 Digits)": "Pickup Code (8 Digits)", "Pickup Code (8 Digits)": "Pickup Code (8 Digits)",
"Pickup Codes": "Pickup Codes", "Pickup Codes": "Pickup Codes",
"Pickup Recipient (Prescription Slip)": "Pickup Recipient (Prescription Slip)",
"Pickup Recipient Info": "Pickup Recipient Info",
"Pickup Ticket": "Pickup Ticket", "Pickup Ticket": "Pickup Ticket",
"Pickup Voucher": "Pickup Voucher", "Pickup Voucher": "Pickup Voucher",
"Pickup code cancelled.": "Pickup code cancelled.", "Pickup code cancelled.": "Pickup code cancelled.",
"Pickup code generated: :code": "Pickup code generated: :code", "Pickup code generated: :code": "Pickup code generated: :code",
"Pickup code updated.": "Pickup code updated.", "Pickup code updated.": "Pickup code updated.",
"Pickup door closed": "Pickup door closed", "Pickup door closed": "Pickup door closed",
"Pickup door closed (cart mode)": "Pickup door closed (cart mode)",
"Pickup door error": "Pickup door error", "Pickup door error": "Pickup door error",
"Pickup door not closed": "Pickup door not closed", "Pickup door not closed": "Pickup door not closed",
"Pickup door opened (cart mode)": "Pickup door opened (cart mode)",
"Pickup door unlocked": "Pickup door unlocked",
"Platform Operator": "Platform Operator", "Platform Operator": "Platform Operator",
"Playback Order": "Playback Order", "Playback Order": "Playback Order",
"Please Select Slot first": "Please Select Slot first", "Please Select Slot first": "Please Select Slot first",
@ -1408,6 +1438,7 @@
"Print Notice": "Print Notice", "Print Notice": "Print Notice",
"Print Order": "Print Order", "Print Order": "Print Order",
"Print Time": "Print Time", "Print Time": "Print Time",
"Processing...": "Processing...",
"Product": "Product", "Product": "Product",
"Product / Slot": "Product / Slot", "Product / Slot": "Product / Slot",
"Product / Stock": "Product / Stock", "Product / Stock": "Product / Stock",
@ -1447,10 +1478,12 @@
"Publish Time": "Publish Time", "Publish Time": "Publish Time",
"Purchase Audit": "Purchase Audit", "Purchase Audit": "Purchase Audit",
"Purchase Finished": "Purchase Finished", "Purchase Finished": "Purchase Finished",
"Purchase successful": "Purchase successful",
"Purchases": "Purchases", "Purchases": "Purchases",
"Purchasing": "Purchasing", "Purchasing": "Purchasing",
"Purpose": "Purpose", "Purpose": "Purpose",
"Push Status": "Push Status", "Push Status": "Push Status",
"Pushing bento into microwave": "Pushing bento into microwave",
"QR": "QR", "QR": "QR",
"QR CODE": "QR CODE", "QR CODE": "QR CODE",
"QR Code": "QR Code", "QR Code": "QR Code",
@ -1753,7 +1786,6 @@
"Standby Ad": "Standby Ad", "Standby Ad": "Standby Ad",
"Start Date": "Start Date", "Start Date": "Start Date",
"Start Delivery": "Start Delivery", "Start Delivery": "Start Delivery",
"Processing...": "Processing...",
"Start Import": "Start Import", "Start Import": "Start Import",
"Start Time": "Start Time", "Start Time": "Start Time",
"Statistics": "Statistics", "Statistics": "Statistics",

View File

@ -5,6 +5,7 @@
"30s": "30秒", "30s": "30秒",
"60 Seconds": "60秒", "60 Seconds": "60秒",
"60s": "60秒", "60s": "60秒",
":count products imported successfully": ":count products imported successfully",
":count staff cards imported successfully": ":count 枚のスタッフカードが正常にインポートされました", ":count staff cards imported successfully": ":count 枚のスタッフカードが正常にインポートされました",
"A new verification link has been sent to your email address.": "新しい確認リンクがメールアドレスに送信されました。", "A new verification link has been sent to your email address.": "新しい確認リンクがメールアドレスに送信されました。",
"A sync command was recently sent. Please wait 1 minute.": "先ほど同期コマンドが送信されました。1分間お待ちください。", "A sync command was recently sent. Please wait 1 minute.": "先ほど同期コマンドが送信されました。1分間お待ちください。",
@ -218,7 +219,13 @@
"Before Qty": "変動前数量", "Before Qty": "変動前数量",
"Belongs To": "会社名", "Belongs To": "会社名",
"Belongs To Company": "所属会社", "Belongs To Company": "所属会社",
"Bento heating": "お弁当加熱中",
"Bento heating remaining time": "お弁当加熱残り時間",
"Bento not detected in microwave": "電子レンジ内お弁当未検出",
"Bento purchase terminated": "お弁当購入中止",
"Bill Acceptor": "紙幣識別機", "Bill Acceptor": "紙幣識別機",
"Bracelet drop not detected": "ブレスレット落下未検出",
"Bracelet scan failed": "ブレスレットスキャン失敗",
"Branch": "分庫", "Branch": "分庫",
"Branch Warehouses": "分庫数", "Branch Warehouses": "分庫数",
"Business Type": "業務タイプ", "Business Type": "業務タイプ",
@ -260,6 +267,7 @@
"Category Name (en)": "カテゴリ名 (英語)", "Category Name (en)": "カテゴリ名 (英語)",
"Category Name (ja)": "カテゴリ名 (日本語)", "Category Name (ja)": "カテゴリ名 (日本語)",
"Category Name (zh_TW)": "カテゴリ名 (繁体字中国語)", "Category Name (zh_TW)": "カテゴリ名 (繁体字中国語)",
"Category not found: :category": "Category not found: :category",
"Change": "変更", "Change": "変更",
"Change Note": "変動備考", "Change Note": "変動備考",
"Change Stock": "お釣り在庫", "Change Stock": "お釣り在庫",
@ -392,6 +400,8 @@
"Critical": "深刻", "Critical": "深刻",
"Critical failures requiring immediate hands-on attention.": "即座に対処が必要な重大な障害。", "Critical failures requiring immediate hands-on attention.": "即座に対処が必要な重大な障害。",
"Cross-Company / Headquarter Global Stats": "複数会社間 / 本部グローバル統計", "Cross-Company / Headquarter Global Stats": "複数会社間 / 本部グローバル統計",
"Cup drop not detected": "カップ落下未検出",
"Cup dropper failure": "カップディスペンサー落下エラー",
"Current": "現在", "Current": "現在",
"Current Password": "現在のパスワード", "Current Password": "現在のパスワード",
"Current Status": "現在のステータス", "Current Status": "現在のステータス",
@ -512,9 +522,9 @@
"Dispense error (0409)": "出庫プロセス異常 (0409)", "Dispense error (0409)": "出庫プロセス異常 (0409)",
"Dispense error (040A)": "出庫プロセス異常 (040A)", "Dispense error (040A)": "出庫プロセス異常 (040A)",
"Dispense stopped": "出庫停止", "Dispense stopped": "出庫停止",
"Dispense successful": "出庫成功", "Dispense successful": "搬送成功",
"Dispensing": "出庫", "Dispensing": "出庫",
"Dispensing in progress": "出庫作業中", "Dispensing in progress": "搬送中",
"Display Material Code": "資材コードを表示", "Display Material Code": "資材コードを表示",
"Displaying": "表示中", "Displaying": "表示中",
"Door Closed": "扉が閉まりました", "Door Closed": "扉が閉まりました",
@ -567,12 +577,17 @@
"Effective Alert Types": "有効なアラート種別", "Effective Alert Types": "有効なアラート種別",
"Electronic Invoice": "電子領収書", "Electronic Invoice": "電子領収書",
"Electronic Invoices": "電子領収書", "Electronic Invoices": "電子領収書",
"Elevator descending": "昇降プラットフォーム下降中", "Elevator belt self-check error": "エレベーターベルト自己診断エラー",
"Elevator descent error": "昇降プラットフォーム下降異常", "Elevator descending": "エレベーター下降中",
"Elevator failure": "昇降システム故障", "Elevator descent error": "エレベーター下降エラー",
"Elevator rise error": "昇降プラットフォーム上昇異常", "Elevator enter microwave error": "エレベーター電子レンジ進入エラー",
"Elevator rising": "昇降プラットフォーム上昇中", "Elevator exit microwave error": "エレベーター電子レンジ退出エラー",
"Elevator sensor error": "昇降箱センサー異常", "Elevator failure": "エレベーター故障",
"Elevator rise error": "エレベーター上昇エラー",
"Elevator rising": "エレベーター上昇中",
"Elevator sensor error": "エレベーターセンサーエラー",
"Elevator support rod push error": "エレベーター支柱押し出しエラー",
"Elevator support rod return error": "エレベーター支柱復帰エラー",
"Email": "メールアドレス", "Email": "メールアドレス",
"Emblem / Label": "エンブレム / ラベル", "Emblem / Label": "エンブレム / ラベル",
"Employee": "従業員", "Employee": "従業員",
@ -809,9 +824,11 @@
"Image Downloaded": "画像をダウンロードしました", "Image Downloaded": "画像をダウンロードしました",
"Immediate": "即時", "Immediate": "即時",
"Import Excel": "Excel インポート", "Import Excel": "Excel インポート",
"Import Products": "Import Products",
"Import Staff Cards": "スタッフカードのインポート", "Import Staff Cards": "スタッフカードのインポート",
"Import failed": "インポート失敗", "Import failed": "インポート失敗",
"Important Notice": "Important Notice", "Important Notice": "Important Notice",
"Imported with errors. Please check the console.": "Imported with errors. Please check the console.",
"In Stock": "現在庫", "In Stock": "現在庫",
"Inactive": "停止中", "Inactive": "停止中",
"Includes Credit Card/Mobile Pay": "クレジット/QR決済を含む", "Includes Credit Card/Mobile Pay": "クレジット/QR決済を含む",
@ -886,6 +903,7 @@
"LinePay Payment": "LinePay決済", "LinePay Payment": "LinePay決済",
"Link": "リンク", "Link": "リンク",
"Link Copied": "リンクをコピーしました", "Link Copied": "リンクをコピーしました",
"Liquid dispense paused": "液体抽出一時停止",
"Live Fleet Updates": "リアルタイム更新", "Live Fleet Updates": "リアルタイム更新",
"Loading Cabinet...": "機器キャビネットを読み込み中...", "Loading Cabinet...": "機器キャビネットを読み込み中...",
"Loading Data": "データを読み込み中", "Loading Data": "データを読み込み中",
@ -975,7 +993,7 @@
"Machine model deleted successfully.": "機器モデルが正常に削除されました。", "Machine model deleted successfully.": "機器モデルが正常に削除されました。",
"Machine model saved successfully.": "機器モデルが正常に追加されました。", "Machine model saved successfully.": "機器モデルが正常に追加されました。",
"Machine model updated successfully.": "機器モデルが正常に更新されました。", "Machine model updated successfully.": "機器モデルが正常に更新されました。",
"Machine normal": "機器システム正常", "Machine normal": "デバイス正常",
"Machine not found": "機器が見つかりません", "Machine not found": "機器が見つかりません",
"Machine permissions updated successfully.": "機器権限が正常に更新されました。", "Machine permissions updated successfully.": "機器権限が正常に更新されました。",
"Machine settings updated successfully.": "機器設定が正常に更新されました。", "Machine settings updated successfully.": "機器設定が正常に更新されました。",
@ -1066,8 +1084,19 @@
"Message": "メッセージ", "Message": "メッセージ",
"Message Content": "メッセージ内容", "Message Content": "メッセージ内容",
"Message Display": "メッセージ表示", "Message Display": "メッセージ表示",
"Microwave delivery door close error": "電子レンジ搬入口扉閉鎖エラー",
"Microwave delivery door closing": "電子レンジ搬入口扉閉鎖中",
"Microwave delivery door open error": "電子レンジ搬入口扉開放エラー",
"Microwave delivery door opening": "電子レンジ搬入口扉開放中",
"Microwave door error": "電子レンジ扉エラー", "Microwave door error": "電子レンジ扉エラー",
"Microwave door opened": "電子レンジ扉開放", "Microwave door opened": "電子レンジ扉開放",
"Microwave pickup door close error": "電子レンジ取り出し口扉閉鎖エラー",
"Microwave pickup door closing": "電子レンジ取り出し口扉閉鎖中",
"Microwave pickup door open error": "電子レンジ取り出し口扉開放エラー",
"Microwave pickup door opening": "電子レンジ取り出し口扉開放中",
"Microwave push rod push error": "電子レンジ内プッシャー押し出しエラー",
"Microwave push rod retract error": "電子レンジ内プッシャー回収エラー",
"Milk dispense timeout": "牛乳抽出タイムアウト",
"Min 8 characters": "最低 8文字", "Min 8 characters": "最低 8文字",
"Model": "機器モデル", "Model": "機器モデル",
"Model Default": "モデルデフォルト", "Model Default": "モデルデフォルト",
@ -1083,7 +1112,9 @@
"Monthly Cumulative Revenue": "今月の累計収益", "Monthly Cumulative Revenue": "今月の累計収益",
"Monthly Transactions": "今月の取引額", "Monthly Transactions": "今月の取引額",
"Monthly cumulative revenue overview": "今月の累計収益の概要", "Monthly cumulative revenue overview": "今月の累計収益の概要",
"Motor not stopped": "モーターが停止していません", "Motor not found": "モーター未検出",
"Motor not found (0406)": "モーター未検出 (0406)",
"Motor not stopped": "モーター異常停止",
"Movement History": "変動履歴", "Movement History": "変動履歴",
"Movement Logs": "変動ログ", "Movement Logs": "変動ログ",
"Multilingual Names": "多言語名", "Multilingual Names": "多言語名",
@ -1225,6 +1256,7 @@
"Online Machines": "オンライン機器", "Online Machines": "オンライン機器",
"Online Only": "Online Only", "Online Only": "Online Only",
"Online Status": "オンラインステータス", "Online Status": "オンラインステータス",
"Only .xlsx files are supported (Max 5MB)": "Only .xlsx files are supported (Max 5MB)",
"Only .xlsx, .xls, .csv files are supported (Max 5MB)": ".xlsx, .xls, .csv ファイルのみサポートされています (最大 5MB)", "Only .xlsx, .xls, .csv files are supported (Max 5MB)": ".xlsx, .xls, .csv ファイルのみサポートされています (最大 5MB)",
"Only machines under the same company can be cloned for security.": "セキュリティのため、同じ会社の機器設定のみコピーできます。", "Only machines under the same company can be cloned for security.": "セキュリティのため、同じ会社の機器設定のみコピーできます。",
"Only system roles can be assigned to platform administrative accounts.": "プラットフォーム管理アカウントにはシステムロールのみを割り当てることができます。", "Only system roles can be assigned to platform administrative accounts.": "プラットフォーム管理アカウントにはシステムロールのみを割り当てることができます。",
@ -1346,18 +1378,21 @@
"Picked up": "受取済み", "Picked up": "受取済み",
"Picked up Time": "受取時間", "Picked up Time": "受取時間",
"Pickup Code": "受取コード", "Pickup Code": "受取コード",
"Pickup Recipient Info": "受取者情報",
"Pickup Recipient (Prescription Slip)": "受取者(処方箋)",
"Pickup Code (8 Digits)": "受取コード (8桁)", "Pickup Code (8 Digits)": "受取コード (8桁)",
"Pickup Codes": "受取コード", "Pickup Codes": "受取コード",
"Pickup Recipient (Prescription Slip)": "受取者(処方箋)",
"Pickup Recipient Info": "受取者情報",
"Pickup Ticket": "商品受取チケット", "Pickup Ticket": "商品受取チケット",
"Pickup Voucher": "受取票", "Pickup Voucher": "受取票",
"Pickup code cancelled.": "受取コードがキャンセルされました。", "Pickup code cancelled.": "受取コードがキャンセルされました。",
"Pickup code generated: :code": "受取コードが生成されました: :code", "Pickup code generated: :code": "受取コードが生成されました: :code",
"Pickup code updated.": "受取コードが更新されました。", "Pickup code updated.": "受取コードが更新されました。",
"Pickup door closed": "受取扉が閉まりました", "Pickup door closed": "受取扉が閉まりました",
"Pickup door closed (cart mode)": "取り出し口扉閉鎖成功",
"Pickup door error": "受取扉エラー", "Pickup door error": "受取扉エラー",
"Pickup door not closed": "受取扉が閉まっていません", "Pickup door not closed": "取り出し口扉未閉鎖",
"Pickup door opened (cart mode)": "取り出し口扉開放成功",
"Pickup door unlocked": "取り出し口扉開錠",
"Platform Operator": "プラットフォーム事業者", "Platform Operator": "プラットフォーム事業者",
"Playback Order": "再生順序", "Playback Order": "再生順序",
"Please Select Slot first": "先にスロットを選択してください", "Please Select Slot first": "先にスロットを選択してください",
@ -1403,6 +1438,7 @@
"Print Notice": "印刷時の注意", "Print Notice": "印刷時の注意",
"Print Order": "伝票印刷", "Print Order": "伝票印刷",
"Print Time": "印刷日時", "Print Time": "印刷日時",
"Processing...": "Processing...",
"Product": "商品", "Product": "商品",
"Product / Slot": "商品 / スロット", "Product / Slot": "商品 / スロット",
"Product / Stock": "商品 / 在庫", "Product / Stock": "商品 / 在庫",
@ -1424,7 +1460,7 @@
"Product Status": "商品ステータス", "Product Status": "商品ステータス",
"Product created successfully": "商品が正常に作成されました", "Product created successfully": "商品が正常に作成されました",
"Product deleted successfully": "商品が正常に削除されました", "Product deleted successfully": "商品が正常に削除されました",
"Product empty": "スロットが空です (PDT_EMPTY)", "Product empty": "商品売り切れ",
"Product physical shipment count": "商品の実出荷数", "Product physical shipment count": "商品の実出荷数",
"Product status updated to :status": "商品のステータスが :status に更新されました", "Product status updated to :status": "商品のステータスが :status に更新されました",
"Product updated successfully": "商品が正常に更新されました", "Product updated successfully": "商品が正常に更新されました",
@ -1442,10 +1478,12 @@
"Publish Time": "公開時間", "Publish Time": "公開時間",
"Purchase Audit": "購入監査", "Purchase Audit": "購入監査",
"Purchase Finished": "購入終了", "Purchase Finished": "購入終了",
"Purchase successful": "購入成功",
"Purchases": "購入伝票", "Purchases": "購入伝票",
"Purchasing": "購入中", "Purchasing": "購入中",
"Purpose": "用途", "Purpose": "用途",
"Push Status": "アラート状態", "Push Status": "アラート状態",
"Pushing bento into microwave": "お弁当を電子レンジに投入中",
"QR": "QR", "QR": "QR",
"QR CODE": "QRコード", "QR CODE": "QRコード",
"QR Code": "QRコード", "QR Code": "QRコード",
@ -1702,16 +1740,16 @@
"Slot No": "スロット番号", "Slot No": "スロット番号",
"Slot Status": "スロット期限ステータス", "Slot Status": "スロット期限ステータス",
"Slot Test": "スロットテスト", "Slot Test": "スロットテスト",
"Slot empty": "スロットが空です (SLOT_EMPTY)", "Slot empty": "チャンネル在庫切れ",
"Slot jammed": "スロット詰まり (K-PDT)", "Slot jammed": "商品詰まり",
"Slot motor error (0207)": "スロットモーター異常 (0207)", "Slot motor error (0207)": "チャンネルモーターエラー (0207)",
"Slot motor error (0208)": "スロットモーター異常 (0208)", "Slot motor error (0208)": "チャンネルモーターエラー (0208)",
"Slot motor error (0209)": "スロットモーター異常 (0209)", "Slot motor error (0209)": "チャンネルモーターエラー (0209)",
"Slot normal": "スロット正常", "Slot normal": "チャンネル正常",
"Slot not closed": "スロットが閉まっていません", "Slot not closed": "チャンネル未閉鎖",
"Slot not found": "指定されたスロットが見つかりません", "Slot not found": "指定されたスロットが見つかりません",
"Slot report synchronized success": "スロットレポートの同期に成功しました", "Slot report synchronized success": "スロットレポートの同期に成功しました",
"Slot sensor blocked": "スロットセンサーが塞がれています", "Slot sensor blocked": "チャンネルセンサー遮蔽",
"Slot updated successfully.": "スロットが正常に更新されました。", "Slot updated successfully.": "スロットが正常に更新されました。",
"Slots": "スロット数", "Slots": "スロット数",
"Slots need replenishment": "補充が必要なスロット", "Slots need replenishment": "補充が必要なスロット",

View File

@ -5,8 +5,8 @@
"30s": "30秒", "30s": "30秒",
"60 Seconds": "60 秒", "60 Seconds": "60 秒",
"60s": "60秒", "60s": "60秒",
":count staff cards imported successfully": "成功匯入 :count 張員工識別卡",
":count products imported successfully": "成功匯入 :count 筆商品", ":count products imported successfully": "成功匯入 :count 筆商品",
":count staff cards imported successfully": "成功匯入 :count 張員工識別卡",
"A new verification link has been sent to your email address.": "已將新的驗證連結發送至您的電子郵件地址。", "A new verification link has been sent to your email address.": "已將新的驗證連結發送至您的電子郵件地址。",
"A sync command was recently sent. Please wait 1 minute.": "近期已發送過同步指令,請等待 1 分鐘後再試", "A sync command was recently sent. Please wait 1 minute.": "近期已發送過同步指令,請等待 1 分鐘後再試",
"AI Prediction": "AI智能預測", "AI Prediction": "AI智能預測",
@ -219,7 +219,13 @@
"Before Qty": "異動前數量", "Before Qty": "異動前數量",
"Belongs To": "公司名稱", "Belongs To": "公司名稱",
"Belongs To Company": "公司名稱", "Belongs To Company": "公司名稱",
"Bento heating": "便當正在加熱",
"Bento heating remaining time": "便當加熱剩餘時間",
"Bento not detected in microwave": "微波爐內沒檢測到便當",
"Bento purchase terminated": "便當購買終止",
"Bill Acceptor": "紙鈔機", "Bill Acceptor": "紙鈔機",
"Bracelet drop not detected": "沒檢測到手環掉入取貨斗",
"Bracelet scan failed": "沒掃碼到手環",
"Branch": "分倉", "Branch": "分倉",
"Branch Warehouses": "分倉數量", "Branch Warehouses": "分倉數量",
"Business Type": "業務類型", "Business Type": "業務類型",
@ -257,11 +263,11 @@
"Cash Module Function": "現金模組功能", "Cash Module Function": "現金模組功能",
"Category": "類別", "Category": "類別",
"Category Management": "分類管理", "Category Management": "分類管理",
"Category not found: :category": "找不到商品分類::category",
"Category Name": "分類名稱", "Category Name": "分類名稱",
"Category Name (en)": "分類名稱 (英文)", "Category Name (en)": "分類名稱 (英文)",
"Category Name (ja)": "分類名稱 (日文)", "Category Name (ja)": "分類名稱 (日文)",
"Category Name (zh_TW)": "分類名稱 (繁體中文)", "Category Name (zh_TW)": "分類名稱 (繁體中文)",
"Category not found: :category": "找不到商品分類::category",
"Change": "更換", "Change": "更換",
"Change Note": "異動備註", "Change Note": "異動備註",
"Change Stock": "零錢庫存", "Change Stock": "零錢庫存",
@ -394,6 +400,8 @@
"Critical": "嚴重", "Critical": "嚴重",
"Critical failures requiring immediate hands-on attention.": "需要立即處理的關鍵故障。", "Critical failures requiring immediate hands-on attention.": "需要立即處理的關鍵故障。",
"Cross-Company / Headquarter Global Stats": "跨公司 / 總部全域統計", "Cross-Company / Headquarter Global Stats": "跨公司 / 總部全域統計",
"Cup drop not detected": "未檢測到杯子掉落",
"Cup dropper failure": "漏杯器漏杯失敗",
"Current": "當前", "Current": "當前",
"Current Password": "當前密碼", "Current Password": "當前密碼",
"Current Status": "當前狀態", "Current Status": "當前狀態",
@ -569,12 +577,17 @@
"Effective Alert Types": "目前生效的告警類型", "Effective Alert Types": "目前生效的告警類型",
"Electronic Invoice": "電子發票", "Electronic Invoice": "電子發票",
"Electronic Invoices": "電子發票", "Electronic Invoices": "電子發票",
"Elevator descending": "升降平台下降中", "Elevator belt self-check error": "昇降機皮帶自檢錯誤",
"Elevator descent error": "升降平台下降異常", "Elevator descending": "昇降機正在下降",
"Elevator failure": "升降系統故障", "Elevator descent error": "昇降機下降錯誤",
"Elevator rise error": "升降平台上升異常", "Elevator enter microwave error": "昇降台進微波爐錯誤",
"Elevator rising": "升降平台上升中", "Elevator exit microwave error": "昇降台出微波爐錯誤",
"Elevator sensor error": "升降箱感測異常", "Elevator failure": "昇降機故障",
"Elevator rise error": "昇降機上升錯誤",
"Elevator rising": "昇降機正在上升",
"Elevator sensor error": "昇降機感測器錯誤",
"Elevator support rod push error": "昇降台撐桿推出錯誤",
"Elevator support rod return error": "昇降台撐桿回位錯誤",
"Email": "電子郵件", "Email": "電子郵件",
"Emblem / Label": "標章 / 標籤", "Emblem / Label": "標章 / 標籤",
"Employee": "員工", "Employee": "員工",
@ -794,7 +807,7 @@
"Helper": "小幫手", "Helper": "小幫手",
"Home Page": "主頁面", "Home Page": "主頁面",
"Hopper empty": "料斗箱空", "Hopper empty": "料斗箱空",
"Hopper empty (0212)": "斗空 (0212)", "Hopper empty (0212)": "漏斗缺料 (0212)",
"Hopper error (0424)": "料斗箱異常 (0424)", "Hopper error (0424)": "料斗箱異常 (0424)",
"Hopper heating timeout": "料斗箱加熱逾時", "Hopper heating timeout": "料斗箱加熱逾時",
"Hopper overheated": "料斗箱過熱", "Hopper overheated": "料斗箱過熱",
@ -814,8 +827,8 @@
"Import Products": "匯入商品", "Import Products": "匯入商品",
"Import Staff Cards": "匯入員工識別卡", "Import Staff Cards": "匯入員工識別卡",
"Import failed": "匯入失敗", "Import failed": "匯入失敗",
"Imported with errors. Please check the console.": "部分資料匯入失敗,請查看瀏覽器主控台。",
"Important Notice": "重要通知", "Important Notice": "重要通知",
"Imported with errors. Please check the console.": "部分資料匯入失敗,請查看瀏覽器主控台。",
"In Stock": "當前庫存", "In Stock": "當前庫存",
"Inactive": "已停用", "Inactive": "已停用",
"Includes Credit Card/Mobile Pay": "含信用卡/行動支付", "Includes Credit Card/Mobile Pay": "含信用卡/行動支付",
@ -890,6 +903,7 @@
"LinePay Payment": "LinePay 支付", "LinePay Payment": "LinePay 支付",
"Link": "連結", "Link": "連結",
"Link Copied": "連結已複製", "Link Copied": "連結已複製",
"Liquid dispense paused": "暫停出液",
"Live Fleet Updates": "即時數據更新", "Live Fleet Updates": "即時數據更新",
"Loading Cabinet...": "正在載入機台貨盤...", "Loading Cabinet...": "正在載入機台貨盤...",
"Loading Data": "載入資料中", "Loading Data": "載入資料中",
@ -979,7 +993,7 @@
"Machine model deleted successfully.": "機台型號已成功刪除。", "Machine model deleted successfully.": "機台型號已成功刪除。",
"Machine model saved successfully.": "機台型號已成功新增。", "Machine model saved successfully.": "機台型號已成功新增。",
"Machine model updated successfully.": "機台型號已成功更新。", "Machine model updated successfully.": "機台型號已成功更新。",
"Machine normal": "機台系統正常", "Machine normal": "機台正常",
"Machine not found": "找不到機台", "Machine not found": "找不到機台",
"Machine permissions updated successfully.": "機台權限已成功更新。", "Machine permissions updated successfully.": "機台權限已成功更新。",
"Machine settings updated successfully.": "機台設定已成功更新。", "Machine settings updated successfully.": "機台設定已成功更新。",
@ -1070,8 +1084,19 @@
"Message": "訊息", "Message": "訊息",
"Message Content": "日誌內容", "Message Content": "日誌內容",
"Message Display": "訊息顯示", "Message Display": "訊息顯示",
"Microwave delivery door close error": "微波爐進貨口門關閉錯誤",
"Microwave delivery door closing": "正在關閉微波爐進貨口門",
"Microwave delivery door open error": "微波爐進貨口門打開錯誤",
"Microwave delivery door opening": "正在打開微波爐進貨口門",
"Microwave door error": "微波爐門異常", "Microwave door error": "微波爐門異常",
"Microwave door opened": "微波爐門開啟", "Microwave door opened": "微波爐門開啟",
"Microwave pickup door close error": "微波爐取貨口門關閉錯誤",
"Microwave pickup door closing": "正在關閉微波爐取貨口門",
"Microwave pickup door open error": "微波爐取貨口門打開錯誤",
"Microwave pickup door opening": "正在打開微波爐取貨口門",
"Microwave push rod push error": "微波爐內推桿推出錯誤",
"Microwave push rod retract error": "微波爐內推桿收回錯誤",
"Milk dispense timeout": "按鍵出奶超時",
"Min 8 characters": "至少 8 個字元", "Min 8 characters": "至少 8 個字元",
"Model": "機台型號", "Model": "機台型號",
"Model Default": "型號預設", "Model Default": "型號預設",
@ -1087,7 +1112,9 @@
"Monthly Cumulative Revenue": "本月累計營收", "Monthly Cumulative Revenue": "本月累計營收",
"Monthly Transactions": "本月交易統計", "Monthly Transactions": "本月交易統計",
"Monthly cumulative revenue overview": "本月累計營收概況", "Monthly cumulative revenue overview": "本月累計營收概況",
"Motor not stopped": "電機未停止", "Motor not found": "電機不存在",
"Motor not found (0406)": "電機不存在 (0406)",
"Motor not stopped": "電機未正常停止",
"Movement History": "異動紀錄", "Movement History": "異動紀錄",
"Movement Logs": "異動紀錄", "Movement Logs": "異動紀錄",
"Multilingual Names": "多語系名稱", "Multilingual Names": "多語系名稱",
@ -1351,18 +1378,21 @@
"Picked up": "領取", "Picked up": "領取",
"Picked up Time": "領取時間", "Picked up Time": "領取時間",
"Pickup Code": "取貨碼", "Pickup Code": "取貨碼",
"Pickup Recipient Info": "取物人資訊",
"Pickup Recipient (Prescription Slip)": "取物人(領藥單)",
"Pickup Code (8 Digits)": "取貨碼 (8 位數)", "Pickup Code (8 Digits)": "取貨碼 (8 位數)",
"Pickup Codes": "取貨碼", "Pickup Codes": "取貨碼",
"Pickup Recipient (Prescription Slip)": "取物人(領藥單)",
"Pickup Recipient Info": "取物人資訊",
"Pickup Ticket": "商品領取券", "Pickup Ticket": "商品領取券",
"Pickup Voucher": "取物單", "Pickup Voucher": "取物單",
"Pickup code cancelled.": "取貨碼已取消", "Pickup code cancelled.": "取貨碼已取消",
"Pickup code generated: :code": "已生成取貨碼::code", "Pickup code generated: :code": "已生成取貨碼::code",
"Pickup code updated.": "取貨碼已更新", "Pickup code updated.": "取貨碼已更新",
"Pickup door closed": "取貨門已關閉", "Pickup door closed": "取貨門已關閉",
"Pickup door closed (cart mode)": "取貨口門關閉成功",
"Pickup door error": "取貨門運作異常", "Pickup door error": "取貨門運作異常",
"Pickup door not closed": "取貨門未關閉", "Pickup door not closed": "取貨門未關閉",
"Pickup door opened (cart mode)": "取貨口門打開成功",
"Pickup door unlocked": "取貨口門開鎖",
"Platform Operator": "平台營運商", "Platform Operator": "平台營運商",
"Playback Order": "播放順序", "Playback Order": "播放順序",
"Please Select Slot first": "請先選擇貨道", "Please Select Slot first": "請先選擇貨道",
@ -1408,6 +1438,7 @@
"Print Notice": "列印提示", "Print Notice": "列印提示",
"Print Order": "列印單據", "Print Order": "列印單據",
"Print Time": "列印時間", "Print Time": "列印時間",
"Processing...": "處理中...",
"Product": "商品", "Product": "商品",
"Product / Slot": "商品 / 貨道", "Product / Slot": "商品 / 貨道",
"Product / Stock": "商品 / 庫存", "Product / Stock": "商品 / 庫存",
@ -1429,7 +1460,7 @@
"Product Status": "商品狀態", "Product Status": "商品狀態",
"Product created successfully": "商品已成功建立", "Product created successfully": "商品已成功建立",
"Product deleted successfully": "商品已成功刪除", "Product deleted successfully": "商品已成功刪除",
"Product empty": "貨道缺貨 (PDT_EMPTY)", "Product empty": "商品售罄",
"Product physical shipment count": "商品實體出貨件數", "Product physical shipment count": "商品實體出貨件數",
"Product status updated to :status": "商品狀態已更新為 :status", "Product status updated to :status": "商品狀態已更新為 :status",
"Product updated successfully": "商品已成功更新", "Product updated successfully": "商品已成功更新",
@ -1447,10 +1478,12 @@
"Publish Time": "發布時間", "Publish Time": "發布時間",
"Purchase Audit": "採購單", "Purchase Audit": "採購單",
"Purchase Finished": "購買結束", "Purchase Finished": "購買結束",
"Purchase successful": "購買成功",
"Purchases": "採購單", "Purchases": "採購單",
"Purchasing": "購買中", "Purchasing": "購買中",
"Purpose": "用途", "Purpose": "用途",
"Push Status": "告警狀態", "Push Status": "告警狀態",
"Pushing bento into microwave": "正在將便當推入微波爐",
"QR": "二維碼", "QR": "二維碼",
"QR CODE": "二維碼", "QR CODE": "二維碼",
"QR Code": "QR Code", "QR Code": "QR Code",
@ -1707,16 +1740,16 @@
"Slot No": "貨道編號", "Slot No": "貨道編號",
"Slot Status": "貨道效期", "Slot Status": "貨道效期",
"Slot Test": "貨道測試", "Slot Test": "貨道測試",
"Slot empty": "貨道空 (SLOT_EMPTY)", "Slot empty": "貨道缺貨",
"Slot jammed": "貨道卡貨 (K-PDT)", "Slot jammed": "貨道卡貨",
"Slot motor error (0207)": "貨道電機故障 (0207)", "Slot motor error (0207)": "貨道馬達錯誤 (0207)",
"Slot motor error (0208)": "貨道電機故障 (0208)", "Slot motor error (0208)": "貨道馬達錯誤 (0208)",
"Slot motor error (0209)": "貨道電機故障 (0209)", "Slot motor error (0209)": "貨道馬達錯誤 (0209)",
"Slot normal": "貨道正常", "Slot normal": "貨道正常",
"Slot not closed": "貨道未關閉", "Slot not closed": "貨道未關閉",
"Slot not found": "找不到指定貨道", "Slot not found": "找不到指定貨道",
"Slot report synchronized success": "貨道狀態同步成功", "Slot report synchronized success": "貨道狀態同步成功",
"Slot sensor blocked": "貨道口有物", "Slot sensor blocked": "貨道感測器受阻",
"Slot updated successfully.": "貨道更新成功。", "Slot updated successfully.": "貨道更新成功。",
"Slots": "貨道數", "Slots": "貨道數",
"Slots need replenishment": "需要補貨的貨道", "Slots need replenishment": "需要補貨的貨道",
@ -1753,7 +1786,6 @@
"Standby Ad": "待機廣告", "Standby Ad": "待機廣告",
"Start Date": "起始日", "Start Date": "起始日",
"Start Delivery": "開始配送", "Start Delivery": "開始配送",
"Processing...": "處理中...",
"Start Import": "開始匯入", "Start Import": "開始匯入",
"Start Time": "開始時間", "Start Time": "開始時間",
"Statistics": "數據統計", "Statistics": "數據統計",