From 261e25074b7f35010efccb86bf82f6fe36e4b10d Mon Sep 17 00:00:00 2001
From: zhangzengfei <zhangzengfei@iotlink.com>
Date: 星期三, 14 十月 2020 10:27:19 +0800
Subject: [PATCH] 添加硬件信息显示

---
 src/pages/settings/components/BasicSetting.vue |  109 ++++++++++++++++++++++++++++++------------------------
 1 files changed, 61 insertions(+), 48 deletions(-)

diff --git a/src/pages/settings/components/BasicSetting.vue b/src/pages/settings/components/BasicSetting.vue
index 3bab7ee..f7df2dd 100644
--- a/src/pages/settings/components/BasicSetting.vue
+++ b/src/pages/settings/components/BasicSetting.vue
@@ -76,7 +76,7 @@
             <template slot="title">
               <b class="tree-font">璇︾粏淇℃伅</b>
             </template>
-            <el-menu-item-group class="item-group">
+            <el-menu-item-group class="item-group desc-info">
               <el-row :gutter="gutter">
                 <el-col :span="12" class="flex-box">
                   <div class="xiangqin-label">ID</div>
@@ -109,6 +109,22 @@
                 <el-col :span="12" class="flex-box">
                   <div class="xiangqin-label">纭洏涓暟</div>
                   <div class="xiangqing-info">{{sysinfo.diskCount}}</div>
+                </el-col>
+                <el-col :span="12" class="flex-box">
+                  <div class="xiangqin-label">纭洏淇℃伅</div>
+                  <div class="xiangqing-info">{{sysinfo.disks}}</div>
+                </el-col>
+                <el-col :span="12" class="flex-box">
+                  <div class="xiangqin-label">CPU</div>
+                  <div class="xiangqing-info">{{sysinfo.cpuInfo}}</div>
+                </el-col>
+                <el-col :span="12" class="flex-box">
+                  <div class="xiangqin-label">鍐呭瓨</div>
+                  <div class="xiangqing-info">{{sysinfo.mem}}</div>
+                </el-col>
+                <el-col :span="12" class="flex-box">
+                  <div class="xiangqin-label">杩愯鏃堕棿</div>
+                  <div class="xiangqing-info">{{sysinfo.uptime}}</div>
                 </el-col>
               </el-row>
             </el-menu-item-group>
@@ -159,7 +175,6 @@
             </el-menu-item-group>
           </el-submenu>
           <!-- 瀵瑰鏈嶅姟IP 鏀瑰悕涓哄閮ㄧ綉缁�(鏂皌ab)-->
-
         </el-menu>
       </el-tab-pane>
 
@@ -171,12 +186,13 @@
             {{ equipmentTime }}
           </el-form-item>
 
-          <el-form-item label="鏃跺尯" prop="timezone">
+          <!-- <el-form-item label="鏃跺尯" prop="timezone">
             <el-select
               v-model="timezone"
               placeholder="璇烽�夋嫨"
               style="width: 360px; height: 32px"
               size="small"
+              @change="checkTimeZone"
             >
               <el-option
                 v-for="item in timeZoneOption"
@@ -185,7 +201,7 @@
                 :value="item.value"
               ></el-option>
             </el-select>
-          </el-form-item>
+          </el-form-item>-->
           <div style="text-align: left;padding: 10px 0px">
             <div class="time-type">NTP鏍℃椂</div>
             <div style="padding: 10px 0px;">
@@ -233,7 +249,6 @@
               placeholder="閫夋嫨鏃ユ湡鏃堕棿"
               size="small"
               value-format="yyyy-MM-dd HH:mm:ss"
-              :readonly="settimeRadio"
               :disabled="syncType === '1'"
             ></el-date-picker>
             <el-checkbox
@@ -256,7 +271,7 @@
       <el-tab-pane label="闆嗙兢绠$悊" name="third">
         <cluster-management></cluster-management>
       </el-tab-pane>
-      <el-tab-pane label="澶栭儴缃戠粶" name="fourth">
+      <!-- <el-tab-pane label="澶栭儴璁块棶" name="fourth">
         <el-menu
           :default-openeds="openeds"
           background-color="#fff"
@@ -294,24 +309,8 @@
               </el-form>
             </el-menu-item-group>
           </el-submenu>
-          <el-submenu index="1">
-            <template slot="title">
-              <b class="tree-font">澶栭儴璁块棶鍒楄〃</b>
-            </template>
-            <el-menu-item-group class="item-group">
-              <div>
-                <el-table :data="ipServer.fileTable" border fit style="width: 100%">
-                  <el-table-column type="index" label="搴忓彿" align="center" width="50"></el-table-column>
-                  <el-table-column prop="date" label="鍚嶇О" align="center"></el-table-column>
-                  <el-table-column prop="name" label="ID" align="center"></el-table-column>
-                  <el-table-column prop="name" label="IP" align="center"></el-table-column>
-                  <el-table-column prop="name" label="鍦ㄧ嚎鐘舵��" align="center"></el-table-column>
-                </el-table>
-              </div>
-            </el-menu-item-group>
-          </el-submenu>
         </el-menu>
-      </el-tab-pane>
+      </el-tab-pane> -->
       <el-tab-pane label="鏉冮檺绠$悊" name="user">
         <authority-management v-if="activeName === 'user'"></authority-management>
       </el-tab-pane>
@@ -461,29 +460,6 @@
         ip: "",
         localhost: "",
         localFilePort: "",
-        fileTable: [
-          {
-            date: '2016-05-02',
-            name: '鐜嬪皬铏�',
-            address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�',
-            edit: false
-          }, {
-            date: '2016-05-04',
-            name: '鐜嬪皬铏�',
-            address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1517 寮�',
-            edit: false
-          }, {
-            date: '2016-05-01',
-            name: '鐜嬪皬铏�',
-            address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1519 寮�',
-            edit: false
-          }, {
-            date: '2016-05-03',
-            name: '鐜嬪皬铏�',
-            address: '涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1516 寮�',
-            edit: false
-          }
-        ]
       },
       locationCity: {
         province: '',
@@ -502,6 +478,8 @@
       // this.initAlarmConf();
       this.initResourceConfig();
       this.initClockConf();
+      //this.markStartTime();
+
     });
   },
   beforeDestroy() {
@@ -522,6 +500,16 @@
           this.alarmConf.min_video_len = rsp.data.min_video_len;
           this.alarmConf.max_video_len = rsp.data.max_video_len;
 
+          if (this.sysinfo.deviceInfo) {
+            let devInfo = this.sysinfo.deviceInfo;
+
+            this.sysinfo.cpuInfo = devInfo.cpu[0].modelName;
+            this.sysinfo.disks = devInfo.disk;
+            this.sysinfo.mem = (devInfo.mem.total / 1024 / 1024 / 1024).toFixed(2) + "KB";
+            // this.sysinfo.arch = devInfo.host.kernelArch;
+            this.sysinfo.uptime = this.secondsFormat(devInfo.host.uptime);
+          }
+
           if (!this.sysinfo.server_port) {
             this.sysinfo.server_port = 7003;
           }
@@ -533,6 +521,13 @@
       }).catch(err => {
         this.loading = false;
       });
+    },
+    secondsFormat(s) {
+      var day = Math.floor(s / (24 * 3600)); // Math.floor()鍚戜笅鍙栨暣 
+      var hour = Math.floor((s - day * 24 * 3600) / 3600);
+      var minute = Math.floor((s - day * 24 * 3600 - hour * 3600) / 60);
+      var second = s - day * 24 * 3600 - hour * 3600 - minute * 60;
+      return day + "澶�" + hour + "鏃�" + minute + "鍒�" + second + "绉�";
     },
     initClockConf() {
       getClockInfo().then(rsp => {
@@ -583,6 +578,10 @@
           this.settime = this.formatTime(timestamp, 'Y-M-D h:m:s')
         }, 1000)
       }
+    },
+    markStartTime() {
+      let timestamp = new Date().getTime() / 1000;
+      this.settime = this.formatTime(timestamp, 'Y-M-D h:m:s')
     },
     submitSysinfo() {
       this.$refs["sysinfo"].validate(valid => {
@@ -652,6 +651,10 @@
           return false;
         }
       });
+    },
+    checkTimeZone(val) {
+      debugger;
+
     },
     submitClock() {
       if (this.syncType === '1') {
@@ -821,8 +824,8 @@
     // margin-left: -80px;
     .el-form-item {
       text-align: left;
-      &.is-required:not(.is-no-asterisk)>.el-form-item__label:before{
-        margin-left:-8px;
+      &.is-required:not(.is-no-asterisk) > .el-form-item__label:before {
+        margin-left: -8px;
       }
       .el-button {
         float: right;
@@ -971,6 +974,16 @@
     width: 300px;
   }
 }
+.desc-info {
+  margin-bottom: 14px;
+  .flex-box {
+    height: 40px;
+    line-height: 40px;
+    .xiangqin-label {
+      width: 80px;
+    }
+  }
+}
 .menu-css,
 .el-menu {
   border-right: none;

--
Gitblit v1.8.0