diff --git a/nezha-fronted/src/components/common/language/en.js b/nezha-fronted/src/components/common/language/en.js
index 0f62c603f..e2c2f0d59 100644
--- a/nezha-fronted/src/components/common/language/en.js
+++ b/nezha-fronted/src/components/common/language/en.js
@@ -182,6 +182,20 @@ const en = {
overview:{
title:'Overview',
contentTitle:'Nezha Management System',
+ asset:{
+ title:'Asset',
+ assetType:'Asset Type',
+ num:'Nun',
+ alert:'Alert',
+ alertLow:'Low',
+ alertMedium:'Medium',
+ alertHigh:'High',
+ inStock:'In Stock',
+ outStock:'Out Stock',
+ pingUp:'Up',
+ pingDown:'Down',
+
+ }
}
},
validate: { //校验规则
diff --git a/nezha-fronted/src/components/page/dashboard/overview/overview.scss b/nezha-fronted/src/components/page/dashboard/overview/overview.scss
index 067753ebb..db96e1423 100644
--- a/nezha-fronted/src/components/page/dashboard/overview/overview.scss
+++ b/nezha-fronted/src/components/page/dashboard/overview/overview.scss
@@ -52,22 +52,31 @@
font-size: 30px !important;
}
.overview-content{
- height: 100%;
+ height: calc(100% - 45px);
width: 100%;
}
/*100份*/
.overview-content .content-row-box{
- margin: 15px 15px 15px 15px;
width: 99%;
+ display: flex;
+ justify-content: space-between;
+ align-content: flex-start;
}
.content-row-box .content-col-box{
border: 1px solid lightgrey;
- padding: 15px;
+ padding:5px;
+ margin: 10px;
display: inline-block;
}
+.box-height-200{
+ height: 200px;
+}
.box-height-250{
height: 250px;
}
+.box-height-300{
+ height: 300px;
+}
.box-height-350{
height: 350px;
}
diff --git a/nezha-fronted/src/components/page/dashboard/overview/overview.vue b/nezha-fronted/src/components/page/dashboard/overview/overview.vue
index bded6c4c7..ec2e5d2de 100644
--- a/nezha-fronted/src/components/page/dashboard/overview/overview.vue
+++ b/nezha-fronted/src/components/page/dashboard/overview/overview.vue
@@ -28,20 +28,21 @@
-
-
@@ -50,11 +51,17 @@
diff --git a/nezha-fronted/src/components/page/dashboard/overview/tableBox.scss b/nezha-fronted/src/components/page/dashboard/overview/tableBox.scss
new file mode 100644
index 000000000..c836a48d6
--- /dev/null
+++ b/nezha-fronted/src/components/page/dashboard/overview/tableBox.scss
@@ -0,0 +1,66 @@
+.table-box{
+ display: flex;
+ height: 100%;
+ width: 100%;
+}
+.table-box .table-box-left{
+ flex: 1;
+}
+.table-box .table-box-right{
+ flex:2;
+}
+.table-screen{
+ display: flex;
+ flex-direction: column;
+ height: 100%;
+}
+.table-screen .screen-top{
+ flex: 1;
+}
+.table-screen .screen-bottom{
+ flex: 1;
+}
+.table-screen .screen-row{
+ display: flex;
+ height: 100%;
+ align-items: center;
+ justify-content: center;
+}
+.screen-row .screen-col{
+ flex: 1;
+ text-align: center;
+}
+.super-icon{
+font-size: 80px !important;
+}
+.middle-font{
+ font-size: 30px !important;
+ font-weight: 600;
+}
+.middle-icon{
+ font-size: 30px !important;
+ font-weight: 700;
+ margin-right: 5px;
+}
+.avg-children-space{
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+.super-font{
+ font-size: 40px !important;
+ font-weight: 700;
+}
+.red-icon{
+ color: #EE2E13;
+}
+.green-icon{
+ color: #03D722;
+}
+popover-container{
+
+}
+.overview-table {
+ background-color: #FCFCFC !important;
+}
+
diff --git a/nezha-fronted/src/components/page/dashboard/overview/tableBox.vue b/nezha-fronted/src/components/page/dashboard/overview/tableBox.vue
new file mode 100644
index 000000000..eba1002e8
--- /dev/null
+++ b/nezha-fronted/src/components/page/dashboard/overview/tableBox.vue
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
+
+
+
{{showData.screen.total.title}}
+
+
+
+
+ {{pop.label}}:
+ {{pop.value}}
+
+
+
+ {{showData.screen.total.num}}
+
+
+
+
+ {{showData.screen.total.num}}
+
+
+
+
+
+
+
{{showData.screen.stat.up}}
+
{{showData.screen.stat.down}}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{pop.label}}:
+ {{scope.row[pop.prop]}}
+
+
+
+ {{scope.row[item.prop]}}
+
+
+
+
+ {{scope.row[item.prop]}}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nezha-fronted/src/main.js b/nezha-fronted/src/main.js
index c6a5d7b15..c21b6f919 100644
--- a/nezha-fronted/src/main.js
+++ b/nezha-fronted/src/main.js
@@ -37,6 +37,7 @@ import modelBox from "./components/common/rightBox/modelBox"; //model弹框
import selectArea from "./components/common/popBox/selectArea"; //dc弹框
import PerfectScrollbar from "perfect-scrollbar";
import "perfect-scrollbar/css/perfect-scrollbar.css";
+import loading from "./components/common/loading";
Vue.component("Pagination", Pagination);
Vue.component("searchInput", searchInput);
@@ -56,6 +57,7 @@ Vue.component("cabinet-config-box", cabinetConfigBox);
Vue.component("dc-box", dcBox);
Vue.component("model-box", modelBox);
Vue.component("select-area", selectArea);
+Vue.component('loading',loading);
Vue.prototype.$axios = axios;
Vue.prototype.$post = post;