feat(国际化): 去除冗余代码,增加国际化配置页面

This commit is contained in:
Zhunianya
2026-03-20 11:20:50 +08:00
parent 69d58763ee
commit edeaa75337
36 changed files with 1304 additions and 3893 deletions

View File

@@ -54,6 +54,7 @@
"jsencrypt": "3.0.0-rc.1",
"jshint": "^2.13.4",
"jsonlint": "^1.6.3",
"jszip": "^3.10.1",
"moment": "^2.29.4",
"mqtt": "^4.3.3",
"nprogress": "0.2.0",
@@ -76,7 +77,8 @@
"vue-seamless-scroll": "^1.1.23",
"vue2-ace-editor": "^0.0.15",
"vuedraggable": "2.24.3",
"vuex": "3.6.0"
"vuex": "3.6.0",
"xlsx": "^0.18.5"
},
"devDependencies": {
"@vue/cli-plugin-babel": "4.4.6",

View File

@@ -1,30 +0,0 @@
{
"appVersion.index.348485-0": "Please enter the version name",
"appVersion.index.348485-1": "Please enter the version number",
"appVersion.index.348485-2": "Yes",
"appVersion.index.348485-3": "No",
"appVersion.index.348485-4": "Whether it's the latest version",
"appVersion.index.348485-5": "apk link",
"appVersion.index.348485-6": "wgt link",
"appVersion.index.348485-7": "Update content",
"appVersion.index.348485-8": "CreatgeBy",
"appVersion.index.348485-9": "CreationTime",
"appVersion.index.348485-10": "Version number",
"appVersion.index.348485-11": "Version name",
"appVersion.index.348485-12": "Whether hot updates",
"appVersion.index.348485-13": "Tip: Only one latest version",
"appVersion.index.348485-14": "Update content",
"appVersion.index.348485-15": "Please enter the update content",
"appVersion.index.348485-16": "Confirm",
"appVersion.index.348485-17": "Cancel",
"appVersion.index.348485-18": "Please select",
"appVersion.index.348485-19": "Please upload the APK file",
"appVersion.index.348485-20": "Please upload the WGT file",
"appVersion.index.348485-21": "Please enter the version content",
"appVersion.index.348485-22": "Add APP version",
"appVersion.index.348485-23": "Modify APP version",
"appVersion.index.348485-24": "The modification was successful",
"appVersion.index.348485-25": "The addition was successful",
"appVersion.index.348485-26": "The deletion was successful",
"appVersion.index.348485-27": "Are you sure to delete the APP version data item with ID {0}?"
}

View File

@@ -1,111 +0,0 @@
{
"card.platform.title": "IoT Card Platform",
"card.platform.search": "Search",
"card.platform.reset": "Reset",
"card.platform.add": "Add",
"card.platform.edit": "Edit",
"card.platform.view": "View",
"card.platform.delete": "Delete",
"card.platform.export": "Export",
"card.platform.id": "ID",
"card.platform.name": "Name",
"card.platform.platform_label": "Platform",
"card.platform.tenant_name": "Tenant Name",
"card.platform.create_by": "Created By",
"card.platform.create_time": "Create Time",
"card.platform.operation": "Operation",
"card.platform.edit_title": "Edit IoT Card Platform",
"card.platform.add_title": "Add IoT Card Platform",
"card.platform.please_enter_id": "Please enter ID",
"card.platform.please_enter_name": "Please enter name",
"card.platform.please_select_platform": "Please select platform",
"card.platform.confirm_delete": "Are you sure to delete the IoT card platform with ID \"{ids}\"?",
"card.platform.delete_success": "Delete successfully",
"card.platform.ok": "OK",
"card.platform.cancel": "Cancel",
"card.platform.parse_remark_field_failed": "Failed to parse remark field",
"card.platform.parse_config_content_failed": "Failed to parse configContent",
"card.platform.modify_success": "Modified successfully",
"card.platform.add_success": "Added successfully",
"card.platform.synchronize": "Synchronize",
"card.platform.synchronize_success": "Synchronized successfully",
"card.sim.id": "ID",
"card.sim.iccid": "ICCID",
"card.sim.imsi": "IMSI",
"card.sim.card_number": "Card Number",
"card.sim.access_number": "Access Number",
"card.sim.operator": "Operator",
"card.sim.card_status": "Card Status",
"card.sim.total_data": "Total Data",
"card.sim.data_used": "Data Used",
"card.sim.data_remaining": "Data Remaining",
"card.sim.data_alert_threshold": "Data Alert Threshold (%)",
"card.sim.open_date": "Open Date",
"card.sim.activate_time": "Activate Time",
"card.sim.expire_time": "Expire Time",
"card.sim.down_time": "Down Time",
"card.sim.device_id": "Device Number",
"card.sim.device_name": "Device Name",
"card.sim.product": "Product Category",
"card.sim.card_platform": "Card Platform",
"card.sim.data_plan": "Data Plan",
"card.sim.tenant_id": "Tenant ID",
"card.sim.tenant_name": "Tenant Name",
"card.sim.create_by": "Created By",
"card.sim.create_time": "Create Time",
"card.sim.update_by": "Updated By",
"card.sim.update_time": "Update Time",
"card.sim.del_flag": "Delete Flag",
"card.sim.please_enter_iccid": "Please enter ICCID",
"card.sim.please_enter_imsi": "Please enter IMSI",
"card.sim.please_enter_card_number": "Please enter card number",
"card.sim.please_select_card_status": "Please select card status",
"card.sim.please_select_card_platform": "Please select card platform",
"card.sim.please_select_operator": "Please select operator",
"card.sim.please_enter_access_number": "Please enter access number",
"card.sim.card_platform_not_empty": "Card platform cannot be empty",
"card.sim.iccid_not_empty": "ICCID cannot be empty",
"card.sim.access_number_not_empty": "Access number cannot be empty",
"card.sim.add_title": "Add IoT Card",
"card.sim.edit_title": "Edit IoT Card",
"card.sim.confirm_delete": "Are you sure to delete the IoT card with ID \"{ids}\"?",
"card.sim.view_title": "SIM card details",
"card.sim.basic_info": "Basic Info",
"card.sim.imel": "IMEI",
"card.sim.notify_users": "Notification User Settings",
"card.sim.select_device": "Select Device",
"card.sim.enter_device_name": "Pleace enter the device name",
"card.sim.serial_number": "Serial number",
"card.sim.enter_serial_number": "Pleace enter the serial number",
"card.sim.select": "Select",
"card.sim.data_alert_threshold_tip": "If not configured, no notifications will be sent. Once configured, a message will be sent when the daily scheduled traffic synchronization exceeds the threshold.",
"card.sim.title": "SIM card",
"card.sim.refresh_successful": "Refresh successful",
"card.sim.notify_users_placeholder": "Pleace select the notify users ",
"card.sim.data_alert_threshold_placeholder": "Pleace enter the data alert threshold",
"card.sim.device_id_placeholder": "Pleace select the device",
"card.sim.device_blind_info": "Binding Device Info:",
"card.sim.none": "No data available, please add SIM card information",
"card.sim.alarm_settings": "Alarm Settings",
"card.sim.sim_card_info": "SIM Card Info",
"card.overview.title": "IoT Card Overview",
"card.overview.total": "Total Cards",
"card.overview.online": "Online",
"card.overview.pending": "Pending Activation",
"card.overview.shutdown": "Shutdown",
"card.overview.paused": "Account Termination",
"card.overview.unknown": "Unknown",
"card.overview.operator_distribution": "Operator Distribution",
"card.overview.platform_distribution": "Platform Distribution",
"card.overview.top_flow_month": "Top Flow This Month",
"card.overview.sim_number": "SIM Number",
"card.overview.used_flow": "Used Flow (MB)",
"card.overview.flow_ratio": "Flow Ratio (%)",
"card.overview.is_alert": "Alert",
"card.overview.yes": "Yes",
"card.overview.no": "No",
"card.overview.no_data": "No Data",
"card.overview.no_data_tooltip": "No Data"
}

View File

@@ -1,32 +0,0 @@
{
"dragEditor.565720-0": "Text Display",
"dragEditor.565720-1": "Numerical Display",
"dragEditor.565720-2": "Numerical Control",
"dragEditor.565720-3": "Multiposition Control",
"dragEditor.565720-4": "Switch Control",
"dragEditor.565720-5": "Historical Data",
"dragEditor.565720-6": "Page Settings",
"dragEditor.565720-7": "Layer Management",
"dragEditor.565720-8": "Component Settings",
"dragEditor.565720-9": "Device Details",
"dragEditor.565720-10": "Reset",
"dragEditor.565720-11": "Export",
"dragEditor.565720-12": "Import",
"dragEditor.565720-13": "View",
"dragEditor.565720-14": "Preview",
"dragEditor.565720-15": "Save",
"dragEditor.565720-16": "View JSON",
"dragEditor.565720-17": "After resetting, the data you added or modified will become invalid. Do you want to continue?",
"dragEditor.565720-18": "Please select the component from the left side",
"dragEditor.565720-19": "iPhone 8 height",
"dragEditor.565720-20": "Components at fixed positions (such as: bottom navigation, floating) cannot be placed at the first position!",
"dragEditor.565720-21": "The current component can only add one!",
"dragEditor.565720-22": "Title",
"dragEditor.565720-23": "Text Display 1",
"dragEditor.565720-24": "Numeric Display 1",
"dragEditor.565720-25": "Numeric Control 1",
"dragEditor.565720-26": "Multi-State Control 1",
"dragEditor.565720-27": "Switch Control 1",
"dragEditor.565720-28": "Instrument",
"dragEditor.565720-29": "After selecting the component, set the parameters on the right side"
}

View File

@@ -1,151 +0,0 @@
{
"firmware.index.222541-0": "Firmware Name",
"firmware.index.222541-1": "Please enter the firmware name",
"firmware.index.222541-2": "Please select a product name",
"firmware.index.222541-3": "Add firmware",
"firmware.index.222541-4": "Firmware version",
"firmware.index.222541-5": "Product Name",
"firmware.index.222541-6": "Download address",
"firmware.index.222541-7": "state",
"firmware.index.222541-8": "Latest",
"firmware.index.222541-9": "default",
"firmware.index.222541-10": "Creation time",
"firmware.index.222541-11": "Firmware Description",
"firmware.index.222541-12": "Firmware update ",
"firmware.index.222541-13": "Supports Chinese, English capitalization, numbers, and some commonly used symbols",
"firmware.index.222541-14": "Please select a product",
"firmware.index.222541-15": "Firmware Version ",
"firmware.index.222541-16": "Please enter the firmware version",
"firmware.index.222541-17": "Latest firmware",
"firmware.index.222541-18": "Tip: There can only be one latest firmware in the product",
"firmware.index.222541-19": "Select IPSW ",
"firmware.index.222541-20": "Task Name",
"firmware.index.222541-21": "Please enter 0-100 characters to describe and record the last firmware update",
"firmware.index.222541-22": "Please enter the task name (supports Chinese, English capitalization, numbers, and some commonly used symbols, with a maximum length of 20)",
"firmware.index.222541-23": "Upgrade method",
"firmware.index.222541-24": "By firmware version",
"firmware.index.222541-25": "By device name",
"firmware.index.222541-26": "Version number to be upgraded",
"firmware.index.222541-27": "Please select the upgrade version number",
"firmware.index.222541-28": "Upgrade scope",
"firmware.index.222541-29": "Please select the upgrade scope",
"firmware.index.222541-30": "Select device",
"firmware.index.222541-31": "Choose device",
"firmware.index.222541-32": "Schedule upgrade time",
"firmware.index.222541-33": "Select date and time",
"firmware.index.222541-34": "Upgrade Description",
"firmware.index.222541-35": "Please enter 0-200 characters to describe and record the upgrade task",
"firmware.index.222541-36": "Firmware name cannot be empty",
"firmware.index.222541-37": "Product ID cannot be empty",
"firmware.index.222541-38": "The product name cannot be empty",
"firmware.index.222541-39": "The firmware version cannot be empty",
"firmware.index.222541-40": "The file path cannot be empty",
"firmware.index.222541-41": "Task name cannot be empty",
"firmware.index.222541-42": "Add new firmware",
"firmware.index.222541-43": "Modifying product firmware",
"firmware.index.222541-44": "Are you sure to delete the product firmware number as{0}",
"firmware.index.222541-46": "Firmware update ",
"firmware.index.222541-47": "A selected device is required to submit a firmware upgrade task!",
"firmware.index.222541-48": "Firmware type",
"firmware.index.222541-49": "to subcontract",
"firmware.index.222541-50": "Firmware type",
"firmware.index.222541-51": "Please select firmware type",
"firmware.index.222541-52": "Subcontracting and pulling",
"firmware.index.222541-53": "HTTP",
"firmware.deviceList.index.222542-0": "Select device",
"firmware.deviceList.index.222542-1": "Device Name",
"firmware.deviceList.index.222542-2": "Please enter the device name",
"firmware.deviceList.index.222542-3": "Firmware version",
"firmware.deviceList.index.222542-4": "Please enter the firmware version",
"firmware.deviceList.index.222542-5": "Equipment number",
"firmware.deviceList.index.222542-6": "Equipment type",
"firmware.deviceList.index.222542-7": "share",
"firmware.deviceList.index.222542-8": "have",
"firmware.deviceList.index.222542-9": "Device status",
"firmware.deviceList.index.222542-10": "Device selection successful",
"firmware.deviceList.index.222542-11": "equipment",
"firmware.deviceList.index.222542-12": "Please enter the device name / device number",
"firmware.deviceList.index.222542-13": "Please enter the version number",
"firmware.deviceList.index.222542-14": "Please choose",
"firmware.deviceList.index.222542-15": "Subcontract upgrade version",
"firmware.deviceList.index.222542-16": "HTTP Upgrade Version",
"firmware.task.222543-0": "Firmware information",
"firmware.task.222543-1": "Firmware upgrade device statistics",
"firmware.task.222543-2": "task management",
"firmware.task.222543-3": "Task details",
"firmware.task.222543-4": "Equipment details",
"firmware.task.222543-5": "Please enter the task ID",
"firmware.task.222543-6": "Please enter the device serial number",
"firmware.task.222543-7": "Please enter the device name",
"firmware.task.222543-8": "Task ID",
"firmware.task.222543-9": "Task Name",
"firmware.task.222543-10": "Task type",
"firmware.task.222543-11": "Version upgrade",
"firmware.task.222543-12": "define equipment",
"firmware.task.222543-13": "Number of devices",
"firmware.task.222543-14": "Booking time",
"firmware.task.222543-15": "Task Description",
"firmware.task.222543-16": "Add time",
"firmware.task.222543-17": "View",
"firmware.task.222543-18": "serial number",
"firmware.task.222543-19": "Current version number",
"firmware.task.222543-20": "Message ID",
"firmware.task.222543-21": "Upgrade status",
"firmware.task.222543-22": "The upgrade scope cannot be empty",
"firmware.task.222543-23": "New tasks have been added",
"firmware.task.222543-24": "Save...",
"firmware.task.222543-25": "Upgrade successful",
"firmware.task.222543-26": "Upgrade failed",
"firmware.task.222543-27": "cease",
"firmware.task.222543-28": "unknown",
"firmware.task.222543-29": "Status details",
"firmware.task.222543-30": "Status update time",
"firmware.task.222543-31": "Task details",
"firmware.task.222543-32": "Task Information",
"firmware.task.222543-33": "Task statistics",
"firmware.task.222543-34": "device details ",
"firmware.task.222543-35": "All devices",
"firmware.task.222543-36": "Upgrade successful",
"firmware.task.222543-37": "To be pushed",
"firmware.task.222543-38": "Upgrading",
"firmware.task.222543-39": "Upgrade failed",
"firmware.task.222543-40": "cease",
"firmware.task.222543-41": "Refresh",
"firmware.task.222543-42": "Is it the latest",
"firmware.task.222543-43": "Add time",
"firmware.task.222543-44": "Firmware Description",
"firmware.task.222543-45": "Total number of firmware upgrade devices",
"firmware.task.222543-46": "Upgrading",
"firmware.task.222543-47": "Number of devices",
"firmware.task.222543-48": "To be pushed",
"firmware.task.222543-49": "serialNumber",
"firmware.task.222543-50": "newly added",
"firmware.task.222543-51": "Please enter the task name",
"firmware.task.222543-52": "Add time",
"firmware.task.222543-53": "delete",
"firmware.task.222543-54": "Please enter the device number",
"firmware.task.222543-55": "speed of progress",
"firmware.task.222543-56": "operation",
"firmware.task.222543-57": "Re push",
"firmware.task.222543-58": "Upgrade scope",
"firmware.task.222543-59": "Please select the upgrade scope",
"firmware.task.222543-60": "Select device",
"firmware.task.222543-61": "Select device",
"firmware.task.222543-62": "Firmware type",
"firmware.task.222543-63": "newest",
"firmware.task.222543-64": "default",
"firmware.task.222543-65": "to subcontract",
"firmware.task.222543-66": "Are you sure to delete the data item with task ID {0}?",
"firmware.task.222543-67": "Delete successfully",
"firmware.task.222543-68": "Version upgrade",
"firmware.task.222543-69": "define equipment",
"firmware.task.222543-70": "Waiting for upgrade",
"firmware.task.222543-71": "Sending",
"firmware.task.222543-72": "Upgrading in progress",
"firmware.task.222543-73": "success",
"firmware.task.222543-74": "fail",
"firmware.task.222543-75": "stop it",
"firmware.task.222543-76": "unknown",
"firmware.task.222543-77": "Execute re push",
"firmware.task.222543-78": "Re push failed"
}

View File

@@ -1,23 +0,0 @@
{
"license.index.654891-0": "Fengxin IoT",
"license.index.654891-1": "FastBee IoT Platform Authorization and Certification",
"license.index.654891-2": "Authorization and Certification",
"license.index.654891-3": "Note:",
"license.index.654891-4": "Please select the authorization type",
"license.index.654891-5": "Please enter the company name",
"license.index.654891-6": "Please enter the certificate name",
"license.index.654891-7": "Upload",
"license.index.654891-8": "The certification has expired or has not been certified. Please upload the license certificate for certification!",
"license.index.654891-9": "Start Installation",
"license.index.654891-10": "Zone Verification (Company)",
"license.index.654891-11": "IP White List (Individual)",
"license.index.654891-12": "Trial",
"license.index.654891-13": "Please upload the file",
"license.index.654891-14": "The file format is incorrect. Please upload the.lic file!",
"license.index.654891-15": "Certificate upload successful",
"license.index.654891-16": "Upload failed",
"license.index.654891-17": "Certificate installation in progress...",
"license.index.654891-18": "Installation successful. Please log in",
"license.index.654891-19": "Installation failed. Please try again",
"license.index.654891-20": "Certificate installation failed"
}

View File

@@ -1,39 +0,0 @@
{
"iot.maintenance.index.839454-0": "Please enter maintenance name",
"iot.maintenance.index.839454-1": "Please enter device name",
"iot.maintenance.index.839454-2": "Please select status",
"iot.maintenance.index.839454-3": "Please select maintenance type",
"iot.maintenance.index.839454-4": "Maintenance Name",
"iot.maintenance.index.839454-5": "Device Name",
"iot.maintenance.index.839454-6": "Maintenance Start Time",
"iot.maintenance.index.839454-7": "Next Maintenance Time",
"iot.maintenance.index.839454-8": "Status",
"iot.maintenance.index.839454-9": "Maintenance Type",
"iot.maintenance.index.839454-10": "Creator",
"iot.maintenance.index.839454-11": "Creation Time",
"iot.maintenance.index.839454-12": "Please select device",
"iot.maintenance.index.839454-13": "In-warranty maintenance time",
"iot.maintenance.index.839454-14": "Device after-sales service warranty period, years: default 365 days, months: default 30 days;",
"iot.maintenance.index.839454-15": "Please enter in-warranty maintenance time",
"iot.maintenance.index.839454-16": "Please select",
"iot.maintenance.index.839454-17": "Maintenance cycle",
"iot.maintenance.index.839454-18": "The cycle for executing the maintenance plan, must be less than maintenance time, years: default 365 days, months: default 30 days;",
"iot.maintenance.index.839454-19": "Please enter the unit for in-warranty maintenance time",
"iot.maintenance.index.839454-20": "Maintenance plan start time;",
"iot.maintenance.index.839454-21": "Please select maintenance start time",
"iot.maintenance.index.839454-22": "Advance work order time",
"iot.maintenance.index.839454-23": "The time when maintenance work orders are automatically generated in advance according to the maintenance plan, must be less than the maintenance cycle;",
"iot.maintenance.index.839454-24": "Please select advance work order time",
"iot.maintenance.index.839454-25": "Stop execution when in-warranty maintenance expires",
"iot.maintenance.index.839454-26": "Maintenance name cannot be empty",
"iot.maintenance.index.839454-27": "Please select the device",
"iot.maintenance.index.839454-28": "In-warranty maintenance time cannot be empty",
"iot.maintenance.index.839454-29": "In-warranty maintenance time unit cannot be empty",
"iot.maintenance.index.839454-30": "Maintenance cycle cannot be empty",
"iot.maintenance.index.839454-31": "Maintenance cycle unit cannot be empty",
"iot.maintenance.index.839454-32": "Maintenance start time cannot be empty",
"iot.maintenance.index.839454-33": "Advance work order time cannot be empty",
"iot.maintenance.index.839454-34": "Add Device Maintenance",
"iot.maintenance.index.839454-35": "Modify Device Maintenance",
"iot.maintenance.index.839454-36": "Are you sure you want to delete the data item for device maintenance number {0}?"
}

View File

@@ -1,80 +0,0 @@
{
"notify.channel.index.333541-0": "Channel name",
"notify.channel.index.333541-1": "Please enter the channel name",
"notify.channel.index.333541-2": "Channel type",
"notify.channel.index.333541-3": "Please select channel type",
"notify.channel.index.333541-4": "New channels added",
"notify.channel.index.333541-5": "Editing channels",
"notify.channel.index.333541-6": "Type of sending channel",
"notify.channel.index.333541-7": "Service providers",
"notify.channel.index.333541-8": "Creation time",
"notify.channel.index.333541-9": "Service providers",
"notify.channel.index.333541-10": "Please select a service provider",
"notify.channel.index.333541-11": "Please enter the configuration content",
"notify.channel.index.333541-12": "Channel name cannot be empty",
"notify.channel.index.333541-13": "The sending channel type cannot be empty",
"notify.channel.index.333541-14": "Service provider cannot be empty",
"notify.channel.index.333541-15": "Add notification channels",
"notify.channel.index.333541-16": "Modify notification channels",
"notify.channel.index.333541-17": "Are you sure to delete the notification channel number as {0}",
"notify.channel.index.333541-18": "number",
"notify.template.index.333542-0": "Template Name",
"notify.template.index.333542-1": "Please enter the template name",
"notify.template.index.333542-2": "Business code",
"notify.template.index.333542-3": "Please select notification business",
"notify.template.index.333542-4": "New template added",
"notify.template.index.333542-5": "Channel account",
"notify.template.index.333542-6": "Is it enabled",
"notify.template.index.333542-7": "test",
"notify.template.index.333542-8": "Please select notification business",
"notify.template.index.333542-9": "Please select a channel account",
"notify.template.index.333542-10": "Select type",
"notify.template.index.333542-11": "Please select the sending type",
"notify.template.index.333542-12": "Please select the type of DingTalk notification to send",
"notify.template.index.333542-13": "Please enter the configuration content",
"notify.template.index.333542-14": "Send account",
"notify.template.index.333542-15": "Please enter your phone number, email, or user ID",
"notify.template.index.333542-16": "Please enter variable information",
"notify.template.index.333542-17": "The template name cannot be empty",
"notify.template.index.333542-18": "Notification channels (SMS, WeChat service number, email, etc.) cannot be empty",
"notify.template.index.333542-19": "Template content, configuration channel parameters cannot be empty",
"notify.template.index.333542-20": "The template content cannot be empty",
"notify.template.index.333542-21": "Channel source cannot be empty",
"notify.template.index.333542-22": "Channel account cannot be empty",
"notify.template.index.333542-23": "Service provider cannot be empty",
"notify.template.index.333542-24": "Account information cannot be empty",
"notify.template.index.333542-25": "Add notification template",
"notify.template.index.333542-26": "Modify notification template",
"notify.template.index.333542-27": "Are you sure to delete the notification template with the number{0}",
"notify.template.index.333542-28": "The current template already has templates with the same activation conditions enabled (activation conditions: one template for the same business code can be enabled for SMS, voice, and email channels, and one for different service providers under WeChat and DingTalk channels). Do you want to continue enabling the current template?",
"notify.template.index.333542-29": "Successfully enabled",
"notify.template.index.333542-30": "Enabling failed",
"notify.template.index.333542-31": "Disabled",
"notify.template.index.333542-32": "Operation successful",
"notify.template.index.333542-33": "operation failed",
"notify.template.index.333542-34": "Sent successfully!",
"notify.template.index.333542-35": "Number",
"notify.log.333543-0": "Channel number",
"notify.log.333543-1": "Please enter the channel number",
"notify.log.333543-2": "Template number",
"notify.log.333543-3": "Please enter the template number",
"notify.log.333543-4": "Send account",
"notify.log.333543-5": "Please enter the sending account",
"notify.log.333543-6": "Business code",
"notify.log.333543-7": "Please select notification business",
"notify.log.333543-8": "Sending time",
"notify.log.333543-9": "Start date",
"notify.log.333543-10": "End date",
"notify.log.333543-11": "Channel account",
"notify.log.333543-12": "Template Name",
"notify.log.333543-13": "Sending status",
"notify.log.333543-14": "fail",
"notify.log.333543-15": "success",
"notify.log.333543-16": "Sending time",
"notify.log.333543-17": "Return content",
"notify.log.333543-18": "Please enter the content",
"notify.log.333543-19": "Message content",
"notify.log.333543-20": "Add notification log",
"notify.log.333543-21": "View log details",
"notify.log.333543-22": "Are you sure to delete the notification log with the number {0}"
}

View File

@@ -1,72 +0,0 @@
{
"protocol.index.111542-0": "Protocol Name",
"protocol.index.111542-1": "Please enter the protocol name",
"protocol.index.111542-2": "Protocol encoding",
"protocol.index.111542-3": "Please enter the protocol code",
"protocol.index.111542-4": "Protocol Summary",
"protocol.index.111542-5": "Upload address",
"protocol.index.111542-6": "Protocol type",
"protocol.index.111542-7": "Is it displayed",
"protocol.index.111542-8": "details",
"protocol.index.111542-9": "Modify",
"protocol.index.111542-10": "Cancel",
"protocol.index.111542-11": "Modify the protocol data format",
"protocol.index.111542-12": "Modified successfully",
"simulate.index.111543-0": "Please enter the device name",
"simulate.index.111543-1": "choice",
"simulate.index.111543-2": "Equipment name (number)",
"simulate.index.111543-3": "Sub devices",
"simulate.index.111543-4": "Polling status",
"simulate.index.111543-5": "Modbus device simulator",
"simulate.index.111543-6": "Time:",
"simulate.index.111543-7": "Topic:",
"simulate.index.111543-8": "Content",
"simulate.index.111543-9": "Please select Payload",
"simulate.index.111543-10": "Please select QoS",
"simulate.index.111543-11": "0 (maximum once)",
"simulate.index.111543-12": "1 (at least once)",
"simulate.index.111543-13": "2 (available and only once)",
"simulate.index.111543-14": "Please select a theme",
"simulate.index.111543-15": "Message Editor",
"simulate.index.111543-16": "Please use the message editor to generate",
"simulate.index.111543-17": "send",
"simulate.index.111543-18": "Attribute reporting",
"simulate.index.111543-19": "Service distribution",
"simulate.index.111543-20": "There is currently no data available",
"simulate.index.111543-21": "Please select a device slave",
"simulate.index.111543-22": "Service invocation",
"simulate.index.111543-23": "Data range:",
"simulate.index.111543-24": "Please select the protocol:",
"simulate.index.111543-25": "Please select the protocol",
"simulate.index.111543-26": "Currently only supports the modbus protocol",
"simulate.index.111543-27": "Message decoding",
"simulate.index.111543-28": "Input message to be parsed",
"simulate.index.111543-29": "analysis",
"simulate.index.111543-30": "Read instruction generation",
"simulate.index.111543-31": "Slave address",
"simulate.index.111543-32": "Slave address, such as: 1",
"simulate.index.111543-33": "Register Address",
"simulate.index.111543-34": "Function code",
"simulate.index.111543-35": "Please select the function code",
"simulate.index.111543-36": "03- Read Holding Register",
"simulate.index.111543-37": "04- Read Input Register",
"simulate.index.111543-38": "Number of reads",
"simulate.index.111543-39": "generate",
"simulate.index.111543-40": "Generate and copy to send box",
"simulate.index.111543-41": "Message:",
"simulate.index.111543-42": "Write instruction generation",
"simulate.index.111543-43": "Write value",
"simulate.index.111543-44": "Input value",
"simulate.index.111543-45": "CRC generation/verification",
"simulate.index.111543-46": "Message to be verified",
"simulate.index.111543-47": "check",
"simulate.index.111543-48": "Result:",
"simulate.index.111543-49": "Please select the device first",
"simulate.index.111543-50": "The theme of device simulation cannot be empty",
"simulate.index.111543-51": "The message content simulated by the device cannot be empty",
"simulate.index.111543-52": "Command issued successfully",
"simulate.index.111543-53": "Service call successful",
"simulate.index.111543-54": "Enable",
"simulate.index.111543-55": "Deactivate",
"simulate.index.111543-56": "Success"
}

View File

@@ -1,36 +0,0 @@
{
"order.index.045965-1": "Add command permission control",
"order.index.045965-2": "Modify instruction permission control",
"order.index.045965-3": "Are you sure to delete the data item with instruction permission control number {0}?",
"order.index.045965-4": "Directive",
"order.index.045965-5": "device",
"order.index.045965-6": "User",
"order.index.045965-7": "number of actions",
"order.index.045965-8": "Start Time",
"order.index.045965-9": "End Time",
"order.index.045965-10": "Select device",
"order.index.045965-11": "Select User",
"order.index.045965-12": "Instruction configuration",
"order.index.045965-13": "Select All",
"order.index.045965-14": "Number of operations",
"order.index.045965-15": "start time",
"order.index.045965-16": "Please choose a start time",
"order.index.045965-17": "End time",
"order.index.045965-18": "Please select an end time",
"order.index.045965-19": "Select file",
"order.index.045965-20": "picture",
"order.index.045965-21": "remarks",
"order.index.045965-22": "Please enter the content",
"order.index.045965-23": "determine",
"order.index.045965-24": "Cancel",
"order.index.045965-25": "Please select a device",
"order.index.045965-26": "Please select a user",
"order.index.045965-27": "The number of operations cannot be empty",
"order.index.045965-28": "Please choose a start time",
"order.index.045965-29": "Please select an end time",
"order.index.045965-30": "Select at least one instruction",
"order.index.045965-31": "View File",
"order.index.045965-32": "Picture",
"order.index.045965-33": "Instruction Name",
"order.index.045965-34": "Please enter the name of the instruction"
}

View File

@@ -1,184 +0,0 @@
{
"ruleengine.list.index.807357-0": "Please enter the rule name",
"ruleengine.list.index.807357-1": "Please select the rule status",
"ruleengine.list.index.807357-2": "Rule Name",
"ruleengine.list.index.807357-3": "Number of nodes",
"ruleengine.list.index.807357-4": "Rule Status",
"ruleengine.list.index.807357-5": "Rule Description",
"ruleengine.list.index.807357-6": "Update Time",
"ruleengine.list.index.807357-7": "Is it confirmed to delete the data item with the rule number {0} ?",
"ruleengine.list.index.807357-8": "Add Rule",
"ruleengine.list.index.807357-9": "Edit Rule",
"ruleengine.list.index.807357-10": "Are you sure to delete the clicked line ?",
"ruleengine.list.index.807357-11": "Please select the node or line you want to delete",
"ruleengine.list.index.807357-12": "Are you sure you want to delete node {0} ?",
"ruleengine.list.index.807357-13": "Are you sure you want to download the process data ?",
"ruleengine.list.index.807357-14": "Downloading in progress. Please wait a moment ...",
"ruleengine.editor.index.807357-0": "Flow",
"ruleengine.editor.index.807357-1": "Case",
"ruleengine.editor.index.807357-2": "Ban",
"ruleengine.editor.index.807357-3": "Enable",
"ruleengine.editor.index.807357-4": "Nodes do not support connecting to themselves",
"ruleengine.editor.index.807357-5": "This relationship already exists and is not allowed to be created repeatedly",
"ruleengine.editor.index.807357-6": "Connection backloop between two nodes is not supported",
"ruleengine.editor.index.807357-7": "This node cannot connect to multiple nodes",
"ruleengine.editor.index.807357-8": "The ending node cannot connect to other nodes",
"ruleengine.editor.index.807357-9": "The start node can only output",
"ruleengine.editor.index.807357-10": "This node does not accept multiple connections",
"ruleengine.editor.index.807357-11": "Connection successful",
"ruleengine.editor.index.807357-12": "Please drag the node into the canvas.",
"ruleengine.editor.index.807357-13": "The start node already exists",
"ruleengine.editor.index.807357-14": "The end node already exists",
"ruleengine.editor.index.807357-15": "The script name cannot be empty",
"ruleengine.editor.index.807357-16": "The script content cannot be empty",
"ruleengine.editor.index.807357-17": "Log",
"ruleengine.editor.index.807357-18": "Debug Log",
"ruleengine.editor.index.807357-19": "This node is not allowed to connect, and the comments are only used for interpretation",
"ruleengine.editor.index.807357-20": "Script node data exception",
"ruleengine.editor.index.807357-21": "Debug content",
"ruleengine.editor.index.807357-22": "device variable triggers node data exception",
"ruleengine.editor.index.807357-23": "The value of the device variable trigger condition cannot be null",
"ruleengine.editor.index.807357-24": "device variable execution node data exception",
"ruleengine.editor.index.807357-25": "The value of the device variable execution condition cannot be null",
"ruleengine.editor.index.807357-26": "The variable triggered by the product cannot be null",
"ruleengine.editor.index.807357-27": "The variable or value executed by the product cannot be null",
"ruleengine.editor.index.807357-28": "The time of the timed trigger cannot be empty",
"ruleengine.editor.index.807357-29": "The behavior of the alarm node cannot be set to null",
"ruleengine.editor.index.807357-30": "The number of alarms on the alarm node cannot be empty",
"ruleengine.editor.index.807357-31": "The alarm scenario of the alarm node cannot be empty",
"ruleengine.editor.index.807357-32": "Conditional trigger node data exception",
"ruleengine.editor.index.807357-33": "conditional trigger value cannot be null",
"ruleengine.editor.index.807357-34": "No",
"ruleengine.editor.index.807357-35": "log",
"ruleengine.editor.index.807357-36": "execution time",
"ruleengine.editor.index.807357-37": "none",
"ruleengine.editor.index.807357-38": "execution status",
"ruleengine.editor.index.807357-39": "success",
"ruleengine.editor.index.807357-40": "failed",
"ruleengine.editor.index.807357-41": "No result information",
"ruleengine.editor.index.807357-42": "Result information",
"ruleengine.editor.components.info.807357-0": "Process data information",
"ruleengine.editor.components.info.807357-1": "Instructions",
"ruleengine.editor.components.info.807357-2": "The following process information can be stored for convenient loading of the next process",
"ruleengine.editor.components.info.807357-3": "Got it",
"ruleengine.editor.components.case.807357-0": "Case",
"ruleengine.editor.components.case.807357-1": "Name",
"ruleengine.editor.components.case.807357-2": "Switch Process A",
"ruleengine.editor.components.case.807357-3": "Switch Process B",
"ruleengine.editor.components.case.807357-4": "Switch Process C",
"ruleengine.editor.components.case.807357-5": "Custom Style",
"ruleengine.editor.components.case.807357-6": "Force guide diagram",
"ruleengine.editor.components.case.807357-7": "Switch multi branch case diagram",
"ruleengine.editor.components.case.807357-8": "If condition case diagram - single true",
"ruleengine.editor.components.case.807357-9": "If condition case diagram",
"ruleengine.editor.components.case.807357-10": "Timed trigger case diagram",
"ruleengine.editor.components.case.807357-11": "Custom trigger case diagram",
"ruleengine.editor.components.case.807357-12": "Case study of multiple triggering conditions",
"ruleengine.editor.components.help.807357-0": "Help",
"ruleengine.editor.components.help.807357-1": "How to add",
"ruleengine.editor.components.help.807357-2": "Hold down the mouse drag and drop on the left side of the component to the middle the canvas loosen the mouse",
"ruleengine.editor.components.help.807357-3": "How do I remove",
"ruleengine.editor.components.help.807357-4": "Page to delete",
"ruleengine.editor.components.help.807357-5": "A mouse click need to Delete the node, click the Delete icon in the upper left corner or click \"Delete\" button on the keyboard",
"ruleengine.editor.components.help.807357-6": "Through the code to delete",
"ruleengine.editor.components.help.807357-7": "this.deleteNode(nodeId)",
"ruleengine.editor.components.help.807357-8": "How to move",
"ruleengine.editor.components.help.807357-9": "The mouse moves to a node, when the mouse to press the mouse to drag the icon to a new location to loosen the mouse",
"ruleengine.editor.components.help.807357-10": "How connection",
"ruleengine.editor.components.help.807357-11": "The mouse moves to the node to the left of the icon, when the mouse to + press the mouse moves to another node in the loosen the mouse",
"ruleengine.editor.components.help.807357-12": "How to add a condition",
"ruleengine.editor.components.help.807357-13": "Click on the canvas in the attachment, at the right side of page will appear a form to enter the new conditions, click on \"save\"",
"ruleengine.editor.components.nodeForm.807357-0": "Style",
"ruleengine.editor.components.nodeForm.807357-1": "Attribute",
"ruleengine.editor.components.nodeForm.807357-2": "Name",
"ruleengine.editor.components.nodeForm.807357-3": "ICO icon",
"ruleengine.editor.components.nodeForm.807357-4": "State",
"ruleengine.editor.components.nodeForm.807357-5": "Please select",
"ruleengine.editor.components.nodeForm.807357-6": "Trigger condition",
"ruleengine.editor.components.nodeForm.807357-7": "Success",
"ruleengine.editor.components.nodeForm.807357-8": "Warning",
"ruleengine.editor.components.nodeForm.807357-9": "Error",
"ruleengine.editor.components.nodeForm.807357-10": "In operation",
"ruleengine.editor.components.nodeForm.807357-11": "arbitrary condition",
"ruleengine.editor.components.nodeForm.807357-12": "All conditions",
"ruleengine.editor.components.form.flow-alarm.807357-0": "Behavior Settings",
"ruleengine.editor.components.form.flow-alarm.807357-1": "Please select",
"ruleengine.editor.components.form.flow-alarm.807357-2": "Number of alerts",
"ruleengine.editor.components.form.flow-alarm.807357-3": "Please enter the number of alerts",
"ruleengine.editor.components.form.flow-alarm.807357-4": "Alert scenario",
"ruleengine.editor.components.form.flow-alarm.807357-5": "Alert Execution",
"ruleengine.editor.components.form.flow-alarm.807357-6": "Alert Recovery",
"ruleengine.editor.components.form.flow-comment.807357-0": "Description",
"ruleengine.editor.components.form.flow-condition.807357-0": "Determine the type",
"ruleengine.editor.components.form.flow-condition.807357-1": "Conditional expression",
"ruleengine.editor.components.form.flow-condition.807357-2": "equals (=)",
"ruleengine.editor.components.form.flow-condition.807357-3": "not equal to (!=)",
"ruleengine.editor.components.form.flow-condition.807357-4": "greater than (>)",
"ruleengine.editor.components.form.flow-condition.807357-5": "less than ( < )",
"ruleengine.editor.components.form.flow-condition.807357-6": "greater than or equal to (>=)",
"ruleengine.editor.components.form.flow-condition.807357-7": "less than or equal to (<=)",
"ruleengine.editor.components.form.flow-condition.807357-8": "between",
"ruleengine.editor.components.form.flow-condition.807357-9": "not between",
"ruleengine.editor.components.form.flow-condition.807357-10": "contain",
"ruleengine.editor.components.form.flow-condition.807357-11": "```notContain```",
"ruleengine.editor.components.form.flow-condition.807357-12": "```Prompt```",
"ruleengine.editor.components.form.flow-condition.807357-13": "Please connect first and then configure the conditional expression",
"ruleengine.editor.components.form.flow-condition.807357-14": "reported value",
"ruleengine.editor.components.form.flow-condition.807357-15": "State value",
"ruleengine.editor.components.form.flow-condition.807357-16": "Please link the trigger component",
"ruleengine.editor.components.form.flow-condition.807357-17": "Please set the trigger component variable",
"ruleengine.editor.components.form.flow-data-bridge.807357-0": "quote",
"ruleengine.editor.components.form.flow-data-bridge.807357-1": "Reference existing database bridges, or create new database bridges on your own",
"ruleengine.editor.components.form.flow-data-bridge.807357-2": "Please select an existing bridge (optional)",
"ruleengine.editor.components.form.flow-data-bridge.807357-3": "If not selected, manually create a new database bridging configuration",
"ruleengine.editor.components.form.flow-data-bridge.807357-4": "Add database bridging configuration",
"ruleengine.editor.components.form.flow-delay.807357-0": "duration",
"ruleengine.editor.components.form.flow-delay.807357-1": "Please enter",
"ruleengine.editor.components.form.flow-delay.807357-2": "millisecond",
"ruleengine.editor.components.form.flow-delay.807357-3": "second",
"ruleengine.editor.components.form.flow-delay.807357-4": "divide",
"ruleengine.editor.components.form.flow-delay.807357-5": "hour",
"ruleengine.editor.components.form.flow-delay.807357-6": "sky",
"ruleengine.editor.components.form.flow-dev-excute.807357-0": "equipment",
"ruleengine.editor.components.form.flow-dev-excute.807357-1": "type",
"ruleengine.editor.components.form.flow-dev-excute.807357-2": "variable",
"ruleengine.editor.components.form.flow-dev-excute.807357-3": "value",
"ruleengine.editor.components.form.flow-dev-trigger.807357-0": "equipment",
"ruleengine.editor.components.form.flow-dev-trigger.807357-1": "type",
"ruleengine.editor.components.form.flow-dev-trigger.807357-2": "variable",
"ruleengine.editor.components.form.flow-http-bridge.807357-0": "quote",
"ruleengine.editor.components.form.flow-http-bridge.807357-1": "Reference existing HTTP bridges, or create new ones yourself",
"ruleengine.editor.components.form.flow-http-bridge.807357-2": "Please select an existing bridge (optional)",
"ruleengine.editor.components.form.flow-http-bridge.807357-3": "If not selected, manually create a new HTTP bridging configuration",
"ruleengine.editor.components.form.flow-http-bridge.807357-4": "Add HTTP bridging configuration",
"ruleengine.editor.components.form.flow-http-bridge.807357-5": "The device is not bound to a product, so the model cannot be retrieved. Please reselect the device!",
"ruleengine.editor.components.form.flow-line.807357-0": "type",
"ruleengine.editor.components.form.flow-line.807357-1": "numerical value",
"ruleengine.editor.components.form.flow-line.807357-2": "Normal path",
"ruleengine.editor.components.form.flow-line.807357-3": "Choose a path",
"ruleengine.editor.components.form.flow-line.807357-4": "True (if path)",
"ruleengine.editor.components.form.flow-line.807357-5": "False (if path)",
"ruleengine.editor.components.form.flow-line.807357-6": "Please enter the value",
"ruleengine.editor.components.form.flow-line.807357-7": "The value must be between 1-9999",
"ruleengine.editor.components.form.flow-line.807357-8": "When the starting point of the line is a conditional component, you can choose path/true(if path)/false(if path), other lines can only choose normal path",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-0": "quote",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-1": "Reference existing MQTT bridges, or create new MQTT bridges on your own",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-2": "Please select an existing bridge (optional)",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-3": "If not selected, manually create a new MQTT bridging configuration",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-4": "Add Mqtt bridging configuration",
"ruleengine.editor.components.form.flow-product-execute.807357-0": "product",
"ruleengine.editor.components.form.flow-product-execute.807357-1": "Unreleased",
"ruleengine.editor.components.form.flow-product-execute.807357-2": "Published",
"ruleengine.editor.components.form.flow-product-execute.807357-3": "type",
"ruleengine.editor.components.form.flow-product-execute.807357-4": "variable",
"ruleengine.editor.components.form.flow-product-execute.807357-5": "value",
"ruleengine.editor.components.form.flow-product-trigger.807357-0": "product",
"ruleengine.editor.components.form.flow-product-trigger.807357-1": "Unreleased",
"ruleengine.editor.components.form.flow-product-trigger.807357-2": "Published",
"ruleengine.editor.components.form.flow-product-trigger.807357-3": "type",
"ruleengine.editor.components.form.flow-product-trigger.807357-4": "variable",
"ruleengine.editor.components.form.flow-product-trigger.807357-5": "The product is not bound to a model, so the model cannot be retrieved. Please reselect the product!",
"ruleengine.editor.components.form.flow-scheduled-trigger.807357-0": "time",
"ruleengine.editor.components.form.flow-script.807357-0": "script content",
"ruleengine.editor.components.debugLog.807357-0": "No log information available"
}

View File

@@ -1,876 +0,0 @@
{
"scada.center.indeieScada.373453-0": "name",
"scada.center.indeieScada.373453-1": "Please enter the scada name",
"scada.center.indeieScada.373453-2": "Switch cards/lists",
"scada.center.indeieScada.373453-3": "unknown",
"scada.center.indeieScada.373453-4": "Configuration Cover",
"scada.center.indeieScada.373453-5": "Configuration Name",
"scada.center.indeieScada.373453-6": "resolving power",
"scada.center.indeieScada.373453-7": "Please enter a name",
"scada.center.indeieScada.373453-8": "Configuration Description",
"scada.center.indeieScada.373453-9": "Please enter a description",
"scada.center.indeieScada.373453-10": "Please enter the configuration name",
"scada.center.indeieScada.373453-11": "Associated Scenarios",
"scada.center.indeieScada.373453-12": "Please select the associated scene",
"scada.center.indeieScada.373453-13": "Add configuration information",
"scada.center.indeieScada.373453-14": "Modifying configuration information",
"scada.center.indeieScada.373453-15": "Are you sure to delete the data item with configuration number {0}?",
"scada.center.indeieScada.373453-16": "Edit",
"scada.center.indeieScada.373453-17": "Design",
"scada.center.indeieScada.373453-18": "Running",
"scada.center.indeieScada.373453-19": "Share",
"scada.center.tempScada.342311-0": "Related products",
"scada.center.tempScada.342311-1": "Please select an associated product",
"scada.center.tempScada.342311-2": "Edit",
"scada.center.tempScada.342311-3": "Design",
"scada.center.tempScada.342311-4": "Share",
"scada.center.sceneScada.098325-0": "Edit",
"scada.center.sceneScada.098325-1": "Design",
"scada.center.sceneScada.098325-2": "Running",
"scada.center.sceneScada.098325-3": "Share",
"scada.component.302923-0": "working",
"scada.component.302923-1": "Saving, please wait",
"scada.component.302923-2": "private",
"scada.component.302923-3": "public",
"scada.component.302923-4": "placeholder ",
"scada.component.302923-5": "thumbnail",
"scada.component.302923-6": "type",
"scada.component.302923-7": "picture",
"scada.component.302923-8": "Please select the type",
"scada.component.302923-9": "Add component management",
"scada.component.302923-10": "Modify component management",
"scada.component.302923-11": "Are you sure to delete the data item with component number {0}?",
"scada.component.302923-12": "Design",
"scada.component.302923-13": "Component Details",
"scada.echart.209302-0": "Add chart management",
"scada.echart.209302-1": "Modify Chart Management",
"scada.echart.209302-2": "Are you sure to delete the data item with chart number {0}?",
"scada.echart.209302-3": "Chart Editing",
"scada.echart.209302-4": "Chart Library",
"scada.echart.209302-5": "Chart display",
"scada.echart.209302-6": "download",
"scada.echart.209302-7": "Design",
"scada.echart.209302-8": "Name",
"scada.echart.209302-9": "Type",
"scada.echart.209302-10": "UpdateTime",
"scada.echart.209302-11": "Chart Details",
"scada.gallery.309456-0": "System Library",
"scada.gallery.309456-1": "File Name",
"scada.gallery.309456-2": "Please enter the file name",
"scada.gallery.309456-3": "upload",
"scada.gallery.309456-4": "placeholder ",
"scada.gallery.309456-5": "Cloud configuration",
"scada.gallery.309456-6": "Please select the type of upload on the left side",
"scada.gallery.309456-7": "The size of the uploaded image cannot exceed 20MB!",
"scada.gallery.309456-8": "Upload successful",
"scada.gallery.309456-9": "Are you sure to delete this icon file?",
"scada.gallery.309456-10": "warning",
"scada.gallery.309456-11": "file type",
"scada.gallery.309456-12": "Please select a file type",
"scada.gallery.309456-13": "File Name",
"scada.gallery.309456-14": "Please enter the file name",
"scada.model.649850-0": "Model Name",
"scada.model.649850-1": "Please enter the model name",
"scada.model.649850-2": "Model Type",
"scada.model.649850-3": "(zip including obj/mtl/textures)",
"scada.model.649850-4": "yes",
"scada.model.649850-5": "Model File",
"scada.model.649850-6": "Please select the model type",
"scada.model.649850-7": "Please upload the model file",
"scada.model.649850-8": "Add Model Management",
"scada.model.649850-9": "Modify Model Management",
"scada.model.649850-10": "Please fill in the correct model URL",
"scada.model.649850-11": "Are you sure to delete the data item with model number {0}?",
"scada.topo.editor.023345-0": "copy",
"scada.topo.editor.023345-1": "Topping",
"scada.topo.editor.023345-2": "Bottom placement",
"scada.topo.editor.023345-3": "rotate",
"scada.topo.editor.023345-4": "Clockwise 90 °",
"scada.topo.editor.023345-5": "90 ° counterclockwise",
"scada.topo.editor.023345-6": "Horizontal Mirror",
"scada.topo.editor.023345-7": "mirror vertically ",
"scada.topo.editor.023345-8": "Custom angle",
"scada.topo.editor.023345-9": "alignment",
"scada.topo.editor.023345-10": "Left aligned",
"scada.topo.editor.023345-11": "Right aligned",
"scada.topo.editor.023345-12": "Align Up",
"scada.topo.editor.023345-13": "bottom justify",
"scada.topo.editor.023345-14": "Horizontally equidistant",
"scada.topo.editor.023345-15": "Vertical equidistant",
"scada.topo.editor.023345-16": "combination",
"scada.topo.editor.023345-17": "Ungroup",
"scada.topo.editor.023345-18": "Unlock",
"scada.topo.editor.023345-19": "locking",
"scada.topo.editor.023345-20": "gallery",
"scada.topo.editor.023345-21": "Device binding",
"scada.topo.editor.023345-22": "revoke",
"scada.topo.editor.023345-23": "recovery",
"scada.topo.editor.023345-24": "zoom",
"scada.topo.editor.023345-25": "help",
"scada.topo.editor.023345-26": "gallery",
"scada.topo.editor.023345-27": "Clockwise rotation",
"scada.topo.editor.023345-28": "Counterclockwise rotation",
"scada.topo.editor.023345-29": "Horizontal Mirror",
"scada.topo.editor.023345-30": "mirror vertically ",
"scada.topo.editor.023345-31": "Custom rotation angle",
"scada.topo.editor.023345-32": "The rotation angle cannot be empty",
"scada.topo.editor.023345-33": "Angle cannot be empty",
"scada.topo.editor.023345-34": "The rotation angle must be a number",
"scada.topo.editor.023345-35": "Custom angle",
"scada.topo.editor.023345-36": "Please select an image",
"scada.topo.editor.023345-37": "Preview it under your device",
"scada.topo.editor.023345-38": "Align the horizontal center",
"scada.topo.editor.023345-39": "Align the vertical center",
"scada.topo.editor.023345-40": "Sharing",
"scada.topo.editor.023345-41": "Cancel",
"scada.topo.editor.023345-42": "Save",
"scada.topo.editor.023345-43": "Modify not saved, please click Save",
"scada.topo.editor.023345-44": "Paste",
"scada.topo.share.842076-0": "Please enter password to access the shared page",
"scada.topo.share.842076-1": "Please enter password",
"scada.topo.share.842076-2": "The sharing link has expired",
"scada.topo.share.842076-3": "The password is incorrect",
"scada.topo.fullscreenShare.034354-0": "Initializing",
"scada.topo.fullscreenShare.034354-1": "Password verification",
"scada.topo.fullscreenShare.034354-2": "Share password",
"scada.topo.fullscreenShare.034354-3": "No sharing yet",
"scada.topo.fullscreenShare.034354-4": "The password is incorrect, please re-enter it",
"scada.topoMain.320129-0": "Desperately importing",
"scada.topoMain.320129-1": "Tip: Only the \"Json\" file can be imported.",
"scada.topoMain.320129-2": "tip: Only the \"Json\" file can be imported. After the import is successful, bind device parameters again.",
"scada.topoMain.320129-3": "Please enter the content",
"scada.topoMain.320129-4": "Configuration import",
"scada.topoMain.320129-5": "Import Results",
"scada.topoMain.320129-6": "Full screen",
"scada.topoMain.320129-7": "Reload",
"scada.topoMain.320129-8": "The weather component already exists and cannot be added again",
"scada.topoMain.320129-9": "Combination component not selected",
"scada.topoMain.320129-10": "animation",
"scada.topoMain.320129-11": "click ",
"scada.topoMain.320129-12": "Component color",
"scada.topoMain.320129-13": "Filter rendering",
"scada.topoMain.320129-14": "Component filling",
"scada.topoMain.320129-15": "Parameter binding",
"scada.topoMain.320129-16": "Do you want to save the current page and switch to another page?",
"scada.topoMain.320129-17": "prompt",
"scada.topoMain.320129-18": "Switching, please wait",
"scada.topoMain.320129-19": "Do you want to delete this page? Once deleted, it will not be restored!",
"scada.topoMain.320129-20": "Unknown Page",
"scada.topoMain.320129-21": "Saving, please wait",
"scada.topoMain.320129-22": "Please wait",
"scada.topoMain.320129-23": "The system may not save your changes.",
"scada.topoMain.320129-24": "Leave this page?",
"scada.topoMain.320129-25": "leave",
"scada.topoMain.320129-26": "Deleting, please wait",
"scada.topoMain.320129-27": "Unknown Page",
"topo.topoRender.038944-0": "Please add components to the scada panel",
"topo.topoRender.038944-1": "Instruction is being issued",
"topo.topoRender.038944-2": "Sub interface",
"topo.topoRender.038944-3": "Kind reminder",
"topo.topoRender.038944-4": "Press F11 or right-click on the keyboard to turn on full screen, and press Esc to exit full screen.",
"topo.topoRender.038944-5": "Image generation",
"topo.topoRender.038944-6": "Full screen display",
"topo.topoRender.038944-7": "Generating, please wait",
"topo.topoRender.038944-8": "Please enter password",
"topo.topoRender.038944-9": "Password cannot be empty",
"topo.topoRender.038944-10": "Please enter the correct password",
"topo.topoRender.038944-11": "click ",
"topo.topoRender.038944-12": "External links",
"topo.topoRender.038944-13": "Configuration interface",
"topo.topoRender.038944-14": "Unbound scada interface",
"topo.topoRender.038944-15": "Operational variables",
"topo.topoRender.038944-16": "Tip: Please enter the variable value",
"topo.topoRender.038944-17": "Tip:",
"topo.topoRender.038944-18": "Variable value cannot be empty",
"topo.topoRender.038944-19": "Variable value must be a number",
"topo.topoRender.038944-20": "The device is not online and cannot be set!",
"topo.topoRender.038944-21": "Command issued successfully",
"topo.topoRender.038944-22": "Unbound scada page",
"topo.topoRender.038944-23": "No bound variable",
"topo.topoRender.038944-24": "The current device is not online, please check whether the device is normal!",
"topo.topoSelectImage.034642-0": "My favorites",
"topo.topoSelectImage.034642-1": "System Library",
"topo.topoSelectImage.034642-2": "File Name",
"topo.topoSelectImage.034642-3": "Please enter the file name",
"topo.topoSelectImage.034642-4": "collection",
"topo.topoSelectImage.034642-5": "upload",
"topo.topoSelectImage.034642-6": "Collection successful",
"topo.topoSelectImage.034642-7": "The size of the uploaded image cannot exceed 5MB!",
"topo.topoSelectImage.034642-8": "Are you sure to delete this icon file?",
"topo.topoSelectImage.034642-9": "warning",
"topo.topoToolbox.250932-9": "remove",
"topo.topoToolbox.250932-10": "device management",
"topo.topoToolbox.250932-11": "Are you sure you want to remove this associated device",
"topo.topoToolbox.250932-12": "Removal successful",
"scada.topo.components.chart.view-chart.073848-0": "Double click on the bound variable",
"scada.topo.components.chart.view-chart.073848-1": "Variable binding",
"scada.topo.components.chart.view-chart.073848-2": "When comparing multiple attributes, the reporting time for multiple attributes must be the same!",
"scada.topo.components.chart.view-chart.073848-3": "Please bind the device or create a physical model for the device first",
"scada.topo.components.chart.view-chart.073848-4": "Confirm",
"scada.topo.components.chart.view-chart.073848-5": "Cancel",
"scada.topo.components.chart.view-chart.073848-6": "Please select properties for the same device!",
"scada.topo.components.chart.view-chart.073848-7": "Binding variable success",
"topo.components.chart.073848-5": "Outermost layer",
"topo.components.chart.073848-6": "Inner gradient zone",
"topo.components.chart.073848-7": "Middle layer",
"topo.components.chart.073848-8": "custom",
"topo.components.chart.073848-9": "Run successfully",
"topo.components.chart.073848-10": "Chart initialization failed, please check the code view!",
"topo.components.chart.073848-13": "Please enter the correct URL!",
"topo.components.chart.073848-14": "Please enter the correct JSON data",
"topo.components.chart.073848-15": "Alarm status",
"topo.components.chart.073848-16": "Gateway device",
"topo.components.chart.073848-17": "Alarm",
"topo.components.chart.073848-18": "Processed",
"topo.components.chart.073848-19": "Unprocessed",
"topo.components.chart.073848-20": "Work Order Status",
"topo.components.chart.073848-21": "Inspected",
"topo.components.chart.073848-22": "Not inspected",
"topo.components.chart.073848-23": "obsolete ",
"topo.components.chart.073848-24": "Transparent box",
"topo.components.chart.073848-25": "circular",
"topo.components.chart.073848-26": "White circle",
"topo.components.chart.073848-27": "name",
"topo.components.chart.073848-28": "Please enter the correct JSON data",
"topo.components.chart.073848-29": "Run successfully",
"topo.components.chart.073848-30": "Chart initialization failed, please check the code view!",
"topo.three.028394-0": "Capacity: 100 tons",
"topo.three.028394-1": "Temperature: 30 ° C",
"topo.three.028394-2": "Warehouse height -20 meters",
"topo.three.028394-3": "Beam height -15.8 meters",
"topo.three.028394-4": "granary",
"topo.three.028394-5": "Granary 02",
"topo.three.028394-6": "Granary 03",
"topo.three.028394-7": "Granary 04",
"topo.three.028394-8": "Granary 11",
"topo.three.028394-9": "Granary 12",
"topo.three.028394-10": "Granary 13",
"topo.three.028394-11": "Granary 05",
"topo.three.028394-12": "Granary 06",
"topo.three.028394-13": "Granary 07",
"topo.three.028394-14": "Granary 08",
"topo.three.028394-15": "Granary 09",
"topo.three.028394-16": "Granary 010",
"topo.three.028394-17": "Granary 14",
"topo.three.028394-18": "Granary 15",
"topo.three.028394-19": "Granary 16",
"topo.three.028394-20": "Bottom panel",
"topo.components.data-toolbox.302495-0": "basic",
"topo.components.data-toolbox.302495-1": "panel",
"topo.components.data-toolbox.302495-2": "Configuration interface",
"topo.components.data-toolbox.302495-3": "click ",
"topo.components.data-toolbox.302495-4": "Component color",
"topo.components.data-toolbox.302495-5": "animation",
"topo.components.propertyBar.index.038495-0": "Layout",
"topo.components.propertyBar.index.038495-1": "Data",
"topo.components.propertyBar.index.038495-2": "Position and Size",
"topo.components.propertyBar.index.038495-3": "X-Axis Coordinate",
"topo.components.propertyBar.index.038495-4": "Y-Axis Coordinate",
"topo.components.propertyBar.index.038495-5": "Width Setting",
"topo.components.propertyBar.index.038495-6": "Height Setting",
"topo.components.propertyBar.index.038495-7": "Basic Style",
"topo.components.propertyBar.index.038495-8": "Component Name",
"topo.components.propertyBar.index.038495-9": "Please enter the component name",
"topo.components.propertyBar.index.038495-10": "Minimum Value",
"topo.components.propertyBar.index.038495-11": "Please enter the minimum value",
"topo.components.propertyBar.index.038495-12": "Maximum Value",
"topo.components.propertyBar.index.038495-13": "Please enter the maximum value",
"topo.components.propertyBar.index.038495-14": "Scale Interval",
"topo.components.propertyBar.index.038495-15": "Please enter the scale interval",
"topo.components.propertyBar.index.038495-16": "Weather Style",
"topo.components.propertyBar.index.038495-17": "Please select the weather style",
"topo.components.propertyBar.index.038495-18": "Full Mode",
"topo.components.propertyBar.index.038495-19": "Simple Mode",
"topo.components.propertyBar.index.038495-20": "Map Theme",
"topo.components.propertyBar.index.038495-21": "Please select a map theme",
"topo.components.propertyBar.index.038495-22": "Default theme",
"topo.components.propertyBar.index.038495-23": "Fresh Blue",
"topo.components.propertyBar.index.038495-24": "Night",
"topo.components.propertyBar.index.038495-25": "Red Alert",
"topo.components.propertyBar.index.038495-26": "Simplified",
"topo.components.propertyBar.index.038495-27": "Natural Green",
"topo.components.propertyBar.index.038495-28": "Midnight Blue",
"topo.components.propertyBar.index.038495-29": "Romantic Pink",
"topo.components.propertyBar.index.038495-30": "Youth Green",
"topo.components.propertyBar.index.038495-31": "Fresh Blue-Green",
"topo.components.propertyBar.index.038495-32": "High-End Gray Style",
"topo.components.propertyBar.index.038495-33": "Strong Boundary",
"topo.components.propertyBar.index.038495-34": "Layer Height",
"topo.components.propertyBar.index.038495-35": "Please Enter Layer Height",
"topo.components.propertyBar.index.038495-36": "Background Color",
"topo.components.propertyBar.index.038495-37": "Transparency Value",
"topo.components.propertyBar.index.038495-38": "Border Radius",
"topo.components.propertyBar.index.038495-39": "Shadow Length",
"topo.components.propertyBar.index.038495-40": "Shadow Color",
"topo.components.propertyBar.index.038495-41": "Statistical Type",
"topo.components.propertyBar.index.038495-42": "Device Statistics",
"topo.components.propertyBar.index.038495-43": "Please Select Statistical Type",
"topo.components.propertyBar.index.038495-44": "Device Status",
"topo.components.propertyBar.index.038495-45": "Alarm Status",
"topo.components.propertyBar.index.038495-46": "Image Selection",
"topo.components.propertyBar.index.038495-47": "Image Path",
"topo.components.propertyBar.index.038495-48": "Upload Image",
"topo.components.propertyBar.index.038495-49": "Text Description",
"topo.components.propertyBar.index.038495-50": "Please enter text description",
"topo.components.propertyBar.index.038495-51": "Alignment",
"topo.components.propertyBar.index.038495-52": "Please select alignment",
"topo.components.propertyBar.index.038495-53": "Left",
"topo.components.propertyBar.index.038495-54": "Center",
"topo.components.propertyBar.index.038495-55": "Right",
"topo.components.propertyBar.index.038495-56": "Font Type",
"topo.components.propertyBar.index.038495-57": "Please select the font type",
"topo.components.propertyBar.index.038495-58": "Font Size",
"topo.components.propertyBar.index.038495-59": "Please enter the font size",
"topo.components.propertyBar.index.038495-60": "Filter/Shadow",
"topo.components.propertyBar.index.038495-61": "Filter Rendering",
"topo.components.propertyBar.index.038495-62": "Filter",
"topo.components.propertyBar.index.038495-63": "Shadow",
"topo.components.propertyBar.index.038495-64": "Component Color",
"topo.components.propertyBar.index.038495-65": "Component Visibility",
"topo.components.propertyBar.index.038495-66": "Please select component visibility",
"topo.components.propertyBar.index.038495-67": "Show",
"topo.components.propertyBar.index.038495-68": "Hide",
"topo.components.propertyBar.index.038495-69": "Code View",
"topo.components.propertyBar.index.038495-70": "Data Engine",
"topo.components.propertyBar.index.038495-71": "Map Selection",
"topo.components.propertyBar.index.038495-72": "Map File",
"topo.components.propertyBar.index.038495-73": "Please select a map",
"topo.components.propertyBar.index.038495-74": "Anhui",
"topo.components.propertyBar.index.038495-75": "Macao",
"topo.components.propertyBar.index.038495-76": "Beijing",
"topo.components.propertyBar.index.038495-77": "Chongqing",
"topo.components.propertyBar.index.038495-78": "Fujian",
"topo.components.propertyBar.index.038495-79": "Gansu",
"topo.components.propertyBar.index.038495-80": "Guangdong",
"topo.components.propertyBar.index.038495-81": "Guangxi",
"topo.components.propertyBar.index.038495-82": "Guizhou",
"topo.components.propertyBar.index.038495-83": "Hainan",
"topo.components.propertyBar.index.038495-84": "Hebei",
"topo.components.propertyBar.index.038495-85": "Heilongjiang",
"topo.components.propertyBar.index.038495-86": "Henan",
"topo.components.propertyBar.index.038495-87": "Hubei",
"topo.components.propertyBar.index.038495-88": "Hunan",
"topo.components.propertyBar.index.038495-89": "Jiangsu",
"topo.components.propertyBar.index.038495-90": "Jiangxi",
"topo.components.propertyBar.index.038495-91": "Jilin",
"topo.components.propertyBar.index.038495-92": "Liaoning",
"topo.components.propertyBar.index.038495-93": "Inner Mongolia",
"topo.components.propertyBar.index.038495-94": "Ningxia",
"topo.components.propertyBar.index.038495-95": "Qinghai",
"topo.components.propertyBar.index.038495-96": "Shandong",
"topo.components.propertyBar.index.038495-97": "Shanghai",
"topo.components.propertyBar.index.038495-98": "Shanxi",
"topo.components.propertyBar.index.038495-99": "Sichuan",
"topo.components.propertyBar.index.038495-100": "Taiwan",
"topo.components.propertyBar.index.038495-101": "Tianjin",
"topo.components.propertyBar.index.038495-102": "Hong Kong",
"topo.components.propertyBar.index.038495-103": "Xinjiang",
"topo.components.propertyBar.index.038495-104": "Tibet",
"topo.components.propertyBar.index.038495-105": "Yunnan",
"topo.components.propertyBar.index.038495-106": "Zhejiang",
"topo.components.propertyBar.index.038495-107": "Custom",
"topo.components.propertyBar.index.038495-108": "Map Data",
"topo.components.propertyBar.index.038495-109": "Please enter the map data address",
"topo.components.propertyBar.index.038495-110": "Chart Refresh",
"topo.components.propertyBar.index.038495-111": "Hover Tip",
"topo.components.propertyBar.index.038495-112": "Hover Mode",
"topo.components.propertyBar.index.038495-113": "Long Display",
"topo.components.propertyBar.index.038495-114": "Short Display",
"topo.components.propertyBar.index.038495-115": "Hover Position",
"topo.components.propertyBar.index.038495-116": "Please select the hover position",
"topo.components.propertyBar.index.038495-117": "Top",
"topo.components.propertyBar.index.038495-118": "Top Left",
"topo.components.propertyBar.index.038495-119": "Top Right",
"topo.components.propertyBar.index.038495-120": "Bottom",
"topo.components.propertyBar.index.038495-121": "Bottom Left",
"topo.components.propertyBar.index.038495-122": "Bottom Right",
"topo.components.propertyBar.index.038495-123": "Left",
"topo.components.propertyBar.index.038495-124": "Top Left",
"topo.components.propertyBar.index.038495-125": "Bottom Left",
"topo.components.propertyBar.index.038495-126": "Right",
"topo.components.propertyBar.index.038495-127": "Top Right",
"topo.components.propertyBar.index.038495-128": "Bottom Right",
"topo.components.propertyBar.index.038495-129": "Dark",
"topo.components.propertyBar.index.038495-130": "Bright",
"topo.components.propertyBar.index.038495-131": "Statistics section",
"topo.components.propertyBar.index.038495-132": "Please select the statistics section",
"topo.components.propertyBar.index.038495-133": "Line width",
"topo.components.propertyBar.index.038495-134": "Please enter the line width",
"topo.components.propertyBar.index.038495-135": "Line height",
"topo.components.propertyBar.index.038495-136": "Please enter the line height",
"topo.components.propertyBar.index.038495-137": "Line spacing",
"topo.components.propertyBar.index.038495-138": "Please enter the line spacing",
"topo.components.propertyBar.index.038495-139": "Line shape",
"topo.components.propertyBar.index.038495-140": "Please select the line shape",
"topo.components.propertyBar.index.038495-141": "Rectangle",
"topo.components.propertyBar.index.038495-142": "Ellipse",
"topo.components.propertyBar.index.038495-143": "Flow direction",
"topo.components.propertyBar.index.038495-144": "Please select the flow direction",
"topo.components.propertyBar.index.038495-145": "Forward",
"topo.components.propertyBar.index.038495-146": "Reverse",
"topo.components.propertyBar.index.038495-147": "Stationary",
"topo.components.propertyBar.index.038495-148": "Flow speed",
"topo.components.propertyBar.index.038495-149": "Fast",
"topo.components.propertyBar.index.038495-150": "Medium",
"topo.components.propertyBar.index.038495-151": "Slow",
"topo.components.propertyBar.index.038495-152": "Number of anchor points",
"topo.components.propertyBar.index.038495-153": "Please enter the number of anchor points",
"topo.components.propertyBar.index.038495-154": "Level shape",
"topo.components.propertyBar.index.038495-155": "Please select the level shape",
"topo.components.propertyBar.index.038495-156": "Container",
"topo.components.propertyBar.index.038495-157": "Round",
"topo.components.propertyBar.index.038495-158": "Rectangle",
"topo.components.propertyBar.index.038495-159": "Rounded rectangle",
"topo.components.propertyBar.index.038495-160": "Triangle",
"topo.components.propertyBar.index.038495-161": "Rhombus",
"topo.components.propertyBar.index.038495-162": "Hot air balloon shape",
"topo.components.propertyBar.index.038495-163": "Inverted triangle",
"topo.components.propertyBar.index.038495-164": "Wave color",
"topo.components.propertyBar.index.038495-165": "Border width",
"topo.components.propertyBar.index.038495-166": "Please enter the border width",
"topo.components.propertyBar.index.038495-167": "Border color",
"topo.components.propertyBar.index.038495-168": "Title size",
"topo.components.propertyBar.index.038495-169": "Table style",
"topo.components.propertyBar.index.038495-170": "Number of list rows",
"topo.components.propertyBar.index.038495-171": "Please enter the number of rows",
"topo.components.propertyBar.index.038495-172": "Font color",
"topo.components.propertyBar.index.038495-173": "Header color",
"topo.components.propertyBar.index.038495-174": "Odd row color",
"topo.components.propertyBar.index.038495-175": "Even row color",
"topo.components.propertyBar.index.038495-176": "Carousel time",
"topo.components.propertyBar.index.038495-177": "Please enter the carousel time interval",
"topo.components.propertyBar.index.038495-178": "Header height",
"topo.components.propertyBar.index.038495-179": "Please enter the header height",
"topo.components.propertyBar.index.038495-180": "Header width",
"topo.components.propertyBar.index.038495-181": "Please enter the header width",
"topo.components.propertyBar.index.038495-182": "Row number display",
"topo.components.propertyBar.index.038495-183": "Show",
"topo.components.propertyBar.index.038495-184": "Hide",
"topo.components.propertyBar.index.038495-185": "Carousel mode",
"topo.components.propertyBar.index.038495-186": "Please select the carousel mode",
"topo.components.propertyBar.index.038495-187": "Row",
"topo.components.propertyBar.index.038495-188": "Page",
"topo.components.propertyBar.index.038495-189": "Parameter binding",
"topo.components.propertyBar.index.038495-190": "Status type",
"topo.components.propertyBar.index.038495-191": "Please select the status",
"topo.components.propertyBar.index.038495-192": "Variable status",
"topo.components.propertyBar.index.038495-193": "Equipment Status",
"topo.components.propertyBar.index.038495-194": "Please select the equipment",
"topo.components.propertyBar.index.038495-195": "Please select the variable",
"topo.components.propertyBar.index.038495-196": "Data Source",
"topo.components.propertyBar.index.038495-197": "Configuration Interface",
"topo.components.propertyBar.index.038495-198": "Please select the configuration interface",
"topo.components.propertyBar.index.038495-199": "Fengli Cloud",
"topo.components.propertyBar.index.038495-200": "Serial Number",
"topo.components.propertyBar.index.038495-201": "Obtain from Fengli Cloud Console",
"topo.components.propertyBar.index.038495-202": "Channel Number",
"topo.components.propertyBar.index.038495-203": "Live Video",
"topo.components.propertyBar.index.038495-204": "Video Stream URL",
"topo.components.propertyBar.index.038495-205": "Flv Format Live Stream",
"topo.components.propertyBar.index.038495-206": "General Video",
"topo.components.propertyBar.index.038495-207": "Video Address",
"topo.components.propertyBar.index.038495-208": "MP4 Video Address",
"topo.components.propertyBar.index.038495-209": "Cover Address",
"topo.components.propertyBar.index.038495-210": "Video Cover Address",
"topo.components.propertyBar.index.038495-211": "3D Model",
"topo.components.propertyBar.index.038495-212": "Model File",
"topo.components.propertyBar.index.038495-213": "Upload Model",
"topo.components.propertyBar.index.038495-214": "Custom Echarts/Map File",
"topo.components.propertyBar.index.038495-215": "Engine Address",
"topo.components.propertyBar.index.038495-216": "Currently only GET requests are supported",
"topo.components.propertyBar.index.038495-217": "Response Example",
"topo.components.propertyBar.index.038495-218": "Copy",
"topo.components.propertyBar.index.038495-219": "Request",
"topo.components.propertyBar.index.038495-220": "Event",
"topo.components.propertyBar.index.038495-221": "Component Password",
"topo.components.propertyBar.index.038495-222": "Set Password",
"topo.components.propertyBar.index.038495-223": "Flow",
"topo.components.propertyBar.index.038495-224": "Flow Conditions",
"topo.components.propertyBar.index.038495-225": "Enter Value",
"topo.components.propertyBar.index.038495-226": "Flow Direction",
"topo.components.propertyBar.index.038495-227": "Forward",
"topo.components.propertyBar.index.038495-228": "Reverse",
"topo.components.propertyBar.index.038495-229": "Animation - Only Effective",
"topo.components.propertyBar.index.038495-230": "Show/Hide",
"topo.components.propertyBar.index.038495-231": "Rotate",
"topo.components.propertyBar.index.038495-232": "Flash",
"topo.components.propertyBar.index.038495-233": "Slide",
"topo.components.propertyBar.index.038495-234": "Status Switch",
"topo.components.propertyBar.index.038495-235": "Conditions",
"topo.components.propertyBar.index.038495-236": "Device Offline",
"topo.components.propertyBar.index.038495-237": "Device Online",
"topo.components.propertyBar.index.038495-238": "Device Disabled",
"topo.components.propertyBar.index.038495-239": "Fill Color",
"topo.components.propertyBar.index.038495-240": "Location",
"topo.components.propertyBar.index.038495-241": "Province",
"topo.components.propertyBar.index.038495-242": "Please select a province",
"topo.components.propertyBar.index.038495-243": "City",
"topo.components.propertyBar.index.038495-244": "Please select a city",
"topo.components.propertyBar.index.038495-245": "District",
"topo.components.propertyBar.index.038495-246": "Please select a district",
"topo.components.propertyBar.index.038495-247": "Cautionary Warnings",
"topo.components.propertyBar.index.038495-248": "The same configuration interface can only have one weather component",
"topo.components.propertyBar.index.038495-249": "Background Name",
"topo.components.propertyBar.index.038495-250": "Please enter the background name",
"topo.components.propertyBar.index.038495-251": "Resolution Width",
"topo.components.propertyBar.index.038495-252": "Please enter the resolution width",
"topo.components.propertyBar.index.038495-253": "Resolution Height",
"topo.components.propertyBar.index.038495-254": "Please enter the resolution height",
"topo.components.propertyBar.index.038495-255": "Background Color",
"topo.components.propertyBar.index.038495-256": "Background Image",
"topo.components.propertyBar.index.038495-257": "Drag and Zoom",
"topo.components.propertyBar.index.038495-258": "Enable",
"topo.components.propertyBar.index.038495-259": "Gallery",
"topo.components.propertyBar.index.038495-260": "Animation Settings",
"topo.components.propertyBar.index.038495-261": "Variable Name",
"topo.components.propertyBar.index.038495-262": "Conditional Statement",
"topo.components.propertyBar.index.038495-263": "Rotation",
"topo.components.propertyBar.index.038495-264": "Animation Effect",
"topo.components.propertyBar.index.038495-265": "Slide",
"topo.components.propertyBar.index.038495-266": "Slide Configuration",
"topo.components.propertyBar.index.038495-267": "Slide Cycle",
"topo.components.propertyBar.index.038495-268": "Please enter the slide cycle",
"topo.components.propertyBar.index.038495-269": "Slide Position",
"topo.components.propertyBar.index.038495-270": "Please enter the offset degree",
"topo.components.propertyBar.index.038495-271": "Horizontal",
"topo.components.propertyBar.index.038495-272": "Vertical",
"topo.components.propertyBar.index.038495-273": "Variable Selection",
"topo.components.propertyBar.index.038495-296": "Data engine",
"topo.components.propertyBar.index.038495-297": "Echarts chart collection:",
"topo.components.propertyBar.index.038495-298": "Enter response example",
"topo.components.propertyBar.index.038495-299": "Run",
"topo.components.propertyBar.index.038495-300": "Data engine example",
"topo.components.propertyBar.index.038495-301": "Component password",
"topo.components.propertyBar.index.038495-302": "Set password",
"topo.components.propertyBar.index.038495-303": "Customize",
"topo.components.propertyBar.index.038495-304": "User password",
"topo.components.propertyBar.index.038495-305": "Light and dark",
"topo.components.propertyBar.index.038495-306": "No special binding of data is required. It will automatically bind the video associated with the device/scenario during use",
"topo.components.propertyBar.index.038495-307": "Device",
"topo.components.propertyBar.index.038495-308": "Font Style",
"topo.components.propertyBar.index.038495-309": "Please select the font style",
"topo.components.propertyBar.index.038495-310": "Font Weight",
"topo.components.propertyBar.index.038495-311": "Please select the font weight",
"topo.components.propertyBar.index.038495-312": "Data Type",
"topo.components.propertyBar.index.038495-313": "Please select the data type",
"topo.components.propertyBar.index.038495-314": "Decimal Places",
"topo.components.propertyBar.index.038495-315": "Please enter the decimal places",
"topo.components.propertyBar.index.038495-316": "Bind Variable",
"topo.components.propertyBar.index.038495-317": "Card Settings",
"topo.components.propertyBar.index.038495-318": "Title Name",
"topo.components.propertyBar.index.038495-319": "Please enter the title name",
"topo.components.propertyBar.index.038495-320": "Table Configuration",
"topo.components.propertyBar.index.038495-321": "Custom Table",
"topo.components.propertyBar.index.038495-322": "Custom Display Columns",
"topo.components.propertyBar.index.038495-323": "Column Name",
"topo.components.propertyBar.index.038495-324": "Visible",
"topo.components.propertyBar.index.038495-325": "Color",
"topo.components.propertyBar.index.038495-326": "None",
"topo.components.propertyBar.index.038495-327": "Confirm",
"topo.components.propertyBar.index.038495-328": "Close",
"topo.components.propertyBar.index.038495-329": "Please enter the title size",
"topo.components.propertyBar.index.038495-330": "Title visibility",
"topo.components.propertyBar.index.038495-331": "Please select the title visibility",
"topo.components.propertyBar.index.038495-332": "Show",
"topo.components.propertyBar.index.038495-333": "Hide",
"topo.components.propertyBar.index.038495-334": "Convex shape",
"topo.components.propertyBar.index.038495-335": "Level label",
"topo.components.propertyBar.index.038495-336": "Please select the level label",
"topo.components.propertyBar.index.038495-337": "This component does not need to be bound to data or has already been bound to data through other methods",
"topo.components.propertyBar.index.038495-338": "Data table",
"topo.components.propertyBar.index.038495-339": "Table type",
"topo.components.propertyBar.index.038495-340": "Real-time data",
"topo.components.propertyBar.index.038495-341": "Historical data",
"topo.components.propertyBar.index.038495-342": "Table configuration",
"topo.components.propertyBar.index.038495-343": "Custom table",
"topo.components.propertyBar.index.038495-344": "Number of columns",
"topo.components.propertyBar.index.038495-345": "Please enter the number of columns",
"topo.components.propertyBar.index.038495-346": "Edit configuration",
"topo.components.propertyBar.index.038495-347": "Send request",
"topo.components.propertyBar.index.038495-348": "Data filtering",
"topo.components.propertyBar.index.038495-349": "Add Filter",
"topo.components.propertyBar.index.038495-350": "Common Configuration",
"topo.components.propertyBar.index.038495-351": "Request Address",
"topo.components.propertyBar.index.038495-352": "Example: https://127.0.0.1/ or /scada/center/list",
"topo.components.propertyBar.index.038495-353": "Please enter a number",
"topo.components.propertyBar.index.038495-354": "Seconds",
"topo.components.propertyBar.index.038495-355": "Minutes",
"topo.components.propertyBar.index.038495-356": "Hours",
"topo.components.propertyBar.index.038495-357": "Request Method",
"topo.components.propertyBar.index.038495-358": "Normal Request",
"topo.components.propertyBar.index.038495-359": "Please enter",
"topo.components.propertyBar.index.038495-360": "Operation",
"topo.components.propertyBar.index.038495-361": "This request has no body",
"topo.components.propertyBar.index.038495-362": "Save",
"topo.components.propertyBar.index.038495-363": "Cancel",
"topo.components.propertyBar.index.038495-364": "Filter Function Editor",
"topo.components.propertyBar.index.038495-365": "Interface Return Data (data):",
"topo.components.propertyBar.index.038495-366": "Filter Result:",
"topo.components.propertyBar.index.038495-367": "None",
"topo.components.propertyBar.index.038495-368": "Only supports Vue syntax sugar and data engine (echartData)",
"topo.components.propertyBar.index.038495-369": "Layer",
"topo.components.propertyBar.index.038495-370": "Please enter the component name",
"topo.components.propertyBar.index.038495-371": "Message",
"topo.components.propertyBar.index.038495-372": "OK",
"topo.components.propertyBar.index.038495-373": "Cancel",
"topo.components.propertyBar.index.038495-374": "Component name cannot be empty",
"topo.components.propertyBar.index.038495-375": "Please enter the X-axis coordinate",
"topo.components.propertyBar.index.038495-376": "Please enter the Y-axis coordinate",
"topo.components.propertyBar.index.038495-377": "Please enter the component width",
"topo.components.propertyBar.index.038495-378": "Please enter the component height",
"topo.components.propertyBar.index.038495-379": "Number of list columns",
"topo.components.propertyBar.index.038495-380": "Please enter the number of list columns",
"topo.components.propertyBar.index.038495-381": "Select variable",
"topo.components.propertyBar.index.038495-382": "Not bound data",
"topo.components.propertyBar.index.038495-383": "Bound data",
"topo.components.propertyBar.index.038495-384": "Between",
"topo.components.propertyBar.index.038495-385": "Not Between",
"topo.components.propertyBar.index.038495-386": "Generation Condition",
"topo.components.propertyBar.index.038495-389": "Greater than (>)",
"topo.components.propertyBar.index.038495-390": "Greater than or equal to (>=)",
"topo.components.propertyBar.index.038495-391": "Equal to (=)",
"topo.components.propertyBar.index.038495-392": "Less than or equal to (<=)",
"topo.components.propertyBar.index.038495-393": "Less than (<)",
"topo.components.propertyBar.index.038495-394": "Not equal (!=)",
"topo.components.propertyBar.index.038495-395": "Interaction Control",
"topo.components.propertyBar.index.038495-396": "Right-click Drag",
"topo.components.propertyBar.index.038495-397": "Model Zoom",
"topo.components.propertyBar.index.038495-398": "Model Rotation",
"topo.components.propertyBar.index.038495-399": "Auto Rotation",
"topo.components.propertyBar.index.038495-400": "FPS Display",
"topo.components.propertyBar.index.038495-401": "Camera Position",
"topo.components.propertyBar.index.038495-402": "Z-Axis Coordinate",
"topo.components.propertyBar.index.038495-403": "Password management",
"topo.components.propertyBar.index.038495-404": "Please enter yout password",
"topo.components.propertyBar.index.038495-405": "Password type",
"topo.components.propertyBar.index.038495-406": "Shape Type",
"topo.components.propertyBar.index.038495-407": "Please select the shape type",
"topo.components.propertyBar.index.038495-408": "Shape",
"topo.components.propertyBar.index.038495-409": "Body",
"topo.components.propertyBar.index.038495-410": "All Devices",
"topo.components.propertyBar.index.038495-411": "Current Device",
"topo.components.propertyBar.index.038495-412": "Parameter Description",
"topo.components.propertyBar.index.038495-413": "If you select 'Current Device', please preview under the device",
"topo.components.propertyBar.index.038495-414": "Dynamic requests",
"topo.components.propertyBar.index.038495-415": "Public requests",
"topo.components.propertyBar.index.038495-416": "An API with the same URL already exists, please do not add it again!",
"topo.components.propertyBar.index.038495-417": "Click",
"topo.components.propertyBar.index.038495-418": "Interaction",
"scada.topo.components.topo-variable.764509-0": "Serial Number",
"scada.topo.components.topo-variable.764509-1": "Please select the serial number",
"scada.topo.components.topo-variable.764509-2": "Data Sources",
"scada.topo.components.topo-variable.764509-3": "Please enter data source",
"scada.topo.components.topo-variable.764509-4": "Variable Name",
"scada.topo.components.topo-variable.764509-5": "Please choose a variable name",
"scada.topo.components.topo-variable.764509-6": "Device Name",
"scada.topo.components.topo-variable.764509-7": "Product Name",
"scada.topo.components.topo-variable.764509-8": "Identifier",
"scada.topo.components.topo-variable.764509-9": "Search",
"scada.topo.components.topo-variable.764509-10": "Reset",
"scada.common.scadaShareDialog.842076-0": "Sharing",
"scada.common.scadaShareDialog.842076-1": "Click \"Share\" to share the configuration screen of the selected device",
"scada.common.scadaShareDialog.842076-2": "Device Name",
"scada.common.scadaShareDialog.842076-3": "Please enter the device name",
"scada.common.scadaShareDialog.842076-4": "Search",
"scada.common.scadaShareDialog.842076-5": "Reset",
"scada.common.scadaShareDialog.842076-6": "Displays lower-level organization data",
"scada.common.scadaShareDialog.842076-7": "After selected, the machine can see the data of the next set",
"scada.common.scadaShareDialog.842076-8": "Operation",
"scada.common.scadaShareDialog.842076-9": "Temporarily no data",
"scada.common.scadaShareDialog.842076-10": "Open sharing",
"scada.common.scadaShareDialog.842076-11": "Prompt",
"scada.common.scadaShareDialog.842076-12": "This will open a share, whether or not to continue?",
"scada.common.scadaShareDialog.842076-13": "Cancel",
"scada.common.scadaShareDialog.842076-14": "Sure",
"scada.common.scadaShareDialog.842076-15": "Link",
"scada.common.scadaShareDialog.842076-16": "Close to share",
"scada.common.scadaShareDialog.842076-17": "Copy link",
"scada.common.scadaShareDialog.842076-18": "Copy link and password",
"scada.common.scadaShareDialog.842076-19": "Access to the password",
"scada.common.scadaShareDialog.842076-20": "Password reset",
"scada.common.scadaShareDialog.842076-21": "QR code",
"scada.common.scadaShareDialog.842076-22": "Share qr code to others",
"scada.common.scadaShareDialog.842076-23": "Each other through WeChat scan can view",
"scada.common.scadaShareDialog.842076-24": "Download the qr code",
"scada.common.scadaShareDialog.842076-25": "Return to continue to share",
"scada.common.scadaShareDialog.842076-26": "Has been open to share",
"scada.common.scadaShareDialog.842076-27": "Have to cancel the operation",
"scada.common.scadaShareDialog.842076-28": "Closed share",
"scada.common.scadaShareDialog.842076-29": "The link is copied",
"scada.common.scadaShareDialog.842076-30": "password",
"scada.topo.components.propertyBar.variateDrawer.842076-0": "Data Configuration",
"scada.topo.components.propertyBar.variateDrawer.842076-1": "Data Type",
"scada.topo.components.propertyBar.variateDrawer.842076-2": "Please Select",
"scada.topo.components.propertyBar.variateDrawer.842076-3": "Device Data",
"scada.topo.components.propertyBar.variateDrawer.842076-4": "Data Simulation",
"scada.topo.components.propertyBar.variateDrawer.842076-5": "Variable Value",
"scada.topo.components.propertyBar.variateDrawer.842076-6": "Select Variable",
"scada.topo.components.propertyBar.variateDrawer.842076-7": "Data Processing",
"scada.topo.components.propertyBar.variateDrawer.842076-8": "function (value)",
"scada.topo.components.propertyBar.variateDrawer.842076-9": "static data",
"scada.topo.components.propertyBar.variateDrawer.842076-10": "dynamic data",
"scada.topo.components.propertyBar.variateDrawer.842076-11": "data content",
"scada.topo.components.propertyBar.variateDrawer.842076-12": "Different components are different, refer to the data below to modify",
"scada.topo.components.propertyBar.variateDrawer.842076-13": "edit configuration",
"scada.topo.components.propertyBar.variateDrawer.842076-14": "Request Type",
"scada.topo.components.propertyBar.variateDrawer.842076-15": "Request Method",
"scada.topo.components.propertyBar.variateDrawer.842076-16": "Update Interval",
"scada.topo.components.propertyBar.variateDrawer.842076-17": "Request Address",
"scada.topo.components.propertyBar.variateDrawer.842076-18": "Request Test",
"scada.topo.components.propertyBar.variateDrawer.842076-19": "send request",
"scada.topo.components.propertyBar.variateDrawer.842076-20": "data filtering",
"scada.topo.components.propertyBar.variateDrawer.842076-21": "Add filter",
"scada.topo.components.propertyBar.variateDrawer.842076-22": "Ordinary Request",
"scada.topo.components.propertyBar.variateDrawer.842076-23": "Data Mapping",
"scada.topo.components.propertyBar.variateDrawer.842076-24": "Add Data Mapping",
"scada.topo.components.propertyBar.variateDrawer.842076-25": "Edit Data Mapping",
"scada.topo.components.propertyBar.variateDrawer.842076-26": "Currently Bound Variable:",
"scada.topo.components.propertyBar.variateDrawer.842076-27": "Currently Unbound Variable:",
"scada.topo.components.propertyBar.variateDrawer.842076-28": "Add",
"scada.topo.components.propertyBar.variateDrawer.842076-29": "Condition",
"scada.topo.components.propertyBar.variateDrawer.842076-30": "Comparison Value",
"scada.topo.components.propertyBar.variateDrawer.842076-31": "Please enter comparison value",
"scada.topo.components.propertyBar.variateDrawer.842076-32": "Applied Value",
"scada.topo.components.propertyBar.variateDrawer.842076-33": "Please enter applied value",
"scada.topo.components.propertyBar.variateDrawer.842076-34": "Delete",
"scada.topo.components.propertyBar.variateDrawer.842076-35": "Confirm",
"scada.topo.components.propertyBar.variateDrawer.842076-36": "Cancel",
"scada.topo.components.propertyBar.variateDrawer.842076-37": "Reset",
"scada.topo.components.propertyBar.variateDrawer.842076-38": "Public Interface",
"scada.topo.components.propertyBar.variateDrawer.842076-41": "New request",
"scada.topo.components.propertyBar.variateDrawer.842076-42": "Please enter URL",
"scada.topo.components.propertyBar.variateDrawer.842076-43": "Request successful",
"scada.topo.components.propertyBar.variateDialog.764059-0": "Variable Selection",
"scada.topo.components.propertyBar.variateDialog.764059-1": "Please select the device name",
"scada.topo.components.propertyBar.variateDialog.764059-2": "Please select the data source",
"scada.topo.components.propertyBar.variateDialog.764059-3": "Please enter the variable name",
"scada.topo.components.propertyBar.variateDialog.764059-4": "Device Name",
"scada.topo.components.propertyBar.variateDialog.764059-5": "Device Number",
"scada.topo.components.propertyBar.variateDialog.764059-6": "Product Name",
"scada.topo.components.propertyBar.variateDialog.764059-7": "Data Source",
"scada.topo.components.propertyBar.variateDialog.764059-8": "Variable Name",
"scada.topo.components.propertyBar.variateDialog.764059-9": "Variable Identifier",
"scada.topo.components.propertyBar.variateDialog.764059-10": "Analog Value",
"scada.topo.components.propertyBar.variateDialog.764059-11": "Please enter the analog value",
"scada.topo.components.propertyBar.variateDialog.764059-12": "Interval (s)",
"scada.topo.components.propertyBar.variateDialog.764059-13": "Please enter the interval time",
"scada.topo.components.propertyBar.variateDialog.764059-14": "Analog Value Description",
"scada.topo.components.propertyBar.variateDialog.764059-15": "Random values: Value1, Value2, Value3......, separated by commas, for example: 1, 2, 3, 4, 5, 6; 'Processed', 'Unprocessed', 'Processing'",
"scada.topo.components.propertyBar.variateDialog.764059-16": "Range values: Minimum value - Maximum value, for example: 0 - 100",
"scada.topo.components.propertyBar.variateDialog.764059-17": "Decimal places setting: For example, 10 - 30.1 indicates a random value between 10 and 30 with one decimal place, such as: 13.5",
"scada.topo.components.propertyBar.variateDialog.764059-18": "Seconds",
"scada.topo.components.propertyBar.variateDialog.764059-19": "Minutes",
"scada.topo.components.propertyBar.variateDialog.764059-20": "Hours",
"scada.topo.components.propertyBar.calcVariateDialog.205053-0": "Generation Conditions",
"scada.topo.components.propertyBar.calcVariateDialog.205053-1": "Supports the combined use of 'attribute variables', operation symbols, or numbers. The operation variable data is displayed after being calculated by the operation formula.",
"scada.topo.components.propertyBar.calcVariateDialog.205053-2": "Operation instructions: After clicking \"Insert Variable\", the number before the variable will be automatically filled in the \"Calculation Formula\" input box. For example, if the attribute variable is \"Voltage\", \"A\" will be filled in the calculation formula. You can also manually enter the capital letter A. The usage rules of operation symbols are as follows:",
"scada.topo.components.propertyBar.calcVariateDialog.205053-3": "Add: A+B+10, Subtract: A-B-10, Multiply: A*B*10, Divide: A/B/10, Remainder: A%10, Parentheses: (A+B)*10",
"scada.topo.components.propertyBar.calcVariateDialog.205053-4": "Note: Please enter at least one variable number. It is also supported to enter only a single variable number.",
"scada.topo.components.propertyBar.calcVariateDialog.205053-5": "Calculation Formula",
"scada.topo.components.propertyBar.calcVariateDialog.205053-6": "Please enter the calculation formula",
"scada.topo.components.propertyBar.calcVariateDialog.205053-7": "Serial Number",
"scada.topo.components.propertyBar.calcVariateDialog.205053-8": "Device",
"scada.topo.components.propertyBar.calcVariateDialog.205053-9": "Please select a device",
"scada.topo.components.propertyBar.calcVariateDialog.205053-10": "Data Source",
"scada.topo.components.propertyBar.calcVariateDialog.205053-11": "Please select a data source",
"scada.topo.components.propertyBar.calcVariateDialog.205053-12": "Variable",
"scada.topo.components.propertyBar.calcVariateDialog.205053-13": "Please select a variable",
"scada.topo.components.propertyBar.calcVariateDialog.205053-14": "Insert Variable",
"scada.topo.components.propertyBar.calcVariateDialog.205053-15": "Calculation formula error",
"scada.topo.components.propertyBar.calcVariateDialog.205053-16": "Maximum length supports 200 characters",
"scada.topo.components.propertyBar.clickEventDialog.318042-0": "Click Settings",
"scada.topo.components.propertyBar.clickEventDialog.318042-1": "Action Type",
"scada.topo.components.propertyBar.clickEventDialog.318042-2": "Operation Variable",
"scada.topo.components.propertyBar.clickEventDialog.318042-3": "External Link",
"scada.topo.components.propertyBar.clickEventDialog.318042-4": "Scada Interface",
"scada.topo.components.propertyBar.clickEventDialog.318042-5": "Switch Control",
"scada.topo.components.propertyBar.clickEventDialog.318042-6": "Scada Page",
"scada.topo.components.propertyBar.clickEventDialog.318042-7": "Variable Name",
"scada.topo.components.propertyBar.clickEventDialog.318042-8": "Please Select Variable",
"scada.topo.components.propertyBar.clickEventDialog.318042-9": "Variable Value",
"scada.topo.components.propertyBar.clickEventDialog.318042-10": "Please enter the variable value",
"scada.topo.components.propertyBar.clickEventDialog.318042-11": "Prompt Information",
"scada.topo.components.propertyBar.clickEventDialog.318042-12": "Please enter prompt information",
"scada.topo.components.propertyBar.clickEventDialog.318042-13": "Jump Link",
"scada.topo.components.propertyBar.clickEventDialog.318042-14": "Please enter the link, such as: https://www.xxxxxx.com",
"scada.topo.components.propertyBar.clickEventDialog.318042-15": "Please select the scada interface",
"scada.topo.components.propertyBar.clickEventDialog.318042-16": "Open Mode",
"scada.topo.components.propertyBar.clickEventDialog.318042-17": "Open In Current Window",
"scada.topo.components.propertyBar.clickEventDialog.318042-18": "Open In New Window",
"scada.topo.components.propertyBar.clickEventDialog.318042-19": "Pop Up Small Window",
"scada.topo.components.propertyBar.clickEventDialog.318042-20": "Window Width",
"scada.topo.components.propertyBar.clickEventDialog.318042-21": "Please enter the window width",
"scada.topo.components.propertyBar.clickEventDialog.318042-22": "Window Height",
"scada.topo.components.propertyBar.clickEventDialog.318042-23": "Please enter the window height",
"scada.topo.components.propertyBar.clickEventDialog.318042-24": "Switch Control",
"scada.topo.components.propertyBar.clickEventDialog.318042-25": "0 off 1 on",
"scada.topo.components.propertyBar.clickEventDialog.318042-26": "0 on 1 off",
"scada.topo.components.propertyBar.clickEventDialog.318042-27": "Please select the scada page",
"scada.topo.components.propertyBar.clickEventDialog.318042-28": "Write Type",
"scada.topo.components.propertyBar.clickEventDialog.318042-29": "Fixed Value",
"scada.topo.components.propertyBar.clickEventDialog.318042-30": "Manual Input",
"scada.topo.components.propertyBar.clickEventDialog.318042-31": "Script",
"scada.topo.components.propertyBar.clickEventDialog.318042-32": "function (app: Application, issord: Function)",
"scada.topo.components.unitLibBar.index.875001-0": "PC end",
"scada.topo.components.unitLibBar.index.875001-1": "Mobile end",
"scada.topo.components.unitLibBar.index.875001-2": "<strong>PC end and mobile end configuration interface description:</strong>",
"scada.topo.components.unitLibBar.index.875001-3": "One configuration can edit <strong>PC end</strong> and <strong>mobile end</strong> two interfaces, using different page sizes.",
"scada.topo.components.unitLibBar.index.875001-4": "Clicking on the tabs on the left allows you to switch between the configuration editing interfaces for the PC and mobile ends.",
"scada.topo.components.unitLibBar.index.875001-5": "Clicking the checkbox enables or disables the corresponding configuration interface.",
"scada.topo.components.unitLibBar.index.875001-6": "During configuration runtime, depending on the running device, the configuration interface of the PC or mobile end will be run. If the corresponding configuration interface is <strong>disabled</strong>, the configuration interface of <strong>the other end</strong> will be run. (Example: If the configuration interface of the mobile end is disabled, but the configuration is viewed on a mobile phone, the configuration interface of the PC end will be displayed)",
"scada.topo.components.unitLibBar.index.875001-7": "<p>After checking, a separate configuration interface for the PC end will be enabled, requiring a separate design for the PC end configuration interface, which will not be shared with the mobile end.</p><p>If not checked, the configuration interface of the mobile end will be displayed on the PC.</p><p>Are you sure you want to enable the configuration interface of the PC end?</p>",
"scada.topo.components.unitLibBar.index.875001-8": "The configuration interface for both the PC and mobile ends cannot be disabled simultaneously",
"scada.topo.components.unitLibBar.index.875001-9": "The configuration interface for the PC end has been disabled",
"scada.topo.components.unitLibBar.index.875001-10": "<p>After checking, an independent configuration interface for the mobile end will be enabled, requiring a separate design for the mobile end configuration interface, which will not be shared with the PC end.</p><p>If not checked, the configuration interface for the PC end will be displayed on mobile devices.</p><p>Are you sure you want to enable the configuration interface for the mobile end?</p>",
"scada.topo.components.unitLibBar.index.875001-11": "The mobile configuration interface has been disabled",
"scada.topo.components.unitLibBar.index.875001-12": "Basic",
"scada.topo.components.unitLibBar.index.875001-13": "Common Components",
"scada.topo.components.unitLibBar.index.875001-14": "Shape Components",
"scada.topo.components.unitLibBar.index.875001-15": "Interactive Components",
"scada.topo.components.unitLibBar.index.875001-16": "Statistics",
"scada.topo.components.unitLibBar.index.875001-17": "Gallery",
"scada.topo.components.unitLibBar.index.875001-18": "Charts",
"scada.topo.components.propertyBar.scadaDialog.764059-1": "Select Scada page",
"scada.topo.components.propertyBar.scadaDialog.764059-2": "Please enter Scada page name",
"scada.topo.components.propertyBar.scadaDialog.764059-3": "Scada page name",
"scada.topo.components.propertyBar.scadaDialog.764059-4": "Select",
"scada.topo.components.propertyBar.scadaDialog.764059-5": "Resolution",
"scada.topo.components.propertyBar.interactionEventDialog.764059-0": "Interaction Settings",
"scada.topo.components.propertyBar.interactionEventDialog.764059-1": "No interactive configuration available. Please click the 'Add' button to add",
"scada.topo.components.propertyBar.interactionEventDialog.764059-2": "Associated Components",
"scada.topo.components.propertyBar.interactionEventDialog.764059-3": "Select target component",
"scada.topo.components.propertyBar.interactionEventDialog.764059-4": "trigger event",
"scada.topo.components.propertyBar.interactionEventDialog.764059-5": "Please select the triggering event",
"scada.topo.components.propertyBar.interactionEventDialog.764059-6": "Selection completed",
"scada.topo.components.propertyBar.interactionEventDialog.764059-7": "bind",
"scada.topo.components.propertyBar.interactionEventDialog.764059-8": "Only supports binding dynamic data type components",
"scada.topo.components.propertyBar.interactionEventDialog.764059-9": "Query Results",
"scada.topo.components.propertyBar.interactionEventDialog.764059-10": "Parameters",
"scada.topo.components.propertyBar.interactionEventDialog.764059-11": "Explain",
"scada.topo.components.propertyBar.interactionEventDialog.764059-12": "Associated target request parameters",
"scada.topo.components.propertyBar.interactionEventDialog.764059-13": "No data available",
"scada.topo.components.propertyBar.interactionEventDialog.764059-14": "Please select",
"scada.topo.components.propertyBar.interactionEventDialog.764059-15": "Save Configuration",
"scada.topo.components.propertyBar.interactionEventDialog.764059-16": "There are no available interactive components for the moment. Please first configure the data type of the target component as a dynamic data component.",
"scada.topo.components.propertyBar.interactionEventDialog.764059-17": "Are you sure you want to delete the configuration of this associated component ?",
"scada.topo.components.propertyBar.interactionEventDialog.764059-18": "Form",
"scada.topo.components.propertyBar.interactionEventDialog.764059-19": "Please complete the trigger event and fill in the required fields of the bound component before saving.",
"scada.topo.components.propertyBar.interactionEventDialog.764059-20": "Configuration saved successfully",
"scada.topo.components.propertyBar.interactionEventDialog.764059-21": "Select Target Component",
"scada.topo.components.propertyBar.httpSettingDialog.038495-0": "Dynamic Configuration",
"scada.topo.components.propertyBar.httpSettingDialog.038495-1": "Request Address",
"scada.topo.components.propertyBar.httpSettingDialog.038495-2": "Example: https://127.0.0.1/ or /scada/center/list",
"scada.topo.components.propertyBar.httpSettingDialog.038495-3": "Please enter a number",
"scada.topo.components.propertyBar.httpSettingDialog.038495-4": "Seconds",
"scada.topo.components.propertyBar.httpSettingDialog.038495-5": "Minutes",
"scada.topo.components.propertyBar.httpSettingDialog.038495-6": "Hours",
"scada.topo.components.propertyBar.httpSettingDialog.038495-7": "Request Method",
"scada.topo.components.propertyBar.httpSettingDialog.038495-8": "Simple Request",
"scada.topo.components.propertyBar.httpSettingDialog.038495-9": "Please enter",
"scada.topo.components.propertyBar.httpSettingDialog.038495-10": "Operation",
"scada.topo.components.propertyBar.httpSettingDialog.038495-11": "This request has no body",
"scada.topo.components.propertyBar.httpSettingDialog.038495-12": "Please enter the address",
"scada.topo.components.propertyBar.httpFilterDialog.038495-0": "Filter Function Editor",
"scada.topo.components.propertyBar.httpFilterDialog.038495-1": "Interface Return Data (res) :",
"scada.topo.components.propertyBar.httpFilterDialog.038495-2": "Filter Result :"
}

View File

@@ -1,138 +0,0 @@
{
"speaker.clientDetails.index.893021-0": "client ID ",
"speaker.clientDetails.index.893021-1": "Please enter the client ID",
"speaker.clientDetails.index.893021-2": "Authorized platform",
"speaker.clientDetails.index.893021-3": "Please choose a platform",
"speaker.clientDetails.index.893021-4": "search",
"speaker.clientDetails.index.893021-5": "Reset",
"speaker.clientDetails.index.893021-6": "newly added",
"speaker.clientDetails.index.893021-7": "client ID ",
"speaker.clientDetails.index.893021-8": "Authorized platform",
"speaker.clientDetails.index.893021-9": "state",
"speaker.clientDetails.index.893021-10": "open",
"speaker.clientDetails.index.893021-11": "close",
"speaker.clientDetails.index.893021-12": "Scope of Permissions",
"speaker.clientDetails.index.893021-13": "Cloud Skill ID",
"speaker.clientDetails.index.893021-14": "Authorization type",
"speaker.clientDetails.index.893021-15": "token url ",
"speaker.clientDetails.index.893021-16": "Token Validity Period",
"speaker.clientDetails.index.893021-17": "Refresh Token Validity Period",
"speaker.clientDetails.index.893021-18": "operation",
"speaker.clientDetails.index.893021-19": "modify",
"speaker.clientDetails.index.893021-20": "delete",
"speaker.clientDetails.index.893021-21": "Are you sure to delete the data item with cloud docking number {0}?",
"speaker.clientDetails.index.893021-22": "Delete successfully",
"speaker.clientDetails.index.893021-23": "read",
"speaker.clientDetails.index.893021-24": "write",
"speaker.clientDetails.detail-dialog.455323-0": "Edit speaker configuration",
"speaker.clientDetails.detail-dialog.455323-1": "Add speaker configuration",
"speaker.clientDetails.detail-dialog.455323-2": "client ID ",
"speaker.clientDetails.detail-dialog.455323-3": "Please enter the client ID",
"speaker.clientDetails.detail-dialog.455323-4": "Authorized platform",
"speaker.clientDetails.detail-dialog.455323-5": "Please select an authorized platform",
"speaker.clientDetails.detail-dialog.455323-6": "state",
"speaker.clientDetails.detail-dialog.455323-7": "Please select the status",
"speaker.clientDetails.detail-dialog.455323-8": "open",
"speaker.clientDetails.detail-dialog.455323-9": "close",
"speaker.clientDetails.detail-dialog.455323-10": "Authorization type",
"speaker.clientDetails.detail-dialog.455323-11": "Please select authorization type",
"speaker.clientDetails.detail-dialog.455323-12": "Scope of Permissions",
"speaker.clientDetails.detail-dialog.455323-13": "read",
"speaker.clientDetails.detail-dialog.455323-14": "write",
"speaker.clientDetails.detail-dialog.455323-15": "Secret key",
"speaker.clientDetails.detail-dialog.455323-16": "Please enter the key",
"speaker.clientDetails.detail-dialog.455323-17": "Cloud Skill ID",
"speaker.clientDetails.detail-dialog.455323-18": "Please enter the cloud skill ID",
"speaker.clientDetails.detail-dialog.455323-19": "Token Validity Period",
"speaker.clientDetails.detail-dialog.455323-20": "Please enter the token validity period",
"speaker.clientDetails.detail-dialog.455323-21": "Refresh Token Validity Period",
"speaker.clientDetails.detail-dialog.455323-22": "Please enter the refresh token expiration date",
"speaker.clientDetails.detail-dialog.455323-23": "token url ",
"speaker.clientDetails.detail-dialog.455323-24": "Please enter the callback address",
"speaker.clientDetails.detail-dialog.455323-25": "Reserved Information",
"speaker.clientDetails.detail-dialog.455323-26": "Please enter reserved information",
"speaker.clientDetails.detail-dialog.455323-27": "preservation",
"speaker.clientDetails.detail-dialog.455323-28": "Cancel",
"speaker.clientDetails.detail-dialog.455323-29": "Please enter the client ID",
"speaker.clientDetails.detail-dialog.455323-30": "Please select an authorized platform",
"speaker.clientDetails.detail-dialog.455323-31": "Please select the status",
"speaker.clientDetails.detail-dialog.455323-32": "Please select authorization type",
"speaker.clientDetails.detail-dialog.455323-33": "Please select at least one permission",
"speaker.clientDetails.detail-dialog.455323-34": "Please enter the key",
"speaker.clientDetails.detail-dialog.455323-35": "Please enter the cloud skill ID",
"speaker.clientDetails.detail-dialog.455323-36": "Please enter the callback address",
"speaker.clientDetails.detail-dialog.455323-37": "Please enter the token validity period",
"speaker.clientDetails.detail-dialog.455323-38": "Please enter the refresh token expiration date",
"speaker.clientDetails.detail-dialog.455323-39": "Modified successfully",
"speaker.clientDetails.detail-dialog.455323-40": "New successfully added",
"speaker.dueros.index.364370-0": "Product Name",
"speaker.dueros.index.364370-1": "Please enter the product name",
"speaker.dueros.index.364370-2": "Speaker type",
"speaker.dueros.index.364370-3": "Please select the type of speaker",
"speaker.dueros.index.364370-4": "search",
"speaker.dueros.index.364370-5": "Reset",
"speaker.dueros.index.364370-6": "newly added",
"speaker.dueros.index.364370-7": "Manufacturer",
"speaker.dueros.index.364370-8": "Speaker type",
"speaker.dueros.index.364370-9": "Number of actions",
"speaker.dueros.index.364370-10": "Update time",
"speaker.dueros.index.364370-11": "see",
"speaker.dueros.index.364370-12": "delete",
"speaker.dueros.index.364370-13": "No data available, please add product",
"speaker.dueros.index.364370-14": "Are you sure to delete the data item for {0}?",
"speaker.dueros.index.364370-15": "Delete successfully",
"speaker.dueros.detail-dialog.738430-0": "Edit speaker products",
"speaker.dueros.detail-dialog.738430-1": "New speaker products added",
"speaker.dueros.detail-dialog.738430-2": "Belonging products",
"speaker.dueros.detail-dialog.738430-3": "Belonging products",
"speaker.dueros.detail-dialog.738430-4": "1. Cannot add products without physical models",
"speaker.dueros.detail-dialog.738430-5": "2. Cannot add products that have already been added",
"speaker.dueros.detail-dialog.738430-6": "Please select the corresponding product",
"speaker.dueros.detail-dialog.738430-7": "Manufacturer name",
"speaker.dueros.detail-dialog.738430-8": "Please enter the manufacturer name",
"speaker.dueros.detail-dialog.738430-9": "Speaker type",
"speaker.dueros.detail-dialog.738430-10": "Please select the type of speaker",
"speaker.dueros.detail-dialog.738430-11": "Note: Xiaodu currently does not support array type physical model configuration",
"speaker.dueros.detail-dialog.738430-12": "Related products",
"speaker.dueros.detail-dialog.738430-13": "Refresh",
"speaker.dueros.detail-dialog.738430-14": "identifier ",
"speaker.dueros.detail-dialog.738430-15": "Model name",
"speaker.dueros.detail-dialog.738430-16": "Speaker attribute identifier",
"speaker.dueros.detail-dialog.738430-17": "Speaker attribute name",
"speaker.dueros.detail-dialog.738430-18": "Speaker action name",
"speaker.dueros.detail-dialog.738430-19": "Corresponding values of speaker attribute fields",
"speaker.dueros.detail-dialog.738430-20": "operation",
"speaker.dueros.detail-dialog.738430-21": "edit",
"speaker.dueros.detail-dialog.738430-22": "delete",
"speaker.dueros.detail-dialog.738430-23": "The product cannot be empty",
"speaker.dueros.detail-dialog.738430-24": "The manufacturer name cannot be empty",
"speaker.dueros.detail-dialog.738430-25": "Speaker type cannot be empty",
"speaker.dueros.detail-dialog.738430-26": "Association successful",
"speaker.dueros.detail-dialog.738430-27": "Refresh successful",
"speaker.dueros.detail-dialog.738430-28": "Are you sure to delete the data item for {0}?",
"speaker.dueros.detail-dialog.738430-29": "Delete successfully",
"speaker.dueros.things-model-dialog.454920-0": "Edit object model association information",
"speaker.dueros.things-model-dialog.454920-1": "essential information",
"speaker.dueros.things-model-dialog.454920-2": "Model Name",
"speaker.dueros.things-model-dialog.454920-3": "Please enter the model name",
"speaker.dueros.things-model-dialog.454920-4": "Model identification",
"speaker.dueros.things-model-dialog.454920-5": "Please enter the model identifier",
"speaker.dueros.things-model-dialog.454920-6": "Related attributes",
"speaker.dueros.things-model-dialog.454920-7": "Related actions",
"speaker.dueros.things-model-dialog.454920-8": "Associate attribute values",
"speaker.dueros.things-model-dialog.454920-9": "Normal type: directly associated with object model values, such as integer, decimal, and string types",
"speaker.dueros.things-model-dialog.454920-10": "Special type: Fill in the value corresponding to the object model based on the degree character, such as boolean, enumeration, and object type",
"speaker.dueros.things-model-dialog.454920-11": "Configure corresponding attribute values based on the object model on the right",
"speaker.dueros.things-model-dialog.454920-12": "Please enter the corresponding object model value",
"speaker.dueros.things-model-dialog.454920-13": "Please enter the corresponding object model ID value",
"speaker.dueros.things-model-dialog.454920-14": "Please enter the corresponding object model value",
"speaker.dueros.things-model-dialog.454920-15": "Attribute type",
"speaker.dueros.things-model-dialog.454920-16": "Please select attribute type",
"speaker.dueros.things-model-dialog.454920-17": "preservation",
"speaker.dueros.things-model-dialog.454920-18": "Cancel",
"speaker.dueros.things-model-dialog.454920-19": "Please select the associated attribute",
"speaker.dueros.things-model-dialog.454920-20": "Please configure the associated attribute values first",
"speaker.dueros.things-model-dialog.454920-21": "Tips",
"speaker.dueros.things-model-dialog.454920-22": "determine",
"speaker.dueros.things-model-dialog.454920-23": "Association successful"
}

View File

@@ -1,23 +0,0 @@
{
"iot.view.setting-23209-0": "Parameter configuration",
"iot.view.setting-23209-1": "The data parameters will be configured on the large screen. Select a condition parameter to generate the corresponding URL.",
"iot.view.setting-23209-2": "Condition parameters",
"iot.view.setting-23209-3": "equipment",
"iot.view.setting-23209-4": "Please select a device",
"iot.view.setting-23209-5": "Slave machine",
"iot.view.setting-23209-6": "Please select a slave device",
"iot.view.setting-23209-7": "Device properties",
"iot.view.setting-23209-8": "Please select Device Properties",
"iot.view.setting-23209-9": "Components type",
"iot.view.setting-23209-10": "Please select a chart type",
"iot.view.setting-23209-11": "Production",
"iot.view.setting-23209-12": "A response is returned",
"iot.view.setting-23209-13": "copy",
"iot.view.setting-23209-14": "data structure",
"iot.view.setting-23209-15": "The device cannot be empty",
"iot.view.setting-23209-16": "The slave cannot be empty",
"iot.view.setting-23209-17": "The property cannot be empty",
"iot.view.setting-23209-18": "The chart type cannot be empty",
"iot.view.setting-23209-19": "The build succeeded",
"iot.view.setting-23209-20": "The build failed"
}

View File

@@ -1,62 +0,0 @@
{
"workOrder.index.748855-0": "Please enter the name of the work order",
"workOrder.index.748855-1": "Please select the work order status",
"workOrder.index.748855-2": "Please select the work order type",
"workOrder.index.748855-3": "Work Order Name",
"workOrder.index.748855-4": "Work Order Status",
"workOrder.index.748855-5": "Ticket Type",
"workOrder.index.748855-6": "Work Order Number",
"workOrder.index.748855-7": "Contact",
"workOrder.index.748855-8": "Contact number",
"workOrder.index.748855-9": "Device Name",
"workOrder.index.748855-10": "deadline",
"workOrder.index.748855-11": "Work Order Description",
"workOrder.index.748855-12": "Tenant Name",
"workOrder.index.748855-13": "creator",
"workOrder.index.748855-14": "Creation Time",
"workOrder.index.748855-15": "dispatch order",
"workOrder.index.748855-16": "Take orders",
"workOrder.index.748855-17": "settle the bill",
"workOrder.index.748855-18": "record",
"workOrder.index.748855-19": "Please enter a work order description",
"workOrder.index.748855-20": "Please select a contact person",
"workOrder.index.748855-21": "equipment",
"workOrder.index.748855-22": "Please select a device",
"workOrder.index.748855-23": "deadline",
"workOrder.index.748855-24": "Select date and time",
"workOrder.index.748855-25": "Remarks",
"workOrder.index.748855-26": "Please enter remarks",
"workOrder.index.748855-27": "Description",
"workOrder.index.748855-28": "No record",
"workOrder.index.748855-29": "The work order name cannot be empty",
"workOrder.index.748855-30": "The work order status cannot be empty",
"workOrder.index.748855-31": "The work order description cannot be empty",
"workOrder.index.748855-32": "Work order type cannot be empty",
"workOrder.index.748855-33": "Contact person cannot be empty",
"workOrder.index.748855-34": "The work order number cannot be empty",
"workOrder.index.748855-35": "The device name cannot be empty",
"workOrder.index.748855-36": "The deadline cannot be empty",
"workOrder.index.748855-37": "Select dispatch personnel",
"workOrder.index.748855-38": "Are you sure to accept the order?",
"workOrder.index.748855-39": "Please enter the remarks information",
"workOrder.index.748855-40": "prompt",
"workOrder.index.748855-41": "confirm",
"workOrder.index.748855-42": "Cancel",
"workOrder.index.748855-43": "Cancel input",
"workOrder.index.748855-44": "Operation successful",
"workOrder.index.748855-45": "Add work order",
"workOrder.index.748855-46": "View work order",
"workOrder.index.748855-47": "Are you sure to delete the data item with work order management number {0}?",
"workOrder.index.748855-48": "Work Order Record",
"workOrder.index.748855-49": "Select the user you want to dispatch",
"workOrder.index.748855-50": "Statement information",
"workOrder.index.748855-51": "Please enter your statement information",
"workOrder.index.748855-52": "Image",
"workOrder.index.748855-53": "Detailed information",
"workOrder.index.748855-54": "description",
"workOrder.index.748855-55": "please enter description",
"workOrder.index.748855-56": "region",
"workOrder.index.748855-57": "Please select a time in the future",
"workOrder.index.748855-58": "Region cannot be empty",
"workOrder.index.748855-59": "None"
}

View File

@@ -1,60 +0,0 @@
{
"alert.index.236501-0": "告警名称",
"alert.index.236501-2": "告警级别",
"alert.index.236501-3": "请选择告警级别",
"alert.index.236501-11": "备注信息",
"alert.index.236501-16": "告警状态",
"alert.index.236501-17": "关联场景",
"alert.index.236501-18": "场景名称",
"alert.index.236501-19": "触发条件",
"alert.index.236501-20": "任意条件",
"alert.index.236501-21": "所有条件",
"alert.index.236501-22": "不满足条件",
"alert.index.236501-23": "执行方式",
"alert.index.236501-24": "串行",
"alert.index.236501-25": "并行",
"alert.index.236501-26": "移除",
"alert.index.236501-27": "消息通知",
"alert.index.236501-28": "模板名称",
"alert.index.236501-29": "渠道类型",
"alert.index.236501-30": "渠道账号",
"alert.index.236501-31": "服务商",
"alert.index.236501-33": "添加场景",
"alert.index.236501-34": "添加模板",
"alert.index.236501-39": "告警名称不能为空",
"alert.index.236501-40": "告警级别不能为空",
"alert.index.236501-41": "添加告警配置",
"alert.index.236501-42": "修改设备告警",
"alert.index.236501-43": "是否确认删除设备告警编号为{0}的数据项?",
"alert.index.236501-44": "状态",
"alert.index.236501-45": "启动",
"alert.index.236501-46": "暂停",
"alert.index.236501-47": "生成工单",
"alert.log.491272-1": "请输入告警名称",
"alert.log.491272-4": "处理状态",
"alert.log.491272-5": "请选择处理状态",
"alert.log.491272-8": "设备编号",
"alert.log.491272-9": "设备名称",
"alert.log.491272-10": "告警时间",
"alert.log.491272-18": "处理内容不能为空",
"alert.log.491272-19": "添加设备告警",
"alert.log.491272-20": "处理设备告警",
"alert.log.491272-23": "是否确认删除设备告警编号为{0}的数据项?",
"alert.log.491272-24": "数据",
"alert.log.491272-25": "处理",
"alert.log.491272-26": "处理结果",
"alert.log.491272-27": "处理告警",
"alert.log.491272-28": "无需处理",
"alert.log.491272-29": "已处理",
"alert.notify-temp-list.555661-0": "通知模板场景",
"alert.notify-temp-list.555661-1": "模版名称",
"alert.notify-temp-list.555661-2": "请输入模版名称",
"alert.notify-temp-list.555661-4": "请选择渠道类型",
"alert.notify-temp-list.555661-7": "编号",
"alert.notify-temp-list.555661-11": "是否启用",
"alert.scene-list.591934-0": "选择场景",
"alert.scene-list.591934-1": "场景名称",
"alert.scene-list.591934-2": "请输入场景名称",
"alert-user.837395-0": "选择告警用户",
"alert-user.837395-1": "确认删除告警用户?"
}

View File

@@ -1,30 +0,0 @@
{
"appVersion.index.348485-0": "请输入版本名称",
"appVersion.index.348485-1": "请输入版本号",
"appVersion.index.348485-2": "是",
"appVersion.index.348485-3": "否",
"appVersion.index.348485-4": "是否最新版本",
"appVersion.index.348485-5": "APK文件",
"appVersion.index.348485-6": "WGT文件",
"appVersion.index.348485-7": "更新内容",
"appVersion.index.348485-8": "创建人",
"appVersion.index.348485-9": "创建时间",
"appVersion.index.348485-10": "版本号",
"appVersion.index.348485-11": "版本名称",
"appVersion.index.348485-12": "是否热更新",
"appVersion.index.348485-13": "提示:只能有一个最新版本",
"appVersion.index.348485-14": "更新内容",
"appVersion.index.348485-15": "请输入更新内容",
"appVersion.index.348485-16": "确 定",
"appVersion.index.348485-17": "取 消",
"appVersion.index.348485-18": "请选择",
"appVersion.index.348485-19": "请上传apk文件",
"appVersion.index.348485-20": "请上传wgt文件",
"appVersion.index.348485-21": "请输入版本内容",
"appVersion.index.348485-22": "添加APP版本",
"appVersion.index.348485-23": "修改APP版本",
"appVersion.index.348485-24": "修改成功",
"appVersion.index.348485-25": "添加成功",
"appVersion.index.348485-26": "删除成功",
"appVersion.index.348485-27": "是否确认删除APP版本编号为{0}的数据项?"
}

View File

@@ -1,115 +0,0 @@
{
"views.iot.bridge.index.525282-0": "连接器名称",
"views.iot.bridge.index.525282-1": "请输入连接器名称",
"views.iot.bridge.index.525282-2": "搜索",
"views.iot.bridge.index.525282-3": "重置",
"views.iot.bridge.index.525282-4": "新增",
"views.iot.bridge.index.525282-5": "修改",
"views.iot.bridge.index.525282-6": "删除",
"views.iot.bridge.index.525282-7": "导出",
"views.iot.bridge.index.525282-8": "是否生效",
"views.iot.bridge.index.525282-9": "状态",
"views.iot.bridge.index.525282-10": "未连接",
"views.iot.bridge.index.525282-11": "已连接",
"views.iot.bridge.index.525282-12": "桥接类型",
"views.iot.bridge.index.525282-13": "Http推送",
"views.iot.bridge.index.525282-14": "Mqtt桥接",
"views.iot.bridge.index.525282-15": "数据库存储",
"views.iot.bridge.index.525282-16": "桥接方向",
"views.iot.bridge.index.525282-17": "输入",
"views.iot.bridge.index.525282-18": "输出",
"views.iot.bridge.index.525282-19": "备注",
"views.iot.bridge.index.525282-20": "操作",
"views.iot.bridge.index.525282-21": "连接测试",
"views.iot.bridge.index.525282-22": "桥接名称",
"views.iot.bridge.index.525282-23": "请输入桥接名称",
"views.iot.bridge.index.525282-24": "请选择桥接方向",
"views.iot.bridge.index.525282-25": "请求地址",
"views.iot.bridge.index.525282-26": "请输入请求地址",
"views.iot.bridge.index.525282-27": "请选择",
"views.iot.bridge.index.525282-28": "请求方法",
"views.iot.bridge.index.525282-29": "请求头",
"views.iot.bridge.index.525282-30": "请输入参数名",
"views.iot.bridge.index.525282-31": "请输入参数值",
"views.iot.bridge.index.525282-32": "键",
"views.iot.bridge.index.525282-33": "值",
"views.iot.bridge.index.525282-34": "添加参数",
"views.iot.bridge.index.525282-35": "请求参数",
"views.iot.bridge.index.525282-36": "请求体",
"views.iot.bridge.index.525282-37": "请输入内容",
"views.iot.bridge.index.525282-38": "MQTT服务地址",
"views.iot.bridge.index.525282-39": "输入例mqtt.example.com:1883",
"views.iot.bridge.index.525282-40": "客户端ID",
"views.iot.bridge.index.525282-41": "请输入客户端ID",
"views.iot.bridge.index.525282-42": "用户名",
"views.iot.bridge.index.525282-43": "请输入用户名",
"views.iot.bridge.index.525282-44": "密码",
"views.iot.bridge.index.525282-45": "请输入密码",
"views.iot.bridge.index.525282-46": "桥接路由",
"views.iot.bridge.index.525282-47": "请输入桥接路由",
"views.iot.bridge.index.525282-48": "数据库类型",
"views.iot.bridge.index.525282-49": "请选择数据库类型",
"views.iot.bridge.index.525282-50": "数据源",
"views.iot.bridge.index.525282-51": "请选择数据源",
"views.iot.bridge.index.525282-52": "连接地址",
"views.iot.bridge.index.525282-53": "数据库名称",
"views.iot.bridge.index.525282-54": "请输入数据库名称",
"views.iot.bridge.index.525282-55": "输入相关SQL语句",
"views.iot.bridge.index.525282-56": "连接",
"views.iot.bridge.index.525282-57": "确定",
"views.iot.bridge.index.525282-58": "取消",
"views.iot.bridge.index.525282-59": "关系型数据库",
"views.iot.bridge.index.525282-60": "敬请期待",
"views.iot.bridge.index.525282-61": "连接器名称不能为空",
"views.iot.bridge.index.525282-62": "桥接类型(3=Http推送4=Mqtt桥接5=数据库存储)不能为空",
"views.iot.bridge.index.525282-63": "桥接方向(1=输入2=输出)不能为空",
"views.iot.bridge.index.525282-64": "请求方法不能为空",
"views.iot.bridge.index.525282-65": "桥接地址不能为空",
"views.iot.bridge.index.525282-66": "创建时间不能为空",
"views.iot.bridge.index.525282-67": "更新时间不能为空",
"views.iot.bridge.index.525282-68": "MQTT服务地址不能为空",
"views.iot.bridge.index.525282-69": "输入格式不正确",
"views.iot.bridge.index.525282-70": "客户端ID不能为空",
"views.iot.bridge.index.525282-71": "用户名不能为空",
"views.iot.bridge.index.525282-72": "密码不能为空",
"views.iot.bridge.index.525282-73": "路由不能为空",
"views.iot.bridge.index.525282-74": "数据源不能为空",
"views.iot.bridge.index.525282-75": "数据库类型不能为空",
"views.iot.bridge.index.525282-76": "端口不能为空",
"views.iot.bridge.index.525282-77": "数据库名称不能为空",
"views.iot.bridge.index.525282-78": "请输入sql语句",
"views.iot.bridge.index.525282-79": "连接地址不能为空",
"views.iot.bridge.index.525282-80": "格式不正确",
"views.iot.bridge.index.525282-81": "输入例localhost:3306",
"views.iot.bridge.index.525282-82": "桥接入口",
"views.iot.bridge.index.525282-83": "Http桥接GET",
"views.iot.bridge.index.525282-84": "Http桥接PUT",
"views.iot.bridge.index.525282-85": "Http桥接POST",
"views.iot.bridge.index.525282-86": "添加数据桥接",
"views.iot.bridge.index.525282-87": "连接成功",
"views.iot.bridge.index.525282-88": "连接器未连接,请检查相关配置",
"views.iot.bridge.index.525282-89": "修改数据桥接",
"views.iot.bridge.index.525282-90": "连接器已在连接中",
"views.iot.bridge.index.525282-91": "连接器未连接,请检查相关配置",
"views.iot.bridge.index.525282-92": "配置错误,请检查配置信息",
"views.iot.bridge.index.525282-93": "修改成功",
"views.iot.bridge.index.525282-94": "新增成功",
"views.iot.bridge.index.525282-95": "删除成功",
"views.iot.bridge.index.525282-96": "是否确认删除数据桥接编号为{0}的数据项?",
"views.iot.bridge.index.525282-97": "测试结果:",
"views.iot.bridge.index.525282-98": "添加请求头",
"views.iot.bridge.index.525282-99": "添加请求配置",
"views.iot.bridge.index.525282-100": "数据输入主题",
"views.iot.bridge.index.525282-101": "请输入数据输入主题",
"views.iot.bridge.index.525282-102": "数据输出主题",
"views.iot.bridge.index.525282-103": "请输入数据输出主题",
"views.iot.bridge.index.525282-104": "高级配置",
"views.iot.bridge.index.525282-105": "MQTT版本",
"views.iot.bridge.index.525282-106": "连接超时时长",
"views.iot.bridge.index.525282-107": "自动重连",
"views.iot.bridge.index.525282-108": "请输入",
"views.iot.bridge.index.525282-109": "请求配置",
"views.iot.bridge.index.525282-110": "连接中...",
"views.iot.bridge.index.525282-111": "数据输出主题为空时可通过msgContext.setTopic()传递输出主题",
"views.iot.bridge.index.525282-112": "为空时可通过msgContext.setPayload()传递输出请求体"
}

View File

@@ -1,111 +0,0 @@
{
"card.platform.title": "物联网卡平台",
"card.platform.search": "搜索",
"card.platform.reset": "重置",
"card.platform.add": "新增",
"card.platform.edit": "修改",
"card.platform.view": "查看",
"card.platform.delete": "删除",
"card.platform.export": "导出",
"card.platform.id": "编号",
"card.platform.name": "名称",
"card.platform.platform_label": "平台",
"card.platform.tenant_name": "租户名称",
"card.platform.create_by": "创建人",
"card.platform.create_time": "创建时间",
"card.platform.operation": "操作",
"card.platform.edit_title": "修改物联网卡平台",
"card.platform.add_title": "添加物联网卡平台",
"card.platform.please_enter_id": "请输入编号",
"card.platform.please_enter_name": "请输入名称",
"card.platform.please_select_platform": "请选择平台",
"card.platform.confirm_delete": "是否确认删除物联网卡平台编号为\"{ids}\"的数据项?",
"card.platform.delete_success": "删除成功",
"card.platform.ok": "确 定",
"card.platform.cancel": "取 消",
"card.platform.parse_remark_field_failed": "remark字段解析失败",
"card.platform.parse_config_content_failed": "configContent解析失败",
"card.platform.modify_success": "修改成功",
"card.platform.add_success": "新增成功",
"card.platform.synchronize": "同步",
"card.platform.synchronize_success": "同步成功",
"card.sim.id": "编号",
"card.sim.iccid": "ICCID",
"card.sim.imsi": "IMSI",
"card.sim.card_number": "卡号",
"card.sim.access_number": "接入号码",
"card.sim.operator": "运营商",
"card.sim.card_status": "卡状态",
"card.sim.total_data": "总流量",
"card.sim.data_used": "已用流量",
"card.sim.data_remaining": "剩余流量",
"card.sim.data_alert_threshold": "流量告警阈值(%)",
"card.sim.open_date": "开户日期",
"card.sim.activate_time": "激活日期",
"card.sim.expire_time": "到期日期",
"card.sim.down_time": "停机日期",
"card.sim.device_id": "设备编号",
"card.sim.device_name": "设备名称",
"card.sim.product": "所属产品",
"card.sim.card_platform": "卡平台",
"card.sim.data_plan": "套餐名称",
"card.sim.tenant_id": "租户ID",
"card.sim.tenant_name": "租户名称",
"card.sim.create_by": "创建人",
"card.sim.create_time": "创建时间",
"card.sim.update_by": "更新人",
"card.sim.update_time": "更新时间",
"card.sim.del_flag": "删除标记",
"card.sim.please_enter_iccid": "请输入ICCID号",
"card.sim.please_enter_imsi": "请输入IMSI号",
"card.sim.please_enter_card_number": "请输入卡号",
"card.sim.please_select_card_status": "请选择卡状态",
"card.sim.please_select_card_platform": "请选择卡平台",
"card.sim.please_select_operator": "请选择运营商",
"card.sim.please_enter_access_number": "请输入接入号码",
"card.sim.card_platform_not_empty": "卡平台不能为空",
"card.sim.iccid_not_empty": "ICCID号不能为空",
"card.sim.access_number_not_empty": "接入号码不能为空",
"card.sim.add_title": "添加物联网卡",
"card.sim.edit_title": "修改物联网卡",
"card.sim.confirm_delete": "是否确认删除物联网卡编号为\"{ids}\"的数据项?",
"card.sim.basic_info": "基本信息",
"card.sim.imel": "IMEI",
"card.sim.notify_users": "通知用户配置",
"card.sim.select_device": "选择设备",
"card.sim.enter_device_name": "请输入设备名称",
"card.sim.serial_number": "设备编号",
"card.sim.enter_serial_number": "请输入设备编号",
"card.sim.select": "选择",
"card.sim.data_alert_threshold_tip": "不配置不会通知,配置后,当每天定时同步流量时如果超过阈值则会发送消息通知",
"card.sim.view_title": "SIM卡详情",
"card.sim.title": "SIM卡",
"card.sim.refresh_successful": "刷新成功",
"card.sim.notify_users_placeholder": "请选择通知用户配置",
"card.sim.data_alert_threshold_placeholder": "请填写流量警告阈值",
"card.sim.device_id_placeholder": "请选择设备编号",
"card.sim.device_blind_info": "绑定设备信息:",
"card.sim.none": "暂无数据请添加SIM卡信息",
"card.sim.alarm_settings": "告警配置",
"card.sim.sim_card_info": "SIM卡信息",
"card.overview.title": "物联卡概览",
"card.overview.total": "总卡数",
"card.overview.online": "在线",
"card.overview.pending": "待激活",
"card.overview.shutdown": "停机",
"card.overview.paused": "销号",
"card.overview.unknown": "未知",
"card.overview.operator_distribution": "运营商分布",
"card.overview.platform_distribution": "卡平台分布",
"card.overview.top_flow_month": "本月流量最多",
"card.overview.sim_number": "SIM卡号",
"card.overview.used_flow": "使用流量(MB)",
"card.overview.flow_ratio": "流量占比(%)",
"card.overview.is_alert": "是否报警",
"card.overview.yes": "是",
"card.overview.no": "否",
"card.overview.no_data": "暂无数据",
"card.overview.no_data_tooltip": "无数据"
}

View File

@@ -1,32 +0,0 @@
{
"dragEditor.565720-0": "文字展示",
"dragEditor.565720-1": "数值展示",
"dragEditor.565720-2": "数值控制",
"dragEditor.565720-3": "多状态控制",
"dragEditor.565720-4": "开关控制",
"dragEditor.565720-5": "历史数据",
"dragEditor.565720-6": "页面设置",
"dragEditor.565720-7": "图层管理",
"dragEditor.565720-8": "组件设置",
"dragEditor.565720-9": "设备详情",
"dragEditor.565720-10": "重置",
"dragEditor.565720-11": "导出",
"dragEditor.565720-12": "导入",
"dragEditor.565720-13": "查看",
"dragEditor.565720-14": "预览",
"dragEditor.565720-15": "保存",
"dragEditor.565720-16": "查看JSON",
"dragEditor.565720-17": "重置后您添加或者修改的数据将会失效, 是否继续?",
"dragEditor.565720-18": "请在左侧选择组件",
"dragEditor.565720-19": "iPhone8高度",
"dragEditor.565720-20": "固定位置的组件(如: 底部导航、悬浮)不能放在第一个!",
"dragEditor.565720-21": "当前组件只能添加一个!",
"dragEditor.565720-22": "标题",
"dragEditor.565720-23": "文字展示1",
"dragEditor.565720-24": "数值展示1",
"dragEditor.565720-25": "数值控制1",
"dragEditor.565720-26": "多状态控制1",
"dragEditor.565720-27": "开关控制1",
"dragEditor.565720-28": "仪表",
"dragEditor.565720-29": "选择组件后在右侧设置"
}

View File

@@ -1,151 +0,0 @@
{
"firmware.index.222541-0": "固件名称",
"firmware.index.222541-1": "请输入固件名称",
"firmware.index.222541-2": "请选择产品名称",
"firmware.index.222541-3": "添加固件",
"firmware.index.222541-4": "固件版本",
"firmware.index.222541-5": "产品名称",
"firmware.index.222541-6": "下载地址",
"firmware.index.222541-7": "状态",
"firmware.index.222541-8": "最新",
"firmware.index.222541-9": "默认",
"firmware.index.222541-10": "创建时间",
"firmware.index.222541-11": "固件描述",
"firmware.index.222541-12": "固件升级",
"firmware.index.222541-13": "支持中文,英文大小写、数字、部分常用符号",
"firmware.index.222541-14": "请选择产品",
"firmware.index.222541-15": "固件版本号",
"firmware.index.222541-16": "请输入固件版本",
"firmware.index.222541-17": "最新固件",
"firmware.index.222541-18": "提示:产品中只能有一个最新固件",
"firmware.index.222541-19": "选择固件",
"firmware.index.222541-20": "任务名称",
"firmware.index.222541-21": "对本次上次的固件进行描述和记录,请输入0-100个字符",
"firmware.index.222541-22": "请输入任务名称(支持中文英文大小写、数字、部分常用符号最大长度20)",
"firmware.index.222541-23": "升级方式",
"firmware.index.222541-24": "按固件版本",
"firmware.index.222541-25": "按设备名称",
"firmware.index.222541-26": "待升级版本号",
"firmware.index.222541-27": "请选择升级版本号",
"firmware.index.222541-28": "升级范围",
"firmware.index.222541-29": "请选择升级范围",
"firmware.index.222541-30": "选中设备",
"firmware.index.222541-31": "选择设备",
"firmware.index.222541-32": "预定升级时间",
"firmware.index.222541-33": "选择日期时间",
"firmware.index.222541-34": "升级描述",
"firmware.index.222541-35": "对本次升级任务进行描述和记录,请输入0-200个字符",
"firmware.index.222541-36": "固件名称不能为空",
"firmware.index.222541-37": "产品ID不能为空",
"firmware.index.222541-38": "产品名称不能为空",
"firmware.index.222541-39": "固件版本不能为空",
"firmware.index.222541-40": "文件路径不能为空",
"firmware.index.222541-41": "任务名称不能为空",
"firmware.index.222541-42": "添加新固件",
"firmware.index.222541-43": "修改产品固件",
"firmware.index.222541-44": "是否确认删除产品固件编号为{0}的数据项?",
"firmware.index.222541-46": "固件升级",
"firmware.index.222541-47": "必须有选中设备才能提交固件升级任务!",
"firmware.index.222541-48": "固件类型",
"firmware.index.222541-49": "分包",
"firmware.index.222541-50": "固件类型",
"firmware.index.222541-51": "请选择固件类型",
"firmware.index.222541-52": "分包拉取",
"firmware.index.222541-53": "HTTP",
"firmware.deviceList.index.222542-0": "选择设备",
"firmware.deviceList.index.222542-1": "设备名称",
"firmware.deviceList.index.222542-2": "请输入设备名称",
"firmware.deviceList.index.222542-3": "固件版本",
"firmware.deviceList.index.222542-4": "请输入固件版本",
"firmware.deviceList.index.222542-5": "设备编号",
"firmware.deviceList.index.222542-6": "设备类型",
"firmware.deviceList.index.222542-7": "分享",
"firmware.deviceList.index.222542-8": "拥有",
"firmware.deviceList.index.222542-9": "设备状态",
"firmware.deviceList.index.222542-10": "设备选择成功",
"firmware.deviceList.index.222542-11": "设备",
"firmware.deviceList.index.222542-12": "请输入设备名称/设备编号",
"firmware.deviceList.index.222542-13": "请输入版本号",
"firmware.deviceList.index.222542-14": "请选择",
"firmware.deviceList.index.222542-15": "分包升级版本",
"firmware.deviceList.index.222542-16": "HTTP升级版本",
"firmware.task.222543-0": "固件信息",
"firmware.task.222543-1": "固件升级设备统计",
"firmware.task.222543-2": "任务管理",
"firmware.task.222543-3": "任务明细",
"firmware.task.222543-4": "设备明细",
"firmware.task.222543-5": "请输入任务ID",
"firmware.task.222543-6": "请输入设备序列号",
"firmware.task.222543-7": "请输入设备名称",
"firmware.task.222543-8": "任务ID",
"firmware.task.222543-9": "任务名称",
"firmware.task.222543-10": "任务类型",
"firmware.task.222543-11": "版本升级",
"firmware.task.222543-12": "指定设备",
"firmware.task.222543-13": "设备数量",
"firmware.task.222543-14": "预定时间",
"firmware.task.222543-15": "任务描述",
"firmware.task.222543-16": "添加时间",
"firmware.task.222543-17": "查看",
"firmware.task.222543-18": "序列号",
"firmware.task.222543-19": "当前版本号",
"firmware.task.222543-20": "消息ID",
"firmware.task.222543-21": "升级状态",
"firmware.task.222543-22": "升级范围不能为空",
"firmware.task.222543-23": "新增任务",
"firmware.task.222543-24": "保存中...",
"firmware.task.222543-25": "升级成功",
"firmware.task.222543-26": "升级失败",
"firmware.task.222543-27": "停止",
"firmware.task.222543-28": "未知",
"firmware.task.222543-29": "状态详情",
"firmware.task.222543-30": "状态更新时间",
"firmware.task.222543-31": "任务详情",
"firmware.task.222543-32": "任务信息",
"firmware.task.222543-33": "任务统计",
"firmware.task.222543-34": "设备详情",
"firmware.task.222543-35": "全部设备",
"firmware.task.222543-36": "升级成功",
"firmware.task.222543-37": "待推送",
"firmware.task.222543-38": "升级中",
"firmware.task.222543-39": "升级失败",
"firmware.task.222543-40": "停止",
"firmware.task.222543-41": "刷新",
"firmware.task.222543-42": "是否最新",
"firmware.task.222543-43": "添加时间",
"firmware.task.222543-44": "固件描述",
"firmware.task.222543-45": "固件升级设备总数",
"firmware.task.222543-46": "正在升级",
"firmware.task.222543-47": "设备数量",
"firmware.task.222543-48": "待推送",
"firmware.task.222543-49": "序列号",
"firmware.task.222543-50": "新增",
"firmware.task.222543-51": "请输入任务名称",
"firmware.task.222543-52": "添加时间",
"firmware.task.222543-53": "删除",
"firmware.task.222543-54": "请输入设备编号",
"firmware.task.222543-55": "进度",
"firmware.task.222543-56": "操作",
"firmware.task.222543-57": "重新推送",
"firmware.task.222543-58": "升级范围",
"firmware.task.222543-59": "请选择升级范围",
"firmware.task.222543-60": "选中设备",
"firmware.task.222543-61": "选择设备",
"firmware.task.222543-62": "固件类型",
"firmware.task.222543-63": "最新",
"firmware.task.222543-64": "默认",
"firmware.task.222543-65": "分包",
"firmware.task.222543-66": "是否确认删除任务id为{0}的数据项?",
"firmware.task.222543-67": "删除成功",
"firmware.task.222543-68": "版本升级",
"firmware.task.222543-69": "指定设备",
"firmware.task.222543-70": "等待升级",
"firmware.task.222543-71": "发送中",
"firmware.task.222543-72": "升级中",
"firmware.task.222543-73": "成功",
"firmware.task.222543-74": "失败",
"firmware.task.222543-75": "停止",
"firmware.task.222543-76": "未知",
"firmware.task.222543-77": "执行重新推送",
"firmware.task.222543-78": "重新推送失败"
}

View File

@@ -1,23 +0,0 @@
{
"license.index.654891-0": "蜂信物联",
"license.index.654891-1": "FastBee物联网平台授权认证",
"license.index.654891-2": "授权认证",
"license.index.654891-3": "提示:",
"license.index.654891-4": "请选择授权类型",
"license.index.654891-5": "请输入公司名称",
"license.index.654891-6": "请输入证书名称",
"license.index.654891-7": "上传",
"license.index.654891-8": "认证过期或者未认证,请上传许可证书进行认证!",
"license.index.654891-9": "开始安装",
"license.index.654891-10": "区域校验(公司)",
"license.index.654891-11": "IP白名单个人",
"license.index.654891-12": "试用",
"license.index.654891-13": "请上传文件",
"license.index.654891-14": "文件格式不正确,请上传.lic文件",
"license.index.654891-15": "证书上传成功",
"license.index.654891-16": "上传失败",
"license.index.654891-17": "证书安装中...",
"license.index.654891-18": "安装成功,请登录",
"license.index.654891-19": "安装失败,请重试",
"license.index.654891-20": "证书安装失败"
}

View File

@@ -1,39 +0,0 @@
{
"iot.maintenance.index.839454-0": "请输入维保名称",
"iot.maintenance.index.839454-1": "请输入设备名称",
"iot.maintenance.index.839454-2": "请选择状态",
"iot.maintenance.index.839454-3": "请选择维保类型",
"iot.maintenance.index.839454-4": "维保名称",
"iot.maintenance.index.839454-5": "设备名称",
"iot.maintenance.index.839454-6": "开始维保时间",
"iot.maintenance.index.839454-7": "下次维保时间",
"iot.maintenance.index.839454-8": "状态",
"iot.maintenance.index.839454-9": "维保类型",
"iot.maintenance.index.839454-10": "创建人",
"iot.maintenance.index.839454-11": "创建时间",
"iot.maintenance.index.839454-12": "请选择设备",
"iot.maintenance.index.839454-13": "保内维保时间",
"iot.maintenance.index.839454-14": "设备的售后服务质保时间默认365天默认 30天",
"iot.maintenance.index.839454-15": "请输入保内维保时间",
"iot.maintenance.index.839454-16": "请选择",
"iot.maintenance.index.839454-17": "维保周期",
"iot.maintenance.index.839454-18": "维保计划执行的周期必须小于维保时间默认365天默认 30天",
"iot.maintenance.index.839454-19": "请输入保内维保时间单位",
"iot.maintenance.index.839454-20": "维保计划的开始时间;",
"iot.maintenance.index.839454-21": "请选择开始维保时间",
"iot.maintenance.index.839454-22": "提前派工单时间",
"iot.maintenance.index.839454-23": "维保计划提前自动生成维保工单时间,必须小于维保周期;",
"iot.maintenance.index.839454-24": "请选择提前派工单时间",
"iot.maintenance.index.839454-25": "保内维保到期停止执行",
"iot.maintenance.index.839454-26": "维保名称不能为空",
"iot.maintenance.index.839454-27": "请选择设备",
"iot.maintenance.index.839454-28": "保内维保时间不能为空",
"iot.maintenance.index.839454-29": "保内维保时间单位不能为空",
"iot.maintenance.index.839454-30": "维保周期不能为空",
"iot.maintenance.index.839454-31": "维保周期单位不能为空",
"iot.maintenance.index.839454-32": "开始维保时间不能为空",
"iot.maintenance.index.839454-33": "提前派工单时间不能为空",
"iot.maintenance.index.839454-34": "添加设备维保",
"iot.maintenance.index.839454-35": "修改设备维保",
"iot.maintenance.index.839454-36": "是否确认删除设备维保编号为{0}的数据项?"
}

View File

@@ -1,80 +0,0 @@
{
"notify.channel.index.333541-0": "渠道名称",
"notify.channel.index.333541-1": "请输入渠道名称",
"notify.channel.index.333541-2": "渠道类型",
"notify.channel.index.333541-3": "请选择渠道类型",
"notify.channel.index.333541-4": "新增渠道",
"notify.channel.index.333541-5": "编辑渠道",
"notify.channel.index.333541-6": "发送渠道类型",
"notify.channel.index.333541-7": "服务商",
"notify.channel.index.333541-8": "创建时间",
"notify.channel.index.333541-9": "服务商",
"notify.channel.index.333541-10": "请选择服务商",
"notify.channel.index.333541-11": "请输入配置内容",
"notify.channel.index.333541-12": "渠道名称不能为空",
"notify.channel.index.333541-13": "发送渠道类型不能为空",
"notify.channel.index.333541-14": "服务商不能为空",
"notify.channel.index.333541-15": "添加通知渠道",
"notify.channel.index.333541-16": "修改通知渠道",
"notify.channel.index.333541-17": "是否确认删除通知渠道编号为{0}的数据项?",
"notify.channel.index.333541-18": "编号",
"notify.template.index.333542-0": "模版名称",
"notify.template.index.333542-1": "请输入模版名称",
"notify.template.index.333542-2": "业务编码",
"notify.template.index.333542-3": "请选择通知业务",
"notify.template.index.333542-4": "新增模板",
"notify.template.index.333542-5": "渠道账号",
"notify.template.index.333542-6": "是否启用",
"notify.template.index.333542-7": "测试",
"notify.template.index.333542-8": "请选择通知业务",
"notify.template.index.333542-9": "请选择渠道账号",
"notify.template.index.333542-10": "选择类型",
"notify.template.index.333542-11": "请选择发送类型",
"notify.template.index.333542-12": "请选择钉钉通知发送类型",
"notify.template.index.333542-13": "请输入配置内容",
"notify.template.index.333542-14": "发送账号",
"notify.template.index.333542-15": "请输入电话号码或者邮箱或者用户id",
"notify.template.index.333542-16": "请输入变量信息",
"notify.template.index.333542-17": "模板名称不能为空",
"notify.template.index.333542-18": "通知渠道(短信,微信服务号,邮箱 等)不能为空",
"notify.template.index.333542-19": "模版内容,配置渠道参数不能为空",
"notify.template.index.333542-20": "模版内容不能为空",
"notify.template.index.333542-21": "渠道来源不能为空",
"notify.template.index.333542-22": "渠道账号不能为空",
"notify.template.index.333542-23": "服务商不能为空",
"notify.template.index.333542-24": "账号信息不能为空",
"notify.template.index.333542-25": "添加通知模版",
"notify.template.index.333542-26": "修改通知模版",
"notify.template.index.333542-27": "是否确认删除通知模版编号为{0}的数据项?",
"notify.template.index.333542-28": "当前模板已经有相同启用条件的模板启用了(启用条件:同一业务编码的模板短信、语音、邮箱渠道分别可以启用一个,微信、钉钉渠道下不同服务商分别可以启用一个),是否继续启用当前模板?",
"notify.template.index.333542-29": "启用成功",
"notify.template.index.333542-30": "启用失败",
"notify.template.index.333542-31": "已取消启用",
"notify.template.index.333542-32": "操作成功",
"notify.template.index.333542-33": "操作失败",
"notify.template.index.333542-34": "发送成功!",
"notify.template.index.333542-35": "编号",
"notify.log.333543-0": "渠道编号",
"notify.log.333543-1": "请输入渠道编号",
"notify.log.333543-2": "模版编号",
"notify.log.333543-3": "请输入模版编号",
"notify.log.333543-4": "发送账号",
"notify.log.333543-5": "请输入发送账号",
"notify.log.333543-6": "业务编码",
"notify.log.333543-7": "请选择通知业务",
"notify.log.333543-8": "发送时间",
"notify.log.333543-9": "开始日期",
"notify.log.333543-10": "结束日期",
"notify.log.333543-11": "渠道账号",
"notify.log.333543-12": "模板名称",
"notify.log.333543-13": "发送状态",
"notify.log.333543-14": "失败",
"notify.log.333543-15": "成功",
"notify.log.333543-16": "发送时间",
"notify.log.333543-17": "返回内容",
"notify.log.333543-18": "请输入内容",
"notify.log.333543-19": "消息内容",
"notify.log.333543-20": "添加通知日志",
"notify.log.333543-21": "查看日志详情",
"notify.log.333543-22": "是否确认删除通知日志编号为{0}的数据项?"
}

View File

@@ -1,72 +0,0 @@
{
"protocol.index.111542-0": "协议名称",
"protocol.index.111542-1": "请输入协议名称",
"protocol.index.111542-2": "协议编码",
"protocol.index.111542-3": "请输入协议编码",
"protocol.index.111542-4": "协议摘要",
"protocol.index.111542-5": "上传地址",
"protocol.index.111542-6": "协议类型",
"protocol.index.111542-7": "是否显示",
"protocol.index.111542-8": "详情",
"protocol.index.111542-9": "修 改",
"protocol.index.111542-10": "取 消",
"protocol.index.111542-11": "修改协议数据格式",
"protocol.index.111542-12": "修改成功",
"simulate.index.111543-0": "请输入设备名称",
"simulate.index.111543-1": "选择",
"simulate.index.111543-2": "设备名称(编号)",
"simulate.index.111543-3": "子设备",
"simulate.index.111543-4": "轮询状态",
"simulate.index.111543-5": "Modbus设备模拟器",
"simulate.index.111543-6": "时间:",
"simulate.index.111543-7": "主题:",
"simulate.index.111543-8": "内容:",
"simulate.index.111543-9": "请选择Payload",
"simulate.index.111543-10": "请选择QoS",
"simulate.index.111543-11": "0 (最多一次)",
"simulate.index.111543-12": "1 (最少一次)",
"simulate.index.111543-13": "2 (有且仅有一次)",
"simulate.index.111543-14": "请选择主题",
"simulate.index.111543-15": "报文编辑器",
"simulate.index.111543-16": "请使用报文编辑器生成",
"simulate.index.111543-17": "发送",
"simulate.index.111543-18": "属性上报",
"simulate.index.111543-19": "服务下发",
"simulate.index.111543-20": "暂无数据",
"simulate.index.111543-21": "请选择设备从机",
"simulate.index.111543-22": "服务调用",
"simulate.index.111543-23": "数据范围:",
"simulate.index.111543-24": "请选择协议:",
"simulate.index.111543-25": "请选择协议",
"simulate.index.111543-26": "暂时只支持modbus协议",
"simulate.index.111543-27": "报文解码",
"simulate.index.111543-28": "输入待解析报文",
"simulate.index.111543-29": "解析",
"simulate.index.111543-30": "读指令生成",
"simulate.index.111543-31": "从机地址",
"simulate.index.111543-32": "从机地址,如:1",
"simulate.index.111543-33": "寄存器地址",
"simulate.index.111543-34": "功能码",
"simulate.index.111543-35": "请选择功能码",
"simulate.index.111543-36": "03-读保持寄存器",
"simulate.index.111543-37": "04-读输入寄存器",
"simulate.index.111543-38": "读取个数",
"simulate.index.111543-39": "生成",
"simulate.index.111543-40": "生成并复制至发送框",
"simulate.index.111543-41": "报文:",
"simulate.index.111543-42": "写指令生成",
"simulate.index.111543-43": "写入值",
"simulate.index.111543-44": "输入值",
"simulate.index.111543-45": "CRC生成/校验",
"simulate.index.111543-46": "待校验报文",
"simulate.index.111543-47": "校验",
"simulate.index.111543-48": "结果:",
"simulate.index.111543-49": "请先选择设备",
"simulate.index.111543-50": "设备模拟的主题不能为空",
"simulate.index.111543-51": "设备模拟的消息内容不能为空",
"simulate.index.111543-52": "指令下发成功",
"simulate.index.111543-53": "服务调用成功",
"simulate.index.111543-54": "启用",
"simulate.index.111543-55": "停用",
"simulate.index.111543-56": "成功"
}

View File

@@ -1,36 +0,0 @@
{
"order.index.045965-1": "添加指令权限控制",
"order.index.045965-2": "修改指令权限控制",
"order.index.045965-3": "是否确认删除指令权限控制编号为{0}的数据项?",
"order.index.045965-4": "指令",
"order.index.045965-5": "设备",
"order.index.045965-6": "用户",
"order.index.045965-7": "可操作次数",
"order.index.045965-8": "开始时间",
"order.index.045965-9": "结束时间",
"order.index.045965-10": "选择设备",
"order.index.045965-11": "选择用户",
"order.index.045965-12": "指令配置",
"order.index.045965-13": "全选",
"order.index.045965-14": "操作次数",
"order.index.045965-15": "开始时间",
"order.index.045965-16": "请选择开始时间",
"order.index.045965-17": "结束时间",
"order.index.045965-18": "请选择结束时间",
"order.index.045965-19": "选择文件",
"order.index.045965-20": "图片",
"order.index.045965-21": "备注",
"order.index.045965-22": "请输入内容",
"order.index.045965-23": "确 定",
"order.index.045965-24": "取 消",
"order.index.045965-25": "请选择设备",
"order.index.045965-26": "请选择用户",
"order.index.045965-27": "操作次数不能为空",
"order.index.045965-28": "请选择开始时间",
"order.index.045965-29": "请选择结束时间",
"order.index.045965-30": "至少选择一个指令",
"order.index.045965-31": "查看文件",
"order.index.045965-32": "图片",
"order.index.045965-33": "指令名称",
"order.index.045965-34": "请输入指令名称"
}

View File

@@ -1,184 +0,0 @@
{
"ruleengine.list.index.807357-0": "请输入规则名称",
"ruleengine.list.index.807357-1": "请选择规则状态",
"ruleengine.list.index.807357-2": "规则名称",
"ruleengine.list.index.807357-3": "节点个数",
"ruleengine.list.index.807357-4": "规则状态",
"ruleengine.list.index.807357-5": "规则描述",
"ruleengine.list.index.807357-6": "更新时间",
"ruleengine.list.index.807357-7": "是否确认删除规则编号为 {0} 的数据项?",
"ruleengine.list.index.807357-8": "新增规则",
"ruleengine.list.index.807357-9": "修改规则",
"ruleengine.list.index.807357-10": "确定删除所点击的线吗?",
"ruleengine.list.index.807357-11": "请选中要删除节点或者线",
"ruleengine.list.index.807357-12": "确定要删除节点 {0} ",
"ruleengine.list.index.807357-13": "确定要下载该流程数据吗?",
"ruleengine.list.index.807357-14": "正在下载中,请稍后...",
"ruleengine.editor.index.807357-0": "流程",
"ruleengine.editor.index.807357-1": "案例",
"ruleengine.editor.index.807357-2": "禁止",
"ruleengine.editor.index.807357-3": "启用",
"ruleengine.editor.index.807357-4": "节点不支持连接自己",
"ruleengine.editor.index.807357-5": "该关系已存在,不允许重复创建",
"ruleengine.editor.index.807357-6": "不支持两个节点之间连线回环",
"ruleengine.editor.index.807357-7": "该节点不能连接多个节点",
"ruleengine.editor.index.807357-8": "结束节点不能连接其他节点",
"ruleengine.editor.index.807357-9": "开始节点只能输出",
"ruleengine.editor.index.807357-10": "该节点不接受多条连线",
"ruleengine.editor.index.807357-11": "连接成功",
"ruleengine.editor.index.807357-12": "请把节点拖入到画布中",
"ruleengine.editor.index.807357-13": "开始节点已存在",
"ruleengine.editor.index.807357-14": "结束节点已存在",
"ruleengine.editor.index.807357-15": "脚本名称不能为空",
"ruleengine.editor.index.807357-16": "脚本内容不能为空",
"ruleengine.editor.index.807357-17": "日志",
"ruleengine.editor.index.807357-18": "调试日志",
"ruleengine.editor.index.807357-19": "该节点不允许连线,注释只做解释使用",
"ruleengine.editor.index.807357-20": "脚本节点数据异常",
"ruleengine.editor.index.807357-21": "调试内容",
"ruleengine.editor.index.807357-22": "设备变量触发节点数据异常",
"ruleengine.editor.index.807357-23": "设备变量触发条件的值不能为空",
"ruleengine.editor.index.807357-24": "设备变量执行节点数据异常",
"ruleengine.editor.index.807357-25": "设备变量执行条件的值不能为空",
"ruleengine.editor.index.807357-26": "产品触发的变量不能为空",
"ruleengine.editor.index.807357-27": "产品执行的变量或者值不能为空",
"ruleengine.editor.index.807357-28": "定时触发的时间不能为空",
"ruleengine.editor.index.807357-29": "告警节点的行为设置不能为空",
"ruleengine.editor.index.807357-30": "告警节点的告警次数不能为空",
"ruleengine.editor.index.807357-31": "告警节点的告警场景不能为空",
"ruleengine.editor.index.807357-32": "条件触发器节点数据异常",
"ruleengine.editor.index.807357-33": "条件触发值不能为空",
"ruleengine.editor.index.807357-34": "第",
"ruleengine.editor.index.807357-35": "条日志",
"ruleengine.editor.index.807357-36": "执行时间",
"ruleengine.editor.index.807357-37": "无",
"ruleengine.editor.index.807357-38": "执行状态",
"ruleengine.editor.index.807357-39": "成功",
"ruleengine.editor.index.807357-40": "失败",
"ruleengine.editor.index.807357-41": "无结果信息",
"ruleengine.editor.index.807357-42": "结果信息",
"ruleengine.editor.components.info.807357-0": "流程数据信息",
"ruleengine.editor.components.info.807357-1": "使用说明",
"ruleengine.editor.components.info.807357-2": "以下流程信息可以被存储起来,方便下一次流程加载",
"ruleengine.editor.components.info.807357-3": "知道了",
"ruleengine.editor.components.case.807357-0": "案例",
"ruleengine.editor.components.case.807357-1": "名称",
"ruleengine.editor.components.case.807357-2": "切换流程A",
"ruleengine.editor.components.case.807357-3": "切换流程B",
"ruleengine.editor.components.case.807357-4": "切换流程C",
"ruleengine.editor.components.case.807357-5": "自定义样式",
"ruleengine.editor.components.case.807357-6": "力导图",
"ruleengine.editor.components.case.807357-7": "switch多分支案例图",
"ruleengine.editor.components.case.807357-8": "if条件案例图-单true",
"ruleengine.editor.components.case.807357-9": "if条件案例图",
"ruleengine.editor.components.case.807357-10": "定时触发案例图",
"ruleengine.editor.components.case.807357-11": "自定义触发案例图",
"ruleengine.editor.components.case.807357-12": "多触发条件案例图",
"ruleengine.editor.components.help.807357-0": "帮助",
"ruleengine.editor.components.help.807357-1": "如何新增",
"ruleengine.editor.components.help.807357-2": "按住鼠标拖拽左侧组件到中间画布中松开鼠标即可",
"ruleengine.editor.components.help.807357-3": "如何删除",
"ruleengine.editor.components.help.807357-4": "页面删除",
"ruleengine.editor.components.help.807357-5": "鼠标点中需要删除的节点点击左上角的删除图标或者点击键盘上的“Delete”按钮",
"ruleengine.editor.components.help.807357-6": "通过代码删除",
"ruleengine.editor.components.help.807357-7": "this.deleteNode(nodeId)",
"ruleengine.editor.components.help.807357-8": "如何移动",
"ruleengine.editor.components.help.807357-9": "鼠标移动到节点中,当鼠标变为可拖拽的图标时按下鼠标移动到新的位置松开鼠标",
"ruleengine.editor.components.help.807357-10": "如何连线",
"ruleengine.editor.components.help.807357-11": "鼠标移动到节点中左侧的图标上,当鼠标变为+时按下鼠标移动到另一个节点中松开鼠标",
"ruleengine.editor.components.help.807357-12": "如何添加条件",
"ruleengine.editor.components.help.807357-13": "点击画布中的连线,在页面右侧会出现一个表单,输入新的条件,点击【保存】",
"ruleengine.editor.components.nodeForm.807357-0": "样式",
"ruleengine.editor.components.nodeForm.807357-1": "属性",
"ruleengine.editor.components.nodeForm.807357-2": "名称",
"ruleengine.editor.components.nodeForm.807357-3": "ico图标",
"ruleengine.editor.components.nodeForm.807357-4": "状态",
"ruleengine.editor.components.nodeForm.807357-5": "请选择",
"ruleengine.editor.components.nodeForm.807357-6": "触发条件",
"ruleengine.editor.components.nodeForm.807357-7": "成功",
"ruleengine.editor.components.nodeForm.807357-8": "警告",
"ruleengine.editor.components.nodeForm.807357-9": "错误",
"ruleengine.editor.components.nodeForm.807357-10": "运行中",
"ruleengine.editor.components.nodeForm.807357-11": "任意条件",
"ruleengine.editor.components.nodeForm.807357-12": "所有条件",
"ruleengine.editor.components.form.flow-alarm.807357-0": "行为设置",
"ruleengine.editor.components.form.flow-alarm.807357-1": "请选择",
"ruleengine.editor.components.form.flow-alarm.807357-2": "告警次数",
"ruleengine.editor.components.form.flow-alarm.807357-3": "请输入告警次数",
"ruleengine.editor.components.form.flow-alarm.807357-4": "告警场景",
"ruleengine.editor.components.form.flow-alarm.807357-5": "告警执行",
"ruleengine.editor.components.form.flow-alarm.807357-6": "告警恢复",
"ruleengine.editor.components.form.flow-comment.807357-0": "描述",
"ruleengine.editor.components.form.flow-condition.807357-0": "判断类型",
"ruleengine.editor.components.form.flow-condition.807357-1": "条件判断式",
"ruleengine.editor.components.form.flow-condition.807357-2": "等于(=",
"ruleengine.editor.components.form.flow-condition.807357-3": "不等于(!=",
"ruleengine.editor.components.form.flow-condition.807357-4": "大于(>",
"ruleengine.editor.components.form.flow-condition.807357-5": "小于(<",
"ruleengine.editor.components.form.flow-condition.807357-6": "大于等于(>=",
"ruleengine.editor.components.form.flow-condition.807357-7": "小于等于(<=",
"ruleengine.editor.components.form.flow-condition.807357-8": "在...之间between",
"ruleengine.editor.components.form.flow-condition.807357-9": "不在...之间notBetween",
"ruleengine.editor.components.form.flow-condition.807357-10": "包含contain",
"ruleengine.editor.components.form.flow-condition.807357-11": "不包含notContain",
"ruleengine.editor.components.form.flow-condition.807357-12": "提示",
"ruleengine.editor.components.form.flow-condition.807357-13": "请先连线后配置条件判断表达式",
"ruleengine.editor.components.form.flow-condition.807357-14": "上报值",
"ruleengine.editor.components.form.flow-condition.807357-15": "状态值",
"ruleengine.editor.components.form.flow-condition.807357-16": "请链接触发组件",
"ruleengine.editor.components.form.flow-condition.807357-17": "请设置触发组件变量",
"ruleengine.editor.components.form.flow-data-bridge.807357-0": "引用",
"ruleengine.editor.components.form.flow-data-bridge.807357-1": "引用已有的数据库桥接,也可以自行创建新的数据库桥接",
"ruleengine.editor.components.form.flow-data-bridge.807357-2": "请选择已有的桥接(可选)",
"ruleengine.editor.components.form.flow-data-bridge.807357-3": "不选则手动创建新的数据库桥接配置",
"ruleengine.editor.components.form.flow-data-bridge.807357-4": "新增数据库桥接配置",
"ruleengine.editor.components.form.flow-delay.807357-0": "时长",
"ruleengine.editor.components.form.flow-delay.807357-1": "请输入",
"ruleengine.editor.components.form.flow-delay.807357-2": "毫秒",
"ruleengine.editor.components.form.flow-delay.807357-3": "秒",
"ruleengine.editor.components.form.flow-delay.807357-4": "分",
"ruleengine.editor.components.form.flow-delay.807357-5": "小时",
"ruleengine.editor.components.form.flow-delay.807357-6": "天",
"ruleengine.editor.components.form.flow-dev-excute.807357-0": "设备",
"ruleengine.editor.components.form.flow-dev-excute.807357-1": "类型",
"ruleengine.editor.components.form.flow-dev-excute.807357-2": "变量",
"ruleengine.editor.components.form.flow-dev-excute.807357-3": "值为",
"ruleengine.editor.components.form.flow-dev-trigger.807357-0": "设备",
"ruleengine.editor.components.form.flow-dev-trigger.807357-1": "类型",
"ruleengine.editor.components.form.flow-dev-trigger.807357-2": "变量",
"ruleengine.editor.components.form.flow-http-bridge.807357-0": "引用",
"ruleengine.editor.components.form.flow-http-bridge.807357-1": "引用已有的http桥接也可以自行创建新的http桥接",
"ruleengine.editor.components.form.flow-http-bridge.807357-2": "请选择已有的桥接(可选)",
"ruleengine.editor.components.form.flow-http-bridge.807357-3": "不选则手动创建新的Http桥接配置",
"ruleengine.editor.components.form.flow-http-bridge.807357-4": "新增Http桥接配置",
"ruleengine.editor.components.form.flow-http-bridge.807357-5": "设备未绑定产品,无法获取物模型,请重新选择设备!",
"ruleengine.editor.components.form.flow-line.807357-0": "类型",
"ruleengine.editor.components.form.flow-line.807357-1": "数值",
"ruleengine.editor.components.form.flow-line.807357-2": "普通路径",
"ruleengine.editor.components.form.flow-line.807357-3": "选择路径",
"ruleengine.editor.components.form.flow-line.807357-4": "true(If路径)",
"ruleengine.editor.components.form.flow-line.807357-5": "false(If路径)",
"ruleengine.editor.components.form.flow-line.807357-6": "请输入数值",
"ruleengine.editor.components.form.flow-line.807357-7": "数值必须在1-9999之间",
"ruleengine.editor.components.form.flow-line.807357-8": "连线起始点是条件组件时可选择选择路径/true(if路径)/false(if路径),其他连线只能选择普通路径",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-0": "引用",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-1": "引用已有的mqtt桥接也可以自行创建新的mqtt桥接",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-2": "请选择已有的桥接(可选)",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-3": "不选则手动创建新的Mqtt桥接配置",
"ruleengine.editor.components.form.flow-mqtt-bridge.807357-4": "新增Mqtt桥接配置",
"ruleengine.editor.components.form.flow-product-execute.807357-0": "产品",
"ruleengine.editor.components.form.flow-product-execute.807357-1": "未发布",
"ruleengine.editor.components.form.flow-product-execute.807357-2": "已发布",
"ruleengine.editor.components.form.flow-product-execute.807357-3": "类型",
"ruleengine.editor.components.form.flow-product-execute.807357-4": "变量",
"ruleengine.editor.components.form.flow-product-execute.807357-5": "值为",
"ruleengine.editor.components.form.flow-product-trigger.807357-0": "产品",
"ruleengine.editor.components.form.flow-product-trigger.807357-1": "未发布",
"ruleengine.editor.components.form.flow-product-trigger.807357-2": "已发布",
"ruleengine.editor.components.form.flow-product-trigger.807357-3": "类型",
"ruleengine.editor.components.form.flow-product-trigger.807357-4": "变量",
"ruleengine.editor.components.form.flow-product-trigger.807357-5": "产品未绑定物模型,无法获取物模型,请重新选择产品!",
"ruleengine.editor.components.form.flow-scheduled-trigger.807357-0": "时间",
"ruleengine.editor.components.form.flow-script.807357-0": "脚本内容",
"ruleengine.editor.components.debugLog.807357-0": "暂无日志信息"
}

View File

@@ -1,879 +0,0 @@
{
"scada.center.indeieScada.373453-0": "名称",
"scada.center.indeieScada.373453-1": "请输入组态名称",
"scada.center.indeieScada.373453-2": "切换卡片/列表",
"scada.center.indeieScada.373453-3": "未知",
"scada.center.indeieScada.373453-4": "组态封面",
"scada.center.indeieScada.373453-5": "组态名称",
"scada.center.indeieScada.373453-6": "分辨率",
"scada.center.indeieScada.373453-7": "请输入名称",
"scada.center.indeieScada.373453-8": "组态描述",
"scada.center.indeieScada.373453-9": "请输入描述",
"scada.center.indeieScada.373453-10": "请输入组态名称",
"scada.center.indeieScada.373453-11": "关联场景",
"scada.center.indeieScada.373453-12": "请选择关联场景",
"scada.center.indeieScada.373453-13": "添加组态信息",
"scada.center.indeieScada.373453-14": "修改组态信息",
"scada.center.indeieScada.373453-15": "是否确认删除组态编号为{0}的数据项?",
"scada.center.indeieScada.373453-16": "编辑",
"scada.center.indeieScada.373453-17": "设计",
"scada.center.indeieScada.373453-18": "运行",
"scada.center.indeieScada.373453-19": "分享",
"scada.center.tempScada.342311-0": "关联产品",
"scada.center.tempScada.342311-1": "请选择关联产品",
"scada.center.tempScada.342311-2": "编辑",
"scada.center.tempScada.342311-3": "设计",
"scada.center.tempScada.342311-4": "分享",
"scada.center.sceneScada.098325-0": "编辑",
"scada.center.sceneScada.098325-1": "设计",
"scada.center.sceneScada.098325-2": "运行",
"scada.center.sceneScada.098325-3": "分享",
"scada.component.302923-0": "运行",
"scada.component.302923-1": "保存中,请稍候...",
"scada.component.302923-2": "私有",
"scada.component.302923-3": "公有",
"scada.component.302923-4": "占位符",
"scada.component.302923-5": "缩略图",
"scada.component.302923-6": "类型",
"scada.component.302923-7": "图片",
"scada.component.302923-8": "请选择类型",
"scada.component.302923-9": "添加组件管理",
"scada.component.302923-10": "修改组件管理",
"scada.component.302923-11": "是否确认删除组件编号为{0}的数据项?",
"scada.component.302923-12": "设计",
"scada.component.302923-13": "组件详情",
"scada.echart.209302-0": "添加图表管理",
"scada.echart.209302-1": "修改图表管理",
"scada.echart.209302-2": "是否确认删除图表编号为{0}的数据项?",
"scada.echart.209302-3": "图表编辑",
"scada.echart.209302-4": "图表库",
"scada.echart.209302-5": "图表展示",
"scada.echart.209302-6": "下载",
"scada.echart.209302-7": "设计",
"scada.echart.209302-8": "名称",
"scada.echart.209302-9": "类型",
"scada.echart.209302-10": "更新时间",
"scada.echart.209302-11": "图表详情",
"scada.gallery.309456-0": "系统图库",
"scada.gallery.309456-1": "文件名称",
"scada.gallery.309456-2": "请输入文件名称",
"scada.gallery.309456-3": "上传",
"scada.gallery.309456-4": "占位符",
"scada.gallery.309456-5": "云组态",
"scada.gallery.309456-6": "请选择左侧上传的类型",
"scada.gallery.309456-7": "上传图片大小不能超过 20MB!",
"scada.gallery.309456-8": "上传成功",
"scada.gallery.309456-9": "是否确认删除此图标文件么?",
"scada.gallery.309456-10": "警告",
"scada.gallery.309456-11": "文件类型",
"scada.gallery.309456-12": "请选择文件类型",
"scada.gallery.309456-13": "文件名称",
"scada.gallery.309456-14": "请输入文件名称",
"scada.model.649850-0": "模型名称",
"scada.model.649850-1": "请输入模型名称",
"scada.model.649850-2": "模型类型",
"scada.model.649850-3": "zip包含obj/mtl/贴图)",
"scada.model.649850-4": "是",
"scada.model.649850-5": "模型文件",
"scada.model.649850-6": "请选择模型类型",
"scada.model.649850-7": "请上传模型文件",
"scada.model.649850-8": "添加模型管理",
"scada.model.649850-9": "修改模型管理",
"scada.model.649850-10": "请填写正确的模型url",
"scada.model.649850-11": "是否确认删除模型编号为{0}的数据项?",
"scada.topo.editor.023345-0": "复制",
"scada.topo.editor.023345-1": "置顶",
"scada.topo.editor.023345-2": "置底",
"scada.topo.editor.023345-3": "旋转",
"scada.topo.editor.023345-4": "顺时针90°",
"scada.topo.editor.023345-5": "逆时针90°",
"scada.topo.editor.023345-6": "水平镜像",
"scada.topo.editor.023345-7": "垂直镜像",
"scada.topo.editor.023345-8": "自定义角度",
"scada.topo.editor.023345-9": "对齐",
"scada.topo.editor.023345-10": "左对齐",
"scada.topo.editor.023345-11": "右对齐",
"scada.topo.editor.023345-12": "上对齐",
"scada.topo.editor.023345-13": "下对齐",
"scada.topo.editor.023345-14": "水平等间距",
"scada.topo.editor.023345-15": "垂直等间距",
"scada.topo.editor.023345-16": "组合",
"scada.topo.editor.023345-17": "取消组合",
"scada.topo.editor.023345-18": "解锁",
"scada.topo.editor.023345-19": "锁定",
"scada.topo.editor.023345-20": "图库",
"scada.topo.editor.023345-21": "设备绑定",
"scada.topo.editor.023345-22": "撤销",
"scada.topo.editor.023345-23": "恢复",
"scada.topo.editor.023345-24": "缩放",
"scada.topo.editor.023345-25": "帮助",
"scada.topo.editor.023345-26": "图库",
"scada.topo.editor.023345-27": "顺时针旋转",
"scada.topo.editor.023345-28": "逆时针旋转",
"scada.topo.editor.023345-29": "水平镜像",
"scada.topo.editor.023345-30": "垂直镜像",
"scada.topo.editor.023345-31": "自定义旋转角度",
"scada.topo.editor.023345-32": "旋转角度不能为空",
"scada.topo.editor.023345-33": "角度不能为空",
"scada.topo.editor.023345-34": "旋转角度必须是数字",
"scada.topo.editor.023345-35": "自定义角度",
"scada.topo.editor.023345-36": "请选择图片",
"scada.topo.editor.023345-37": "请在设备下进行预览",
"scada.topo.editor.023345-38": "水平中线对齐",
"scada.topo.editor.023345-39": "垂直中线对齐",
"scada.topo.editor.023345-40": "分享",
"scada.topo.editor.023345-41": "取消",
"scada.topo.editor.023345-42": "保存",
"scada.topo.editor.023345-43": "修改未保存,请点击保存",
"scada.topo.editor.023345-44": "粘贴",
"scada.topo.share.842076-0": "请输入密码进行访问",
"scada.topo.share.842076-1": "请输入密码",
"scada.topo.share.842076-2": "分享链接已失效",
"scada.topo.share.842076-3": "密码输入错误",
"scada.topo.fullscreenShare.034354-0": "正在初始化",
"scada.topo.fullscreenShare.034354-1": "密码验证",
"scada.topo.fullscreenShare.034354-2": "分享密码",
"scada.topo.fullscreenShare.034354-3": "暂无分享",
"scada.topo.fullscreenShare.034354-4": "密码不正确,请重新输入",
"scada.topoMain.320129-0": "拼命导入中",
"scada.topoMain.320129-1": "提示仅允许导入“Json”格式文件。",
"scada.topoMain.320129-2": "提示仅允许导入“Json”格式文件导入成功后“需要”重新绑定设备参数。",
"scada.topoMain.320129-3": "请输入内容",
"scada.topoMain.320129-4": "组态导入",
"scada.topoMain.320129-5": "导入结果",
"scada.topoMain.320129-6": "全屏",
"scada.topoMain.320129-7": "重新加载",
"scada.topoMain.320129-8": "天气组件已存在,不能重复添加",
"scada.topoMain.320129-9": "未选中组合组件",
"scada.topoMain.320129-10": "动画",
"scada.topoMain.320129-11": "单击",
"scada.topoMain.320129-12": "组件颜色",
"scada.topoMain.320129-13": "滤镜渲染",
"scada.topoMain.320129-14": "组件填充",
"scada.topoMain.320129-15": "参数绑定",
"scada.topoMain.320129-16": "要保存当前页面,并切换到其他页面吗?",
"scada.topoMain.320129-17": "提示",
"scada.topoMain.320129-18": "正在切换,请稍候...",
"scada.topoMain.320129-19": "您是否要删除此页面,删除后将无法恢复!",
"scada.topoMain.320129-20": "未知页面",
"scada.topoMain.320129-21": "正在保存,请稍候...",
"scada.topoMain.320129-22": "请稍候...",
"scada.topoMain.320129-23": "系统可能不会保存您所做的更改。",
"scada.topoMain.320129-24": "离开此页面?",
"scada.topoMain.320129-25": "离开",
"scada.topoMain.320129-26": "正在删除,请稍候...",
"scada.topoMain.320129-27": "未知页面",
"topo.topoRender.038944-0": "请添加组件到组态面板",
"topo.topoRender.038944-1": "指令下发中...",
"topo.topoRender.038944-2": "子界面",
"topo.topoRender.038944-3": "温馨提示",
"topo.topoRender.038944-4": "键盘按下F11键或右键开启全屏按下Esc退出全屏。",
"topo.topoRender.038944-5": "图片生成",
"topo.topoRender.038944-6": "全屏展示",
"topo.topoRender.038944-7": "正在生成,请稍候...",
"topo.topoRender.038944-8": "请输入密码",
"topo.topoRender.038944-9": "密码不能为空",
"topo.topoRender.038944-10": "请输入正确密码",
"topo.topoRender.038944-11": "单击",
"topo.topoRender.038944-12": "外部链接",
"topo.topoRender.038944-13": "组态界面",
"topo.topoRender.038944-14": "无绑定组态界面",
"topo.topoRender.038944-15": "操作变量",
"topo.topoRender.038944-16": "提示:请输入变量值",
"topo.topoRender.038944-17": "提示:",
"topo.topoRender.038944-18": "变量值不能为空",
"topo.topoRender.038944-19": "变量值必须是数字",
"topo.topoRender.038944-20": "设备不在线,无法设置!",
"topo.topoRender.038944-21": "指令下发成功",
"topo.topoRender.038944-22": "无绑定组态页面",
"topo.topoRender.038944-23": "无绑定变量",
"topo.topoRender.038944-24": "当前设备不在线,请检查设备是否正常!",
"topo.topoSelectImage.034642-0": "我的收藏",
"topo.topoSelectImage.034642-1": "系统图库",
"topo.topoSelectImage.034642-2": "文件名称",
"topo.topoSelectImage.034642-3": "请输入文件名称",
"topo.topoSelectImage.034642-4": "收藏",
"topo.topoSelectImage.034642-5": "上传",
"topo.topoSelectImage.034642-6": "收藏成功",
"topo.topoSelectImage.034642-7": "上传图片大小不能超过 5MB!",
"topo.topoSelectImage.034642-8": "是否确认删除此图标文件么?",
"topo.topoSelectImage.034642-9": "警告",
"topo.topoToolbox.250932-9": "移除",
"topo.topoToolbox.250932-10": "设备管理",
"topo.topoToolbox.250932-11": "您是否确认移除此关联设备",
"topo.topoToolbox.250932-12": "移除成功",
"scada.topo.components.chart.view-chart.073848-0": "双击绑定变量",
"scada.topo.components.chart.view-chart.073848-1": "变量绑定",
"scada.topo.components.chart.view-chart.073848-2": "多属性对比时,多个属性上报时间需一样!",
"scada.topo.components.chart.view-chart.073848-3": "请先绑定设备或为设备创建物模型",
"scada.topo.components.chart.view-chart.073848-4": "确认",
"scada.topo.components.chart.view-chart.073848-5": "取消",
"scada.topo.components.chart.view-chart.073848-6": "请选择同一个设备的属性!",
"scada.topo.components.chart.view-chart.073848-7": "绑定变量成功",
"topo.components.chart.073848-5": "最外层",
"topo.components.chart.073848-6": "内层渐变区",
"topo.components.chart.073848-7": "中间层",
"topo.components.chart.073848-8": "自定义",
"topo.components.chart.073848-9": "运行成功",
"topo.components.chart.073848-10": "图表初始化失败,请检查代码视图!",
"topo.components.chart.073848-13": "请输入正确的url!",
"topo.components.chart.073848-14": "请输入正确的json数据",
"topo.components.chart.073848-15": "报警状态",
"topo.components.chart.073848-16": "网关设备",
"topo.components.chart.073848-17": "报警",
"topo.components.chart.073848-18": "已处理",
"topo.components.chart.073848-19": "未处理",
"topo.components.chart.073848-20": "工单状态",
"topo.components.chart.073848-21": "已巡检",
"topo.components.chart.073848-22": "未巡检",
"topo.components.chart.073848-23": "已废弃",
"topo.components.chart.073848-24": "透明框",
"topo.components.chart.073848-25": "圆",
"topo.components.chart.073848-26": "白圆",
"topo.components.chart.073848-27": "名称",
"topo.components.chart.073848-28": "请输入正确的json数据",
"topo.components.chart.073848-29": "运行成功",
"topo.components.chart.073848-30": "图表初始化失败,请检查代码视图!",
"topo.three.028394-0": "容量100吨",
"topo.three.028394-1": "温度30°C",
"topo.three.028394-2": "仓高——20米",
"topo.three.028394-3": "梁高——15.8米",
"topo.three.028394-4": "粮仓",
"topo.three.028394-5": "粮仓02",
"topo.three.028394-6": "粮仓03",
"topo.three.028394-7": "粮仓04",
"topo.three.028394-8": "粮仓11",
"topo.three.028394-9": "粮仓12",
"topo.three.028394-10": "粮仓13",
"topo.three.028394-11": "粮仓05",
"topo.three.028394-12": "粮仓06",
"topo.three.028394-13": "粮仓07",
"topo.three.028394-14": "粮仓08",
"topo.three.028394-15": "粮仓09",
"topo.three.028394-16": "粮仓010",
"topo.three.028394-17": "粮仓14",
"topo.three.028394-18": "粮仓15",
"topo.three.028394-19": "粮仓16",
"topo.three.028394-20": "底层面板",
"topo.components.data-toolbox.302495-0": "基本",
"topo.components.data-toolbox.302495-1": "面板",
"topo.components.data-toolbox.302495-2": "组态界面",
"topo.components.data-toolbox.302495-3": "单击",
"topo.components.data-toolbox.302495-4": "组件颜色",
"topo.components.data-toolbox.302495-5": "动画",
"topo.components.propertyBar.index.038495-0": "布局",
"topo.components.propertyBar.index.038495-1": "数据",
"topo.components.propertyBar.index.038495-2": "位置与尺寸",
"topo.components.propertyBar.index.038495-3": "X 轴坐标",
"topo.components.propertyBar.index.038495-4": "Y 轴坐标",
"topo.components.propertyBar.index.038495-5": "宽度设置",
"topo.components.propertyBar.index.038495-6": "高度设置",
"topo.components.propertyBar.index.038495-7": "基本样式",
"topo.components.propertyBar.index.038495-8": "组件名称",
"topo.components.propertyBar.index.038495-9": "请输入组件名称",
"topo.components.propertyBar.index.038495-10": "最小数值",
"topo.components.propertyBar.index.038495-11": "请输入最小值",
"topo.components.propertyBar.index.038495-12": "最大数值",
"topo.components.propertyBar.index.038495-13": "请输入最大值",
"topo.components.propertyBar.index.038495-14": "刻度间隔",
"topo.components.propertyBar.index.038495-15": "请输入刻度间隔",
"topo.components.propertyBar.index.038495-16": "天气样式",
"topo.components.propertyBar.index.038495-17": "请选择天气样式",
"topo.components.propertyBar.index.038495-18": "完整模式",
"topo.components.propertyBar.index.038495-19": "简约模式",
"topo.components.propertyBar.index.038495-20": "地图主题",
"topo.components.propertyBar.index.038495-21": "请选择地图主题",
"topo.components.propertyBar.index.038495-22": "默认主题",
"topo.components.propertyBar.index.038495-23": "清新蓝",
"topo.components.propertyBar.index.038495-24": "黑夜",
"topo.components.propertyBar.index.038495-25": "红色警戒",
"topo.components.propertyBar.index.038495-26": "精简",
"topo.components.propertyBar.index.038495-27": "自然绿",
"topo.components.propertyBar.index.038495-28": "午夜蓝",
"topo.components.propertyBar.index.038495-29": "浪漫粉",
"topo.components.propertyBar.index.038495-30": "青春绿",
"topo.components.propertyBar.index.038495-31": "清新蓝绿",
"topo.components.propertyBar.index.038495-32": "高端灰风",
"topo.components.propertyBar.index.038495-33": "强边界",
"topo.components.propertyBar.index.038495-34": "图层高度",
"topo.components.propertyBar.index.038495-35": "请输入图层高度",
"topo.components.propertyBar.index.038495-36": "背景颜色",
"topo.components.propertyBar.index.038495-37": "透明度值",
"topo.components.propertyBar.index.038495-38": "边框圆角",
"topo.components.propertyBar.index.038495-39": "阴影长度",
"topo.components.propertyBar.index.038495-40": "阴影颜色",
"topo.components.propertyBar.index.038495-41": "统计类型",
"topo.components.propertyBar.index.038495-42": "设备统计",
"topo.components.propertyBar.index.038495-43": "请选择统计类型",
"topo.components.propertyBar.index.038495-44": "设备状态",
"topo.components.propertyBar.index.038495-45": "报警状态",
"topo.components.propertyBar.index.038495-46": "图片选择",
"topo.components.propertyBar.index.038495-47": "图片路径",
"topo.components.propertyBar.index.038495-48": "上传图片",
"topo.components.propertyBar.index.038495-49": "文字描述",
"topo.components.propertyBar.index.038495-50": "请输入文字描述",
"topo.components.propertyBar.index.038495-51": "对齐方式",
"topo.components.propertyBar.index.038495-52": "请选择对齐方式",
"topo.components.propertyBar.index.038495-53": "居左",
"topo.components.propertyBar.index.038495-54": "居中",
"topo.components.propertyBar.index.038495-55": "居右",
"topo.components.propertyBar.index.038495-56": "字体类型",
"topo.components.propertyBar.index.038495-57": "请选择字体类型",
"topo.components.propertyBar.index.038495-58": "字体大小",
"topo.components.propertyBar.index.038495-59": "请输入字体大小",
"topo.components.propertyBar.index.038495-60": "滤镜/阴影",
"topo.components.propertyBar.index.038495-61": "滤镜渲染",
"topo.components.propertyBar.index.038495-62": "滤镜",
"topo.components.propertyBar.index.038495-63": "阴影",
"topo.components.propertyBar.index.038495-64": "组件颜色",
"topo.components.propertyBar.index.038495-65": "组件显隐",
"topo.components.propertyBar.index.038495-66": "请选择组件显隐",
"topo.components.propertyBar.index.038495-67": "显示",
"topo.components.propertyBar.index.038495-68": "隐藏",
"topo.components.propertyBar.index.038495-69": "代码视图",
"topo.components.propertyBar.index.038495-70": "数据引擎",
"topo.components.propertyBar.index.038495-71": "地图选择",
"topo.components.propertyBar.index.038495-72": "地图文件",
"topo.components.propertyBar.index.038495-73": "请选择地图",
"topo.components.propertyBar.index.038495-74": "安徽",
"topo.components.propertyBar.index.038495-75": "澳门",
"topo.components.propertyBar.index.038495-76": "北京",
"topo.components.propertyBar.index.038495-77": "重庆",
"topo.components.propertyBar.index.038495-78": "福建",
"topo.components.propertyBar.index.038495-79": "甘肃",
"topo.components.propertyBar.index.038495-80": "广东",
"topo.components.propertyBar.index.038495-81": "广西",
"topo.components.propertyBar.index.038495-82": "贵州",
"topo.components.propertyBar.index.038495-83": "海南",
"topo.components.propertyBar.index.038495-84": "河北",
"topo.components.propertyBar.index.038495-85": "黑龙江",
"topo.components.propertyBar.index.038495-86": "河南",
"topo.components.propertyBar.index.038495-87": "湖北",
"topo.components.propertyBar.index.038495-88": "湖南",
"topo.components.propertyBar.index.038495-89": "江苏",
"topo.components.propertyBar.index.038495-90": "江西",
"topo.components.propertyBar.index.038495-91": "吉林",
"topo.components.propertyBar.index.038495-92": "辽宁",
"topo.components.propertyBar.index.038495-93": "内蒙古",
"topo.components.propertyBar.index.038495-94": "宁夏",
"topo.components.propertyBar.index.038495-95": "青海",
"topo.components.propertyBar.index.038495-96": "山东",
"topo.components.propertyBar.index.038495-97": "上海",
"topo.components.propertyBar.index.038495-98": "山西",
"topo.components.propertyBar.index.038495-99": "四川",
"topo.components.propertyBar.index.038495-100": "台湾",
"topo.components.propertyBar.index.038495-101": "天津",
"topo.components.propertyBar.index.038495-102": "香港",
"topo.components.propertyBar.index.038495-103": "新疆",
"topo.components.propertyBar.index.038495-104": "西藏",
"topo.components.propertyBar.index.038495-105": "云南",
"topo.components.propertyBar.index.038495-106": "浙江",
"topo.components.propertyBar.index.038495-107": "自定义",
"topo.components.propertyBar.index.038495-108": "地图数据",
"topo.components.propertyBar.index.038495-109": "请输入地图数据地址",
"topo.components.propertyBar.index.038495-110": "图表刷新",
"topo.components.propertyBar.index.038495-111": "悬浮提示",
"topo.components.propertyBar.index.038495-112": "悬浮模式",
"topo.components.propertyBar.index.038495-113": "长显",
"topo.components.propertyBar.index.038495-114": "短显",
"topo.components.propertyBar.index.038495-115": "悬浮位置",
"topo.components.propertyBar.index.038495-116": "请选择悬浮位置",
"topo.components.propertyBar.index.038495-117": "上边",
"topo.components.propertyBar.index.038495-118": "上左",
"topo.components.propertyBar.index.038495-119": "上右",
"topo.components.propertyBar.index.038495-120": "下边",
"topo.components.propertyBar.index.038495-121": "下左",
"topo.components.propertyBar.index.038495-122": "下右",
"topo.components.propertyBar.index.038495-123": "左边",
"topo.components.propertyBar.index.038495-124": "左上",
"topo.components.propertyBar.index.038495-125": "左下",
"topo.components.propertyBar.index.038495-126": "右边",
"topo.components.propertyBar.index.038495-127": "右上",
"topo.components.propertyBar.index.038495-128": "右下",
"topo.components.propertyBar.index.038495-129": "暗黑",
"topo.components.propertyBar.index.038495-130": "明亮",
"topo.components.propertyBar.index.038495-131": "统计栏目",
"topo.components.propertyBar.index.038495-132": "请选择统计栏目",
"topo.components.propertyBar.index.038495-133": "线条宽度",
"topo.components.propertyBar.index.038495-134": "请输入线条宽度",
"topo.components.propertyBar.index.038495-135": "线条高度",
"topo.components.propertyBar.index.038495-136": "请输入线条高度",
"topo.components.propertyBar.index.038495-137": "线条间隔",
"topo.components.propertyBar.index.038495-138": "请输入线条间隔",
"topo.components.propertyBar.index.038495-139": "线条形状",
"topo.components.propertyBar.index.038495-140": "请选择线条形状",
"topo.components.propertyBar.index.038495-141": "矩形",
"topo.components.propertyBar.index.038495-142": "椭圆",
"topo.components.propertyBar.index.038495-143": "流动方向",
"topo.components.propertyBar.index.038495-144": "请选择流动方向",
"topo.components.propertyBar.index.038495-145": "正向",
"topo.components.propertyBar.index.038495-146": "反向",
"topo.components.propertyBar.index.038495-147": "静止",
"topo.components.propertyBar.index.038495-148": "流动速度",
"topo.components.propertyBar.index.038495-149": "快",
"topo.components.propertyBar.index.038495-150": "中",
"topo.components.propertyBar.index.038495-151": "慢",
"topo.components.propertyBar.index.038495-152": "锚点个数",
"topo.components.propertyBar.index.038495-153": "请输入锚点个数",
"topo.components.propertyBar.index.038495-154": "液位形状",
"topo.components.propertyBar.index.038495-155": "请选择液位形状",
"topo.components.propertyBar.index.038495-156": "容器",
"topo.components.propertyBar.index.038495-157": "圆形",
"topo.components.propertyBar.index.038495-158": "矩形",
"topo.components.propertyBar.index.038495-159": "圆角矩形",
"topo.components.propertyBar.index.038495-160": "三角形",
"topo.components.propertyBar.index.038495-161": "菱形",
"topo.components.propertyBar.index.038495-162": "热气球形",
"topo.components.propertyBar.index.038495-163": "倒三角形",
"topo.components.propertyBar.index.038495-164": "波浪颜色",
"topo.components.propertyBar.index.038495-165": "边框宽度",
"topo.components.propertyBar.index.038495-166": "请输入边框宽度",
"topo.components.propertyBar.index.038495-167": "边框颜色",
"topo.components.propertyBar.index.038495-168": "标题大小",
"topo.components.propertyBar.index.038495-169": "表格样式",
"topo.components.propertyBar.index.038495-170": "列表行数",
"topo.components.propertyBar.index.038495-171": "请输入行数",
"topo.components.propertyBar.index.038495-172": "字体颜色",
"topo.components.propertyBar.index.038495-173": "表头颜色",
"topo.components.propertyBar.index.038495-174": "奇数行颜色",
"topo.components.propertyBar.index.038495-175": "偶数行颜色",
"topo.components.propertyBar.index.038495-176": "轮播时间",
"topo.components.propertyBar.index.038495-177": "请输入轮播时间间隔",
"topo.components.propertyBar.index.038495-178": "表头高度",
"topo.components.propertyBar.index.038495-179": "请输入表头高度",
"topo.components.propertyBar.index.038495-180": "表头宽度",
"topo.components.propertyBar.index.038495-181": "请输入表头宽度",
"topo.components.propertyBar.index.038495-182": "行号显示",
"topo.components.propertyBar.index.038495-183": "显示",
"topo.components.propertyBar.index.038495-184": "隐藏",
"topo.components.propertyBar.index.038495-185": "轮播方式",
"topo.components.propertyBar.index.038495-186": "请选择轮播方式",
"topo.components.propertyBar.index.038495-187": "行",
"topo.components.propertyBar.index.038495-188": "页",
"topo.components.propertyBar.index.038495-189": "参数绑定",
"topo.components.propertyBar.index.038495-190": "状态类型",
"topo.components.propertyBar.index.038495-191": "请选择状态",
"topo.components.propertyBar.index.038495-192": "变量状态",
"topo.components.propertyBar.index.038495-193": "设备状态",
"topo.components.propertyBar.index.038495-194": "请选择设备",
"topo.components.propertyBar.index.038495-195": "请选择变量",
"topo.components.propertyBar.index.038495-196": "数据源",
"topo.components.propertyBar.index.038495-197": "组态界面",
"topo.components.propertyBar.index.038495-198": "请选择组态界面",
"topo.components.propertyBar.index.038495-199": "萤石云",
"topo.components.propertyBar.index.038495-200": "序列号",
"topo.components.propertyBar.index.038495-201": "萤石云控制台获取",
"topo.components.propertyBar.index.038495-202": "通道号",
"topo.components.propertyBar.index.038495-203": "直播视频",
"topo.components.propertyBar.index.038495-204": "视频流URL",
"topo.components.propertyBar.index.038495-205": "Flv格式直播流",
"topo.components.propertyBar.index.038495-206": "通用视频",
"topo.components.propertyBar.index.038495-207": "视频地址",
"topo.components.propertyBar.index.038495-208": "MP4视频地址",
"topo.components.propertyBar.index.038495-209": "封面地址",
"topo.components.propertyBar.index.038495-210": "视频封面地址",
"topo.components.propertyBar.index.038495-211": "三维模型",
"topo.components.propertyBar.index.038495-212": "模型文件",
"topo.components.propertyBar.index.038495-213": "上传模型",
"topo.components.propertyBar.index.038495-214": "自定义echarts/地图文件",
"topo.components.propertyBar.index.038495-215": "引擎地址",
"topo.components.propertyBar.index.038495-216": "目前仅支持GET请求",
"topo.components.propertyBar.index.038495-217": "响应示例",
"topo.components.propertyBar.index.038495-218": "复制",
"topo.components.propertyBar.index.038495-219": "请求",
"topo.components.propertyBar.index.038495-220": "事件",
"topo.components.propertyBar.index.038495-221": "组件密码",
"topo.components.propertyBar.index.038495-222": "设置密码",
"topo.components.propertyBar.index.038495-223": "流动",
"topo.components.propertyBar.index.038495-224": "流动条件",
"topo.components.propertyBar.index.038495-225": "请输入值",
"topo.components.propertyBar.index.038495-226": "流动方向",
"topo.components.propertyBar.index.038495-227": "正向",
"topo.components.propertyBar.index.038495-228": "反向",
"topo.components.propertyBar.index.038495-229": "动画-唯一生效",
"topo.components.propertyBar.index.038495-230": "显隐",
"topo.components.propertyBar.index.038495-231": "旋转",
"topo.components.propertyBar.index.038495-232": "闪烁",
"topo.components.propertyBar.index.038495-233": "滑动",
"topo.components.propertyBar.index.038495-234": "状态开关",
"topo.components.propertyBar.index.038495-235": "条件",
"topo.components.propertyBar.index.038495-236": "设备离线",
"topo.components.propertyBar.index.038495-237": "设备在线",
"topo.components.propertyBar.index.038495-238": "设备禁用",
"topo.components.propertyBar.index.038495-239": "填充颜色",
"topo.components.propertyBar.index.038495-240": "位置",
"topo.components.propertyBar.index.038495-241": "省",
"topo.components.propertyBar.index.038495-242": "请选择省",
"topo.components.propertyBar.index.038495-243": "市",
"topo.components.propertyBar.index.038495-244": "请选择市",
"topo.components.propertyBar.index.038495-245": "区",
"topo.components.propertyBar.index.038495-246": "请选择区",
"topo.components.propertyBar.index.038495-247": "温馨提示",
"topo.components.propertyBar.index.038495-248": "同一组态界面只能存在一个天气组件",
"topo.components.propertyBar.index.038495-249": "背景名称",
"topo.components.propertyBar.index.038495-250": "请输入背景名称",
"topo.components.propertyBar.index.038495-251": "分辨率宽",
"topo.components.propertyBar.index.038495-252": "请输入分辨率宽",
"topo.components.propertyBar.index.038495-253": "分辨率高",
"topo.components.propertyBar.index.038495-254": "请输入分辨率高",
"topo.components.propertyBar.index.038495-255": "背景颜色",
"topo.components.propertyBar.index.038495-256": "背景图片",
"topo.components.propertyBar.index.038495-257": "拖拽缩放",
"topo.components.propertyBar.index.038495-258": "开启",
"topo.components.propertyBar.index.038495-259": "图库",
"topo.components.propertyBar.index.038495-260": "动画设置",
"topo.components.propertyBar.index.038495-261": "变量名称",
"topo.components.propertyBar.index.038495-262": "判断条件",
"topo.components.propertyBar.index.038495-263": "旋转",
"topo.components.propertyBar.index.038495-264": "动画效果",
"topo.components.propertyBar.index.038495-265": "滑动",
"topo.components.propertyBar.index.038495-266": "滑动配置",
"topo.components.propertyBar.index.038495-267": "滑动周期",
"topo.components.propertyBar.index.038495-268": "请输入滑动周期",
"topo.components.propertyBar.index.038495-269": "滑动位置",
"topo.components.propertyBar.index.038495-270": "请输入偏移度",
"topo.components.propertyBar.index.038495-271": "水平",
"topo.components.propertyBar.index.038495-272": "竖直",
"topo.components.propertyBar.index.038495-273": "变量选择",
"topo.components.propertyBar.index.038495-296": "数据引擎",
"topo.components.propertyBar.index.038495-297": "Echarts图表合集",
"topo.components.propertyBar.index.038495-298": "请输入响应示例",
"topo.components.propertyBar.index.038495-299": "运行",
"topo.components.propertyBar.index.038495-300": "数据引擎示例",
"topo.components.propertyBar.index.038495-301": "组件密码",
"topo.components.propertyBar.index.038495-302": "设置密码",
"topo.components.propertyBar.index.038495-303": "自定义",
"topo.components.propertyBar.index.038495-304": "用户密码",
"topo.components.propertyBar.index.038495-305": "明暗",
"topo.components.propertyBar.index.038495-306": "无需特意去绑定数据,将在使用中自动绑定设备 / 场景中已关联的视频",
"topo.components.propertyBar.index.038495-307": "设备",
"topo.components.propertyBar.index.038495-308": "字体样式",
"topo.components.propertyBar.index.038495-309": "请选择字体样式",
"topo.components.propertyBar.index.038495-310": "字体粗细",
"topo.components.propertyBar.index.038495-311": "请选择字体粗细",
"topo.components.propertyBar.index.038495-312": "数据类型",
"topo.components.propertyBar.index.038495-313": "请选择数据类型",
"topo.components.propertyBar.index.038495-314": "小数位数",
"topo.components.propertyBar.index.038495-315": "请输入小数位数",
"topo.components.propertyBar.index.038495-316": "绑定变量",
"topo.components.propertyBar.index.038495-317": "卡片设置",
"topo.components.propertyBar.index.038495-318": "标题名称",
"topo.components.propertyBar.index.038495-319": "请输入标题名称",
"topo.components.propertyBar.index.038495-320": "表格配置",
"topo.components.propertyBar.index.038495-321": "自定义表格",
"topo.components.propertyBar.index.038495-322": "自定义展示列",
"topo.components.propertyBar.index.038495-323": "列名",
"topo.components.propertyBar.index.038495-324": "可见",
"topo.components.propertyBar.index.038495-325": "颜色",
"topo.components.propertyBar.index.038495-326": "无",
"topo.components.propertyBar.index.038495-327": "确认",
"topo.components.propertyBar.index.038495-328": "关闭",
"topo.components.propertyBar.index.038495-329": "请输入标题大小",
"topo.components.propertyBar.index.038495-330": "标题显隐",
"topo.components.propertyBar.index.038495-331": "请选择标题显隐",
"topo.components.propertyBar.index.038495-332": "显示",
"topo.components.propertyBar.index.038495-333": "隐藏",
"topo.components.propertyBar.index.038495-334": "凸形",
"topo.components.propertyBar.index.038495-335": "液位标签",
"topo.components.propertyBar.index.038495-336": "请选择液位标签",
"topo.components.propertyBar.index.038495-337": "该组件无需绑定数据或已通过其他方式绑定数据",
"topo.components.propertyBar.index.038495-338": "数据表格",
"topo.components.propertyBar.index.038495-339": "表格类型",
"topo.components.propertyBar.index.038495-340": "实时数据",
"topo.components.propertyBar.index.038495-341": "历史数据",
"topo.components.propertyBar.index.038495-342": "表格配置",
"topo.components.propertyBar.index.038495-343": "自定义表格",
"topo.components.propertyBar.index.038495-344": "列数",
"topo.components.propertyBar.index.038495-345": "请输入列数",
"topo.components.propertyBar.index.038495-346": "编辑配置",
"topo.components.propertyBar.index.038495-347": "发送请求",
"topo.components.propertyBar.index.038495-348": "数据过滤",
"topo.components.propertyBar.index.038495-349": "新增过滤器",
"topo.components.propertyBar.index.038495-350": "公共配置",
"topo.components.propertyBar.index.038495-351": "请求地址",
"topo.components.propertyBar.index.038495-352": "例https://127.0.0.1/ 或 /scada/center/list",
"topo.components.propertyBar.index.038495-353": "请输入数字",
"topo.components.propertyBar.index.038495-354": "秒",
"topo.components.propertyBar.index.038495-355": "分",
"topo.components.propertyBar.index.038495-356": "时",
"topo.components.propertyBar.index.038495-357": "请求方式",
"topo.components.propertyBar.index.038495-358": "普通请求",
"topo.components.propertyBar.index.038495-359": "请输入",
"topo.components.propertyBar.index.038495-360": "操作",
"topo.components.propertyBar.index.038495-361": "该请求没有 body 体",
"topo.components.propertyBar.index.038495-362": "保存",
"topo.components.propertyBar.index.038495-363": "取消",
"topo.components.propertyBar.index.038495-364": "过滤器函数编辑器",
"topo.components.propertyBar.index.038495-365": "接口返回数据(data)",
"topo.components.propertyBar.index.038495-366": "过滤器结果:",
"topo.components.propertyBar.index.038495-367": "暂无",
"topo.components.propertyBar.index.038495-368": "仅支持vue语法糖、数据引擎echartData",
"topo.components.propertyBar.index.038495-369": "图层",
"topo.components.propertyBar.index.038495-370": "请输入组件名称",
"topo.components.propertyBar.index.038495-371": "提示",
"topo.components.propertyBar.index.038495-372": "确定",
"topo.components.propertyBar.index.038495-373": "取消",
"topo.components.propertyBar.index.038495-374": "组件名称不能为空",
"topo.components.propertyBar.index.038495-375": "请输入X轴坐标",
"topo.components.propertyBar.index.038495-376": "请输入Y轴坐标",
"topo.components.propertyBar.index.038495-377": "请输入组件宽度",
"topo.components.propertyBar.index.038495-378": "请输入组件高度",
"topo.components.propertyBar.index.038495-379": "列表列数",
"topo.components.propertyBar.index.038495-380": "请输入列表列数",
"topo.components.propertyBar.index.038495-381": "选择变量",
"topo.components.propertyBar.index.038495-382": "未绑定数据",
"topo.components.propertyBar.index.038495-383": "已绑定数据",
"topo.components.propertyBar.index.038495-384": "在...之间between",
"topo.components.propertyBar.index.038495-385": "不在...之间notBetween",
"topo.components.propertyBar.index.038495-386": "生成条件",
"topo.components.propertyBar.index.038495-389": "大于(>",
"topo.components.propertyBar.index.038495-390": "大于等于(>=",
"topo.components.propertyBar.index.038495-391": "等于(=",
"topo.components.propertyBar.index.038495-392": "小于等于(<=",
"topo.components.propertyBar.index.038495-393": "小于(<",
"topo.components.propertyBar.index.038495-394": "不等于(!=",
"topo.components.propertyBar.index.038495-395": "交互控制",
"topo.components.propertyBar.index.038495-396": "右键拖动",
"topo.components.propertyBar.index.038495-397": "模型缩放",
"topo.components.propertyBar.index.038495-398": "模型旋转",
"topo.components.propertyBar.index.038495-399": "自动旋转",
"topo.components.propertyBar.index.038495-400": "FPS显示",
"topo.components.propertyBar.index.038495-401": "相机位置",
"topo.components.propertyBar.index.038495-402": "Z 轴坐标",
"topo.components.propertyBar.index.038495-403": "密码管理",
"topo.components.propertyBar.index.038495-404": "请输入密码",
"topo.components.propertyBar.index.038495-405": "密码类型",
"topo.components.propertyBar.index.038495-406": "形状类型",
"topo.components.propertyBar.index.038495-407": "请选择形状类型",
"topo.components.propertyBar.index.038495-408": "体",
"topo.components.propertyBar.index.038495-409": "形",
"topo.components.propertyBar.index.038495-410": "所有设备",
"topo.components.propertyBar.index.038495-411": "当前设备",
"topo.components.propertyBar.index.038495-412": "参数说明",
"topo.components.propertyBar.index.038495-413": "若选择\"当前设备\",请在设备下进行预览",
"topo.components.propertyBar.index.038495-414": "动态请求",
"topo.components.propertyBar.index.038495-415": "公共配置",
"topo.components.propertyBar.index.038495-416": "已存在相同 URL 的公共 API请勿重复添加",
"topo.components.propertyBar.index.038495-417": "单击",
"topo.components.propertyBar.index.038495-418": "交互",
"scada.topo.components.topo-variable.764509-0": "设备编号",
"scada.topo.components.topo-variable.764509-1": "请选择设备编号",
"scada.topo.components.topo-variable.764509-2": "数据来源",
"scada.topo.components.topo-variable.764509-3": "请选择数据来源",
"scada.topo.components.topo-variable.764509-4": "变量名称",
"scada.topo.components.topo-variable.764509-5": "请输入变量名称",
"scada.topo.components.topo-variable.764509-6": "设备名称",
"scada.topo.components.topo-variable.764509-7": "产品名称",
"scada.topo.components.topo-variable.764509-8": "变量标识",
"scada.topo.components.topo-variable.764509-9": "搜索",
"scada.topo.components.topo-variable.764509-10": "重置",
"scada.common.scadaShareDialog.842076-0": "分享",
"scada.common.scadaShareDialog.842076-1": "点击“分享”,对所选设备的组态画面进行分享",
"scada.common.scadaShareDialog.842076-2": "设备名称",
"scada.common.scadaShareDialog.842076-3": "请输入设备名称",
"scada.common.scadaShareDialog.842076-4": "搜索",
"scada.common.scadaShareDialog.842076-5": "重置",
"scada.common.scadaShareDialog.842076-6": "显示下级机构数据",
"scada.common.scadaShareDialog.842076-7": "选中后,本级可以看下级的数据",
"scada.common.scadaShareDialog.842076-8": "操作",
"scada.common.scadaShareDialog.842076-9": "暂无数据",
"scada.common.scadaShareDialog.842076-10": "开启分享",
"scada.common.scadaShareDialog.842076-11": "提示",
"scada.common.scadaShareDialog.842076-12": "此操作将开启分享, 是否继续?",
"scada.common.scadaShareDialog.842076-13": "取消",
"scada.common.scadaShareDialog.842076-14": "确定",
"scada.common.scadaShareDialog.842076-15": "链接",
"scada.common.scadaShareDialog.842076-16": "关闭分享",
"scada.common.scadaShareDialog.842076-17": "复制链接",
"scada.common.scadaShareDialog.842076-18": "复制链接和密码",
"scada.common.scadaShareDialog.842076-19": "访问需要密码",
"scada.common.scadaShareDialog.842076-20": "重置密码",
"scada.common.scadaShareDialog.842076-21": "二维码",
"scada.common.scadaShareDialog.842076-22": "将二维码分享给他人",
"scada.common.scadaShareDialog.842076-23": "对方通过微信扫一扫即可查看",
"scada.common.scadaShareDialog.842076-24": "下载二维码",
"scada.common.scadaShareDialog.842076-25": "返回继续分享",
"scada.common.scadaShareDialog.842076-26": "已开启分享",
"scada.common.scadaShareDialog.842076-27": "已取消操作",
"scada.common.scadaShareDialog.842076-28": "已关闭分享",
"scada.common.scadaShareDialog.842076-29": "链接已复制",
"scada.common.scadaShareDialog.842076-30": "密码",
"scada.topo.components.propertyBar.variateDrawer.842076-0": "数据配置",
"scada.topo.components.propertyBar.variateDrawer.842076-1": "数据类型",
"scada.topo.components.propertyBar.variateDrawer.842076-2": "请选择",
"scada.topo.components.propertyBar.variateDrawer.842076-3": "设备数据",
"scada.topo.components.propertyBar.variateDrawer.842076-4": "数据模拟",
"scada.topo.components.propertyBar.variateDrawer.842076-5": "变量数值",
"scada.topo.components.propertyBar.variateDrawer.842076-6": "选择变量",
"scada.topo.components.propertyBar.variateDrawer.842076-7": "数据处理",
"scada.topo.components.propertyBar.variateDrawer.842076-8": "function (value)",
"scada.topo.components.propertyBar.variateDrawer.842076-9": "静态数据",
"scada.topo.components.propertyBar.variateDrawer.842076-10": "动态数据",
"scada.topo.components.propertyBar.variateDrawer.842076-11": "数据内容",
"scada.topo.components.propertyBar.variateDrawer.842076-12": "不同组件差异,参考下面已有数据修改",
"scada.topo.components.propertyBar.variateDrawer.842076-13": "编辑配置",
"scada.topo.components.propertyBar.variateDrawer.842076-14": "请求类型",
"scada.topo.components.propertyBar.variateDrawer.842076-15": "请求方式",
"scada.topo.components.propertyBar.variateDrawer.842076-16": "更新间隔",
"scada.topo.components.propertyBar.variateDrawer.842076-17": "请求地址",
"scada.topo.components.propertyBar.variateDrawer.842076-18": "请求测试",
"scada.topo.components.propertyBar.variateDrawer.842076-19": "发送请求",
"scada.topo.components.propertyBar.variateDrawer.842076-20": "数据过滤",
"scada.topo.components.propertyBar.variateDrawer.842076-21": "新增过滤器",
"scada.topo.components.propertyBar.variateDrawer.842076-22": "普通请求",
"scada.topo.components.propertyBar.variateDrawer.842076-23": "数据映射",
"scada.topo.components.propertyBar.variateDrawer.842076-24": "添加数据映射",
"scada.topo.components.propertyBar.variateDrawer.842076-25": "数据映射编辑",
"scada.topo.components.propertyBar.variateDrawer.842076-26": "当前绑定的变量:",
"scada.topo.components.propertyBar.variateDrawer.842076-27": "当前未绑定变量:",
"scada.topo.components.propertyBar.variateDrawer.842076-28": "新增",
"scada.topo.components.propertyBar.variateDrawer.842076-29": "判断条件",
"scada.topo.components.propertyBar.variateDrawer.842076-30": "比较值",
"scada.topo.components.propertyBar.variateDrawer.842076-31": "请输入比较值",
"scada.topo.components.propertyBar.variateDrawer.842076-32": "作用值",
"scada.topo.components.propertyBar.variateDrawer.842076-33": "请输入作用值",
"scada.topo.components.propertyBar.variateDrawer.842076-34": "删除",
"scada.topo.components.propertyBar.variateDrawer.842076-35": "确定",
"scada.topo.components.propertyBar.variateDrawer.842076-36": "取消",
"scada.topo.components.propertyBar.variateDrawer.842076-37": "重置",
"scada.topo.components.propertyBar.variateDrawer.842076-38": "公共接口",
"scada.topo.components.propertyBar.variateDrawer.842076-41": "新增公共API",
"scada.topo.components.propertyBar.variateDrawer.842076-42": "请填写URL",
"scada.topo.components.propertyBar.variateDrawer.842076-43": "请求成功",
"scada.topo.components.propertyBar.variateDialog.764059-0": "变量选择",
"scada.topo.components.propertyBar.variateDialog.764059-1": "请选择设备名称",
"scada.topo.components.propertyBar.variateDialog.764059-2": "请选择数据来源",
"scada.topo.components.propertyBar.variateDialog.764059-3": "请输入变量名称",
"scada.topo.components.propertyBar.variateDialog.764059-4": "设备名称",
"scada.topo.components.propertyBar.variateDialog.764059-5": "设备编号",
"scada.topo.components.propertyBar.variateDialog.764059-6": "产品名称",
"scada.topo.components.propertyBar.variateDialog.764059-7": "数据来源",
"scada.topo.components.propertyBar.variateDialog.764059-8": "变量名称",
"scada.topo.components.propertyBar.variateDialog.764059-9": "变量标识",
"scada.topo.components.propertyBar.variateDialog.764059-10": "模拟值",
"scada.topo.components.propertyBar.variateDialog.764059-11": "请输入模拟值",
"scada.topo.components.propertyBar.variateDialog.764059-12": "间隔(s)",
"scada.topo.components.propertyBar.variateDialog.764059-13": "请输入间隔时间",
"scada.topo.components.propertyBar.variateDialog.764059-14": "模拟值说明",
"scada.topo.components.propertyBar.variateDialog.764059-15": "随机值值1,值2,值3......中间用英文逗号隔开例如1,2,3,4,5,6'已处理','未处理','处理中'",
"scada.topo.components.propertyBar.variateDialog.764059-16": "范围值:最小值-最大值例如0-100",
"scada.topo.components.propertyBar.variateDialog.764059-17": "小数位数设置例如10-30.1 表示10-30之间随机值 保留1位小数13.5",
"scada.topo.components.propertyBar.variateDialog.764059-18": "秒",
"scada.topo.components.propertyBar.variateDialog.764059-19": "分",
"scada.topo.components.propertyBar.variateDialog.764059-20": "时",
"scada.topo.components.propertyBar.calcVariateDialog.205053-0": "生成条件",
"scada.topo.components.propertyBar.calcVariateDialog.205053-1": "支持“属性变量”、运算符号或数字结合使用,运算变量数据经运算公式计算后显示。",
"scada.topo.components.propertyBar.calcVariateDialog.205053-2": "操作说明:点击“插入变量”后变量前面编号,会自动回填至“计算公式”输入框中, 如属性变量为“电压”运算公式中会回填“A”也支持手动写入大写字母A运算符号使用规则参考下方说明",
"scada.topo.components.propertyBar.calcVariateDialog.205053-3": "加A+B+10A-B-10A*B*10A/B/10余数A%10括号(A+B)*10",
"scada.topo.components.propertyBar.calcVariateDialog.205053-4": "注:请至少输入一个变量编号,支持只输入单个变量编号",
"scada.topo.components.propertyBar.calcVariateDialog.205053-5": "计算公式",
"scada.topo.components.propertyBar.calcVariateDialog.205053-6": "请输入计算公式",
"scada.topo.components.propertyBar.calcVariateDialog.205053-7": "序号",
"scada.topo.components.propertyBar.calcVariateDialog.205053-8": "设备",
"scada.topo.components.propertyBar.calcVariateDialog.205053-9": "请选择设备",
"scada.topo.components.propertyBar.calcVariateDialog.205053-10": "数据来源",
"scada.topo.components.propertyBar.calcVariateDialog.205053-11": "请选择数据来源",
"scada.topo.components.propertyBar.calcVariateDialog.205053-12": "变量",
"scada.topo.components.propertyBar.calcVariateDialog.205053-13": "请选择变量",
"scada.topo.components.propertyBar.calcVariateDialog.205053-14": "插入变量",
"scada.topo.components.propertyBar.calcVariateDialog.205053-15": "运算公式错误",
"scada.topo.components.propertyBar.calcVariateDialog.205053-16": "最大长度支持200个字符",
"scada.topo.components.propertyBar.clickEventDialog.318042-0": "单击设置",
"scada.topo.components.propertyBar.clickEventDialog.318042-1": "动作类型",
"scada.topo.components.propertyBar.clickEventDialog.318042-2": "操作变量",
"scada.topo.components.propertyBar.clickEventDialog.318042-3": "外部链接",
"scada.topo.components.propertyBar.clickEventDialog.318042-4": "组态界面",
"scada.topo.components.propertyBar.clickEventDialog.318042-5": "开关控制",
"scada.topo.components.propertyBar.clickEventDialog.318042-6": "组态页面",
"scada.topo.components.propertyBar.clickEventDialog.318042-7": "变量名称",
"scada.topo.components.propertyBar.clickEventDialog.318042-8": "请选择变量",
"scada.topo.components.propertyBar.clickEventDialog.318042-9": "变量值",
"scada.topo.components.propertyBar.clickEventDialog.318042-10": "请输入变量值",
"scada.topo.components.propertyBar.clickEventDialog.318042-11": "提示信息",
"scada.topo.components.propertyBar.clickEventDialog.318042-12": "请输入提示信息",
"scada.topo.components.propertyBar.clickEventDialog.318042-13": "跳转链接",
"scada.topo.components.propertyBar.clickEventDialog.318042-14": "请输入链接https://www.xxxxxx.com",
"scada.topo.components.propertyBar.clickEventDialog.318042-15": "请选择组态界面",
"scada.topo.components.propertyBar.clickEventDialog.318042-16": "打开方式",
"scada.topo.components.propertyBar.clickEventDialog.318042-17": "当前窗口打开",
"scada.topo.components.propertyBar.clickEventDialog.318042-18": "打开新窗口",
"scada.topo.components.propertyBar.clickEventDialog.318042-19": "弹出小窗口",
"scada.topo.components.propertyBar.clickEventDialog.318042-20": "窗口宽度",
"scada.topo.components.propertyBar.clickEventDialog.318042-21": "请填写窗口宽度",
"scada.topo.components.propertyBar.clickEventDialog.318042-22": "窗口高度",
"scada.topo.components.propertyBar.clickEventDialog.318042-23": "请填写窗口高度",
"scada.topo.components.propertyBar.clickEventDialog.318042-24": "开关控制",
"scada.topo.components.propertyBar.clickEventDialog.318042-25": "0关1开",
"scada.topo.components.propertyBar.clickEventDialog.318042-26": "0开1关",
"scada.topo.components.propertyBar.clickEventDialog.318042-27": "请选择组态页面",
"scada.topo.components.propertyBar.clickEventDialog.318042-28": "写入类型",
"scada.topo.components.propertyBar.clickEventDialog.318042-29": "固定值",
"scada.topo.components.propertyBar.clickEventDialog.318042-30": "手动输入",
"scada.topo.components.propertyBar.clickEventDialog.318042-31": "脚本",
"scada.topo.components.propertyBar.clickEventDialog.318042-32": "function (app: Application, issord: Function)",
"scada.topo.components.unitLibBar.index.875001-0": "pc端",
"scada.topo.components.unitLibBar.index.875001-1": "移动端",
"scada.topo.components.unitLibBar.index.875001-2": "<strong>pc端、移动端组态界面说明</strong>",
"scada.topo.components.unitLibBar.index.875001-3": "一个组态,可以编辑 <strong>PC端</strong> 和 <strong>移动端</strong> 两个界面,使用不同的页面尺寸。",
"scada.topo.components.unitLibBar.index.875001-4": "点击左侧的标签页可以切换PC端、移动端的组态编辑界面。",
"scada.topo.components.unitLibBar.index.875001-5": "点击勾选框,可以 <strong>启用、禁用</strong> 对应的组态界面。",
"scada.topo.components.unitLibBar.index.875001-6": "组态运行时依据运行的设备会运行PC端或移动端的组态界面。如果对应的组态界面被 <strong>禁用</strong> 了,则会运行 <strong>另一个端</strong> 的组态界面。 禁用移动端的组态界面但是用手机查看组态此时会显示PC端的组态界面",
"scada.topo.components.unitLibBar.index.875001-7": "<p>勾选之后将启用PC端独立的组态界面需要单独设计PC端的组态界面不与移动端共享。</p><p>如不勾选将会在PC上显示移动端的组态界面。</p><p>确定启用PC端组态界面吗</p>",
"scada.topo.components.unitLibBar.index.875001-8": "不能同时禁用PC端和移动端的组态界面",
"scada.topo.components.unitLibBar.index.875001-9": "PC端组态界面已禁用",
"scada.topo.components.unitLibBar.index.875001-10": "<p>勾选之后将启用移动端独立的组态界面需要单独设计移动端的组态界面不与PC端共享。</p><p>如不勾选将会在移动设备显示PC端的组态界面。</p><p>确定启用移动端组态界面吗?</p>",
"scada.topo.components.unitLibBar.index.875001-11": "移动端组态界面已禁用",
"scada.topo.components.unitLibBar.index.875001-12": "基本",
"scada.topo.components.unitLibBar.index.875001-13": "常用元件",
"scada.topo.components.unitLibBar.index.875001-14": "形状元件",
"scada.topo.components.unitLibBar.index.875001-15": "交互元件",
"scada.topo.components.unitLibBar.index.875001-16": "统计",
"scada.topo.components.unitLibBar.index.875001-17": "图库",
"scada.topo.components.unitLibBar.index.875001-18": "图表",
"scada.topo.components.unitLibBar.index.875001-19": "模型",
"scada.topo.components.propertyBar.scadaDialog.764059-1": "选择组态界面",
"scada.topo.components.propertyBar.scadaDialog.764059-2": "请输入组态界面名称",
"scada.topo.components.propertyBar.scadaDialog.764059-3": "组态界面名称",
"scada.topo.components.propertyBar.scadaDialog.764059-4": "选择",
"scada.topo.components.propertyBar.scadaDialog.764059-5": "分辨率",
"scada.topo.components.propertyBar.interactionEventDialog.764059-0": "交互设置",
"scada.topo.components.propertyBar.interactionEventDialog.764059-1": "暂无交互配置,请点击'新增'按钮添加",
"scada.topo.components.propertyBar.interactionEventDialog.764059-2": "关联组件",
"scada.topo.components.propertyBar.interactionEventDialog.764059-3": "选择目标组件",
"scada.topo.components.propertyBar.interactionEventDialog.764059-4": "触发事件",
"scada.topo.components.propertyBar.interactionEventDialog.764059-5": "请选择触发事件",
"scada.topo.components.propertyBar.interactionEventDialog.764059-6": "选择完成",
"scada.topo.components.propertyBar.interactionEventDialog.764059-7": "绑定",
"scada.topo.components.propertyBar.interactionEventDialog.764059-8": "只支持绑定动态数据类型组件",
"scada.topo.components.propertyBar.interactionEventDialog.764059-9": "查询结果",
"scada.topo.components.propertyBar.interactionEventDialog.764059-10": "参数",
"scada.topo.components.propertyBar.interactionEventDialog.764059-11": "说明",
"scada.topo.components.propertyBar.interactionEventDialog.764059-12": "关联目标请求参数",
"scada.topo.components.propertyBar.interactionEventDialog.764059-13": "暂无数据",
"scada.topo.components.propertyBar.interactionEventDialog.764059-14": "请选择",
"scada.topo.components.propertyBar.interactionEventDialog.764059-15": "保存配置",
"scada.topo.components.propertyBar.interactionEventDialog.764059-16": "暂无可用交互组件,请先配置目标组件数据类型为动态数据组件",
"scada.topo.components.propertyBar.interactionEventDialog.764059-17": "是否确认删除该关联组件的配置?",
"scada.topo.components.propertyBar.interactionEventDialog.764059-18": "表单",
"scada.topo.components.propertyBar.interactionEventDialog.764059-19": "请完成触发事件,绑定组件必填字段后再保存",
"scada.topo.components.propertyBar.interactionEventDialog.764059-20": "配置保存成功",
"scada.topo.components.propertyBar.interactionEventDialog.764059-21": "选择目标组件",
"scada.topo.components.propertyBar.httpSettingDialog.038495-0": "动态配置",
"scada.topo.components.propertyBar.httpSettingDialog.038495-1": "请求地址",
"scada.topo.components.propertyBar.httpSettingDialog.038495-2": "例https://127.0.0.1/ 或 /scada/center/list",
"scada.topo.components.propertyBar.httpSettingDialog.038495-3": "请输入数字",
"scada.topo.components.propertyBar.httpSettingDialog.038495-4": "秒",
"scada.topo.components.propertyBar.httpSettingDialog.038495-5": "分",
"scada.topo.components.propertyBar.httpSettingDialog.038495-6": "时",
"scada.topo.components.propertyBar.httpSettingDialog.038495-7": "请求方式",
"scada.topo.components.propertyBar.httpSettingDialog.038495-8": "普通请求",
"scada.topo.components.propertyBar.httpSettingDialog.038495-9": "请输入",
"scada.topo.components.propertyBar.httpSettingDialog.038495-10": "操作",
"scada.topo.components.propertyBar.httpSettingDialog.038495-11": "该请求没有 body 体",
"scada.topo.components.propertyBar.httpSettingDialog.038495-12": "请输入地址",
"scada.topo.components.propertyBar.httpFilterDialog.038495-0": "过滤器函数编辑器",
"scada.topo.components.propertyBar.httpFilterDialog.038495-1": "接口返回数据(res)",
"scada.topo.components.propertyBar.httpFilterDialog.038495-2": "过滤器结果:",
"scada.topo.components.propertyBar.httpPublicSettingDialog.038495-0": "公共配置",
"scada.topo.components.propertyBar.httpPublicSettingDialog.038495-1": "公共接口"
}

View File

@@ -1,138 +0,0 @@
{
"speaker.clientDetails.index.893021-0": "客户端ID",
"speaker.clientDetails.index.893021-1": "请输入客户端ID",
"speaker.clientDetails.index.893021-2": "授权平台",
"speaker.clientDetails.index.893021-3": "请选择平台",
"speaker.clientDetails.index.893021-4": "搜索",
"speaker.clientDetails.index.893021-5": "重置",
"speaker.clientDetails.index.893021-6": "新增",
"speaker.clientDetails.index.893021-7": "客户端ID",
"speaker.clientDetails.index.893021-8": "授权平台",
"speaker.clientDetails.index.893021-9": "状态",
"speaker.clientDetails.index.893021-10": "开启",
"speaker.clientDetails.index.893021-11": "关闭",
"speaker.clientDetails.index.893021-12": "权限范围",
"speaker.clientDetails.index.893021-13": "云技能ID",
"speaker.clientDetails.index.893021-14": "授权类型",
"speaker.clientDetails.index.893021-15": "回调地址",
"speaker.clientDetails.index.893021-16": "Token有效期",
"speaker.clientDetails.index.893021-17": "刷新Token有效期",
"speaker.clientDetails.index.893021-18": "操作",
"speaker.clientDetails.index.893021-19": "修改",
"speaker.clientDetails.index.893021-20": "删除",
"speaker.clientDetails.index.893021-21": "是否确认删除云云对接编号为{0}的数据项?",
"speaker.clientDetails.index.893021-22": "删除成功",
"speaker.clientDetails.index.893021-23": "读",
"speaker.clientDetails.index.893021-24": "写",
"speaker.clientDetails.detail-dialog.455323-0": "编辑音箱配置",
"speaker.clientDetails.detail-dialog.455323-1": "新增音箱配置",
"speaker.clientDetails.detail-dialog.455323-2": "客户端ID",
"speaker.clientDetails.detail-dialog.455323-3": "请输入客户端ID",
"speaker.clientDetails.detail-dialog.455323-4": "授权平台",
"speaker.clientDetails.detail-dialog.455323-5": "请选择授权平台",
"speaker.clientDetails.detail-dialog.455323-6": "状态",
"speaker.clientDetails.detail-dialog.455323-7": "请选择状态",
"speaker.clientDetails.detail-dialog.455323-8": "开启",
"speaker.clientDetails.detail-dialog.455323-9": "关闭",
"speaker.clientDetails.detail-dialog.455323-10": "授权类型",
"speaker.clientDetails.detail-dialog.455323-11": "请选择授权类型",
"speaker.clientDetails.detail-dialog.455323-12": "权限范围",
"speaker.clientDetails.detail-dialog.455323-13": "读",
"speaker.clientDetails.detail-dialog.455323-14": "写",
"speaker.clientDetails.detail-dialog.455323-15": "秘钥",
"speaker.clientDetails.detail-dialog.455323-16": "请输入秘钥",
"speaker.clientDetails.detail-dialog.455323-17": "云技能ID",
"speaker.clientDetails.detail-dialog.455323-18": "请输入云技能ID",
"speaker.clientDetails.detail-dialog.455323-19": "Token有效期",
"speaker.clientDetails.detail-dialog.455323-20": "请输入Token有效期",
"speaker.clientDetails.detail-dialog.455323-21": "刷新Token有效期",
"speaker.clientDetails.detail-dialog.455323-22": "请输入刷新Token有效期",
"speaker.clientDetails.detail-dialog.455323-23": "回调地址",
"speaker.clientDetails.detail-dialog.455323-24": "请输入回调地址",
"speaker.clientDetails.detail-dialog.455323-25": "预留信息",
"speaker.clientDetails.detail-dialog.455323-26": "请输入预留信息",
"speaker.clientDetails.detail-dialog.455323-27": "保 存",
"speaker.clientDetails.detail-dialog.455323-28": "取 消",
"speaker.clientDetails.detail-dialog.455323-29": "请输入客户端ID",
"speaker.clientDetails.detail-dialog.455323-30": "请选择授权平台",
"speaker.clientDetails.detail-dialog.455323-31": "请选择状态",
"speaker.clientDetails.detail-dialog.455323-32": "请选择授权类型",
"speaker.clientDetails.detail-dialog.455323-33": "请至少选择一个权限",
"speaker.clientDetails.detail-dialog.455323-34": "请输入秘钥",
"speaker.clientDetails.detail-dialog.455323-35": "请输入云技能ID",
"speaker.clientDetails.detail-dialog.455323-36": "请输入回调地址",
"speaker.clientDetails.detail-dialog.455323-37": "请输入Token有效期",
"speaker.clientDetails.detail-dialog.455323-38": "请输入刷新Token有效期",
"speaker.clientDetails.detail-dialog.455323-39": "修改成功",
"speaker.clientDetails.detail-dialog.455323-40": "新增成功",
"speaker.dueros.index.364370-0": "产品名称",
"speaker.dueros.index.364370-1": "请输入产品名称",
"speaker.dueros.index.364370-2": "音箱类型",
"speaker.dueros.index.364370-3": "请选择音箱类型",
"speaker.dueros.index.364370-4": "搜索",
"speaker.dueros.index.364370-5": "重置",
"speaker.dueros.index.364370-6": "新增",
"speaker.dueros.index.364370-7": "生产厂商",
"speaker.dueros.index.364370-8": "音箱类型",
"speaker.dueros.index.364370-9": "动作数量",
"speaker.dueros.index.364370-10": "更新时间",
"speaker.dueros.index.364370-11": "查看",
"speaker.dueros.index.364370-12": "删除",
"speaker.dueros.index.364370-13": "暂无数据,请添加产品",
"speaker.dueros.index.364370-14": "是否确认删除{0}的数据项?",
"speaker.dueros.index.364370-15": "删除成功",
"speaker.dueros.detail-dialog.738430-0": "编辑音箱产品",
"speaker.dueros.detail-dialog.738430-1": "新增音箱产品",
"speaker.dueros.detail-dialog.738430-2": "所属产品",
"speaker.dueros.detail-dialog.738430-3": "所属产品",
"speaker.dueros.detail-dialog.738430-4": " 1、无法添加没有物模型的产品",
"speaker.dueros.detail-dialog.738430-5": " 2、无法添加已经添加过的产品",
"speaker.dueros.detail-dialog.738430-6": "请选择所属产品",
"speaker.dueros.detail-dialog.738430-7": "厂商名称",
"speaker.dueros.detail-dialog.738430-8": "请输入厂商名称",
"speaker.dueros.detail-dialog.738430-9": "音箱类型",
"speaker.dueros.detail-dialog.738430-10": "请选择音箱类型",
"speaker.dueros.detail-dialog.738430-11": "注:小度暂时不支持数组类型物模配置",
"speaker.dueros.detail-dialog.738430-12": "关联产品",
"speaker.dueros.detail-dialog.738430-13": "刷新",
"speaker.dueros.detail-dialog.738430-14": "标识符",
"speaker.dueros.detail-dialog.738430-15": "物模名称",
"speaker.dueros.detail-dialog.738430-16": "音箱属性标识符",
"speaker.dueros.detail-dialog.738430-17": "音箱属性名称",
"speaker.dueros.detail-dialog.738430-18": "音箱动作名称",
"speaker.dueros.detail-dialog.738430-19": "音箱属性字段对应值",
"speaker.dueros.detail-dialog.738430-20": "操作",
"speaker.dueros.detail-dialog.738430-21": "编辑",
"speaker.dueros.detail-dialog.738430-22": "删除",
"speaker.dueros.detail-dialog.738430-23": "所属产品不能为空",
"speaker.dueros.detail-dialog.738430-24": "厂商名称不能为空",
"speaker.dueros.detail-dialog.738430-25": "音箱类型不能为空",
"speaker.dueros.detail-dialog.738430-26": "关联成功",
"speaker.dueros.detail-dialog.738430-27": "刷新成功",
"speaker.dueros.detail-dialog.738430-28": "是否确认删除{0}的数据项?",
"speaker.dueros.detail-dialog.738430-29": "删除成功",
"speaker.dueros.things-model-dialog.454920-0": "编辑物模型关联信息",
"speaker.dueros.things-model-dialog.454920-1": "基本信息",
"speaker.dueros.things-model-dialog.454920-2": "模型名称",
"speaker.dueros.things-model-dialog.454920-3": "请输入模型名称",
"speaker.dueros.things-model-dialog.454920-4": "模型标识",
"speaker.dueros.things-model-dialog.454920-5": "请输入模型标识",
"speaker.dueros.things-model-dialog.454920-6": "关联属性",
"speaker.dueros.things-model-dialog.454920-7": "关联动作",
"speaker.dueros.things-model-dialog.454920-8": "关联属性值",
"speaker.dueros.things-model-dialog.454920-9": "普通类型:直接关联物模型值,如:整形、小数和字符串类型",
"speaker.dueros.things-model-dialog.454920-10": "特殊类型:根据小度字符填入物模型对应的值,如布尔、枚举和对象类型",
"speaker.dueros.things-model-dialog.454920-11": "根据右边物模型配置相应属性值",
"speaker.dueros.things-model-dialog.454920-12": "请输入对应物模型value值",
"speaker.dueros.things-model-dialog.454920-13": "请输入对应物模型id值",
"speaker.dueros.things-model-dialog.454920-14": "请输入对应物模型value值",
"speaker.dueros.things-model-dialog.454920-15": "属性类型",
"speaker.dueros.things-model-dialog.454920-16": "请选择属性类型",
"speaker.dueros.things-model-dialog.454920-17": "保 存",
"speaker.dueros.things-model-dialog.454920-18": "取 消",
"speaker.dueros.things-model-dialog.454920-19": "请选择关联属性",
"speaker.dueros.things-model-dialog.454920-20": "请先配置关联属性值...",
"speaker.dueros.things-model-dialog.454920-21": "提示",
"speaker.dueros.things-model-dialog.454920-22": "确定",
"speaker.dueros.things-model-dialog.454920-23": "关联成功"
}

View File

@@ -1,23 +0,0 @@
{
"iot.view.setting-23209-0": "参数配置",
"iot.view.setting-23209-1": "将对大屏进行数据参数配置。请选择条件参数生成对应url。",
"iot.view.setting-23209-2": "条件参数",
"iot.view.setting-23209-3": "设备",
"iot.view.setting-23209-4": "请选择设备",
"iot.view.setting-23209-5": "从机",
"iot.view.setting-23209-6": "请选择从机设备",
"iot.view.setting-23209-7": "设备属性",
"iot.view.setting-23209-8": "请选择设备属性",
"iot.view.setting-23209-9": "组件类型",
"iot.view.setting-23209-10": "请选择图表类型",
"iot.view.setting-23209-11": "生 成",
"iot.view.setting-23209-12": "返回响应",
"iot.view.setting-23209-13": "复制",
"iot.view.setting-23209-14": "数据结构",
"iot.view.setting-23209-15": "设备不能为空",
"iot.view.setting-23209-16": "从机不能为空",
"iot.view.setting-23209-17": "属性不能为空",
"iot.view.setting-23209-18": "图表类型不能为空",
"iot.view.setting-23209-19": "生成成功",
"iot.view.setting-23209-20": "生成失败"
}

View File

@@ -1,62 +0,0 @@
{
"workOrder.index.748855-0": "请输入工单名称",
"workOrder.index.748855-1": "请选择工单状态",
"workOrder.index.748855-2": "请选择工单类型",
"workOrder.index.748855-3": "工单名称",
"workOrder.index.748855-4": "工单状态",
"workOrder.index.748855-5": "工单类型",
"workOrder.index.748855-6": "工单编号",
"workOrder.index.748855-7": "联系人",
"workOrder.index.748855-8": "联系电话",
"workOrder.index.748855-9": "设备名称",
"workOrder.index.748855-10": "截止时间",
"workOrder.index.748855-11": "工单描述",
"workOrder.index.748855-12": "租户名称",
"workOrder.index.748855-13": "创建者",
"workOrder.index.748855-14": "创建时间",
"workOrder.index.748855-15": "派单",
"workOrder.index.748855-16": "接单",
"workOrder.index.748855-17": "结单",
"workOrder.index.748855-18": "记录",
"workOrder.index.748855-19": "请输入工单描述",
"workOrder.index.748855-20": "请选择联系人",
"workOrder.index.748855-21": "设备",
"workOrder.index.748855-22": "请选择设备",
"workOrder.index.748855-23": "截止时间",
"workOrder.index.748855-24": "选择日期时间",
"workOrder.index.748855-25": "备注",
"workOrder.index.748855-26": "请输入备注",
"workOrder.index.748855-27": "描述",
"workOrder.index.748855-28": "暂无记录",
"workOrder.index.748855-29": "工单名称不能为空",
"workOrder.index.748855-30": "工单状态不能为空",
"workOrder.index.748855-31": "工单描述不能为空",
"workOrder.index.748855-32": "工单类型不能为空",
"workOrder.index.748855-33": "联系人不能为空",
"workOrder.index.748855-34": "工单编号不能为空",
"workOrder.index.748855-35": "设备名称不能为空",
"workOrder.index.748855-36": "截止时间不能为空",
"workOrder.index.748855-37": "选择派单人员",
"workOrder.index.748855-38": "是否确认接单?",
"workOrder.index.748855-39": "请输入备注信息",
"workOrder.index.748855-40": "提示",
"workOrder.index.748855-41": "确定",
"workOrder.index.748855-42": "取消",
"workOrder.index.748855-43": "取消输入",
"workOrder.index.748855-44": "操作成功",
"workOrder.index.748855-45": "添加工单",
"workOrder.index.748855-46": "查看工单",
"workOrder.index.748855-47": "是否确认删除工单管理编号为{0}的数据项?",
"workOrder.index.748855-48": "工单记录",
"workOrder.index.748855-49": "请选择需要派单的用户",
"workOrder.index.748855-50": "结单信息",
"workOrder.index.748855-51": "请输入结单信息",
"workOrder.index.748855-52": "图片",
"workOrder.index.748855-53": "详细信息",
"workOrder.index.748855-54": "描述",
"workOrder.index.748855-55": "请输入描述",
"workOrder.index.748855-56": "区域",
"workOrder.index.748855-57": "请选择未来的时间",
"workOrder.index.748855-58": "区域不能为空",
"workOrder.index.748855-59": "无"
}

519
vue/src/utils/common.js Normal file
View File

@@ -0,0 +1,519 @@
/**
* 深复制
* @param {any} obj 需要复制的对象
* @returns
*/
export const deepClone = (obj) => {
if (typeof obj == 'object') {
const objClone = Array.isArray(obj) ? [] : {};
for (const key in obj) {
if (Object.prototype.hasOwnProperty.call(obj, key)) {
if (obj[key] && typeof obj[key] == 'object') {
objClone[key] = deepClone(obj[key]);
} else {
objClone[key] = obj[key];
}
}
}
return objClone;
}
return obj;
};
/**
* @desc 时间戳转日期毫秒
* @param {Date} format 时间格式 Y:年M:月D:天 h:小时m:分钟s:秒 默认:'Y/M/D h:m'
*/
export function formatDate(arg, format) {
// console.log(typeof arg.toString());
let now;
if (!arg) {
return null;
} else {
now = new Date(arg);
}
format = format || 'Y.M.D h:m';
const year = now.getFullYear();
let month = now.getMonth() + 1;
month = month >= 10 ? month : '0' + month;
let date = now.getDate();
date = date >= 10 ? date : '0' + date;
let hour = now.getHours();
hour = hour >= 10 ? hour : '0' + hour;
let minute = now.getMinutes();
minute = minute >= 10 ? minute : '0' + minute;
let second = now.getSeconds();
second = second >= 10 ? second : '0' + second;
return format
.replace('Y', year)
.replace('M', month)
.replace('D', date)
.replace('h', hour)
.replace('m', minute)
.replace('s', second);
}
/**
* @desc 保留多少位小数
* @param {Number} value 数字
* @param {Number} number 保留多少位小数
*/
export function keepDecimal(value, number) {
let num = 1;
for (let i = 0; i < number; i++) {
num += '0';
}
num = parseInt(num);
return parseInt(value * num) / num;
}
/**
* 获取是什么时间
* @param {Number} value
* @param {String} type second minute hour day
* @param {Number} 精确度保留多少位小数
*/
export function calcTimeText(value, type, accuracy) {
value = parseInt(value);
if (parseInt(type) === 0) {
type = 'minute';
}
let num = 1;
for (let i = 0; i < accuracy; i++) {
num += '0';
}
num = parseInt(num);
if (type === 'second' && value >= 60) {
value = value / 60;
type = 'minute';
}
if (type === 'minute' && value >= 60) {
value = value / 60;
type = 'hour';
}
if (type === 'hour' && value >= 24) {
value = value / 24;
type = 'day';
}
return {
type: type,
value: parseInt(num * value) / num,
};
}
//将完整的base64转换为blob
export function base64toBlob(dataurl) {
var arr = dataurl.split(','),
mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(arr[1]),
n = bstr.length,
u8arr = new Uint8Array(n);
while (n--) {
u8arr[n] = bstr.charCodeAt(n);
}
return new Blob([u8arr], { type: mime });
}
/**
* 通过blob流下载文件
* @param {blob} blob
* @param {string} fileName
*/
export async function downFileByBlob(blob, fileName) {
const isLogin = await blobValidate(blob);
if (!isLogin) throw new Error({ code: 401 });
const blobUrl = window.URL.createObjectURL(blob);
const link = document.createElement('a');
link.download = fileName || '下载文件';
link.style.display = 'none';
link.href = blobUrl;
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
// 验证是否为blob格式
export async function blobValidate(data) {
try {
const text = await data.text();
JSON.parse(text);
return false;
} catch (error) {
return true;
}
}
/**
* 转义数据范围
* @param {string} datatype
* @param {string} specs
* @returns
*/
export function getDataRange(datatype, specsStr) {
const specs = JSON.parse(specsStr) || {};
specs.minNum = specs.min == undefined ? specs.maxNum : specs.min;
specs.maxNum = specs.max == undefined ? specs.maxNum : specs.max;
specs.trueName = specs.trueText == undefined ? specs.trueName : specs.trueText;
specs.falseName = specs.falseText == undefined ? specs.falseName : specs.falseText;
switch (datatype) {
case 'string':
return `最大${specs.maxLength || '--'}位字符`;
case 'integer':
case 'decimal':
return `最小值为:${specs.minNum == undefined ? '--' : specs.minNum},最大值为:${
specs.maxNum || '--'
},单位为:${specs.unit || '--'}`;
case 'bool':
return `${specs.trueName || '--'}为true${specs.falseName || '--'}为false`;
case 'enum': {
const enums = Array.isArray(specs.enums) ? specs.enums : JSON.parse(specs.enums || '[]');
// const enums = specs.enums || []
const enumStr = enums.map((str) => {
return `${str.label}${str.value || str.key}`;
});
return enumStr.join(',');
}
}
}
/**
* 物模型数据范围
* @param {string} datatype
* @param {string} specs
* @returns
*/
export function getModelRange(item) {
// specs.minNum = specs.min == undefined ? specs.maxNum : specs.min
// specs.maxNum = specs.max == undefined ? specs.maxNum : specs.max
switch (item.datatype) {
case 'string':
return `最大${item.length || '--'}位字符`;
case 'integer':
case 'decimal':
return `最小值为:${item.rangeMin || '--'},最大值为:${item.rangeMax || '--'},单位为:${item.unit || '--'}`;
case 'bool':
return `${item.trueName || '--'}为true${item.falseName || '--'}为false`;
case 'enum': {
const enums = Array.isArray(item.enums) ? item.enums : JSON.parse(item.enums || '[]');
// const enums = specs.enums || []
const enumStr = enums.map((str) => {
return `${str.label}${str.value || str.key}`;
});
return enumStr.join(',');
}
}
}
/**
* 节流
* @param {要执行的方法} fn
* @param {延迟的时间} delay
* @returns
*/
export function throttle(fn, delay) {
let timer = null;
return function () {
const context = this;
const args = arguments;
if (!timer) {
timer = setTimeout(() => {
fn.apply(context, args);
clearTimeout(timer);
timer = null;
}, delay);
}
};
}
/**
* 防抖
* @param {要执行的方法} fn
* @param {防抖的时间} delay
* @returns
*/
export function debounce(fn, delay) {
let timer = null;
return function () {
const context = this;
const args = arguments;
clearTimeout(timer);
timer = setTimeout(function () {
fn.apply(context, args);
}, delay);
};
}
/**
* 构造树型结构数据
* @param {*} data 数据源
* @param {*} id id字段 默认 'id'
* @param {*} parentId 父节点字段 默认 'parentId'
* @param {*} children 孩子节点字段 默认 'children'
*/
export function handleTree(data, id, parentId, children) {
const config = {
id: id || 'id',
parentId: parentId || 'parentId',
childrenList: children || 'children',
};
var childrenListMap = {};
var nodeIds = {};
var tree = [];
for (const d of data) {
const parentId = d[config.parentId];
if (childrenListMap[parentId] == null) {
childrenListMap[parentId] = [];
}
nodeIds[d[config.id]] = d;
childrenListMap[parentId].push(d);
}
for (const d of data) {
const parentId = d[config.parentId];
if (nodeIds[parentId] == null) {
tree.push(d);
}
}
for (const t of tree) {
adaptToChildrenList(t);
}
function adaptToChildrenList(o) {
if (childrenListMap[o[config.id]] !== null) {
o[config.childrenList] = childrenListMap[o[config.id]];
}
if (o[config.childrenList]) {
for (const c of o[config.childrenList]) {
adaptToChildrenList(c);
}
}
}
return tree;
}
// 根据id找到树节点
export function getNodeById(tree, id, idName) {
idName = idName || 'id';
const arr = Array.isArray(tree) ? deepClone(tree) : [tree];
let result = null;
while (arr.length) {
const item = arr.pop();
if (item && item[idName] === id) {
result = item;
break;
} else if (item && item.children && item.children.length) {
arr.push(...item.children);
}
}
return result;
}
// 利用递归,需要注意区分子节点是对象还是数组
export function findNodeFromTreeById(root, id, idName) {
idName = idName || 'id';
let result = null; // 报错最终结果
if (root) {
const type = Object.prototype.toString.call(root).slice(8, -1);
if (type === 'Object') {
if (root[idName] && root[idName] === id) {
result = root;
} else {
const node = root.children || null;
result = findNodeFromTreeById(node, id, idName);
}
} else if (type === 'Array') {
const needNode = root.find((x) => !!x === true && x[idName] === id);
if (needNode) {
result = needNode;
} else {
root.some((item) => {
if (item && item.children && item.children.length) {
result = findNodeFromTreeById(item.children, id, idName);
if (result) return true;
}
});
}
}
}
return result;
}
// 利用递归将tree转化成数组结构来操作
export function getPathById(tree, id, idName, path) {
idName = idName || 'id';
tree = Array.isArray(tree) ? tree : [tree];
if (!path) {
path = [];
}
for (let i = 0, len = tree.length; i < len; i++) {
const tempPath = [...path];
tempPath.push(tree[i].name);
if (tree[i][idName] === id) {
return tempPath;
}
if (tree[i].children) {
return getPathById(tree[i].children, id, idName, tempPath);
}
}
}
// 复制文本
export function copyText(copytext) {
const text = document.createElement('input'); // 创建节点
text.setAttribute('readonly', 'readonly');
text.value = copytext; // 赋值
document.body.appendChild(text); // 插入节点
text.setSelectionRange(0, text.value.length);
text.select(); // 选中节点
document.execCommand('copy'); // 执行浏览器复制方法
if (document.body.removeChild(text)) {
return { type: 'success', message: '复制成功' };
} else {
return { type: 'error', message: '复制失败' };
}
}
// 导出excel
export function exportToExcel(data, fileName) {
const csv = convertToCSV(data); // 将数据转换为CSV格式
const blob = new Blob([csv], { type: 'text/csv;charset=utf-8;' }); // 创建Blob对象
const url = URL.createObjectURL(blob); // 转换为URL
const link = document.createElement('a'); // 创建<a>元素
link.setAttribute('href', url);
link.setAttribute('download', `${fileName}.csv`);
link.style.visibility = 'hidden';
document.body.appendChild(link);
link.click(); // 触发下载
document.body.removeChild(link); // 清理
}
// 生成csv格式
export function convertToCSV(data) {
const rows = [];
for (let i = 0; i < data.length; i++) {
const row = [];
for (let j = 0; j < data[i].length; j++) {
row.push(`"${data[i][j]}"`); // 将每个单元格格式化为带引号的字符串
}
rows.push(row.join(',')); // 将每行数据连接为一个字符串
}
return rows.join('\n'); // 将所有行数据连接为一个字符串
}
/*
* 找到对应的经销商和审核的选择路径
* options传选项组ids传需要对应的id数组
* 有三种情况如options为[userId:0,children:[userId:1,children:[userId:2]]]
* 第一种情况options的路径跟ids的路径一样
* 如ids为[0,1,2]
* 第二种情况options的路径大于ids的路径
* 如ids为[1,2]
* 第三种情况options的路径小于ids的路径
* 如ids为[3,0,1,2]
* 这三种情况都需要返回[0,1,2],才能让选择组件识别对应的值
*/
export function getUserPath(options, ids) {
let res = [];
// 遍历传进来的选项,找到对应的节点
const isOpt = options.some((opt) => {
// 用于判断这个选项是不是对应ids的值
let hasId = false;
// 用于存需要返回的id
const resIds = [];
// 遍历传进来的id路径判断是不是在这个选项
ids.forEach((id) => {
// 判断这个id有没有对应这个选项有的话就让hasId为true返回值也要加上这个
if (id == opt.userId) {
resIds.push(parseInt(id));
hasId = true;
// 如果没有,判断之前是否已经对应了,之前对应的话,返回值也要加上现在这个,做成完整路径
} else if (hasId) resIds.push(parseInt(id));
});
// 判断这个选项是否有对应id是的话就返回之前存的返回值
if (hasId) {
res = resIds;
return true;
} else if (opt.children) {
// 没有对应id但还有children节点就继续往下走
const hasChild = getUserPath(opt.children, ids);
// 如果children有返回值说明该选项也在节点上返回值要在数组最前头加上该选项
if (hasChild) {
res = [opt.userId].concat(hasChild);
return true;
}
}
// 没有对应id也没有children节点就返回false开始遍历别的选项
return false;
});
// 判断该节点是否在路径上是的话就返回返回值不是的就返回false继续遍历别的选项组
if (isOpt) {
return res;
} else {
return false;
}
}
/**
* hex转10进制
* @param hex
*/
export function hex2int(hexStr) {
let twoStr = parseInt(hexStr, 16).toString(2); // 将十六转十进制再转2进制
let bitNum = hexStr.length * 4; // 1个字节 = 8bit 0xff 一个 "f"就是4位
if (twoStr.length < bitNum) {
while (twoStr.length < bitNum) {
twoStr = '0' + twoStr;
}
}
if (twoStr.substring(0, 1) == '0') {
// 正数
const two = parseInt(twoStr, 2); // 二进制转十进制
return two;
} else {
// 负数
let twoStr_unsign = '';
let two = parseInt(twoStr, 2) - 1; // 补码:(负数)反码+1符号位不变相对十进制来说也是 +1但这里是负数+1就是绝对值数据-1
twoStr = two.toString(2);
twoStr_unsign = twoStr.substring(1, bitNum); // 舍弃首位(符号位)
// 去除首字符将0转为1将1转为0 反码
twoStr_unsign = twoStr_unsign.replace(/0/g, 'z');
twoStr_unsign = twoStr_unsign.replace(/1/g, '0');
twoStr_unsign = twoStr_unsign.replace(/z/g, '1');
two = -parseInt(twoStr_unsign, 2);
return two;
}
}
/**
* 10进制转16进制
* @param hex
*/
export function int2hex(hexStr) {
let hexInt = typeof hexStr == 'string' ? parseInt(hexStr, 10) : hexStr;
let hex = '';
const LENGTH_04 = 4;
const LENGTH_15 = 15;
if (hexInt >= 0) {
hex = hexInt.toString(16).toLocaleLowerCase();
} else {
let twoStr = (-hexInt - 1).toString(2);
let sb = '000000000000000';
twoStr = sb.slice(0, LENGTH_15 - twoStr.length) + twoStr;
// 将0转为1将1转为0 反码
twoStr = twoStr.replace(/0/g, 'z');
twoStr = twoStr.replace(/1/g, '0');
twoStr = twoStr.replace(/z/g, '1');
hex = parseInt('1' + twoStr, 2)
.toString(16)
.toLocaleLowerCase();
}
//长度不等于4 补全
if (hex.length != LENGTH_04) {
let sb = '0000';
hex = sb.slice(0, LENGTH_04 - hex.length) + hex;
}
return hex.toUpperCase();
}

View File

@@ -0,0 +1,548 @@
<template>
<div class="system-app-lang">
<el-card v-show="showSearch" class="search-card">
<el-form
@submit.native.prevent
:model="queryParams"
ref="queryForm"
:inline="true"
label-width="46px"
class="search-form"
>
<el-form-item prop="langName">
<el-input
v-model="queryParams.langName"
:placeholder="$t('app.lang.755172-14')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item prop="country">
<el-input
v-model="queryParams.country"
:placeholder="$t('app.lang.755172-12')"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<div style="float: right">
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{ $t('search') }}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{ $t('reset') }}</el-button>
</div>
</el-form>
</el-card>
<el-card>
<el-row :gutter="10" style="margin-bottom: 16px">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="small"
@click="handleAdd"
v-hasPermi="['app:language:add']"
>
{{ $t('add') }}
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
plain
icon="el-icon-delete"
size="small"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['app:language:remove']"
>
{{ $t('del') }}
</el-button>
</el-col>
<el-col :span="1.5">
<el-button
v-hasPermi="['app:language:export']"
plain
size="small"
:loading="exportLoading"
@click="handleExport"
>
{{ $t('app.start.891644-43') }}
</el-button>
</el-col>
<el-col :span="1.5">
<el-upload v-hasRole="['admin']" :show-file-list="false" ref="upload" action="" :http-request="handleImport">
<el-button slot="trigger" :loading="importLoading" size="small" plain>
{{ $t('app.start.891644-44') }}
</el-button>
</el-upload>
</el-col>
<el-col :span="1.5">
<el-dropdown v-hasRole="['admin']" @command="handleExportBackendMenu($event, true)">
<el-button plain size="small">
{{ $t('app.start.891644-47') }}
<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item
v-for="dict in dict.type.international_configuration_template"
:key="dict.value"
:command="dict.value"
>
{{ dict.label }}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</el-col>
<el-col :span="1.5">
<el-dropdown v-hasRole="['admin']" @command="handleExportBackendMenu($event, false)">
<el-button plain size="small">
{{ $t('app.start.891644-45') }}
<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item
v-for="dict in dict.type.international_configuration_template"
:key="dict.value"
:command="dict.value"
>
{{ dict.label }}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</el-col>
<el-col :span="1.5">
<el-dropdown v-hasRole="['admin']" @command="handleImportTranslate">
<el-upload
v-hasRole="['admin']"
:show-file-list="false"
ref="upload"
action=""
:http-request="handleImportBackendMenu"
:disabled="true"
>
<el-button slot="trigger" size="small" plain>
{{ $t('app.start.891644-46') }}
<i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
</el-upload>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item
v-for="dict in dict.type.international_configuration_template"
:key="dict.value"
:command="dict.value"
>
{{ dict.label }}
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="languageList" :border="false" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column :label="$t('app.lang.755172-4')" align="center" prop="id" min-width="80" />
<el-table-column :label="$t('app.lang.755172-8')" align="left" prop="langName" min-width="180" />
<el-table-column :label="$t('app.lang.755172-5')" align="center" prop="language" min-width="100" />
<el-table-column :label="$t('app.lang.755172-6')" align="center" prop="country" min-width="120" />
<el-table-column :label="$t('app.lang.755172-7')" align="center" prop="timeZone" min-width="100" />
<el-table-column fixed="right" :label="$t('opation')" align="center" width="130">
<template slot-scope="scope">
<el-button
size="small"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['app:language:edit']"
>
{{ $t('update') }}
</el-button>
<el-button
size="small"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['app:language:remove']"
>
{{ $t('del') }}
</el-button>
</template>
</el-table-column>
</el-table>
<pagination
style="margin-bottom: 20px"
v-show="total > 0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</el-card>
<!-- 添加或修改app语言对话框 -->
<el-dialog :title="title" :visible.sync="open" width="560px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="75px">
<el-form-item :label="$t('app.lang.755172-8')" prop="langName">
<el-input v-model="form.langName" :placeholder="$t('app.lang.755172-14')" style="width: 390px" />
</el-form-item>
<el-form-item :label="$t('app.lang.755172-5')" prop="language">
<el-input v-model="form.language" :placeholder="$t('app.lang.755172-11')" style="width: 390px" />
</el-form-item>
<el-form-item :label="$t('app.lang.755172-6')" prop="country">
<el-input v-model="form.country" :placeholder="$t('app.lang.755172-12')" style="width: 390px" />
</el-form-item>
<el-form-item :label="$t('app.lang.755172-7')" prop="timeZone">
<el-input v-model="form.timeZone" :placeholder="$t('app.lang.755172-13')" style="width: 390px" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">
{{ $t('confirm') }}
</el-button>
<el-button @click="cancel">
{{ $t('cancel') }}
</el-button>
</div>
</el-dialog>
<el-dialog :title="$t('app.lang.755172-22')" :visible.sync="productModelVisible" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item :label="$t('app.lang.755172-23')" prop="productId">
<el-select v-model="productId" :placeholder="$t('pleaseSelect')">
<el-option v-for="item in prodcutModels" :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitProdcutModel">
{{ $t('confirm') }}
</el-button>
<el-button @click="closeProductModelDialog">
{{ $t('cancel') }}
</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import {
listLanguage,
getLanguage,
delLanguage,
addLanguage,
updateLanguage,
exportTranslate,
importTranslate,
} from '@/api/system/language';
import * as langTransformer from './script/langTransformer';
import * as xlsxHandler from './script/xlsx';
import * as jszip from './script/jszip';
import { downFileByBlob } from '@/utils/common.js';
import { listShortProduct } from '@/api/iot/product';
export default {
name: 'AppLang',
dicts: ['international_configuration_template'],
data() {
return {
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// app语言表格数据
languageList: [],
// 弹出层标题
title: '',
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
langName: '',
country: '',
pageNum: 1,
pageSize: 10,
},
// 表单参数
form: {},
// 表单校验
rules: {
langName: [
{
required: true,
message: this.$t('app.lang.755172-14'),
trigger: 'blur',
},
],
language: [
{
required: true,
message: this.$t('app.lang.755172-11'),
trigger: 'blur',
},
],
country: [
{
required: true,
message: this.$t('app.lang.755172-12'),
trigger: 'blur',
},
],
},
// 导出语言包loading
exportLoading: false,
// 导入excel生成语言包loading
importLoading: false,
currentLanguage: '',
currentTranslateModule: '',
productModelVisible: false,
prodcutModels: [],
productId: '',
};
},
created() {
this.getList();
this.getProductModels();
},
methods: {
/** 查询app语言列表 */
getList() {
this.loading = true;
listLanguage(this.queryParams).then((response) => {
this.languageList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
id: null,
language: null,
country: null,
timeZone: null,
createBy: null,
createTime: null,
langName: null,
};
this.resetForm('form');
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm('queryForm');
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map((item) => item.id);
this.single = selection.length !== 1;
this.multiple = !selection.length;
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = this.$t('app.lang.755172-17');
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids;
getLanguage(id).then((response) => {
this.form = response.data;
this.open = true;
this.title = this.$t('app.lang.755172-18');
});
},
/** 提交按钮 */
submitForm() {
this.$refs['form'].validate((valid) => {
if (valid) {
if (this.form.id != null) {
updateLanguage(this.form).then((response) => {
this.$modal.msgSuccess(this.$t('updateSuccess'));
this.open = false;
this.getList();
});
} else {
addLanguage(this.form).then((response) => {
this.$modal.msgSuccess(this.$t('addSuccess'));
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal
.confirm(this.$t('app.lang.755172-21', [ids]))
.then(function () {
return delLanguage(ids);
})
.then(() => {
this.getList();
this.$modal.msgSuccess(this.$t('delSuccess'));
})
.catch(() => {});
},
// 导出语言包
handleExport() {
if (this.languageList.length === 0) {
return;
}
try {
this.exportLoading = true;
// 中英文映射
const langs = this.languageList.reduce((obj, item) => {
obj[item.language] = item.country;
return obj;
}, {});
// 获取json数据
const jsonMap = langTransformer.getLangJson();
// 转换为excel导出需要的数据格式
const excelData = langTransformer.transoformToExcel(jsonMap, langs);
// 导出为excel
xlsxHandler.exportExcel(excelData, 'lang.xlsx');
} finally {
this.exportLoading = false;
}
},
// 导入语言包excel直接导出转换后的压缩包
async handleImport(fileInfo) {
try {
this.importLoading = true;
// 中英文映射
const langs = this.languageList.reduce((obj, item) => {
obj[item.country] = item.language;
return obj;
}, {});
// 读取excel文件解析为json数据
const data = await xlsxHandler.parseJson(fileInfo.file);
// 将json文件转换为以模块维度的数据用于进一步处理成压缩包文件数据
const jsonData = jszip.parseJsonZipData(data, langs);
// 生成zip的文件列表
const files = jszip.generateJsonZipFiles(jsonData);
// 下载为压缩包
jszip.downloadFiles2Zip({
zipName: 'lang',
files: files,
});
} finally {
this.importLoading = false;
}
},
// 导出菜单名称翻译列表
async handleExportBackendMenu(value, isSource = false) {
this.currentTranslateModule = value;
const exportFn = () => {
const sourceData = this.dict.type.international_configuration_template;
const isThingsModel = this.currentTranslateModule === 'things_model';
exportTranslate(value, isSource, isThingsModel ? this.productId : null).then((response) => {
let name = sourceData.find((item) => item.value === value).name;
if (isThingsModel) {
name += '_' + this.prodcutModels.find((item) => item.id === this.productId).name;
}
if (response.type === 'application/json') {
this.$modal.msgError(`导出异常`);
return;
}
const fileName = isSource ? `${name}原表数据.xlsx` : `${name}翻译数据.xlsx`;
downFileByBlob(response, fileName);
isThingsModel && this.closeProductModelDialog();
});
};
if (value === 'things_model') {
this.productModelVisible = true;
this.callback = () => {
exportFn();
};
} else {
exportFn();
}
},
async handleImportBackendMenu(fileInfo) {
let formData = new FormData();
formData.append('file', fileInfo.file);
const isThingsModel = this.currentTranslateModule === 'things_model';
const productId = isThingsModel && this.productId ? this.productId : '';
importTranslate(formData, this.currentTranslateModule, productId).then((res) => {
if (res.code === 200) {
this.$modal.msgSuccess('导入成功');
} else {
this.$modal.msgError(res.msg);
}
isThingsModel && this.closeProductModelDialog();
});
},
handleImportTranslate(value) {
this.currentTranslateModule = value;
if (value === 'things_model') {
this.productModelVisible = true;
this.callback = () => {
this.$refs.upload.$el.querySelector('input').click();
};
} else {
this.$refs.upload.$el.querySelector('input').click();
}
},
async getProductModels() {
const params = {
pageSize: 999,
showSenior: true,
};
const res = await listShortProduct(params);
if (res.code === 200) {
this.prodcutModels = res.data || [];
}
},
closeProductModelDialog() {
this.productModelVisible = false;
this.productId = '';
},
submitProdcutModel() {
if (!this.productId) {
this.$message.warning('请选择产品后再确认');
return;
}
this.callback && this.callback(this.productId);
},
},
};
</script>
<style lang="scss" scoped>
.system-app-lang {
padding: 20px;
.search-card {
margin-bottom: 15px;
padding: 3px 0;
}
.search-form {
margin-bottom: -22.5px;
}
}
</style>

View File

@@ -0,0 +1,95 @@
import JsZip from 'jszip';
import { saveAs } from 'file-saver';
/**
* 根据提供的JSON 数据生成 JSON 格式的 zip 文件列表。
* @param {Object} jsonData - 包含模块和其对应多语言数据的对象。
* @returns {Array} files - 包含每个文件信息的数组,每个文件信息包含文件夹名、文件名、文件类型和文件数据。
*/
export const generateJsonZipFiles = (jsonData) => {
const files = [];
// 遍历 jsonData 中的每个模块,为每个模块和语言组合生成一个文件对象
for (const [module, objects] of jsonData.entries()) {
for (const [lang, jsonObject] of Object.entries(objects)) {
// 将生成的文件信息添加到 files 数组中
files.push({
folderName: lang, //文件夹名
fileName: module, // 文件名
fileType: 'json', // 文件类型
fileData: convertToJsonBlob(jsonObject), // 文件数据
});
}
}
return files;
};
/**
* 解析JSON Zip数据
* @param jsonMap 包含模块名对应数据的JSON映射对象
* @param langFileNameEnum 语言文件名枚举对象,将实际语言文件名映射到枚举值
* @returns 返回一个Map对象其中键为模块名值为一个对象该对象的键为语言文件名根据langFileNameEnum转换值为对应语言文件的内容键为文件中的键值为文件中的值
*/
export const parseJsonZipData = (jsonMap, langFileNameEnum) => {
const dataMap = new Map();
for (const [module, rows] of jsonMap.entries()) {
const fileObjects = {};
const cellIndexMap = {};
rows.forEach((row, rowNumber) => {
if (rowNumber === 0) {
row.forEach((cell, colNumber) => {
if (colNumber !== 0) {
fileObjects[langFileNameEnum[cell]] = {};
cellIndexMap[colNumber] = langFileNameEnum[cell];
}
});
} else {
Object.keys(cellIndexMap)
.map((item) => Number(item))
.map((colNumber) => {
const key = row[0];
const value = row[colNumber];
const lang = cellIndexMap[colNumber];
fileObjects[lang][key] = value;
});
}
});
dataMap.set(module, fileObjects);
}
return dataMap;
};
export const convertToJsonBlob = (jsonObject) => {
const jsonString = JSON.stringify(jsonObject, null, 2);
return new Blob([jsonString], { type: 'application/json' });
};
/**
* 将多个文件下载并打包成一个 zip 文件。
* @param {Object} params 参数对象,包含待下载文件信息和 zip 文件名。
* @param {Array} params.files 待下载的文件数组。
* @param {string} params.zipName 打包后的 zip 文件名。
*/
export function downloadFiles2Zip(params) {
const zip = new JsZip();
// 待每个文件都写入完之后再生成 zip 文件
params.files.map((file) => handleEachFile(file, zip));
zip.generateAsync({ type: 'blob' }).then((blob) => {
saveAs(blob, `${params.zipName}.zip`);
});
}
/**
* 处理每个文件将其添加到zip文件中。
* @param {Object} param0 包含文件相关信息的对象
* @param {string} param0.folderName 文件所属的文件夹名称(可选)
* @param {string} param0.fileName 文件名
* @param {string} param0.fileType 文件类型
* @param {Blob|Uint8Array} param0.fileData 文件数据
* @param {JSZip} zip JSZip对象用于构建zip文件
*/
export const handleEachFile = ({ folderName, fileName, fileType, fileData }, zip) => {
if (folderName) {
zip.folder(folderName)?.file(`${fileName}.${fileType}`, fileData);
} else {
zip.file(`${filename}.${fileType}`, blob);
}
};

View File

@@ -0,0 +1,41 @@
// 获取语言包数据, new Map({fileName,{key:{ [lang]:value}}})
export const getLangJson = () => {
const all = require.context('@/lang', true, /^((?!index).)*\.json$/);
const modules = new Map();
all.keys().forEach((key) => {
const lang = key.match(/(?<=\/)[^\/]+(?=\/|$)/)[0];
const fileName = key.match(/(?<=\.\/[^\/]+\/)[^\.]+(?=\.\w+$)/)[0];
const obj = modules.get(fileName) || {};
Object.entries(all(key)).forEach(([key, value]) => {
const item = obj[key] || {};
item[lang] = value;
obj[key] = item;
});
modules.set(fileName, obj);
});
return modules;
};
// 转换为excel数据: [sheeNames:表,sheeData:单表数据]
export const transoformToExcel = (array2, langs) => {
const sheetNames = [];
const sheetData = [];
for (const [sheetName, arr] of array2.entries()) {
sheetNames.push(sheetName);
sheetData.push(transformToExcelSheet(arr, langs));
}
return [sheetNames, sheetData];
};
// 转换为excel单表数据[{'键值':'key','中文':'中文','英文':'English'}]
export const transformToExcelSheet = (jsonData, langs) => {
let data = [];
for (const [key, obj] of Object.entries(jsonData)) {
let item = { 键值: key };
for (const [lang, label] of Object.entries(langs)) {
item[label] = obj[lang] || '';
}
data.push(item);
}
return data;
};

View File

@@ -0,0 +1,98 @@
import * as XLSX from 'xlsx';
import { saveAs } from 'file-saver';
/**
* 导出excel
*/
export const exportExcel = ([sheetNames, sheetsData], filename = '多语言包.xlsx') => {
// 创建workbook对象
let wb = XLSX.utils.book_new();
sheetNames.forEach((sheetName, index) => {
const sheeData = sheetsData[index];
// 把json转为worksheet对象
let ws = XLSX.utils.json_to_sheet(sheeData);
// 计算每列最大字符数作为列宽
const colWidths = getColumnWidths(sheeData);
// 设置列宽
setColumnWidths(ws, colWidths);
// 添加worksheet 到 workbook
XLSX.utils.book_append_sheet(wb, ws, sheetName);
});
// 写出 arraybuffer 数据
let wb_out = XLSX.write(wb, { bookType: 'xlsx', type: 'array' });
// 构建Blob对象
let _blob = new Blob([wb_out], { type: 'application/octet-stream' });
//下载
saveAs(_blob, filename);
};
/**
* 获取表格列的宽度数组。
*/
export const getColumnWidths = (data) => {
const headers = Object.keys(data[0]);
// 计算列宽
const colWidths = [];
for (let i = 0; i < headers.length; i++) {
let maxWidth = getCellWidth(headers[i]);
let key = headers[i];
let cellWidth = 0;
for (let j = 0; j < data.length; j++) {
cellWidth = getCellWidth(data[j][key]);
if (data[j][key] && cellWidth > maxWidth) {
maxWidth = cellWidth;
}
}
colWidths.push(maxWidth);
}
return colWidths;
};
/**
* 计算单元格宽度
*/
const getCellWidth = (value) => {
if (/.*[\u4e00-\u9fa5]+.*$/.test(value)) {
return parseFloat(value.toString().length * 2.1);
} else {
return parseFloat(value.toString().length * 1.1);
}
};
/**
* 设置工作表的列宽
*/
export const setColumnWidths = (ws, columnWidths) => {
ws['!cols'] = columnWidths.map((_, i) => ({
wch: columnWidths[i] || 30,
}));
};
/**
* 解析文件为 JSON
* @param file 文件
* @returns 解析后的 JSON 数据
*/
export const parseJson = async (file) => {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.onload = function (e) {
try {
const data = new Uint8Array(e.target.result);
const workbook = XLSX.read(data, { type: 'array' });
const jsonMap = new Map();
for (let index = 0; index < workbook.SheetNames.length; index++) {
const sheetName = workbook.SheetNames[index];
const worksheet = workbook.Sheets[sheetName];
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1 });
jsonMap.set(sheetName, jsonData);
}
resolve(jsonMap);
} catch (err) {
reject(err);
}
};
reader.onerror = () => {
reject(new Error('文件读取失败'));
};
reader.readAsArrayBuffer(file);
});
};