diff --git a/app/Http/Controllers/Admin/MachineController.php b/app/Http/Controllers/Admin/MachineController.php index e8f0af9..5f39a41 100644 --- a/app/Http/Controllers/Admin/MachineController.php +++ b/app/Http/Controllers/Admin/MachineController.php @@ -3,14 +3,16 @@ namespace App\Http\Controllers\Admin; use App\Models\Machine\Machine; +use App\Services\Machine\MachineService; use Illuminate\Http\Request; use Illuminate\View\View; class MachineController extends AdminController { + public function __construct(protected MachineService $machineService) {} + public function index(Request $request): View { - $tab = $request->input('tab', 'list'); $per_page = $request->input('per_page', 10); $query = Machine::query(); @@ -23,27 +25,13 @@ class MachineController extends AdminController }); } - // 統一預加載貨道統計資料 (無論在哪一個頁籤) - $machines = $query->withCount(['slots as total_slots']) - ->withCount(['slots as expired_count' => function ($q) { - $q->where('expiry_date', '<', now()->toDateString()); - }]) - ->withCount(['slots as pending_count' => function ($q) { - $q->whereNull('expiry_date'); - }]) - ->withCount(['slots as warning_count' => function ($q) { - $q->whereBetween('expiry_date', [now()->toDateString(), now()->addDays(7)->toDateString()]); - }]) - // 只有在機台列表且有狀態篩選時才套用狀態過濾 - ->when($request->status && $tab === 'list', function ($q, $status) { - return $q->where('status', $status); - }) - ->orderBy("last_heartbeat_at", "desc") + // 預加載統計資料 + $machines = $query->orderBy("last_heartbeat_at", "desc") ->orderBy("id", "desc") ->paginate($per_page) ->withQueryString(); - return view('admin.machines.index', compact('machines', 'tab')); + return view('admin.machines.index', compact('machines')); } /** @@ -132,32 +120,23 @@ class MachineController extends AdminController } /** - * AJAX: 更新貨道效期 + * AJAX: 更新貨道資訊 (庫存、效期、批號) */ public function updateSlotExpiry(Request $request, Machine $machine) { - $request->validate([ + $validated = $request->validate([ 'slot_no' => 'required|integer', + 'stock' => 'nullable|integer|min:0', 'expiry_date' => 'nullable|date', + 'batch_no' => 'nullable|string|max:50', 'apply_all_same_product' => 'boolean' ]); - $slotNo = $request->slot_no; - $expiryDate = $request->expiry_date; - $applyAll = $request->apply_all_same_product ?? false; - - $slot = $machine->slots()->where('slot_no', $slotNo)->firstOrFail(); - $slot->update(['expiry_date' => $expiryDate]); - - if ($applyAll && $slot->product_id) { - $machine->slots() - ->where('product_id', $slot->product_id) - ->update(['expiry_date' => $expiryDate]); - } + $this->machineService->updateSlot($machine, $validated); return response()->json([ 'success' => true, - 'message' => __('Expiry updated successfully.') + 'message' => __('Slot updated successfully.') ]); } diff --git a/app/Http/Controllers/Admin/RemoteController.php b/app/Http/Controllers/Admin/RemoteController.php index aa7cb5a..e35ede9 100644 --- a/app/Http/Controllers/Admin/RemoteController.php +++ b/app/Http/Controllers/Admin/RemoteController.php @@ -8,11 +8,23 @@ use Illuminate\Http\Request; class RemoteController extends Controller { // 機台庫存 - public function stock() + public function stock(Request $request) { - return view('admin.placeholder', [ - 'title' => '遠端修改機台庫存', - 'description' => '遠端修改機台庫存數量', + $machines = \App\Models\Machine\Machine::withCount([ + 'slots as slots_count', + 'slots as low_stock_count' => function ($query) { + $query->where('stock', '<=', 5); + } + ])->orderBy('name')->get(); + $selectedMachine = null; + + if ($request->has('machine_id')) { + $selectedMachine = \App\Models\Machine\Machine::find($request->machine_id); + } + + return view('admin.remote.stock', [ + 'machines' => $machines, + 'selectedMachine' => $selectedMachine, ]); } diff --git a/app/Services/Machine/MachineService.php b/app/Services/Machine/MachineService.php index a91635f..c46305a 100644 --- a/app/Services/Machine/MachineService.php +++ b/app/Services/Machine/MachineService.php @@ -91,6 +91,43 @@ class MachineService }); } + /** + * Update machine slot stock, expiry, and batch. + * + * @param Machine $machine + * @param array $data + * @return void + */ + public function updateSlot(Machine $machine, array $data): void + { + DB::transaction(function () use ($machine, $data) { + $slotNo = $data['slot_no']; + $stock = $data['stock'] ?? null; + $expiryDate = $data['expiry_date'] ?? null; + $batchNo = $data['batch_no'] ?? null; + $applyAllSame = $data['apply_all_same_product'] ?? false; + + $slot = $machine->slots()->where('slot_no', $slotNo)->with('product')->firstOrFail(); + + if ($applyAllSame && $slot->product_id) { + // 更新該機台內所有相同商品的貨道 + $machine->slots()->where('product_id', $slot->product_id)->update([ + 'stock' => $stock !== null ? (int)$stock : DB::raw('stock'), + 'expiry_date' => $expiryDate, + 'batch_no' => $batchNo, + ]); + } else { + // 僅更新單一貨道 + $updateData = [ + 'expiry_date' => $expiryDate, + 'batch_no' => $batchNo, + ]; + if ($stock !== null) $updateData['stock'] = (int)$stock; + $slot->update($updateData); + } + }); + } + /** * Update machine slot stock (single slot). * Legacy support for recordLog (Existing code). diff --git a/lang/en.json b/lang/en.json index 68f34d2..7e3e551 100644 --- a/lang/en.json +++ b/lang/en.json @@ -348,6 +348,7 @@ "Machine Status": "Machine Status", "Machine Status List": "Machine Status List", "Machine Stock": "Machine Stock", + "Machine Stock Management": "Machine Stock Management", "Machine Utilization": "Machine Utilization", "Machine created successfully.": "Machine created successfully.", "Machine images updated successfully.": "Machine images updated successfully.", @@ -385,6 +386,7 @@ "Member Price": "Member Price", "Member System": "Member System", "Membership Tiers": "Membership Tiers", + "Member Status": "Member Status", "Menu Permissions": "Menu Permissions", "Merchant IDs": "Merchant IDs", "Merchant payment gateway settings management": "Merchant payment gateway settings management", @@ -796,98 +798,19 @@ "menu.reservation": "Reservation System", "menu.sales": "Sales Management", "menu.special-permission": "Special Permission", + "Qty": "Qty", + "Exp": "Exp", + "Low": "Low", + "Back to List": "Back to List", + "Confirm Changes": "Confirm Changes", + "Max Capacity:": "Max Capacity:", + "Clear": "Clear", + "Max": "Max", + "Edit Slot": "Edit Slot", + "Stock Quantity": "Stock Quantity", + "Loading Cabinet...": "Loading Cabinet...", + "Monitor and manage stock levels across your fleet": "Monitor and manage stock levels across your fleet", + "Search by name or S/N...": "Search by name or S/N...", "menu.warehouses": "Warehouse Management", - "min": "min", - "of": "of", - "permissions": "Permission Settings", - "permissions.accounts": "帳號管理", - "permissions.companies": "客戶管理", - "permissions.roles": "角色權限管理", - "remote": "Remote Management", - "reservation": "Reservation System", - "roles": "Role Permissions", - "s": "s", - "sales": "Sales Management", - "special-permission": "Special Permission", - "super-admin": "超級管理員", - "to": "to", - "user": "一般用戶", - "vs Yesterday": "vs Yesterday", - "warehouses": "Warehouse Management", - "待填寫": "Pending", - "Advertisement List": "Advertisement List", - "Machine Advertisement Settings": "Machine Advertisement Settings", - "Add Advertisement": "Add Advertisement", - "Edit Advertisement": "Edit Advertisement", - "Delete Advertisement": "Delete Advertisement", - "Duration": "Duration", - "15 Seconds": "15 Seconds", - "30 Seconds": "30 Seconds", - "60 Seconds": "60 Seconds", - "Position": "Position", - "Standby Ad": "Standby Ad", - "Assign Advertisement": "Assign Advertisement", - "Please select a machine first": "Please select a machine first", - "Advertisement created successfully": "Ad created successfully", - "Advertisement updated successfully": "Ad updated successfully", - "Advertisement deleted successfully": "Ad deleted successfully", - "Advertisement assigned successfully": "Ad assigned successfully", - "Vending": "Vending", - "Visit Gift": "Visit Gift", - "Standby": "Standby", - "Advertisement Video/Image": "Ad Video/Image", - "Sort Order": "Sort Order", - "Date Range": "Date Range", - "Manage ad materials and machine playback settings": "Manage ad materials and machine playback settings", - "Preview": "Preview", - "No advertisements found.": "No advertisements found.", - "vending": "Vending Page", - "visit_gift": "Visit Gift", - "standby": "Standby AD", - "No assignments": "No assignments", - "Please select a machine to view and manage its advertisements.": "Please select a machine to view and manage its advertisements.", - "Delete Advertisement Confirmation": "Delete Advertisement Confirmation", - "Are you sure you want to delete this advertisement? This will also remove all assignments to machines.": "Are you sure you want to delete this advertisement? This will also remove all assignments to machines.", - "Manage your ad material details": "Manage your ad material details", - "Material Name": "Material Name", - "Enter ad material name": "Enter ad material name", - "Material Type": "Material Type", - "Duration (Seconds)": "Duration (Seconds)", - "Seconds": "Seconds", - "Upload Image": "Upload Image", - "Upload Video": "Upload Video", - "Active Status": "Active Status", - "Save Material": "Save Material", - "Select a material to play on this machine": "Select a material to play on this machine", - "Target Position": "Target Position", - "Select Material": "Select Material", - "Please select a material": "Please select a material", - "Playback Order": "Playback Order", - "Smallest number plays first.": "Smallest number plays first.", - "Confirm Assignment": "Confirm Assignment", - "Are you sure you want to remove this assignment?": "Are you sure you want to remove this assignment?", - "image": "Image", - "video": "Video", - "Search Machine...": "Search Machine...", - "Advertisement created successfully.": "Advertisement created successfully.", - "Advertisement updated successfully.": "Advertisement updated successfully.", - "Advertisement deleted successfully.": "Advertisement deleted successfully.", - "Cannot delete advertisement being used by machines.": "Cannot delete advertisement being used by machines.", - "Advertisement assigned successfully.": "Advertisement assigned successfully.", - "Assignment removed successfully.": "Assignment removed successfully.", - "Max 5MB": "Max 5MB", - "Max 50MB": "Max 50MB", - "Select...": "Select...", - "Ad Settings": "Ad Settings", - "System Default (All Companies)": "System Default (All Companies)", - "No materials available": "No materials available", - "Search...": "Search...", - "Add Category": "Add Category", - "Category Management": "Category Management", - "Category Name": "Category Name", - "Manage your catalog, categories, and inventory settings.": "Manage your catalog, categories, and inventory settings.", - "Multilingual Names": "Multilingual Names", - "Barcode / Material": "Barcode / Material", - "Product List": "Product List", - "Product Count": "Product Count" + "min": "min" } \ No newline at end of file diff --git a/lang/ja.json b/lang/ja.json index 188a36a..e5400bc 100644 --- a/lang/ja.json +++ b/lang/ja.json @@ -1,88 +1,91 @@ { - "A new verification link has been sent to your email address.": "新しい確認リンクがメールアドレスに送信されました。", + "A new verification link has been sent to your email address.": "新しい認証リンクがメールアドレスに送信されました。", "AI Prediction": "AI予測", - "API Token": "API キー", - "API Token Copied": "APIトークンがコピーされました", + "API Token": "APIトークン", + "API Token Copied": "APIトークンをコピーしました", "API Token regenerated successfully.": "APIトークンが正常に再生成されました。", "APK Versions": "APKバージョン", - "APP Features": "APP機能", + "APP Features": "APP機能設定", "APP Management": "APP管理", "APP Version": "APPバージョン", "APP_ID": "APP_ID", "APP_KEY": "APP_KEY", - "Account": "帳號", + "Account": "アカウント", "Account :name status has been changed to :status.": "アカウント :name のステータスが :status に変更されました。", - "Account Management": "アカウント管理", + "Account Info": "アカウント情報", "Account List": "アカウント一覧", - "Account Name": "帳號姓名", + "Account Management": "アカウント管理", + "Account Name": "アカウント名", "Account Settings": "アカウント設定", - "Account Status": "アカウント狀態", + "Account Status": "アカウント状態", "Account created successfully.": "アカウントが正常に作成されました。", "Account deleted successfully.": "アカウントが正常に削除されました。", "Account updated successfully.": "アカウントが正常に更新されました。", - "Account:": "帳號:", - "Accounts / Machines": "アカウント / 機台", + "Account:": "アカウント:", + "Accounts / Machines": "アカウント / 機体", "Action": "操作", "Actions": "操作", - "Active": "アクティブ", - "Add Account": "アカウントを追加", - "Add Customer": "顧客を追加", - "Add Machine": "機台を追加", - "Add Machine Model": "機台型號を追加", - "Add Maintenance Record": "メンテナンス記録を追加", - "Add Role": "ロールを追加", + "Active": "有効", + "Add Account": "アカウント追加", + "Add Customer": "顧客追加", + "Add Machine": "機体追加", + "Add Machine Model": "モデル追加", + "Add Maintenance Record": "メンテナンス記録追加", + "Add Role": "権限追加", "Admin": "管理者", "Admin Name": "管理者名", - "Admin Page": "管理画面", - "Admin Sellable Products": "管理者販売可能商品", + "Admin Page": "管理者ページ", + "Admin Sellable Products": "商品表示管理", "Admin display name": "管理者表示名", "Administrator": "管理者", "Advertisement Management": "広告管理", - "Affiliated Unit": "会社名", - "Affiliation": "会社名", + "Affiliated Company": "所属会社", + "Affiliated Unit": "所属会社", + "Affiliation": "所属会社", "Alert Summary": "アラート概要", - "Alerts": "中心告警", - "Alerts Pending": "アラート待機中", + "Alerts": "アラート", + "Alerts Pending": "保留中のアラート", "All": "すべて", - "All Affiliations": "すべての会社", + "All Affiliations": "すべての所属", "All Categories": "すべてのカテゴリ", "All Companies": "すべての会社", "All Levels": "すべてのレベル", "All Machines": "すべての機体", - "All Times System Timezone": "時間はすべてシステムタイムゾーンです", - "An error occurred while saving.": "儲存時發生錯誤。", + "All Times System Timezone": "時間はすべてシステムタイムゾーンに基づきます", + "An error occurred while saving.": "保存中にエラーが発生しました。", "Analysis Management": "分析管理", - "Analysis Permissions": "分析管理權限", - "Apply to all identical products in this machine": "同步套用至此機台內的所有相同商品", + "Analysis Permissions": "分析権限", + "Apply to all identical products in this machine": "この機体内のすべての同一商品に適用する", "Are you sure to delete this customer?": "この顧客を削除してもよろしいですか?", - "Are you sure you want to change the status of this product? Disabled products will not be visible on the machine.": "この商品のステータスを変更してもよろしいですか?無効にされた商品はマシンに表示されません。", - "Are you sure you want to change the status? After disabling, this account will no longer be able to log in to the system.": "ステータスを変更してもよろしいですか?無効化後、このアカウントはシステムにログインできなくなります。", - "Are you sure you want to change the status? This may affect associated accounts.": "ステータスを変更してもよろしいですか?関連するアカウントに影響する可能性があります。", - "Are you sure you want to deactivate this account? After deactivating, this account will no longer be able to log in to the system.": "アカウントを停止してもよろしいですか?一旦停止するとシステムにログインできなくなります。", + "Are you sure you want to change the status of this product? Disabled products will not be visible on the machine.": "この商品のステータスを変更してもよろしいですか?無効にすると機体に表示されなくなります。", + "Are you sure you want to change the status? After disabling, this account will no longer be able to log in to the system.": "ステータスを変更してもよろしいですか?無効にすると、このアカウントはシステムにログインできなくなります。", + "Are you sure you want to change the status? This may affect associated accounts.": "ステータスを変更してもよろしいですか?関連するアカウントに影響を与える可能性があります。", + "Are you sure you want to deactivate this account? After deactivating, this account will no longer be able to log in to the system.": "このアカウントを無効化してもよろしいですか?無効化すると、システムにログインできなくなります。", "Are you sure you want to delete this account?": "このアカウントを削除してもよろしいですか?", - "Are you sure you want to delete this account? This action cannot be undone.": "このアカウントを削除してもよろしいですか?この操作は元に戻せません。", - "Are you sure you want to delete this configuration?": "您確定要刪除此金流配置嗎?", - "Are you sure you want to delete this configuration? This action cannot be undone.": "この設定を削除してもよろしいですか?この操作は元に戻せません。", - "Are you sure you want to delete this item? This action cannot be undone.": "この項目を削除してもよろしいですか?この操作は元に戻せません。", + "Are you sure you want to delete this account? This action cannot be undone.": "このアカウントを削除してもよろしいですか?この操作は取り消せません。", + "Are you sure you want to delete this configuration?": "この設定を削除してもよろしいですか?", + "Are you sure you want to delete this configuration? This action cannot be undone.": "この設定を削除してもよろしいですか?この操作は取り消せません。", + "Are you sure you want to delete this item? This action cannot be undone.": "この項目を削除してもよろしいですか?この操作は取り消せません。", "Are you sure you want to delete this product?": "この商品を削除してもよろしいですか?", - "Are you sure you want to delete this product? All related historical translation data will also be removed.": "この商品を削除してもよろしいですか?関連するすべての履歴翻訳データも削除されます。", - "Are you sure you want to delete this role? This action cannot be undone.": "このロールを削除してもよろしいですか?この操作は元に戻せません。", - "Are you sure you want to delete your account?": "真的にアカウントを削除してもよろしいですか?", - "Are you sure you want to proceed? This action cannot be undone.": "您確定要繼續嗎?此操作將無法復原。", + "Are you sure you want to delete this product? All related historical translation data will also be removed.": "この商品を削除してもよろしいですか?関連するすべての翻訳履歴データも削除されます。", + "Are you sure you want to delete this role? This action cannot be undone.": "この権限を削除してもよろしいですか?この操作は取り消せません。", + "Are you sure you want to delete your account?": "アカウントを削除してもよろしいですか?", + "Are you sure you want to proceed? This action cannot be undone.": "続行してもよろしいですか?この操作は取り消せません。", "Are you sure?": "よろしいですか?", - "Assign": "分配所屬機台", - "Assign Machines": "分配機台", - "Assigned Machines": "授權機台", + "Assign": "割り当て", + "Assign Machines": "機体割り当て", + "Assigned Machines": "割り当て済み機体", "Audit Management": "監査管理", - "Audit Permissions": "監査管理權限", - "Authorization updated successfully": "認証が更新されました", - "Authorize Btn": "認可", - "Authorized Accounts Tab": "認定アカウント", - "Authorized Machines": "授權機台", - "Authorized Machines Management": "認定機台管理", - "Authorized Status": "認可済み", - "Availability": "可用性 (Availability)", - "Available Machines": "可供分配的機台", + "Authorization updated successfully": "権限が正常に更新されました", + "Authorize": "認証", + "Authorize Btn": "認証", + "Authorized Accounts": "認証済みアカウント", + "Authorized Accounts Tab": "認証済みアカウント", + "Authorized Machines": "認証済み機体", + "Authorized Machines Management": "認証済み機体管理", + "Authorized Status": "認証状態", + "Availability": "可用性", + "Available Machines": "割り当て可能な機体", "Avatar updated successfully.": "アバターが正常に更新されました。", "Avg Cycle": "平均サイクル", "Badge Settings": "バッジ設定", @@ -90,392 +93,396 @@ "Basic Information": "基本情報", "Basic Settings": "基本設定", "Basic Specifications": "基本仕様", - "Batch No": "批號", - "Belongs To": "会社名", - "Belongs To Company": "会社名", - "Business Type": "業務タイプ", - "Buyout": "買取", + "Batch No": "ロット番号", + "Belongs To": "所属会社", + "Belongs To Company": "所属会社", + "Business Type": "業種", + "Buyout": "買い取り", "Cancel": "キャンセル", "Cancel Purchase": "購入キャンセル", - "Category": "カテゴリ", - "Category Name (zh_TW)": "カテゴリ名 (中国語(繁体字))", - "Category Name (en)": "カテゴリ名 (英語)", - "Category Name (ja)": "カテゴリ名 (日本語)", - "Cannot Delete Role": "ロールを削除できません", - "Cannot change Super Admin status.": "スーパー管理者のステータスは変更できません。", - "Cannot delete company with active accounts.": "有効なアカウントを持つ顧客を削除できません。", - "Cannot delete model that is currently in use by machines.": "機台で使用中の型號は削除できません。", - "Cannot delete role with active users.": "アクティブなユーザーがいるロールは削除できません。", + "Cannot Delete Role": "権限を削除できません", + "Cannot change Super Admin status.": "Super Admin のステータスは変更できません。", + "Cannot delete company with active accounts.": "有効なアカウントを持つ会社は削除できません。", + "Cannot delete model that is currently in use by machines.": "機体で使用中のモデルは削除できません。", + "Cannot delete role with active users.": "有効なユーザーを持つ権限は削除できません。", "Card Reader": "カードリーダー", "Card Reader No": "カードリーダー番号", "Card Reader Restart": "カードリーダー再起動", "Card Reader Seconds": "カードリーダー秒数", + "Category": "カテゴリ", "Change": "変更", - "Change Stock": "小銭在庫", - "Channel Limits": "スロット上限", - "Channel Limits Configuration": "スロット上限設定", - "ChannelId": "チャンネルID", - "ChannelSecret": "チャンネルシークレット", - "Checkout Time 1": "決済時間 1", - "Checkout Time 2": "決済時間 2", + "Change Stock": "在庫変更", + "Channel Limits": "チャネル制限", + "Channel Limits Configuration": "チャネル制限設定", + "ChannelId": "チャネルID", + "ChannelSecret": "チャネルシークレット", + "Checkout Time 1": "チェックアウト時間1", + "Checkout Time 2": "チェックアウト時間2", "Clear Filter": "フィルターをクリア", "Clear Stock": "在庫クリア", - "Click here to re-send the verification email.": "確認メールを再送信するにはここをクリックしてください。", + "Click here to re-send the verification email.": "認証メールを再送信するにはここをクリックしてください。", "Click to upload": "クリックしてアップロード", "Close Panel": "パネルを閉じる", - "Company": "所属顧客", + "Company": "会社", "Company Code": "会社コード", "Company Information": "会社情報", - "Company Level": "顧客レベル", + "Company Level": "会社レベル", "Company Name": "会社名", - "Config Name": "配置名稱", - "Configuration Name": "設定名称", + "Config Name": "設定名", + "Configuration Name": "設定名", "Confirm": "確認", - "Confirm Account Deactivation": "アカウント停止の確認", + "Confirm Account Deactivation": "無効化の確認", "Confirm Account Status Change": "アカウントステータス変更の確認", "Confirm Deletion": "削除の確認", - "Confirm Password": "新しいパスワード(確認)", + "Confirm Password": "パスワード(確認)", "Confirm Status Change": "ステータス変更の確認", "Connecting...": "接続中...", - "Connectivity Status": "接続ステータス概況", - "Connectivity vs Sales Correlation": "連線狀態與銷售關聯分析", + "Connectivity Status": "接続状態", + "Connectivity vs Sales Correlation": "接続状態と売上の相関分析", "Contact & Details": "連絡先と詳細", - "Contact Email": "連絡先メールアドレス", + "Contact Email": "連絡用メールアドレス", "Contact Info": "連絡先情報", - "Contact Name": "連絡担当者名", - "Contact Phone": "連絡先電話番号", + "Contact Name": "担当者名", + "Contact Phone": "電話番号", "Contract Period": "契約期間", - "Contract Until (Optional)": "契約期限 (任意)", - "Cost": "原価", + "Contract Until (Optional)": "契約終了日(任意)", + "Cost": "コスト", "Coupons": "クーポン", "Create": "作成", - "Create Config": "設定を新規作成", - "Create Machine": "機台新規作成", - "Create New Role": "新しいロールを作成", - "Create Payment Config": "決済設定を新規作成", - "Create Product": "商品を作成", - "Create Role": "ロール作成", - "Create Sub Account Role": "サブアカウントロールを作成", - "Create a new role and assign permissions.": "新しいロールを作成し、権限を割り当てます。", + "Create Config": "設定作成", + "Create Machine": "機体作成", + "Create New Role": "新しい権限を作成", + "Create Payment Config": "決済設定作成", + "Create Product": "商品作成", + "Create Role": "権限作成", + "Create Sub Account Role": "子アカウント権限作成", + "Create a new role and assign permissions.": "新しい権限を定義し、パーミッションを割り当てます。", "Critical": "致命的", "Current": "現在", "Current Password": "現在のパスワード", - "Current Stock": "現在の在庫", - "Current Type": "現タイプ", - "Current:": "現:", + "Current Status": "現在のステータス", + "Current Stock": "現在庫", + "Current Type": "現在のタイプ", + "Current:": "現在:", + "Customer Details": "顧客詳細", "Customer Info": "顧客情報", "Customer Management": "顧客管理", - "Customer Payment Config": "決済設定管理", + "Customer Payment Config": "顧客決済設定", "Customer and associated accounts disabled successfully.": "顧客と関連アカウントが正常に無効化されました。", "Customer created successfully.": "顧客が正常に作成されました。", "Customer deleted successfully.": "顧客が正常に削除されました。", "Customer enabled successfully.": "顧客が正常に有効化されました。", "Customer updated successfully.": "顧客が正常に更新されました。", "Cycle Efficiency": "サイクル効率", - "Daily Revenue": "当日収益", - "Danger Zone: Delete Account": "危険区域:アカウントの削除", + "Daily Revenue": "日次収益", + "Danger Zone: Delete Account": "危険区域:アカウント削除", "Dashboard": "ダッシュボード", "Data Configuration": "データ設定", "Data Configuration Permissions": "データ設定権限", - "Day Before": "一昨日", - "Default Donate": "デフォルト寄付", + "Day Before": "前日", + "Default Donate": "デフォルト寄付する", "Default Not Donate": "デフォルト寄付しない", - "Define and manage security roles and permissions.": "システムのセキュリティロールと権限を定義および管理します。", - "Define new third-party payment parameters": "新しいサードパーティ決済パラメータを定義", + "Define and manage security roles and permissions.": "セキュリティ権限とパーミッションを定義し管理します。", + "Define new third-party payment parameters": "新しい外部決済パラメータを定義します", "Delete": "削除", - "Delete Account": "アカウントの削除", + "Delete Account": "アカウント削除", "Delete Permanently": "完全に削除", "Delete Product Confirmation": "商品削除の確認", - "Deposit Bonus": "入金ボーナス", - "Describe the repair or maintenance status...": "修理またはメンテナンスの状況を説明してください...", + "Deposit Bonus": "リチャージボーナス", + "Describe the repair or maintenance status...": "修理またはメンテナンスの状況を記入してください...", "Detail": "詳細", - "Device Information": "デバイス情報", - "Device Status Logs": "デバイス状態ログ", - "Devices": "台のデバイス", + "Device Information": "端末情報", + "Device Status Logs": "端末状態ログ", + "Devices": "端末", "Disable": "無効にする", "Disable Product Confirmation": "商品無効化の確認", - "Disabled": "停止中", + "Disabled": "無効", "Discord Notifications": "Discord通知", - "Dispense Failed": "出庫失敗", - "Dispense Success": "出庫成功", - "Dispensing": "出庫中", - "Type to search or leave blank for system defaults.": "キーワードで検索するか、システムデフォルトの場合は空白のままにします。", - "Select Company (Default: System)": "会社を選択 (デフォルト:システム)", + "Dispense Failed": "払い出し失敗", + "Dispense Success": "払い出し成功", + "Dispensing": "払い出し中", + "E.SUN QR Scan": "玉山銀行QRスキャン", + "E.SUN QR Scan Settings Description": "玉山銀行QRスキャン決済設定", + "EASY_MERCHANT_ID": "EASY_MERCHANT_ID", + "ECPay Invoice": "緑界(ECPay)電子請求書", + "ECPay Invoice Settings Description": "緑界(ECPay)電子請求書発行設定", + "Type to search or leave blank for system defaults.": "検索キーワードを入力するか、空白のままにしてシステムデフォルトを使用します。", + "Select Company (Default: System)": "会社を選択(デフォルト:システム)", "Search Company Title...": "会社名を検索...", - "System Default (Common)": "システムデフォルト (共通)", + "System Default (Common)": "システムデフォルト(共通)", + "Category Name (zh_TW)": "カテゴリ名 (繁体字中国語)", + "Category Name (en)": "カテゴリ名 (英語)", + "Category Name (ja)": "カテゴリ名 (日本語)", "e.g., Beverage": "例:飲料", - "e.g., Drinks": "例:飲料 (英語)", + "e.g., Drinks": "例:ドリンク", "e.g., お飲み物": "例:お飲み物", - "E.SUN QR Scan": "玉山QR決済", - "E.SUN QR Scan Settings Description": "玉山銀行 QR スキャン決済設定", - "EASY_MERCHANT_ID": "悠遊付 加盟店ID", - "ECPay Invoice": "ECPay 電子発票", - "ECPay Invoice Settings Description": "ECPay 電子発票設定", "Edit": "編集", - "Edit Account": "アカウントを編集", - "Edit Customer": "顧客を編集", - "Edit Expiry": "編輯效期", - "Edit Machine": "機台編集", - "Edit Machine Model": "機台型號を編輯", - "Edit Machine Settings": "編輯機台設定", - "Edit Payment Config": "決済設定を編集", - "Edit Product": "商品を編集", - "Edit Role": "ロール編集", - "Edit Role Permissions": "ロール権限の編集", + "Edit Category": "カテゴリ編集", + "Edit Account": "アカウント編集", + "Edit Customer": "顧客編集", + "Edit Expiry": "有効期限編集", + "Edit Machine": "機体編集", + "Edit Machine Model": "モデル編集", + "Edit Machine Settings": "機体設定編集", + "Edit Payment Config": "決済設定編集", + "Edit Product": "商品編集", + "Edit Role": "権限編集", + "Edit Role Permissions": "権限パーミッション編集", "Edit Settings": "設定編集", - "Edit Sub Account Role": "サブアカウントロールを編集", + "Edit Sub Account Role": "子アカウント権限編集", "Email": "メールアドレス", "Enable": "有効にする", - "Enable Material Code": "資材コードを有効化", - "Enable Points": "ポイントルールを有効化", - "Enabled": "有効中", + "Enable Material Code": "品目コードを有効にする", + "Enable Points": "ポイントを有効にする", + "Enabled": "有効", "Enabled/Disabled": "有効/無効", "End Date": "終了日", - "Engineer": "メンテナンス担当者", - "Ensure your account is using a long, random password to stay secure.": "セキュリティを維持するため、アカウントには長くランダムなパスワードを使用してください。", - "Enter login ID": "ログインIDを入力してください", - "Enter machine location": "機台の場所を入力してください", - "Enter machine name": "機台名を入力してください", - "Enter model name": "型番名を入力してください", - "Enter role name": "ロール名を入力してください", - "Enter serial number": "シリアル番号を入力してください", + "Engineer": "エンジニア", + "Ensure your account is using a long, random password to stay secure.": "セキュリティを保つため、アカウントには長くランダムなパスワードを使用してください。", + "Enter login ID": "ログインIDを入力", + "Enter machine location": "設置場所を入力", + "Enter machine name": "機体名を入力", + "Enter model name": "モデル名を入力", + "Enter role name": "権限名を入力", + "Enter serial number": "シリアル番号を入力", "Enter your password to confirm": "確認のためパスワードを入力してください", - "Equipment efficiency and OEE metrics": "設備効率と OEE 指標", + "Equipment efficiency and OEE metrics": "設備効率とOEE総合指標", "Error": "エラー", - "Error processing request": "リクエストの処理中にエラーが発生しました", + "Error processing request": "リクエスト処理エラー", "Execution Time": "実行時間", "Expired": "期限切れ", - "Expired / Disabled": "期限切れ / 停止中", - "Expiry Date": "有效日期", - "Expiry Management": "有効期限管理", - "Failed to fetch machine data.": "無法取得機台資料。", + "Expired / Disabled": "期限切れ / 無効", + "Expiry Date": "有効期限", + "Expiry Management": "賞味期限管理", + "Failed to fetch machine data.": "機体データの取得に失敗しました。", "Failed to load permissions": "権限の読み込みに失敗しました", - "Failed to save permissions.": "無法儲存權限設定。", - "Failed to update machine images: ": "機台画像の更新に失敗しました:", + "Failed to save permissions.": "権限の保存に失敗しました。", + "Failed to update machine images: ": "機体画像の更新に失敗しました: ", "Feature Settings": "機能設定", - "Feature Toggles": "機能トグル", - "Fill in the device repair or maintenance details": "デバイスの修理またはメンテナンスの詳細を入力してください", - "Fill in the product details below": "以下に商品の詳細を入力してください", + "Feature Toggles": "機能切り替え", + "Fill in the device repair or maintenance details": "修理またはメンテナンスの詳細を記入してください", + "Fill in the product details below": "商品の詳細を記入してください", "Firmware Version": "ファームウェアバージョン", - "Fleet Avg OEE": "全機台平均OEE", - "Fleet Performance": "全機隊效能", + "Fleet Avg OEE": "フリート平均OEE", + "Fleet Performance": "フリートパフォーマンス", "From": "から", - "From:": "開始:", - "Full Access": "全機台授權", + "From:": "から:", + "Full Access": "フルアクセス", "Full Name": "氏名", "Full Points": "フルポイント", "Games": "ゲーム", - "General permissions not linked to a specific menu.": "未連結到特定選單的一般權限。", - "Gift Definitions": "ギフト設定", - "Global roles accessible by all administrators.": "適用於所有管理者的全域角色。", - "Got it": "了解", + "General permissions not linked to a specific menu.": "特定のメニューに関連付けられていない一般的な権限。", + "Gift Definitions": "ギフト定義", + "Global roles accessible by all administrators.": "すべての管理者がアクセス可能なグローバル権限。", + "Got it": "了解しました", "Half Points": "ハーフポイント", "Half Points Amount": "ハーフポイント金額", "Hardware & Network": "ハードウェアとネットワーク", - "Hardware & Slots": "ハードウェアと貨道", + "Hardware & Slots": "ハードウェアとスロット", "HashIV": "HashIV", "HashKey": "HashKey", - "Heartbeat": "ハートビート状態", + "Heartbeat": "ハートビート", "Heating End Time": "加熱終了時間", - "Heating Range": "加熱時間帯", + "Heating Range": "加熱範囲", "Heating Start Time": "加熱開始時間", "Helper": "ヘルパー", - "Home Page": "主画面", - "Identity & Codes": "識別とコード", + "Home Page": "ホームページ", + "Identity & Codes": "IDとコード", "Info": "情報", "Initial Admin Account": "初期管理者アカウント", - "Initial Role": "初期ロール", + "Initial Role": "初期権限", "Installation": "設置", - "Invoice Status": "発票発行状態", - "Items": "個の項目", - "JKO_MERCHANT_ID": "街口支付 加盟店ID", - "Joined": "入会日", - "Key": "キー (Key)", + "Invoice Status": "請求書ステータス", + "Items": "項目", + "JKO_MERCHANT_ID": "JKO_MERCHANT_ID", + "Joined": "参加日", + "Key": "キー", "Key No": "キー番号", - "LEVEL TYPE": "層級タイプ", - "LINE Pay Direct": "LINE Pay 直結決済", - "LINE Pay Direct Settings Description": "LINE Pay 公式直結設定", - "LINE_MERCHANT_ID": "LINE Pay 加盟店ID", + "LEVEL TYPE": "レベルタイプ", + "LINE Pay Direct": "LINE Pay直販", + "LINE Pay Direct Settings Description": "LINE Pay公式直接接続設定", + "LINE_MERCHANT_ID": "LINE_MERCHANT_ID", "LIVE": "ライブ", - "Last Heartbeat": "最終ハートビート時間", - "Last Page": "最終ページ", - "Last Signal": "最終信号時間", + "Last Heartbeat": "最終ハートビート", + "Last Page": "最後のページ", + "Last Signal": "最終信号", "Last Time": "最終時間", "Last Updated": "最終更新", "Lease": "リース", "Level": "レベル", "Line Coupons": "Lineクーポン", - "Line Machines": "Line機台", + "Line Machines": "Line連携機体", "Line Management": "Line管理", "Line Members": "Line会員", "Line Official Account": "Line公式アカウント", "Line Orders": "Line注文", - "Line Permissions": "Line管理權限", + "Line Permissions": "Line権限", "Line Products": "Line商品", - "Live Fleet Updates": "機台リアルタイム更新", - "Loading machines...": "正在載入機台...", + "Live Fleet Updates": "リアルタイム機体状況", + "Loading machines...": "機体を読み込み中...", "Loading...": "読み込み中...", "Location": "場所", - "Locked Page": "ロック画面", + "Locked Page": "ロックされたページ", "Login History": "ログイン履歴", "Logout": "ログアウト", "Logs": "ログ", "Loyalty & Features": "ロイヤリティと機能", - "Machine Count": "機台数量", - "Machine Details": "機台詳情", - "Machine Images": "機台写真", - "Machine Info": "機台情報", - "Machine Information": "機台情報", - "Machine List": "機台リスト", - "Machine Login Logs": "機台ログイン履歴", - "Machine Logs": "機台ログ", - "Machine Management": "機台管理", - "Machine Management Permissions": "機台管理權限", - "Machine Model": "機台型號", - "Machine Model Settings": "機台型號設定", - "Machine Name": "機台名", - "Machine Permissions": "機台権限", - "Machine Registry": "機台登録簿", - "Machine Reports": "機台レポート", - "Machine Restart": "機台再起動", - "Machine Settings": "機台設定", - "Machine Status": "機台状態", - "Machine Status List": "機台稼働状況リスト", - "Machine Stock": "機台在庫", + "Machine Count": "機体数", + "Machine Details": "機体詳細", + "Machine Images": "機体画像", + "Machine Info": "機体情報", + "Machine Information": "機体情報", + "Machine List": "機体一覧", + "Machine Login Logs": "機体ログインログ", + "Machine Logs": "機体ログ", + "Machine Management": "機体管理", + "Machine Management Permissions": "機体管理権限", + "Machine Model": "機体モデル", + "Machine Model Settings": "機体モデル設定", + "Machine Name": "機体名", + "Machine Permissions": "機体権限", + "Machine Registry": "機体レジストリ", + "Machine Reports": "機体レポート", + "Machine Restart": "機体再起動", + "Machine Settings": "機体設定", + "Machine Status": "機体状態", + "Machine Status List": "機体稼動状況リスト", + "Machine Stock": "機体在庫", + "Machine Stock Management": "機体在庫管理", "Machine Utilization": "機台稼働率", - "Machine created successfully.": "機台が正常に作成されました。", - "Machine images updated successfully.": "機台画像が正常に更新されました。", - "Machine model created successfully.": "機台型號が正常に作成されました。", - "Machine model deleted successfully.": "機台型號が正常に削除されました。", - "Machine model updated successfully.": "機台型號が正常に更新されました。", - "Machine settings updated successfully.": "機台設定が正常に更新されました。", - "Machines": "機台リスト", - "Machines Online": "在線機台數", - "Maintenance": "保守", + "Machine created successfully.": "機体が正常に作成されました。", + "Machine images updated successfully.": "機体画像が正常に更新されました。", + "Machine model created successfully.": "機体モデルが正常に作成されました。", + "Machine model deleted successfully.": "機体モデルが正常に削除されました。", + "Machine model updated successfully.": "機体モデルが正常に更新されました。", + "Machine settings updated successfully.": "機体設定が正常に更新されました。", + "Machines": "機体", + "Machines Online": "オンライン機体", + "Maintenance": "メンテナンス", "Maintenance Content": "メンテナンス内容", "Maintenance Date": "メンテナンス日", "Maintenance Details": "メンテナンス詳細", "Maintenance Photos": "メンテナンス写真", - "Maintenance QR": "メンテナンス QR", - "Maintenance QR Code": "メンテナンス QR コード", + "Maintenance QR": "メンテナンスQR", + "Maintenance QR Code": "メンテナンスQRコード", "Maintenance Records": "メンテナンス記録", "Maintenance record created successfully": "メンテナンス記録が正常に作成されました", - "Manage Account Access": "管理帳號存取", - "Manage Expiry": "進入效期管理", - "Manage administrative and tenant accounts": "管理者およびテナントアカウントを管理します", - "Manage all tenant accounts and validity": "すべてのテナントアカウントと有効期限を管理します", - "Manage machine access permissions": "機台アクセス權限の管理", + "Manage Account Access": "アカウントアクセス管理", + "Manage Expiry": "有効期限管理", + "Manage administrative and tenant accounts": "管理者およびテナントアカウントの管理", + "Manage all tenant accounts and validity": "すべてのテナントアカウントと有効性の管理", + "Manage machine access permissions": "機体のアクセス権限管理", "Manage your catalog, prices, and multilingual details.": "カタログ、価格、多言語詳細を管理します。", - "Manage your machine fleet and operational data": "機台フリートと運用データの管理", - "Manage your profile information, security settings, and login history": "プロフィール情報、セキュリティ設定、ログイン履歴の管理", - "Management of operational parameters": "機台運作參數管理", - "Management of operational parameters and models": "運用パラメータと型番の管理", - "Manufacturer": "製造元", - "Material Code": "物料コード", + "Manage your machine fleet and operational data": "機体群と運用データを管理します", + "Manage your profile information, security settings, and login history": "プロフィール、セキュリティ、ログイン履歴を管理します", + "Management of operational parameters": "運用パラメータの管理", + "Management of operational parameters and models": "運用パラメータとモデルの管理", + "Manufacturer": "メーカー", + "Material Code": "品目コード", "Max 3": "最大3枚", - "Member & External": "会員と外部システム", - "Member List": "会員リスト", + "Member & External": "会員と外部連携", + "Member List": "会員一覧", "Member Management": "会員管理", "Member Price": "会員価格", "Member System": "会員システム", "Membership Tiers": "会員ランク", + "Member Status": "会員状態", "Menu Permissions": "メニュー権限", - "Merchant IDs": "マーチャント ID", - "Merchant payment gateway settings management": "マーチャント決済ゲートウェイ設定管理", + "Merchant IDs": "ショップID", + "Merchant payment gateway settings management": "ショップ決済ゲートウェイ設定管理", "Message": "メッセージ", - "Message Content": "ログ内容", + "Message Content": "メッセージ内容", "Message Display": "メッセージ表示", "Min 8 characters": "最低8文字", - "Model": "型番", - "Model Name": "型號名称", - "Models": "型番リスト", - "Modifying your own administrative permissions may result in losing access to certain system functions.": "自身の管理權限を変更すると、一部のシステム機能へのアクセス權を失う可能性があります。", - "Monitor events and system activity across your vending fleet.": "自販機フリート全体のイベントとシステムアクティビティを監視します。", - "Monthly Transactions": "今月の取引統計", - "Monthly cumulative revenue overview": "今月の累計収益概要", - "Name": "氏名", + "Model": "モデル", + "Model Name": "モデル名", + "Models": "モデル", + "Modifying your own administrative permissions may result in losing access to certain system functions.": "自分自身の管理権限を変更すると、特定のシステム機能へのアクセスを失う可能性があります。", + "Monitor events and system activity across your vending fleet.": "自動販売機群のイベントとシステムアクティビティを監視します。", + "Monthly Transactions": "月間取引数", + "Monthly cumulative revenue overview": "月間累積収益の概要", + "Name": "名前", "Name in English": "英語名", "Name in Japanese": "日本語名", "Name in Traditional Chinese": "繁体字中国語名", "Never Connected": "未接続", "New Password": "新しいパスワード", - "New Password (leave blank to keep current)": "新しいパスワード (変更しない場合は空欄)", + "New Password (leave blank to keep current)": "新しいパスワード(変更しない場合は空白)", "New Record": "新規記録", - "New Role": "新しいロール", - "New Sub Account Role": "新增子帳號角色", + "New Role": "新しい権限", + "New Sub Account Role": "新しい子アカウント権限", "Next": "次へ", - "No Invoice": "発票を発行しない", - "No Machine Selected": "機台が選択されていません", + "No Invoice": "請求書なし", + "No Machine Selected": "機体が選択されていません", "No accounts found": "アカウントが見つかりません", - "No alert summary": "アラートなし", + "No alert summary": "アラートの概要はありません", "No configurations found": "設定が見つかりません", - "No content provided": "内容がありません", + "No content provided": "内容が提供されていません", "No customers found": "顧客が見つかりません", - "No data available": "データなし", + "No data available": "データがありません", "No file uploaded.": "ファイルがアップロードされていません。", - "No images uploaded": "写真がアップロードされていません", - "No location set": "場所が未設定です", - "No login history yet": "ログイン履歴はまだありません", - "No logs found": "ログがありません", - "No machines assigned": "未分配機台", - "No machines available": "目前沒有可供分配的機台", - "No machines available in this company.": "此客戶目前沒有可供分配的機台。", - "No maintenance records found": "メンテナンス記録が見つかりません", + "No images uploaded": "画像がアップロードされていません", + "No location set": "場所が設定されていません", + "No login history yet": "ログイン履歴がまだありません", + "No logs found": "ログが見つかりません", + "No machines assigned": "機体が割り当てられていません", + "No machines available": "利用可能な機体はありません", + "No machines available in this company.": "この会社で割り当て可能な機体はありません。", "No matching logs found": "一致するログが見つかりません", - "No matching machines": "一致する機台がありません", - "No permissions": "権限項目なし", - "No roles found.": "ロールが見つかりませんでした。", - "No roles available": "利用可能なロールがありません", - "No slots found": "未找到貨道資訊", + "No matching machines": "一致する機体が見つかりません", + "No permissions": "権限なし", + "No roles found.": "権限が見つかりません。", + "No roles available": "利用可能な権限はありません", + "No slots found": "スロットが見つかりません", "No users found": "ユーザーが見つかりません", "None": "なし", - "Normal": "正常", - "Not Used": "未使用", - "Not Used Description": "不使用第三方支付介接", + "Normal": "通常", + "Not Used": "不使用", + "Not Used Description": "外部決済サービスを使用しない", "Notes": "備考", "OEE": "OEE", - "OEE Efficiency Trend": "OEE効率トレンド", - "OEE Score": "OEE総合スコア", - "OEE.Activity": "稼働アクティビティ", + "OEE Efficiency Trend": "OEE効率傾向", + "OEE Score": "OEEスコア", + "OEE.Activity": "アクティビティ", "OEE.Errors": "エラー", "OEE.Hours": "時間", - "OEE.Orders": "注文", - "OEE.Sales": "売上", + "OEE.Orders": "注文数", + "OEE.Sales": "売上高", "Offline": "オフライン", - "Offline Machines": "オフライン機台", - "Once your account is deleted, all of its resources and data will be permanently deleted. Before deleting your account, please download any data or information that you wish to retain.": "アカウントが削除されると、そのすべてのリソース和データが永久に削除されます。アカウントを削除する前に、保持したいデータや情報をダウンロードしてください。", - "Once your account is deleted, all of its resources and data will be permanently deleted. Please enter your password to confirm you would like to permanently delete your account.": "アカウントが削除されると、すべての関連データが永久に削除されます。アカウントの永久削除を確定するため、パスワードを入力してください。", + "Offline Machines": "オフライン機体", + "Once your account is deleted, all of its resources and data will be permanently deleted. Before deleting your account, please download any data or information that you wish to retain.": "アカウントを削除すると、そのすべてのリソースとデータが完全に削除されます。削除する前に、保存しておきたいデータをダウンロードしてください。", + "Once your account is deleted, all of its resources and data will be permanently deleted. Please enter your password to confirm you would like to permanently delete your account.": "アカウントを削除すると、そのすべてのリソースとデータが完全に削除されます。完全に削除するには、パスワードを入力してください。", "Online": "オンライン", - "Online Duration": "累積連線時數", - "Online Machines": "オンライン機台", - "Online Status": "オンラインステータス", - "Only system roles can be assigned to platform administrative accounts.": "プラットフォーム管理アカウントにはシステムロールのみ割り当て可能です。", + "Online Duration": "オンライン継続時間", + "Online Machines": "オンライン機体", + "Online Status": "オンライン状態", + "Only system roles can be assigned to platform administrative accounts.": "プラットフォーム管理アカウントにはシステム権限のみを割り当てることができます。", "Operational Parameters": "運用パラメータ", - "Operations": "運用設定", + "Operations": "運用", "Optimal": "最適", - "Optimized Performance": "パフォーマンスの最適化", - "Optimized for display. Supported formats: JPG, PNG, WebP.": "表示用に最適化されています。対応形式:JPG, PNG, WebP。", + "Optimized Performance": "最適化されたパフォーマンス", + "Optimized for display. Supported formats: JPG, PNG, WebP.": "表示用に最適化。対応形式:JPG, PNG, WebP。", "Optional": "任意", "Order Management": "注文管理", "Orders": "注文", - "Original": "最初", - "Original Type": "元タイプ", - "Original:": "元:", - "Other Permissions": "其他權限", + "Original": "元", + "Original Type": "元のタイプ", + "Original:": "元:", + "Other Permissions": "その他の権限", "Others": "その他", - "Output Count": "出荷回数", - "Owner": "会社名", - "PARTNER_KEY": "パートナーキー", - "PI_MERCHANT_ID": "Pi 拍錢包 加盟店ID", - "PNG, JPG up to 2MB": "PNG, JPG (最大 2MB)", - "PS_MERCHANT_ID": "全盈+Pay 加盟店ID", - "Parameters": "パラメータ設定", + "Output Count": "出力数", + "Owner": "所属会社", + "PARTNER_KEY": "PARTNER_KEY", + "PI_MERCHANT_ID": "PI_MERCHANT_ID", + "PNG, JPG up to 2MB": "2MB以下のPNG、JPG", + "PS_MERCHANT_ID": "PS_MERCHANT_ID", + "Parameters": "パラメータ", "Pass Code": "パスコード", - "Pass Codes": "パスクード", + "Pass Codes": "パスコード", "Password": "パスワード", - "Password updated successfully.": "密碼已成功變更。", - "Payment & Invoice": "決済と発票", - "Payment Buffer Seconds": "決済バッファ秒数", + "Password updated successfully.": "パスワードが正常に更新されました。", + "Payment & Invoice": "決済と請求書", + "Payment Buffer Seconds": "決済猶予秒数", "Payment Config": "決済設定", "Payment Configuration": "決済設定", "Payment Configuration created successfully.": "決済設定が正常に作成されました。", @@ -483,32 +490,29 @@ "Payment Configuration updated successfully.": "決済設定が正常に更新されました。", "Payment Selection": "決済選択", "Pending": "保留中", - "Performance": "パフォーマンス (Performance)", - "Permanent": "永久認可", - "Permanently Delete Account": "アカウントを永久に削除", - "Permission Settings": "権限設定", - "Permissions": "権限", - "Permissions updated successfully": "認証が更新されました", + "Performance": "パフォーマンス", + "Permanent": "永久", + "Permanently Delete Account": "アカウントを完全に削除", + "Permission Settings": "パーミッション設定", + "Permissions": "パーミッション", + "Permissions updated successfully": "権限が正常に更新されました", "Phone": "電話番号", "Photo Slot": "写真スロット", - "Pickup Code": "受取コード", - "Pickup Codes": "受取コード", + "Pickup Code": "受け取りコード", + "Pickup Codes": "受け取りコード", "Please check the following errors:": "以下のエラーを確認してください:", - "Please check the form for errors.": "フォームにエラーがないか確認してください。", - "Please select a machine to view metrics": "機台を選択して指標を表示してください", + "Please check the form for errors.": "フォームのエラーを確認してください。", + "Please select a machine to view metrics": "データを確認する機体を選択してください", "Point Rules": "ポイントルール", "Point Settings": "ポイント設定", - "Points Rule": "ポイントルール", - "Points Settings": "ポイント設定", - "Points toggle": "ポイント切り替え", "Previous": "前へ", "Pricing Information": "価格情報", "Product Details": "商品詳細", "Product Image": "商品画像", "Product Management": "商品管理", - "Product Name (Multilingual)": "商品名 (多言語)", + "Product Name (Multilingual)": "商品名(多言語)", "Product Reports": "商品レポート", - "Product Status": "商品狀態", + "Product Status": "商品状態", "Product created successfully": "商品が正常に作成されました", "Product deleted successfully": "商品が正常に削除されました", "Product status updated to :status": "商品ステータスが :status に更新されました", @@ -516,39 +520,37 @@ "Production Company": "製造会社", "Profile": "プロフィール", "Profile Information": "プロフィール情報", - "Profile Settings": "個人設定", + "Profile Settings": "プロフィール設定", "Profile updated successfully.": "プロフィールが正常に更新されました。", - "Promotions": "プロモーション", - "Protected": "保護されています", + "Promotions": "販促", + "Protected": "保護済み", "Purchase Audit": "購入監査", - "Purchase Finished": "購入終了", + "Purchase Finished": "購入完了", "Purchases": "購入", "Purchasing": "購入中", - "Quality": "品質 (Quality)", + "Quality": "品質", "Questionnaire": "アンケート", - "Quick Expiry Check": "有効期限のクイックチェック", + "Quick Expiry Check": "有効期限クイックチェック", "Quick Select": "クイック選択", "Quick search...": "クイック検索...", - "Real-time OEE analysis awaits": "リアルタイム OEE 分析待機中", - "Real-time Operation Logs (Last 50)": "リアルタイム操作ログ (直近 50 件)", - "Real-time fleet efficiency and OEE metrics": "全機台リアルタイム効率とOEE指標", - "Real-time monitoring across all machines": "全機台のリアルタイム監視", - "Real-time performance analytics": "リアルタイムパフォーマンス分析", - "Real-time status monitoring": "リアルタイムステータス監視", + "Real-time fleet efficiency and OEE metrics": "リアルタイムのフリート効率とOEE指標", + "Real-time monitoring across all machines": "全機体のリアルタイム監視", + "Real-time performance analytics": "リアルタイムのパフォーマンス分析", + "Real-time status monitoring": "リアルタイムの状態監視", "Receipt Printing": "レシート印刷", "Recent Login": "最近のログイン", - "Regenerate": "再生成する", - "Regenerating the token will disconnect the physical machine until it is updated. Continue?": "トークンを再生成すると、更新されるまで物理マシンの接続が切断されます。続行しますか?", - "Remote Change": "リモートお釣り", - "Remote Checkout": "リモート決済", - "Remote Dispense": "リモート出庫", + "Regenerate": "再生成", + "Regenerating the token will disconnect the physical machine until it is updated. Continue?": "トークンを再生成すると、機体を更新するまで接続が切断されます。続行しますか?", + "Remote Change": "リモート変更", + "Remote Checkout": "リモートチェックアウト", + "Remote Dispense": "リモート払い出し", "Remote Lock": "リモートロック", "Remote Management": "リモート管理", - "Remote Permissions": "リモート管理權限", - "Removal": "撤去", + "Remote Permissions": "リモート権限", + "Removal": "取り外し", "Repair": "修理", "Replenishment Audit": "補充監査", - "Replenishment Page": "補充画面", + "Replenishment Page": "補充ページ", "Replenishment Records": "補充記録", "Replenishments": "補充", "Reporting Period": "レポート期間", @@ -557,190 +559,187 @@ "Reservations": "予約", "Returns": "返品", "Risk": "リスク", - "Role": "ロール", - "Role Identification": "ロール識別情報", - "Role Management": "ロール管理", - "Role Name": "ロール名", - "Role Permissions": "ロール權限", - "Role Settings": "ロール權限", - "Role Type": "ロールタイプ", - "Role created successfully.": "ロールが正常に作成されました。", - "Role deleted successfully.": "ロールが正常に削除されました。", - "Role name already exists in this company.": "この会社には同じ名前のロールが既に存在します。", - "Role not found.": "ロールが見つかりませんでした。", - "Role updated successfully.": "ロールが正常に更新されました。", - "Roles": "ロール権限", - "Roles scoped to specific customer companies.": "各顧客企業専用のロール。", - "Running Status": "稼働状況", - "SYSTEM": "システムレベル", + "Role": "役職", + "Role Identification": "権限識別", + "Role Management": "権限管理", + "Role Name": "権限名", + "Role Permissions": "権限パーミッション", + "Role Settings": "権限パーミッション設定", + "Role Type": "権限タイプ", + "Role created successfully.": "権限が正常に作成されました。", + "Role deleted successfully.": "権限が正常に削除されました。", + "Role name already exists in this company.": "この会社内に同じ名前の権限が既に存在します。", + "Role not found.": "権限が見つかりません。", + "Role updated successfully.": "権限が正常に更新されました。", + "Roles": "権限パーミッション", + "Roles scoped to specific customer companies.": "特定の顧客会社に限定された権限。", + "Running Status": "稼働状態", + "SYSTEM": "システム", "Sale Price": "販売価格", - "Sales": "銷售管理", - "Sales Activity": "銷售活動", - "Sales Management": "販売管理", - "Sales Permissions": "販売管理権限", - "Sales Records": "販売記録", - "Save": "変更を保存", + "Sales": "売上", + "Sales Activity": "販売アクティビティ", + "Sales Management": "売上管理", + "Sales Permissions": "売上権限", + "Sales Records": "売上記録", + "Save": "保存", "Save Changes": "変更を保存", - "Save Config": "設定を保存", - "Save Permissions": "儲存權限", - "Saved.": "保存されました", - "Saving...": "儲存中...", - "Scale level and access control": "層級與存取控制", - "Scan this code to quickly access the maintenance form for this device.": "このコードをスキャンして、このデバイスのメンテナンスフォームに素早くアクセスしてください。", + "Save Config": "設定保存", + "Save Permissions": "パーミッション保存", + "Saved.": "保存しました。", + "Saving...": "保存中...", + "Scale level and access control": "規模レベルとアクセス制御", + "Scan this code to quickly access the maintenance form for this device.": "このコードをスキャンして、端末のメンテナンスフォームに素早くアクセスします。", "Search configurations...": "設定を検索...", "Search company...": "会社を検索...", "Search customers...": "顧客を検索...", - "Search machines by name or serial...": "名称またはシリアル番号で検索...", - "Search machines...": "マシン名またはシリアル番号で検索...", - "Search models...": "型番を検索...", - "Search roles...": "ロールを検索...", - "Search serial no or name...": "シリアル番号または名前を検索...", - "Search serial or machine...": "シリアルまたはマシンを検索...", - "Search serial or name...": "機台名またはシリアル番号で検索...", + "Search machines by name or serial...": "機体名またはシリアルで検索...", + "Search machines...": "機体を検索...", + "Search models...": "モデルを検索...", + "Search roles...": "権限を検索...", + "Search serial no or name...": "シリアルまたは名前を検索...", + "Search serial or machine...": "シリアルまたは機体を検索...", + "Search serial or name...": "シリアルまたは名前を検索...", "Search users...": "ユーザーを検索...", "Select All": "すべて選択", "Select Company": "会社名を選択", - "Select Machine": "機台を選択", - "Select Machine to view metrics": "指標を表示する機台を選択してください", - "Select Model": "型番を選択", + "Select Machine": "機体を選択", + "Select Machine to view metrics": "データを確認する機体を選択してください", + "Select Model": "モデルを選択", "Select Owner": "会社名を選択", - "Select a machine to deep dive": "詳細分析を開始する機台を選択してください", - "Select an asset from the left to start analysis": "分析を開始するには左側のデバイスを選択してください", - "Select date to sync data": "データ同期の日付を選択してください", - "Selected": "選択済み", + "Select a machine to deep dive": "詳細分析を行う機体を選択してください", + "Select date to sync data": "同期する日付を選択してください", + "Selected": "選択中", "Selected Date": "検索日", - "Selection": "選択済み", - "Deselect All": "すべて選択解除", + "Selection": "選択", "Serial & Version": "シリアルとバージョン", - "Serial NO": "機台シリアル番号", - "Serial No": "機台シリアル番号", + "Deselect All": "すべて解除", + "Serial NO": "シリアル番号", + "Serial No": "シリアル番号", "Serial Number": "シリアル番号", "Show": "表示", - "Show material code field in products": "商品情報に資材コードフィールドを表示する", - "Show points rules in products": "商品情報にポイントルール相關フィールドを表示する", + "Show material code field in products": "商品の品目コードを表示する", + "Show points rules in products": "商品のポイントルールを表示する", "Showing": "表示中", - "Showing :from to :to of :total items": ":total 件中 :from から :to 件を表示", + "Showing :from to :to of :total items": ":from から :to まで表示中 (全 :total 項目)", "Sign in to your account": "アカウントにサインイン", - "Signed in as": "ログイン中", + "Signed in as": "ログイン中:", "Slot": "スロット", - "Slot Mechanism (default: Conveyor, check for Spring)": "貨道メカニズム (デフォルト:コンベア、チェックでスプリング)", - "Slot Status": "貨道效期", - "Slot Test": "テスト中", - "Some fields need attention": "一部のフィールドに注意が必要です", + "Slot Mechanism (default: Conveyor, check for Spring)": "スロット機構(デフォルト:ベルト、スプリングはチェック)", + "Slot Status": "スロット状態", + "Slot Test": "スロットテスト", + "Some fields need attention": "いくつかの入力項目を確認してください", "Special Permission": "特別権限", - "Specifications": "規格", - "Spring Channel Limit": "スプリング上限", - "Spring Limit": "スプリング上限", + "Specifications": "仕様", + "Spring Channel Limit": "スプリングチャネル制限", + "Spring Limit": "スプリング制限", "Staff Stock": "スタッフ在庫", "Start Date": "開始日", - "Statistics": "統計データ", "Status": "ステータス", - "Status / Temp / Sub / Card / Scan": "状態 / 温度 / 下位機 / カード / スキャン", + "Status / Temp / Sub / Card / Scan": "状態 / 温度 / 子機 / カード / スキャン", "Stock Management": "在庫管理", - "Store Gifts": "来店特典", - "Store ID": "加盟店ID (MerchantID)", - "Store Management": "店舗管理", - "StoreID": "加盟店ID (StoreID)", - "Sub Account Management": "サブアカウント管理", - "Sub Account Roles": "サブアカウントロール", - "Sub Accounts": "サブアカウント", - "Sub-actions": "子項目", - "Sub-machine Status Request": "下位機状態リクエスト", - "Submit Record": "記録を送信", + "Store Gifts": "ショップギフト", + "Store ID": "ストアID", + "Store Management": "ショップ管理", + "StoreID": "ストアID", + "Sub Account Management": "子アカウント管理", + "Sub Account Roles": "子アカウント権限", + "Sub Accounts": "子アカウント", + "Sub-actions": "サブアクション", + "Sub-machine Status Request": "子機状態", + "Submit Record": "記録を提出", "Success": "成功", - "Super Admin": "スーパー管理者", - "Super-admin role cannot be assigned to tenant accounts.": "スーパー管理者ロールはテナントアカウントに割り当てることはできません。", + "Super Admin": "Super Admin", + "Super-admin role cannot be assigned to tenant accounts.": "Super Admin 権限はテナントアカウントに割り当てることはできません。", "Survey Analysis": "アンケート分析", - "Syncing Permissions...": "権限を同期中...", - "System Default": "系統預設", + "System Default": "システムデフォルト", "System Level": "システムレベル", - "System Official": "公式", - "System Role": "システムロール", - "System role name cannot be modified.": "システムロール名は変更できません。", - "System roles cannot be deleted by tenant administrators.": "テナント管理者はシステムロールを削除できません。", - "System roles cannot be modified by tenant administrators.": "テナント管理者はシステムロールを変更できません。", - "System super admin accounts cannot be deleted.": "システムスーパー管理者アカウントは削除できません。", - "System super admin accounts cannot be modified via this interface.": "システムスーパー管理者アカウントはこのインターフェースからは変更できません。", + "System Official": "システム公式", + "System Role": "システム権限", + "System role name cannot be modified.": "システム権限名は変更できません。", + "System roles cannot be deleted by tenant administrators.": "テナント管理者はシステム権限を削除できません。", + "System roles cannot be modified by tenant administrators.": "テナント管理者はシステム権限を変更できません。", + "System super admin accounts cannot be deleted.": "システム Super Admin アカウントは削除できません。", + "System super admin accounts cannot be modified via this interface.": "システム Super Admin アカウントはこの画面から変更できません。", "Systems Initializing": "システム初期化中", - "TapPay Integration": "TapPay 統合決済", - "TapPay Integration Settings Description": "TapPay 決済連携設定", - "Target": "ターゲット", - "Tax ID (Optional)": "納税者番号 (任意)", + "TapPay Integration": "TapPay連携", + "TapPay Integration Settings Description": "TapPay決済連携設定", + "Target": "目標", + "Tax ID (Optional)": "統一編號(任意)", "Temperature": "温度", - "TermID": "端末ID (TermID)", - "The Super Admin role cannot be deleted.": "スーパー管理者ロールは削除できません。", - "The Super Admin role is immutable.": "スーパー管理者ロールは変更できません。", - "The Super Admin role name cannot be modified.": "スーパー管理者のロール名は変更できません。", - "The image is too large. Please upload an image smaller than 1MB.": "画像が大きすぎます。1MB未満の画像をアップロードしてください。", - "This is a system administrator role. Its name is locked to ensure system stability.": "これはシステム管理者ロールです。システムの安定性を確保するため、名称は固定されています。", - "This role belongs to another company and cannot be assigned.": "このロールは他の会社に属しており、割り当てることはできません。", + "TermID": "端末ID", + "The Super Admin role cannot be deleted.": "Super Admin 権限は削除できません。", + "The Super Admin role is immutable.": "Super Admin 権限は変更できません。", + "The Super Admin role name cannot be modified.": "Super Admin 権限名は変更できません。", + "The image is too large. Please upload an image smaller than 1MB.": "画像サイズが大きすぎます。1MB以下の画像をアップロードしてください。", + "This is a system administrator role. Its name is locked to ensure system stability.": "これはシステム管理者権限です。システムの安定性を確保するため、名称はロックされています。", + "This role belongs to another company and cannot be assigned.": "この権限は別の会社に属しているため割り当てられません。", "Time": "時間", - "Time Slots": "タイムスロット", + "Time Slots": "時間帯", "Timer": "タイマー", "Timestamp": "タイムスタンプ", "To": "まで", - "Today Cumulative Sales": "本日累計販売", - "Today's Transactions": "今日の取引額", - "Total Connected": "接続数合計", - "Total Customers": "顧客總數", - "Total Daily Sales": "本日累計銷量", - "Total Gross Value": "売上高計", - "Total Logins": "總ログイン數", - "Total Selected": "已選擇總數", - "Total Slots": "合計スロット数", - "Total items": "合計 :count 件", - "Track Channel Limit": "ベルトコンベア上限", - "Track Limit": "ベルトコンベア上限", - "Track device health and maintenance history": "デバイスの健全性とメンテナンス履歴を追跡します", + "Today Cumulative Sales": "本日累積売上高", + "Today's Transactions": "本日の取引数", + "Total Connected": "合計接続数", + "Total Customers": "合計顧客数", + "Total Daily Sales": "本日の総売上", + "Total Gross Value": "総グロス価値", + "Total Logins": "合計ログイン数", + "Total Selected": "選択済み合計", + "Total Slots": "総スロット数", + "Total items": "合計項目数: :count", + "Track Channel Limit": "軌道チャネル制限", + "Track Limit": "軌通制限", + "Track device health and maintenance history": "端末の健全性とメンテナンス履歴を追跡", "Transfer Audit": "転送監査", "Transfers": "転送", - "Tutorial Page": "チュートリアル画面", + "Tutorial Page": "チュートリアルページ", "Type": "タイプ", "UI Elements": "UI要素", - "Unauthorized Status": "未認可", + "Unauthorized Status": "未認証", "Uncategorized": "未分類", - "Unified Operational Timeline": "整合式營運時序圖", - "Units": "台", + "Unified Operational Timeline": "統合運用タイムライン", + "Units": "ユニット", "Unknown": "不明", "Update": "更新", - "Update Authorization": "権限を更新", - "Update Customer": "顧客を更新", - "Update Password": "パスワードの更新", - "Update Product": "商品を更新", - "Update existing role and permissions.": "既存のロールと権限を更新します。", - "Update your account's profile information and email address.": "アカウントの氏名、電話番号、メールアドレスを更新します。", - "Upload New Images": "新しい写真をアップロード", - "Uploading new images will replace all existing images.": "新しい写真をアップロードすると、既存のすべての写真が置き換えられます。", - "User": "一般ユーザー", + "Update Authorization": "認証更新", + "Update Customer": "顧客更新", + "Update Password": "パスワード更新", + "Update Product": "商品更新", + "Update existing role and permissions.": "既存の権限とパーミッションを更新します。", + "Update your account's profile information and email address.": "アカウントのプロフィール情報とメールアドレスを更新します。", + "Upload New Images": "新しい画像をアップロード", + "Uploading new images will replace all existing images.": "新しい画像をアップロードすると、既存の画像はすべて入れ替わります。", + "User": "ユーザー", "User Info": "ユーザー情報", "Username": "ユーザー名", - "Users": "ユーザー数", + "Users": "ユーザー", "Utilization Rate": "稼働率", "Utilization Timeline": "稼動時序", "Utilization, OEE and Operational Intelligence": "稼動率、OEE と運用インテリジェンス", - "Utilized Time": "稼動持続時間", + "Utilized Time": "稼動時間", "Valid Until": "有効期限", - "Validation Error": "検証エラー", - "Vending Page": "販売画面", + "Validation Error": "バリデーションエラー", + "Vending Page": "自販機ページ", "Venue Management": "会場管理", - "View Details": "詳細表示", - "View Logs": "ログを表示", - "Waiting for Payment": "決済待ち", + "View Details": "詳細を見る", + "View Logs": "ログを見る", + "Waiting for Payment": "支払い待ち", "Warehouse List": "倉庫リスト", - "Warehouse List (All)": "倉庫リスト(全)", - "Warehouse List (Individual)": "倉庫リスト(個)", + "Warehouse List (All)": "倉庫リスト(すべて)", + "Warehouse List (Individual)": "倉庫リスト(個別)", "Warehouse Management": "倉庫管理", - "Warehouse Permissions": "倉庫管理權限", + "Warehouse Permissions": "倉庫権限", "Warning": "警告", - "Warning: You are editing your own role!": "警告:現在使用中のロールを編集しています!", - "Welcome Gift": "会員登録特典", - "Welcome Gift Status": "来店特典", + "Warning: You are editing your own role!": "警告:自分自身の権限を編集しています!", + "Welcome Gift": "ウェルカムギフト", + "Welcome Gift Status": "ウェルカムギフト状態", "Work Content": "作業内容", "Yes, regenerate": "はい、再生成します", "Yesterday": "昨日", - "You cannot assign permissions you do not possess.": "ご自身が所有していない権限を割り當てることはできません。", - "You cannot delete your own account.": "ご自身のアカウントは削除できません。", - "Your email address is unverified.": "メールアドレスが未確認です。", + "You cannot assign permissions you do not possess.": "自分が持っていないパーミッションを割り当てることはできません。", + "You cannot delete your own account.": "自分自身のアカウントを削除することはできません。", + "Your email address is unverified.": "メールアドレスが未認証です。", "Your recent account activity": "最近のアカウントアクティビティ", "accounts": "アカウント管理", "admin": "管理員", @@ -748,147 +747,67 @@ "app": "APP管理", "audit": "監査管理", "basic-settings": "基本設定", - "basic.machines": "機台設定", - "basic.payment-configs": "客戶金流設定", + "basic.machines": "機体設定", + "basic.payment-configs": "顧客決済設定", "companies": "顧客管理", "data-config": "データ設定", - "data-config.sub-account-roles": "子帳號角色", - "data-config.sub-accounts": "子帳號管理", + "data-config.sub-account-roles": "子アカウント権限", + "data-config.sub-accounts": "子アカウント管理", "e.g. John Doe": "例:山田太郎", "e.g. TWSTAR": "例:TWSTAR", - "e.g. Taiwan Star": "例:台湾スター", + "e.g. Taiwan Star": "例:Taiwan Star", "e.g. johndoe": "例:yamadataro", - "e.g., Company Standard Pay": "例:標準決済組合せ", - "e.g., Taipei Station": "例:台北駅", - "files selected": "ファイルを選択済み", - "items": "個の項目", + "e.g., Company Standard Pay": "例:標準決済設定", + "e.g., Taipei Station": "例:台北駅前", + "files selected": "個のファイルを選択", + "items": "項目", "john@example.com": "john@example.com", "line": "Line管理", - "machines": "機台管理", + "machines": "機体管理", "members": "会員管理", - "menu.analysis": "データ分析", - "menu.app": "APP 運用", + "menu.analysis": "分析管理", + "menu.app": "APP管理", "menu.audit": "監査管理", "menu.basic": "基本管理", "menu.basic-settings": "基本設定", - "menu.basic.machines": "機台設定", - "menu.basic.payment-configs": "決済設定管理", + "menu.basic.machines": "機体設定", + "menu.basic.payment-configs": "顧客決済設定", "menu.data-config": "データ設定", - "menu.data-config.admin-products": "商品ステータス", + "menu.data-config.admin-products": "商品表示管理", "menu.data-config.advertisements": "広告管理", "menu.data-config.badges": "バッジ設定", "menu.data-config.points": "ポイント設定", "menu.data-config.products": "商品管理", - "menu.data-config.sub-accounts": "サブアカウント管理", - "menu.line": "LINE 設定", - "menu.machines": "機台管理", - "menu.machines.list": "機台リスト", + "menu.data-config.sub-accounts": "子アカウント管理", + "menu.line": "Line管理", + "menu.machines": "機体管理", + "menu.machines.list": "機体一覧", "menu.machines.maintenance": "メンテナンス記録", - "menu.machines.permissions": "機台権限", + "menu.machines.permissions": "機体権限", "menu.machines.utilization": "稼働率", "menu.members": "会員管理", - "menu.permission": "權限設定", - "menu.permissions": "權限管理", + "menu.permission": "パーミッション設定", + "menu.permissions": "権限管理", "menu.permissions.accounts": "アカウント管理", "menu.permissions.companies": "顧客管理", - "menu.permissions.roles": "ロール權限管理", - "menu.remote": "リモート指令", - "menu.reservation": "予約管理", - "menu.sales": "売上レポート", - "menu.special-permission": "特殊権限", + "menu.permissions.roles": "権限管理", + "menu.remote": "リモート管理", + "menu.reservation": "予約システム", + "menu.sales": "売上管理", + "menu.special-permission": "特別権限", + "Qty": "数量", + "Exp": "有効期限", + "Low": "低在庫", + "Back to List": "リストに戻る", + "Confirm Changes": "変更を確認", + "Max Capacity:": "最大容量:", + "Clear": "クリア", + "Max": "最大", + "Edit Slot": "スロット編集", + "Stock Quantity": "在庫数", + "Loading Cabinet...": "棚を読み込み中...", + "Monitor and manage stock levels across your fleet": "全機台の在庫状況を監視・管理します", + "Search by name or S/N...": "名称またはシリアル番号で検索...", "menu.warehouses": "倉庫管理", - "min": "分", - "of": "件中", - "permissions": "權限設定", - "permissions.accounts": "帳號管理", - "permissions.companies": "客戶管理", - "permissions.roles": "角色權限管理", - "remote": "リモート管理", - "reservation": "予約システム", - "roles": "ロール權限", - "s": "秒", - "sales": "販売管理", - "special-permission": "特別権限", - "super-admin": "超級管理員", - "to": "から", - "user": "一般用戶", - "vs Yesterday": "前日比", - "warehouses": "倉庫管理", - "待填寫": "待填寫", - "Advertisement List": "広告リスト", - "Machine Advertisement Settings": "機台広告設定", - "Add Advertisement": "広告を追加", - "Edit Advertisement": "広告を編集", - "Delete Advertisement": "広告を削除", - "Duration": "再生時間", - "15 Seconds": "15秒", - "30 Seconds": "30秒", - "60 Seconds": "60秒", - "Position": "配信位置", - "Standby Ad": "待機広告", - "Assign Advertisement": "広告を配信", - "Please select a machine first": "まず機台を選択してください", - "Advertisement created successfully": "広告が正常に作成されました", - "Advertisement updated successfully": "広告が正常に更新されました", - "Advertisement deleted successfully": "広告が正常に削除されました", - "Advertisement assigned successfully": "広告配信が完了しました", - "Vending": "販売画面", - "Visit Gift": "来店特典", - "Standby": "待機広告", - "Advertisement Video/Image": "広告動画/画像", - "Sort Order": "並べ替え順序", - "Date Range": "日時範囲", - "Manage ad materials and machine playback settings": "広告素材と機台再生設定を管理します", - "Preview": "プレビュー", - "No advertisements found.": "広告が見つかりませんでした。", - "vending": "販売画面", - "visit_gift": "来店特典", - "standby": "待機広告", - "No assignments": "配信設定なし", - "Please select a machine to view and manage its advertisements.": "広告を表示および管理する機台を選択してください。", - "Delete Advertisement Confirmation": "広告削除の確認", - "Are you sure you want to delete this advertisement? This will also remove all assignments to machines.": "この広告を削除してもよろしいですか?すべての機台への配信設定も削除されます。", - "Manage your ad material details": "広告素材の詳細を管理します", - "Material Name": "素材名", - "Enter ad material name": "素材名を入力してください", - "Material Type": "素材タイプ", - "Duration (Seconds)": "再生時間(秒)", - "Seconds": "秒", - "Upload Image": "画像をアップロード", - "Upload Video": "動画をアップロード", - "Active Status": "有効ステータス", - "Save Material": "素材を保存", - "Select a material to play on this machine": "この機台で再生する素材を選択してください", - "Target Position": "配信位置", - "Select Material": "素材を選択", - "Please select a material": "素材を選択してください", - "Playback Order": "再生順序", - "Smallest number plays first.": "数字が小さいほど先に再生されます。", - "Confirm Assignment": "配信を確定", - "Are you sure you want to remove this assignment?": "この配信設定を削除してもよろしいですか?", - "image": "画像", - "video": "動画", - "Search Machine...": "機台を検索...", - "Advertisement created successfully.": "広告が正常に作成されました。", - "Advertisement updated successfully.": "広告が正常に更新されました。", - "Advertisement deleted successfully.": "広告が正常に削除されました。", - "Cannot delete advertisement being used by machines.": "機台で使用中の広告は削除できません。", - "Advertisement assigned successfully.": "広告の配信設定が完了しました。", - "Assignment removed successfully.": "配信設定が解除されました。", - "Max 5MB": "最大 5MB", - "Max 50MB": "最大 50MB", - "Select...": "選択してください...", - "Ad Settings": "広告設定", - "System Default (All Companies)": "システムデフォルト(すべての会社)", - "No materials available": "利用可能な素材がありません", - "Search...": "検索...", - "Add Category": "新しいカテゴリー", - "Category Management": "カテゴリー管理", - "Category Name": "カテゴリー名", - "Edit Category": "カテゴリー編集", - "Manage your catalog, categories, and inventory settings.": "型録、カテゴリー、および在庫設定を管理します。", - "Multilingual Names": "多言語名", - "Barcode / Material": "バーコード / 材料", - "Product List": "商品リスト", - "Product Count": "商品数" + "min": "分" } \ No newline at end of file diff --git a/lang/zh_TW.json b/lang/zh_TW.json index 8c3a1f7..38462ba 100644 --- a/lang/zh_TW.json +++ b/lang/zh_TW.json @@ -355,6 +355,7 @@ "Machine Status": "機台狀態", "Machine Status List": "機台運行狀態列表", "Machine Stock": "機台庫存", + "Machine Stock Management": "機台庫存管理", "Machine Utilization": "機台稼動率", "Machine created successfully.": "機台已成功建立。", "Machine images updated successfully.": "機台圖片已成功更新。", @@ -828,8 +829,29 @@ "menu.reservation": "預約管理", "menu.sales": "銷售報表", "menu.special-permission": "特殊權限", - "menu.warehouses": "倉儲管理", + "Machine Inventory": "Machine Inventory", + "Low Stock": "Low Stock", + "Batch Number": "Batch Number", + "Apply changes to all identical products in this machine": "Apply changes to all identical products in this machine", + "menu.warehouses": "Warehouse Management", "min": "分", + "Qty": "數量", + "Exp": "效期", + "Low": "低庫存", + "Back to List": "返回列表", + "Confirm Changes": "確認變更", + "Max Capacity:": "最大容量:", + "Clear": "清除", + "Max": "最大", + "Edit Slot": "編輯貨道", + "Stock Quantity": "庫存數量", + "Loading Cabinet...": "正在載入貨道...", + "Monitor and manage stock levels across your fleet": "監控並管理所有機台的庫存水位", + "Search by name or S/N...": "搜尋名稱或序號...", + "Machine Inventory": "機台庫存", + "Low Stock": "低庫存", + "Batch Number": "批號", + "Apply changes to all identical products in this machine": "同步套用至此機台內的所有相同商品", "of": "總計", "permissions": "權限設定", "permissions.accounts": "帳號管理", diff --git a/resources/views/admin/basic-settings/machines/edit.blade.php b/resources/views/admin/basic-settings/machines/edit.blade.php index e9becb5..46bd89c 100644 --- a/resources/views/admin/basic-settings/machines/edit.blade.php +++ b/resources/views/admin/basic-settings/machines/edit.blade.php @@ -219,6 +219,7 @@ +
{{ __('Manage your machine fleet and operational data') }} @@ -146,23 +156,8 @@ window.machineApp = function(initialTab) {
| - {{ __('Machine Information') }} | -- {{ __('Total Slots') }} | -- {{ __('Expired') }} | -- {{ __('Warning') }} | -- {{ __('Pending') }} | -- {{ __('Risk') }} | -- {{ __('Actions') }} | -
|---|---|---|---|---|---|---|
|
- id }}')">
-
-
- @if(isset($machine->image_urls[0]))
-
-
-
-
- {{ $machine->name }}
-
- {{ $machine->serial_no }}
-
- |
- - {{ - $machine->total_slots }} - | -
-
- {{ $machine->expired_count }}
-
- |
-
-
- {{ $machine->warning_count }}
-
- |
-
-
- {{ $machine->pending_count }}
-
- |
- - @if($machine->expired_count > 0) - - - {{ __('Critical') }} - - @elseif($machine->warning_count > 0) - - - {{ __('Warning') }} - - @else - - - {{ __('Optimal') }} - - @endif - | -
-
-
-
- |
-
+ {{ __('Monitor and manage stock levels across your fleet') }} +
+