From 32c5fc95afbb2241d80b986e385e17ee553c258c Mon Sep 17 00:00:00 2001
From: 唐耀东 <18861537@qq.com>
Date: 星期五, 13 五月 2022 22:04:32 +0800
Subject: [PATCH] 提交代码

---
 src/views/components/server/form.vue    |  131 +++++++++++++++++++++
 src/views/construction/ai/index.vue     |    2 
 src/views/construction/system/index.vue |   30 +++-
 src/views/construction/ipc/index.vue    |   30 +++-
 src/views/components/nvr/form.vue       |  130 +++++++++++++++++++++
 5 files changed, 306 insertions(+), 17 deletions(-)

diff --git a/src/views/components/nvr/form.vue b/src/views/components/nvr/form.vue
new file mode 100644
index 0000000..6807079
--- /dev/null
+++ b/src/views/components/nvr/form.vue
@@ -0,0 +1,130 @@
+<template>
+  <div>
+    <el-form ref="form" :model="form" label-width="80px" :disabled="true">
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="閮ㄧ讲鍚嶇О" prop="deploymentName">
+            <el-input v-model="form.deploymentName" maxlength="64" show-word-limit placeholder="璇疯緭鍏ラ儴缃插悕绉�"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="閫氶亾" prop="passageway">
+            <el-select v-model="form.passageway" placeholder="璇烽�夋嫨閫氶亾锛堣矾锛�">
+              <el-option
+                  v-for="dict in dict.type.DICT109"
+                  :key="dict.value"
+                  :label="dict.label"
+                  :value="dict.value"
+              />
+            </el-select>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="LAN1" prop="lanOne">
+            <el-input v-model="form.lanOne" placeholder="璇疯緭鍏AN1"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="IP" prop="ipOne">
+            <el-input v-model="form.ipOne" placeholder="璇疯緭鍏P"/>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="LAN2" prop="lanTwo">
+            <el-input v-model="form.lanTwo" placeholder="璇疯緭鍏AN2"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="IP" prop="ipTwo">
+            <el-input v-model="form.ipTwo" placeholder="璇疯緭鍏P"/>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="鐧诲綍璐﹀彿" prop="loginAccount">
+            <el-input v-model="form.loginAccount" maxlength="64" show-word-limit placeholder="璇疯緭鍏ョ櫥褰曡处鍙�"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="纭洏" prop="hardDisk">
+            <el-input v-model="form.hardDisk" maxlength="64" show-word-limit placeholder="璇疯緭鍏ョ‖鐩�"/>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-form-item label="瀹夎浣嶇疆" prop="buildingId">
+        <building v-model="form.buildingId"></building>
+      </el-form-item>
+      <el-form-item label="鎵�灞炲崟浣�" prop="organizationId">
+        <organization v-model="form.organizationId"></organization>
+      </el-form-item>
+      <el-form-item label="鏂藉伐鎵规" prop="constructionBatchId">
+        <constructionBatch v-model="form.constructionBatchId"></constructionBatch>
+      </el-form-item>
+      <el-form-item label="搴忓垪鍙�" prop="serialNumber">
+        <el-input v-model="form.serialNumber" maxlength="64" show-word-limit placeholder="璇疯緭鍏ュ簭鍒楀彿"/>
+      </el-form-item>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="鍨嬪彿" prop="model">
+            <el-input v-model="form.model" maxlength="64" show-word-limit placeholder="璇疯緭鍏ュ瀷鍙�"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="鐢熶骇鍘傚晢" prop="manufacturerId">
+            <manufacturer v-model="form.manufacturerId"></manufacturer>
+          </el-form-item>
+        </el-col>
+      </el-row>
+    </el-form>
+  </div>
+</template>
+
+<script>
+import {getNvr} from "@/api/oa/nvr";
+import building from "../building";
+import organization from "../organization";
+import constructionBatch from "../constructionBatch";
+import manufacturer from "../manufacturer";
+
+export default {
+  name: "NvrForm",
+  dicts: ['DICT109'],
+  components: {
+    building,
+    organization,
+    constructionBatch,
+    manufacturer
+  },
+  props: {
+    nvrId: {
+      type: Number,
+      default: undefined
+    }
+  },
+  data() {
+    return {
+      // 琛ㄥ崟鍙傛暟
+      form: {},
+    }
+  },
+  created() {
+    this.getInfo()
+  },
+  methods: {
+    getInfo() {
+      getNvr(this.nvrId).then(response => {
+        this.form = response.data;
+      });
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
\ No newline at end of file
diff --git a/src/views/components/server/form.vue b/src/views/components/server/form.vue
new file mode 100644
index 0000000..32a7ea6
--- /dev/null
+++ b/src/views/components/server/form.vue
@@ -0,0 +1,131 @@
+<template>
+  <div>
+    <el-form ref="form" :model="form" label-width="80px" :disabled="true">
+      <el-form-item label="閮ㄧ讲鍚嶇О" prop="deploymentName">
+        <el-input v-model="form.deploymentName" maxlength="64" show-word-limit placeholder="璇疯緭鍏ラ儴缃插悕绉�"/>
+      </el-form-item>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="LAN" prop="lan">
+            <el-input v-model="form.lan" placeholder="璇疯緭鍏AN"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="IP" prop="ip">
+            <el-input v-model="form.ip" placeholder="璇疯緭鍏P"/>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="鎿嶄綔绯荤粺" prop="operatingSystem">
+            <el-select v-model="form.operatingSystem" placeholder="璇烽�夋嫨鎿嶄綔绯荤粺">
+              <el-option
+                  v-for="dict in dict.type.DICT115"
+                  :key="dict.value"
+                  :label="dict.label"
+                  :value="dict.value"
+              ></el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="璐︽埛" prop="account">
+            <el-input v-model="form.account" maxlength="64" show-word-limit placeholder="璇疯緭鍏ヨ处鎴�"/>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-form-item label="閮ㄧ讲浣嶇疆" prop="buildingId">
+        <building v-model="form.buildingId"></building>
+      </el-form-item>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="鏈烘煖鍙�" prop="cabinetNumber">
+            <el-input v-model="form.cabinetNumber" maxlength="64" show-word-limit placeholder="璇疯緭鍏ユ満鏌滃彿"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="鏈烘灦鍙�" maxlength="64" show-word-limit prop="rackNumber">
+            <el-input v-model="form.rackNumber" maxlength="64" show-word-limit placeholder="璇疯緭鍏ユ満鏋跺彿"/>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-form-item label="鎵�灞炲崟浣�" prop="organizationId">
+        <organization v-model="form.organizationId"></organization>
+      </el-form-item>
+      <el-form-item label="鏂藉伐鎵规" prop="constructionBatchId">
+        <constructionBatch v-model="form.constructionBatchId"></constructionBatch>
+      </el-form-item>
+      <el-form-item label="搴忓垪鍙�" prop="serialNumber">
+        <el-input v-model="form.serialNumber" maxlength="64" show-word-limit placeholder="璇疯緭鍏ュ簭鍒楀彿"/>
+      </el-form-item>
+      <el-row>
+        <el-col :span="12">
+          <el-form-item label="鍨嬪彿" prop="model">
+            <el-input v-model="form.model" maxlength="64" show-word-limit placeholder="璇疯緭鍏ュ瀷鍙�"/>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="鐢熶骇鍘傚晢" prop="manufacturerId">
+            <manufacturer v-model="form.manufacturerId"></manufacturer>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-form-item label="鎬ц兘鎸囨爣" prop="performanceIndex">
+        <el-input v-model="form.performanceIndex" type="textarea" :rows="8" maxlength="64" show-word-limit
+                  placeholder="璇疯緭鍏ュ唴瀹�"/>
+      </el-form-item>
+      <el-form-item label="澶囨敞" prop="remarks">
+        <el-input v-model="form.remarks" type="textarea" :rows="8" maxlength="64" show-word-limit
+                  placeholder="璇疯緭鍏ュ唴瀹�"/>
+      </el-form-item>
+    </el-form>
+  </div>
+</template>
+
+<script>
+import {getServer} from "@/api/oa/server";
+import building from "../building";
+import organization from "../organization";
+import constructionBatch from "../constructionBatch";
+import manufacturer from "../manufacturer";
+import nvr from "../nvr";
+
+export default {
+  name: "ServerForm",
+  dicts: ['DICT115'],
+  components: {
+    building,
+    organization,
+    constructionBatch,
+    manufacturer,
+    nvr
+  },
+  props: {
+    serverId: {
+      type: Number,
+      default: undefined
+    }
+  },
+  data() {
+    return {
+      // 琛ㄥ崟鍙傛暟
+      form: {},
+    }
+  },
+  created() {
+    this.getInfo()
+  },
+  methods: {
+    getInfo() {
+      getServer(this.serverId).then(response => {
+        this.form = response.data;
+      });
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>
\ No newline at end of file
diff --git a/src/views/construction/ai/index.vue b/src/views/construction/ai/index.vue
index 033ecb4..144ba80 100644
--- a/src/views/construction/ai/index.vue
+++ b/src/views/construction/ai/index.vue
@@ -89,7 +89,7 @@
       <el-table-column label="鏂藉伐鎵规" align="center" prop="constructionBatchId_dictText"/>
       <el-table-column label="搴忓垪鍙�" align="center" prop="serialNumber"/>
       <el-table-column label="鍨嬪彿" align="center" prop="model"/>
-      <el-table-column label="鐢熶骇鍘傚晢" align="center" prop="manufacturerId"/>
+      <el-table-column label="鐢熶骇鍘傚晢" align="center" prop="manufacturerId_dictText"/>
       <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
         <template slot-scope="scope">
           <el-button
diff --git a/src/views/construction/ipc/index.vue b/src/views/construction/ipc/index.vue
index fe7c503..82937e9 100644
--- a/src/views/construction/ipc/index.vue
+++ b/src/views/construction/ipc/index.vue
@@ -75,7 +75,11 @@
       <el-table-column label="IP" align="center" prop="ip"/>
       <el-table-column label="绔彛" align="center" prop="port"/>
       <el-table-column label="鐧诲綍璐︽埛" align="center" prop="loginAccount"/>
-      <el-table-column label="NVR" align="center" prop="nvrId_dictText"/>
+      <el-table-column label="NVR" align="center" prop="nvrId_dictText">
+        <template slot-scope="scope">
+          <el-link type="primary" @click="nvrClick(scope.row)">{{scope.row.nvrId_dictText}}</el-link>
+        </template>
+      </el-table-column>
       <el-table-column label="閫氶亾" align="center" prop="passageway_dictText"/>
       <el-table-column label="瀹夎浣嶇疆" align="center" prop="buildingId_dictText"/>
       <el-table-column label="鎵�灞炲崟浣�" align="center" prop="organizationId_dictText"/>
@@ -195,6 +199,14 @@
         <el-button @click="cancel">鍙� 娑�</el-button>
       </div>
     </el-dialog>
+
+    <!-- 鏈嶅姟鍣� -->
+    <Dialog title="鏈嶅姟鍣�" :visible.sync="nvrOpen" width="700px" :append-to-body="true" :destroy-on-close="true">
+      <nvr-form v-if="nvrOpen" :nvrId="nvrId"></nvr-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="nvrOpen = false">鍏� 闂�</el-button>
+      </div>
+    </Dialog>
   </div>
 </template>
 
@@ -205,6 +217,7 @@
 import constructionBatch from "../../components/constructionBatch";
 import manufacturer from "../../components/manufacturer";
 import nvr from '../../components/nvr'
+import nvrForm from '../../components/nvr/form'
 
 export default {
   name: "Ipc",
@@ -214,7 +227,8 @@
     organization,
     constructionBatch,
     manufacturer,
-    nvr
+    nvr,
+    nvrForm
   },
   props: {
     schoolId: {
@@ -294,7 +308,9 @@
         ],
         passageway: []
       },
-      disabled: false
+      disabled: false,
+      nvrOpen: false,
+      nvrId: undefined
     };
   },
   computed: {
@@ -471,11 +487,9 @@
         this.loading = false;
       });
     },
-    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
-    handleExport() {
-      this.download('oa/ipc/export', {
-        ...this.queryParams
-      }, `ipc_${new Date().getTime()}.xlsx`)
+    nvrClick(row) {
+      this.nvrId = row.nvrId;
+      this.nvrOpen = true;
     }
   }
 };
diff --git a/src/views/construction/system/index.vue b/src/views/construction/system/index.vue
index f0ee5d2..f378477 100644
--- a/src/views/construction/system/index.vue
+++ b/src/views/construction/system/index.vue
@@ -75,7 +75,11 @@
       <el-table-column label="鍔熻兘鎻忚堪" align="center" prop="functionDescription"/>
       <el-table-column label="鎺堟潈鏂瑰紡" align="center" prop="authorizationMethod_dictText"/>
       <el-table-column label="鎺堟潈鏁伴噺" align="center" prop="authorizedQuantity"/>
-      <el-table-column label="杞戒綋鏈嶅姟鍣�" align="center" prop="serverId_dictText"/>
+      <el-table-column label="杞戒綋鏈嶅姟鍣�" align="center" prop="serverId_dictText">
+        <template slot-scope="scope">
+          <el-link type="primary" @click="serverClick(scope.row)">{{scope.row.serverId_dictText}}</el-link>
+        </template>
+      </el-table-column>
       <el-table-column label="鏂藉伐鎵规" align="center" prop="constructionBatchId_dictText"/>
       <el-table-column label="鐢熶骇鍘傚晢" align="center" prop="manufacturerId_dictText"/>
       <el-table-column label="澶囨敞" align="center" prop="remarks"/>
@@ -200,6 +204,14 @@
         <el-button @click="cancel">鍙� 娑�</el-button>
       </div>
     </Dialog>
+
+    <!-- 鏈嶅姟鍣� -->
+    <Dialog title="鏈嶅姟鍣�" :visible.sync="serverOpen" width="700px" :append-to-body="true" :destroy-on-close="true">
+      <server-form v-if="serverOpen" :serverId="serverId"></server-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="serverOpen = false">鍏� 闂�</el-button>
+      </div>
+    </Dialog>
   </div>
 </template>
 
@@ -211,6 +223,7 @@
 import manufacturer from "../../components/manufacturer";
 import nvr from "../../components/nvr";
 import server from '../../components/server'
+import serverForm from '../../components/server/form'
 
 export default {
   name: "System",
@@ -221,7 +234,8 @@
     constructionBatch,
     manufacturer,
     nvr,
-    server
+    server,
+    serverForm
   },
   props: {
     schoolId: {
@@ -294,7 +308,9 @@
         ],
       },
       disabled: false,
-      fileOpen: false
+      fileOpen: false,
+      serverOpen: false,
+      serverId: undefined
     };
   },
   created() {
@@ -438,11 +454,9 @@
         this.loading = false;
       });
     },
-    /** 瀵煎嚭鎸夐挳鎿嶄綔 */
-    handleExport() {
-      this.download('oa/system/export', {
-        ...this.queryParams
-      }, `system_${new Date().getTime()}.xlsx`)
+    serverClick(row) {
+      this.serverId = row.serverId;
+      this.serverOpen = true;
     }
   }
 };

--
Gitblit v1.9.1