Przeglądaj źródła

wip: 添加多语言

vera_min 1 miesiąc temu
rodzic
commit
1915d4d49b

+ 32 - 32
src/i18n/lang/en.ts

@@ -193,7 +193,7 @@ export default {
 		iotmanager: {
 			title: "IoT Management",
 			dashboard: "IoT Overview",
-			deviceManager: "Device Management",
+			deviceManager: "Device",
 			productClass: "Product Category",
 			product: "Product",
 			productDetail: "Product Details",
@@ -201,13 +201,13 @@ export default {
 			device1: "Device",
 			deviceDetail: "Device Details",
 			deviceDetail1: "Device Details",
-			configuration: "Configuration Management",
+			configuration: "Configuration",
 			configurationList: "Configuration List",
 			screen: "Dashboard Design",
 			ruleEngine: "Rule Engine",
 			ruleInstance: "Rule Orchestration",
 			gridComponent: "Grid Component",
-			serverManager: "Server Management",
+			serverManager: "Server",
 			serverDetail: "Service Details",
 			editServer: "Edit Service",
 			newServer: "Add Service",
@@ -217,11 +217,11 @@ export default {
 			newChannel: "Add Channel",
 			channelDetail: "Channel Details",
 			dataCollection: "Data Collection",
-			templateManagement: "Template Management",
+			templateManagement: "Template",
 			dataAnalysis: "Data Analysis",
 			indicatorTrend: "Indicator Trend",
 			indicatorAggregation: "Indicator Aggregation",
-			certificateManagement: "Certificate Management",
+			certificateManagement: "Certificate",
 			certificateList: "Certificate List",
 			alarmCenter: "Alarm Center",
 			alarmStatistics: "Alarm Statistics",
@@ -235,23 +235,23 @@ export default {
 			sceneDetail: "Scene Details",
 			sceneRecord: "Scene Record",
 			sceneRecordDetail: "Record Details",
-			operationManagement: "Operation Management",
+			operationManagement: "Operation",
 			remoteConfiguration: "Remote Configuration",
 			otaUpgrade: "OTA Upgrade",
 			dataAnalysis1: "Data Analysis",
-			moduleManagement: "Module Management",
-			upgradePackageManagement: "Upgrade Package Management",
+			moduleManagement: "Module",
+			upgradePackageManagement: "Upgrade Package",
 			upgradePackageDetail: "Details",
 			notificationService: "Notification Service",
 			notificationLog: "Notification Log",
 			notificationConfiguration: "Notification Configuration",
 			notificationConfigurationManagement: "Notification Configuration Management",
-			cascadeManagement: "Cascade Management",
+			cascadeManagement: "Cascade",
 		},
 		iotCard: {
 			title: "IoT Card",
 			homePage: "Home Page",
-			iotCardManagement: "IoT Card Management",
+			iotCardManagement: "IoT Card",
 			iotCardDetail: "IoT Card Details",
 			platformAccess: "Platform Access",
 		},
@@ -264,8 +264,8 @@ export default {
 			deviceTree: "Device Tree",
 		},
 		assetManagement: {
-			title: "Asset Management",
-			deviceArchiveManagement: "Device Archive Management",
+			title: "Asset",
+			deviceArchiveManagement: "Device Profile",
 			deviceArchiveProperty: "Device Archive Property",
 			assetRelationship: "Asset Relationship",
 			deviceMap: "Device Map",
@@ -297,12 +297,12 @@ export default {
 			streamPush: "Stream Push",
 		},
 		systemManagement: {
-			title: "System Management",
-			regionManagement: "Region Management",
-			organizationManagement: "Organization Management",
-			positionManagement: "Position Management",
-			roleManagement: "Role Management",
-			userManagement: "User Management",
+			title: "System",
+			regionManagement: "Region",
+			organizationManagement: "Organization",
+			positionManagement: "Position",
+			roleManagement: "Role",
+			userManagement: "User",
 			systemMonitoring: "System Monitoring",
 			apiDocument: "API Document",
 			serviceMonitoring: "Service Monitoring",
@@ -315,19 +315,19 @@ export default {
 			systemLog: "System Log",
 			blacklist: "Blacklist",
 			configuration: "System Configuration",
-			configurationManagement: "Configuration Management",
-			pluginManagement: "Plugin Management",
-			applicationManagement: "Application Management",
-			menuManagement: "Menu Management",
-			parameterManagement: "Parameter Management",
-			dictionaryManagement: "Dictionary Management",
-			dictionaryDataManagement: "Dictionary Data Management",
+			configurationManagement: "Configuration",
+			pluginManagement: "Plugin",
+			applicationManagement: "Application",
+			menuManagement: "Menu",
+			parameterManagement: "Parameter",
+			dictionaryManagement: "Dictionary",
+			dictionaryDataManagement: "Dictionary Data",
 			scheduledTask: "Scheduled Task",
-			apiManagement: "API Management",
-			cityManagement: "City Management",
+			apiManagement: "API",
+			cityManagement: "City",
 			remoteUpgrade: "Remote Upgrade",
 			authorizationConfiguration: "Authorization Configuration",
-			tenantManagement: "Tenant Management",
+			tenantManagement: "Tenant",
 			// experimentalFunction: "Experimental Function",
 			// functionDevelopment: "Function Development",
 			// pageDevelopment: "Page Development",
@@ -352,13 +352,13 @@ export default {
 			apiDevelopment: "API Development",
 			apiDefinition: "API Definition",
 
-			dataSourceManagement: "Data Source Management",
-			clientManagement: "Client Management",
-			pluginManagement: "Plugin Management",
+			dataSourceManagement: "Data Source",
+			clientManagement: "Client",
+			pluginManagement: "Plugin",
 
 		},
 		policyManagement: {
-			title: "Policy Management",
+			title: "Policy",
 			policyControl: "Policy Control",
 		}
 	}

+ 42 - 1
src/i18n/pages/iotmanagerI18n/en.ts

@@ -338,5 +338,46 @@ export default {
 			processed: "Processed",
 			ignored: "Ignored"
 		}
-	}
+	},
+	// 级联管理
+	cascade: {
+		dialogI18n: {
+			deviceList: " - Device List",
+		},
+		tableI18nColumn: {
+			subPlatform: "Sub Platform",
+			address: "Address",
+			device: "Device",
+			status: "Status",
+			lastUpdateTime: "Last Update Time",
+			operation: "Operation",
+			identifier: "Identifier",
+			deviceName: "Device Name",
+			deviceType: "Device Type",
+			belongProduct: "Product",
+			lastOnlineTime: "Last Online Time"
+		},
+		tableI18nStatus: {
+			online: "Online",
+			offline: "Offline",
+			disabled: "Disabled"
+		},
+		tableI18nConfirm: {
+		},
+		tableI18nAction: {
+			viewDevice: "View Device",
+			detail: "Detail",
+			sync: "Sync"
+		},
+		formI18nLabel: {
+			subPlatformTotal: "Sub Platform",
+			deviceTotal: "Total Devices"
+		},
+		formI18nPlaceholder: {
+		},
+		formI18nOption: {
+		},
+		formI18nButton: {
+		}
+	},
 };

+ 43 - 1
src/i18n/pages/iotmanagerI18n/zh-cn.ts

@@ -338,5 +338,47 @@ export default {
 			processed: "已处理",
 			ignored: "已忽略"
 		}
-	}
+	},
+	// 级联管理
+	cascade: {
+		dialogI18n: {
+			deviceList: "-设备列表",
+		},
+		tableI18nColumn: {
+			subPlatform: "子平台",
+			address: "地址",
+			device: "设备",
+			status: "状态",
+			lastUpdateTime: "最后更新时间",
+			operation: "操作",
+			identifier: "标识",
+			deviceName: "设备名称",
+			deviceType: "设备类型",
+			belongProduct: "所属产品",
+			lastOnlineTime: "最后上线时间"
+			
+		},
+		tableI18nStatus: {
+			online: "在线",
+			offline: "离线",
+			disabled: "未启用"
+		},
+		tableI18nConfirm: {
+		},
+		tableI18nAction: {
+			viewDevice: "查看设备",
+			detail: "详情",
+			sync: "同步"
+		},
+		formI18nLabel: {
+			subPlatformTotal: "子平台",
+			deviceTotal: "设备总数"
+		},
+		formI18nPlaceholder: {
+		},
+		formI18nOption: {
+		},
+		formI18nButton: {
+		}
+	},
 };

+ 42 - 1
src/i18n/pages/iotmanagerI18n/zh-tw.ts

@@ -338,5 +338,46 @@ export default {
 			processed: "已處理",
 			ignored: "已忽略"
 		}
-	}
+	},
+	// 级联管理
+	cascade: {
+		dialogI18n: {
+			deviceList: "-設備列表",
+		},
+		tableI18nColumn: {
+			subPlatform: "子平台",
+			address: "地址",
+			device: "設備",
+			status: "狀態",
+			lastUpdateTime: "最後更新時間",
+			operation: "操作",
+			identifier: "標識",
+			deviceName: "設備名稱",
+			deviceType: "設備類型",
+			belongProduct: "所屬產品",
+			lastOnlineTime: "最後上線時間"
+		},
+		tableI18nStatus: {
+			online: "在線",
+			offline: "離線",
+			disabled: "未啟用"
+		},
+		tableI18nConfirm: {
+		},
+		tableI18nAction: {
+			viewDevice: "查看設備",
+			detail: "詳情",
+			sync: "同步"
+		},
+		formI18nLabel: {
+			subPlatformTotal: "子平台",
+			deviceTotal: "設備總數"
+		},
+		formI18nPlaceholder: {
+		},
+		formI18nOption: {
+		},
+		formI18nButton: {
+		}
+	},
 };

+ 1 - 0
src/i18n/pages/tableI18n/en.ts

@@ -10,6 +10,7 @@
 export default {
 	tableI18nColumn: {
 		id: "ID",
+		index: "Index",
 		operation: "Operation",
 		des: "Description",
 	},

+ 1 - 0
src/i18n/pages/tableI18n/zh-cn.ts

@@ -10,6 +10,7 @@
 export default {
 	tableI18nColumn: {
 		id: "ID",
+		index: "序号",
 		operation: "操作",
 		des: "描述",
 	},

+ 1 - 0
src/i18n/pages/tableI18n/zh-tw.ts

@@ -10,6 +10,7 @@
 export default {
 	tableI18nColumn: {
 		id: "ID",
+		index: "序號",
 		operation: "操作",
 		des: "描述",
 	},

+ 23 - 12
src/views/iot/cascade/deviceList.vue

@@ -1,24 +1,35 @@
 <template>
-	<el-dialog v-model="visible" :title="name + '-设备列表'" width="1000px" destroy-on-close>
+	<!-- name + '-设备列表' -->
+	<el-dialog v-model="visible" :title="name + $t('message.cascade.dialogI18n.deviceList')" width="1000px" destroy-on-close>
 		<div class="device-list">
 			<el-table :data="tableData" style="width: 100%" v-loading="loading">
-				<el-table-column label="标识" prop="key" min-width="150" show-overflow-tooltip>
+				<!-- 标识 -->
+				<el-table-column :label="$t('message.cascade.tableI18nColumn.identifier')" prop="key" min-width="150" show-overflow-tooltip>
 					<template #default="{ row }">
 						<copy :text="row.key"></copy>
 					</template>
 				</el-table-column>
-				<el-table-column label="设备名称" prop="name" min-width="160" show-overflow-tooltip />
-				<el-table-column label="设备类型" prop="product.deviceType" min-width="100" align="center" show-overflow-tooltip />
-				<el-table-column label="所属产品" prop="productName" min-width="120" align="center" show-overflow-tooltip />
-				<el-table-column prop="status" label="状态" min-width="80" align="center">
+				<!-- 设备名称 -->
+				<el-table-column :label="$t('message.cascade.tableI18nColumn.deviceName')" prop="name" min-width="160" show-overflow-tooltip />
+				<!-- 设备类型 -->
+				<el-table-column :label="$t('message.cascade.tableI18nColumn.deviceType')" prop="product.deviceType" min-width="100" align="center" show-overflow-tooltip />
+				<!-- 所属产品 -->
+				<el-table-column :label="$t('message.cascade.tableI18nColumn.belongProduct')" prop="productName" min-width="120" align="center" show-overflow-tooltip />
+				<!-- 状态 -->
+				<el-table-column prop="status" :label="$t('message.cascade.tableI18nColumn.status')" min-width="80" align="center">
 					<template #default="scope">
-						<el-tag type="danger" size="small" v-if="scope.row.status == 1">离线</el-tag>
-						<el-tag type="success" size="small" v-if="scope.row.status == 2">在线</el-tag>
-						<el-tag type="info" size="small" v-if="scope.row.status == 0">未启用</el-tag>
+						<!-- 离线 -->
+						<el-tag type="danger" size="small" v-if="scope.row.status == 1">{{$t('message.cascade.tableI18nStatus.offline')}}</el-tag>
+						<!-- 在线 -->
+						<el-tag type="success" size="small" v-if="scope.row.status == 2">{{$t('message.cascade.tableI18nStatus.online')}}</el-tag>
+						<!-- 未启用 -->
+						<el-tag type="info" size="small" v-if="scope.row.status == 0">{{$t('message.cascade.tableI18nStatus.disabled')}}</el-tag>
 					</template>
 				</el-table-column>
-				<el-table-column prop="lastOnlineTime" label="最后上线时间" align="center" width="160"></el-table-column>
-				<el-table-column label="操作" width="100" align="center">
+				<!-- 最后上线时间 -->
+				<el-table-column prop="lastOnlineTime" :label="$t('message.cascade.tableI18nColumn.lastOnlineTime')" align="center" width="160"></el-table-column>
+				<!-- 操作 -->
+				<el-table-column :label="$t('message.tableI18nColumn.operation')" width="100" align="center">
 					<template #default="scope">
 						<router-link
 							:to="'/iotmanager/device/instance/' + scope.row.key"
@@ -26,7 +37,7 @@
 							style="font-size: 12px; color: #409eff"
 							v-auth="'detail'"
 						>
-							<span>详情</span>
+							<span>{{ $t('message.tableI18nAction.detail') }}</span>
 						</router-link>
 					</template>
 				</el-table-column>

+ 26 - 14
src/views/iot/cascade/index.vue

@@ -2,41 +2,47 @@
   <div class="page-full">
     <div class="search flex-row mb-4 gap-4">
       <el-card shadow="never" class="home-card-top-part flex1">
+        <!-- 子平台 -->
         <div class="top">
-          <div class="label">子平台</div>
+          <div class="label">{{ $t("message.cascade.formI18nLabel.subPlatformTotal") }}</div>
           <span class="font30">{{ count.PlatformTotal }}</span>
         </div>
         <div class="divider"></div>
         <div class="card-bottom">
+          <!-- 在线 -->
           <div class="flex" style="gap: 10px">
             <img src="/@/assets/ok.svg" alt="" class="icon" />
-            <span class="info" :style="{ color: '#3cd357' }">在线</span>
+            <span class="info" :style="{ color: '#3cd357' }">{{ $t("message.cascade.tableI18nStatus.online") }}</span>
             <div class="num">{{ count.PlatformOnline }}</div>
           </div>
           <div class="split"></div>
+          <!-- 离线 -->
           <div class="flex" style="gap: 10px">
             <img src="/@/assets/stop.svg" alt="" class="icon" />
-            <span class="info" :style="{ color: '#FFBB73' }">离线</span>
+            <span class="info" :style="{ color: '#FFBB73' }">{{ $t("message.cascade.tableI18nStatus.offline") }}</span>
             <div class="num">{{ count.PlatformOffline }}</div>
           </div>
         </div>
       </el-card>
       <el-card shadow="never" class="home-card-top-part flex1">
+        <!-- 设备总数 -->
         <div class="top">
-          <div class="label">设备总数</div>
+          <div class="label">{{ $t("message.cascade.formI18nLabel.deviceTotal") }}</div>
           <span class="font30">{{ count.DeviceTotal }}</span>
         </div>
         <div class="divider"></div>
         <div class="card-bottom">
+          <!-- 在线 -->
           <div class="flex" style="gap: 10px">
             <img src="/@/assets/ok.svg" alt="" class="icon" />
-            <span class="info" :style="{ color: '#3cd357' }">在线</span>
+            <span class="info" :style="{ color: '#3cd357' }">{{ $t("message.cascade.tableI18nStatus.online") }}</span>
             <div class="num">{{ count.DeviceOnline }}</div>
           </div>
           <div class="split"></div>
+          <!-- 离线 -->
           <div class="flex" style="gap: 10px">
             <img src="/@/assets/stop.svg" alt="" class="icon" />
-            <span class="info" :style="{ color: '#FFBB73' }">离线</span>
+            <span class="info" :style="{ color: '#FFBB73' }">{{ $t("message.cascade.tableI18nStatus.offline") }}</span>
             <div class="num">{{ count.DeviceOffline }}</div>
           </div>
         </div>
@@ -44,18 +50,24 @@
     </div>
     <el-card shadow="never" class="page-full-part">
       <el-table :data="tableData" style="width: 100%" row-key="id" v-loading="loading">
-        <el-table-column type="index" label="序号" width="100" align="center"></el-table-column>
-        <el-table-column prop="name" label="子平台" show-overflow-tooltip v-col="'name'" align="center"></el-table-column>
-        <el-table-column prop="address" label="地址" v-col="'address'" align="center"></el-table-column>
-        <el-table-column prop="deviceOnline" label="设备" v-col="'deviceOnline'" align="center">
+        <!-- 序号 -->
+        <el-table-column type="index" :label="$t('message.tableI18nColumn.index')" width="100" align="center"></el-table-column>
+        <!-- 子平台 -->
+        <el-table-column prop="name" :label="$t('message.cascade.tableI18nColumn.subPlatform')" show-overflow-tooltip v-col="'name'" align="center"></el-table-column>
+        <!-- 地址 -->
+        <el-table-column prop="address" :label="$t('message.cascade.tableI18nColumn.address')" v-col="'address'" align="center"></el-table-column>
+        <!-- 设备 -->
+        <el-table-column prop="deviceOnline" :label="$t('message.cascade.tableI18nColumn.device')" v-col="'deviceOnline'" align="center">
           <template #default="{ row }">{{ row.deviceOnline }}/{{ row.deviceOnline + row.deviceOffline }} </template>
         </el-table-column>
-        <el-table-column prop="status" label="状态" v-col="'status'" :formatter="(_row: any, a: any) => (a ? '在线' : '离线')" align="center"></el-table-column>
-        <el-table-column prop="lastTime" label="最后更新时间" width="180" align="center" v-col="'lastTime'"></el-table-column>
-        <el-table-column label="操作" width="160" v-col="'handle'" align="center">
+        <el-table-column prop="status" :label="$t('message.cascade.tableI18nColumn.status')" v-col="'status'" :formatter="(_row: any, a: any) => (a ? '在线' : '离线')" align="center"></el-table-column>
+        <!-- 最后更新时间 -->
+        <el-table-column prop="lastTime" :label="$t('message.cascade.tableI18nColumn.lastUpdateTime')" width="180" align="center" v-col="'lastTime'"></el-table-column>
+        <!-- 操作 -->
+        <el-table-column :label="$t('message.tableI18nColumn.operation')" width="160" v-col="'handle'" align="center">
           <template #default="{ row }">
             <!-- <el-button size="small" text type="warning" v-auth="'sync'" :loading="row.loading" @click="sync(row)">同步</el-button> -->
-            <el-button size="small" text type="primary" v-auth="'detail'" @click="viewDeviceList(row)">查看设备</el-button>
+            <el-button v-auth="'detail'" size="small" text type="primary"  @click="viewDeviceList(row)">{{ $t('message.cascade.tableI18nAction.viewDevice') }}</el-button>
           </template>
         </el-table-column>
       </el-table>