From 3a05fd672f3cf6fcd847e28d93ad3e3b9c01fea2 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 16 四月 2025 15:58:32 +0800
Subject: [PATCH] 网络分析仪

---
 src/views/CNAS/resourceDemand/device/component/acquisitionConfig.vue |   88 +++++++++++++++++++++++++++++++++-----------
 1 files changed, 66 insertions(+), 22 deletions(-)

diff --git a/src/views/CNAS/resourceDemand/device/component/acquisitionConfig.vue b/src/views/CNAS/resourceDemand/device/component/acquisitionConfig.vue
index dd15d62..5c1b33e 100644
--- a/src/views/CNAS/resourceDemand/device/component/acquisitionConfig.vue
+++ b/src/views/CNAS/resourceDemand/device/component/acquisitionConfig.vue
@@ -4,19 +4,17 @@
       <el-row class="title">
         <el-col :span="6" style="padding-left: 20px;text-align: left;">鏁伴噰閰嶇疆</el-col>
         <el-col :span="18" style="text-align: right;">
-          <el-button size="medium" type="primary" @click="fileConfiguration">鏂囦欢閰嶇疆</el-button>
-          <el-button size="medium" @click="$parent.closeDataVue()">
+          <el-button size="small" type="primary" @click="fileConfiguration">鏂囦欢閰嶇疆</el-button>
+          <el-button size="small" @click="$parent.closeDataVue()">
             <span style="color: #3A7BFA;">杩斿洖</span>
           </el-button>
         </el-col>
       </el-row>
     </div>
     <div class="table">
-      <el-table :data="tableList.slice(
-        (page.current - 1) * page.size,
-        page.current * page.size
-      )
-        " border tooltip-effect="dark" style="width: 74%;" height="100%" :span-method="spanMethod">
+      <el-table :data="tableList.slice((page.current - 1) * page.size, page.current * page.size)"
+        :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border tooltip-effect="dark" height="100%"
+        :span-method="spanMethod">
         <el-table-column type="index" label="搴忓彿" align="center" width="65"></el-table-column>
         <el-table-column prop="deviceName" align="center" min-width="100" label="璁惧鍚嶇О"></el-table-column>
         <el-table-column prop="fileType" align="center" label="鏂囦欢鍚庣紑"></el-table-column>
@@ -37,7 +35,7 @@
         <el-table-column prop="anotherName" align="center" label="鍒悕" min-width="100"></el-table-column>
         <el-table-column prop="matchingName" align="center" label="鍖归厤鍚嶇О" min-width="100"></el-table-column>
         <el-table-column prop="formula" align="center" label="鍏紡"></el-table-column>
-        <el-table-column prop="section" fixed="right" label="鎿嶄綔" width="120">
+        <el-table-column fixed="right" label="鎿嶄綔" width="120" align="center">
           <template slot-scope="scope">
             <el-button type="text" @click="dataConfig(scope.row)">鏁伴噰閰嶇疆</el-button>
           </template>
@@ -53,7 +51,8 @@
     <el-dialog title="鏁伴噰閰嶇疆" :visible.sync="dialogVisible3" width="920px" :before-close="closeForm">
       <el-form :model="configForm" label-position="top" size="small" ref="configForm" label-width="100px"
         class="demo-ruleForm">
-        <el-table :data="domains" style="width: 100%" height="300">
+        <el-table :data="domains" style="width: 100%" height="300"
+          :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border>
           <el-table-column label="搴忓彿" type="index" width="80">
             <template v-slot="scope">
               {{ getIndexWithAlphabet(scope.$index) }}
@@ -125,17 +124,31 @@
         </div>
         <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.ip"></el-input>
       </div>
-      <div class="search_thing" style="margin-bottom: 14px;">
+      <div class="search_thing" style="margin-bottom: 14px;" v-if="deviceName && deviceName.includes('缃戠粶鍒嗘瀽')">
+        <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>绔彛锛�
+        </div>
+        <el-input size="small" placeholder="璇疯緭鍏�(缃戠粶鍒嗘瀽浠繀濉�)" clearable v-model="configForm.port"></el-input>
+      </div>
+      <div class="search_thing" style="margin-bottom: 14px;" v-if="deviceName && !deviceName.includes('缃戠粶鍒嗘瀽')">
         <div class="search_label">
           <span style="color:red;margin-right: 4px;">*</span>閲囬泦鍦板潃锛�
         </div>
         <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.collectUrl"></el-input>
       </div>
-      <div class="search_thing" style="margin-bottom: 14px;">
+      <div class="search_thing" style="margin-bottom: 14px;" v-if="deviceName && deviceName.includes('缃戠粶鍒嗘瀽')">
+        <div class="search_label" style="width: 130px;">
+          <span style="color:red;margin-right: 4px;">*</span>缃戝垎浠噰闆嗛�氶亾锛�
+        </div>
+        <el-select v-model="configForm.channel" multiple filterable allow-create placeholder="璇烽�夋嫨">
+          <el-option v-for="(item, index) in channelList" :key="index" :label="item" :value="item">
+          </el-option>
+        </el-select>
+      </div>
+      <div class="search_thing" style="margin-bottom: 14px;" v-if="deviceName && !deviceName.includes('缃戠粶鍒嗘瀽')">
         <div class="search_label">鍌ㄥ瓨鍦板潃锛�</div>
         <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.storageUrl"></el-input>
       </div>
-      <div class="search_thing" style="margin-bottom: 14px;">
+      <div class="search_thing" style="margin-bottom: 14px;" v-if="deviceName && !deviceName.includes('缃戠粶鍒嗘瀽')">
         <div class="search_label">
           <span style="color:red;margin-right: 4px;">*</span>鏂囦欢鍚庣紑锛�
         </div>
@@ -144,15 +157,15 @@
           </el-option>
         </el-select>
       </div>
-      <div class="search_thing" style="margin-bottom: 14px;">
+      <div class="search_thing" style="margin-bottom: 14px;" v-if="deviceName && !deviceName.includes('缃戠粶鍒嗘瀽')">
         <div class="search_label">濮旀墭瀛楁锛�</div>
         <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.entrustCode"></el-input>
       </div>
-      <div class="search_thing" style="margin-bottom: 14px;">
+      <div class="search_thing" style="margin-bottom: 14px;" v-if="deviceName && !deviceName.includes('缃戠粶鍒嗘瀽')">
         <div class="search_label">鏍峰搧瀛楁锛�</div>
         <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.sampleCode"></el-input>
       </div>
-      <div class="search_thing" style="margin-bottom: 14px;">
+      <div class="search_thing" style="margin-bottom: 14px;" v-if="deviceName && !deviceName.includes('缃戠粶鍒嗘瀽')">
         <div class="search_label">鏂囦欢鍚嶇О锛�</div>
         <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.dbFileName"></el-input>
       </div>
@@ -180,7 +193,11 @@
     deviceId: {
       type: Number,
       default: () => []
-    }
+    },
+    deviceName: {
+      type: String,
+      default: () => ''
+    },
   },
   mounted() {
     this.init();
@@ -228,7 +245,9 @@
         entrustCode: "",
         sampleCode: "",
         dbFileName: "",
-        fiberOpticRibbon: ""
+        fiberOpticRibbon: "",
+        port: '',
+        channel: []
       },
       domains: [
         {
@@ -296,7 +315,8 @@
           ]
         }
       },
-      deleteList: []
+      deleteList: [],
+      channelList: []
     };
   },
   // 鏂规硶闆嗗悎
@@ -396,6 +416,10 @@
           "fiberOpticRibbon",
           this.tableList[0].fiberOpticRibbon
         )
+        this.$set(this.configForm, "port", this.tableList[0].port);
+        let arr = this.tableList[0].channel ? this.tableList[0].channel.split(',') : []
+        this.$set(this.configForm, "channel", arr);
+        this.channelList = arr
       }
     },
     init() {
@@ -452,6 +476,18 @@
             "fiberOpticRibbon",
             this.tableList[0].fiberOpticRibbon
           )
+          let arr = this.tableList[0].channel ? this.tableList[0].channel.split(',') : []
+          this.$set(
+            this.configForm,
+            "channel",
+            arr
+          )
+          this.$set(
+            this.configForm,
+            "port",
+            this.tableList[0].port
+          )
+          this.channelList = arr;
         }
         // 涓�鑸殑鍚堝苟琛�
         if (
@@ -506,8 +542,18 @@
         entrustCode: this.configForm.entrustCode,
         sampleCode: this.configForm.sampleCode,
         dbFileName: this.configForm.dbFileName,
-        fiberOpticRibbon: this.configForm.fiberOpticRibbon
+        fiberOpticRibbon: this.configForm.fiberOpticRibbon,
+        port: this.configForm.port,
+        channel: this.configForm.channel
       });
+      if (this.deviceName && this.deviceName.includes('缃戠粶鍒嗘瀽')) {
+        if (!this.configForm.port) {
+          return this.$message.error("璇峰~鍐欑鍙�");
+        }
+        if (!this.configForm.channel || !this.configForm.channel.length) {
+          return this.$message.error("璇峰~鍐欑綉鍒嗕华閲囬泦閫氶亾");
+        }
+      }
       this.upLoad4 = true;
       saveDataAcquisitionConfiguration({ deviceId: this.deviceId, ...obj }).then(res => {
         if (res.code == 200) {
@@ -536,7 +582,7 @@
         inspectionItem: row.inspectionItem.trim(),
         isDevice: true,
         inspectionItemSubclass: row.inspectionItemSubclass.trim(),
-        inspectionItemClass: row.inspectionItemClass.trim(),
+        inspectionItemClass: row.inspectionItemClass ? row.inspectionItemClass.trim() : '',
         structureItemParameterId: row.structureItemParameterId
       }).then(res => {
         const data = res.data;
@@ -722,9 +768,7 @@
 }
 
 .table {
-  margin-top: 10px;
   background-color: #fff;
-  width: calc(100vw - 1em);
   height: calc(100vh - 18em);
 }
 

--
Gitblit v1.9.3