From 6bf11ff41c4149764a282ebc4d6390cea4116aa2 Mon Sep 17 00:00:00 2001 From: hwj Date: Thu, 16 Apr 2026 18:00:28 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E8=AE=BE=E5=A4=87=E6=A6=82?= =?UTF-8?q?=E6=8B=AC=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/dashboard/DeviceSection.vue | 156 +++++++++++++++++++++ src/locales/en-US.js | 11 ++ src/locales/zh-CN.js | 11 ++ src/pages/index.vue | 3 + 4 files changed, 181 insertions(+) create mode 100644 src/components/dashboard/DeviceSection.vue diff --git a/src/components/dashboard/DeviceSection.vue b/src/components/dashboard/DeviceSection.vue new file mode 100644 index 0000000..6c49a60 --- /dev/null +++ b/src/components/dashboard/DeviceSection.vue @@ -0,0 +1,156 @@ + + + + + diff --git a/src/locales/en-US.js b/src/locales/en-US.js index 97b8328..ab004f6 100644 --- a/src/locales/en-US.js +++ b/src/locales/en-US.js @@ -90,6 +90,17 @@ export default { saturday: 'Sat', sunday: 'Sun' }, + deviceOverview: { + title: 'Device Overview', + totalDevices: 'Total', + runningCount: 'Running', + standbyCount: 'Standby', + faultCount: 'Fault', + offlineCount: 'Offline', + utilizationRate: 'Utilization', + bootRate: 'Boot Rate', + faultRate: 'Fault Rate' + }, taskList: { taskType: 'Task Type', orderDate: 'Order Date', diff --git a/src/locales/zh-CN.js b/src/locales/zh-CN.js index 3e6fc8a..bb75150 100644 --- a/src/locales/zh-CN.js +++ b/src/locales/zh-CN.js @@ -90,6 +90,17 @@ export default { saturday: '周六', sunday: '周日' }, + deviceOverview: { + title: '设备概括', + totalDevices: '设备总数', + runningCount: '运行', + standbyCount: '待机', + faultCount: '故障', + offlineCount: '离线', + utilizationRate: '利用率', + bootRate: '开机率', + faultRate: '故障率' + }, taskList: { taskType: '任务类型', orderDate: '下单日期', diff --git a/src/pages/index.vue b/src/pages/index.vue index 1d46ebc..9f89080 100644 --- a/src/pages/index.vue +++ b/src/pages/index.vue @@ -9,6 +9,8 @@ + + @@ -26,6 +28,7 @@ import BannerSection from '@/components/dashboard/BannerSection.vue' import NavSection from '@/components/dashboard/NavSection.vue' import StatsSection from '@/components/dashboard/StatsSection.vue' import PlanSection from '@/components/dashboard/PlanSection.vue' +import DeviceSection from '@/components/dashboard/DeviceSection.vue' const scrollTop = ref(0) const currentScrollTop = ref(0)