From 553f9357c13d068fd2a341f6ed29150ff7a64eda Mon Sep 17 00:00:00 2001
From: Crunchy <3114200645@qq.com>
Date: 星期五, 02 八月 2024 16:49:07 +0800
Subject: [PATCH] Merge branch 'master' into test

---
 src/components/do/b6-device-management/b6-data-acquisition-config.vue |  815 ++++++++++++++++++++++++++++++++-------------------------
 1 files changed, 459 insertions(+), 356 deletions(-)

diff --git a/src/components/do/b6-device-management/b6-data-acquisition-config.vue b/src/components/do/b6-device-management/b6-data-acquisition-config.vue
index 83bb496..322ba4d 100644
--- a/src/components/do/b6-device-management/b6-data-acquisition-config.vue
+++ b/src/components/do/b6-device-management/b6-data-acquisition-config.vue
@@ -12,15 +12,21 @@
       </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: 100%;" height="100%" :span-method="spanMethod">
+      <el-table :data="tableList.slice(
+          (page.current - 1) * page.size,
+          page.current * page.size
+        )
+          " border tooltip-effect="dark" style="width: 100%;" 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>
-        <el-table-column prop="collectUrl" align="center" min-width="100" show-overflow-tooltip label="閲囬泦鍦板潃"></el-table-column>
-        <el-table-column prop="storageUrl" align="center" min-width="100" show-overflow-tooltip label="瀛樺偍鍦板潃"></el-table-column>
+        <el-table-column prop="collectUrl" align="center" min-width="100" show-overflow-tooltip
+          label="閲囬泦鍦板潃"></el-table-column>
+        <el-table-column prop="storageUrl" align="center" min-width="100" show-overflow-tooltip
+          label="瀛樺偍鍦板潃"></el-table-column>
         <el-table-column prop="ip" align="center" label="IP鍦板潃" min-width="100"></el-table-column>
-        <el-table-column prop="sample" align="center" label="妫�楠屽璞�" show-overflow-tooltip min-width="150"></el-table-column>
+        <el-table-column prop="sample" align="center" label="妫�楠屽璞�" show-overflow-tooltip
+          min-width="150"></el-table-column>
         <el-table-column prop="inspectionItem" align="center" label="妫�楠岄」" min-width="100"></el-table-column>
         <el-table-column prop="inspectionItemSubclass" align="center" label="妫�楠岄」瀛愰」" min-width="100"></el-table-column>
         <el-table-column prop="referx" align="center" label="鍙傜収X" min-width="100"></el-table-column>
@@ -28,7 +34,7 @@
         <el-table-column prop="refery" align="center" label="鍙傜収Y" min-width="100"></el-table-column>
         <el-table-column prop="y" align="center" label="Y"></el-table-column>
         <el-table-column prop="formula" align="center" label="鍏紡"></el-table-column>
-        <el-table-column prop="section" label="鎿嶄綔" width="120">
+        <el-table-column prop="section" fixed="right" label="鎿嶄綔" width="120">
           <template slot-scope="scope">
             <el-button type="text" @click="dataConfig(scope.row)">鏁伴噰閰嶇疆</el-button>
           </template>
@@ -37,139 +43,135 @@
     </div>
     <div class="page" v-if="tableList.length > 0">
       <el-pagination @size-change="sizeChange" @current-change="currentChange" :current-page="page.current"
-                     :page-sizes="[10, 20, 30, 50, 100]" :page-size="page.size" layout="total, sizes, prev, pager, next, jumper"
-                     :total="tableList.length">
+        :page-sizes="[10, 20, 30, 50, 100]" :page-size="page.size" layout="total, sizes, prev, pager, next, jumper"
+        :total="tableList.length">
       </el-pagination>
     </div>
     <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">
-        <!-- <div class="fomItem1"> -->
-          <!-- <el-form-item class="fomItemInput" label="妫�娴嬬殑鏂囦欢绫诲瀷:" prop="fileType">
-            <el-select v-model="configForm.fileType" placeholder="璇烽�夋嫨鏂囦欢绫诲瀷">
-              <el-option v-for="item in fileTypeOptions"
-                         :key="item.value"
-                         :label="item.label"
-                         :value="item.value"></el-option>
-            </el-select>
-          </el-form-item>
-          <el-form-item class="fomItemInput" label="閲囬泦鍦板潃:" prop="collectUrl">
-            <el-input v-model="configForm.collectUrl"></el-input>
-          </el-form-item>
-          <el-form-item class="fomItemInput" label="鍌ㄥ瓨鍦板潃:" prop="storageUrl">
-            <el-input v-model="configForm.storageUrl"></el-input>
-          </el-form-item> -->
-        <!-- </div> -->
-        <div class="fomItem1"
-             v-for="(domain, index) in domains"
-             :key="index">
-          <el-form-item class="fomItemInput" label="鍙傜収X:">
-            <el-input v-model="domain.referx"></el-input>
-          </el-form-item>
-          <el-form-item class="fomItemInput" label="X:">
-            <el-input v-model="domain.x" onkeyup="value=value.replace(/[^-0-9]/g,'')"></el-input>
-          </el-form-item>
-          <el-form-item class="fomItemInput" label="鍙傜収Y:">
-            <el-input v-model="domain.refery"></el-input>
-          </el-form-item>
-          <el-form-item class="fomItemInput" label="Y:">
-            <el-input v-model="domain.y" onkeyup="value=value.replace(/[^-0-9]/g,'')"></el-input>
-          </el-form-item>
-          <el-form-item>
-            <el-button style="position: absolute; bottom: -65px" @click.prevent="removeDomain(domain)" size="small">鍒犻櫎</el-button>
-          </el-form-item>
-          <el-form-item>
-            <el-button @click="addDomain" size="small" type="primary" style="position: absolute; bottom: -65px;left: 62px" v-if="index === domains.length-1">鏂板鍩熷悕</el-button>
-          </el-form-item>
-        </div>
+      <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-column label="搴忓彿" type="index" width="80">
+            <template v-slot="scope">
+              {{ getIndexWithAlphabet(scope.$index) }}
+            </template>
+          </el-table-column>
+          <el-table-column prop="referx" label="鍙傜収X" min-width="180">
+            <template v-slot="scope">
+              <el-input style="width: 100%" v-model="scope.row.referx"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column prop="x" label="X" min-width="180">
+            <template v-slot="scope">
+              <el-input style="width: 100%" v-model="scope.row.x"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column prop="refery" label="鍙傜収Y" min-width="180">
+            <template v-slot="scope">
+              <el-input style="width: 100%" v-model="scope.row.refery"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column prop="y" label="Y" min-width="100">
+            <template v-slot="scope">
+              <el-input style="width: 100%" v-model="scope.row.y"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column label="鎿嶄綔" width="150">
+            <template v-slot="scope">
+              <el-button @click.prevent="removeDomain(scope.row)" size="small" type="text">鍒犻櫎</el-button>
+              <el-button @click="addDomain" size="small" type="text">鏂板</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
         <div class="fomItem2">
           <el-form-item class="fomItemInput1">
             <template v-slot="label">
               鍏紡锛�
-              <el-tooltip class="itemFomItem" effect="dark" content="姹傚弬鏁版渶澶у�硷紝鍙傛暟涓暟鏈�灏戜袱涓紝濡傦細MAX(1,2)" placement="top">
+              <el-tooltip class="itemFomItem" effect="dark" content="姹傚弬鏁版渶澶у�硷紝鍙傛暟涓暟鏈�灏戜袱涓紝濡傦細MAX(A1,B2)" placement="top">
                 <label>MAX()</label>
               </el-tooltip>
-              <el-tooltip class="itemFomItem" effect="dark" content="姹傚弬鏁版渶灏忓�硷紝鍙傛暟涓暟鏈�灏戜袱涓紝濡傦細MIN(1,2)" placement="top">
+              <el-tooltip class="itemFomItem" effect="dark" content="姹傚弬鏁版渶灏忓�硷紝鍙傛暟涓暟鏈�灏戜袱涓紝濡傦細MIN(A1,B2)" placement="top">
                 <label>MIN()</label>
               </el-tooltip>
-              <el-tooltip class="itemFomItem" effect="dark" content="姹傚拰锛屽弬鏁颁釜鏁版渶灏戜袱涓紝濡傦細SUM(1,2)" placement="top">
+              <el-tooltip class="itemFomItem" effect="dark" content="姹傚拰锛屽弬鏁颁釜鏁版渶灏戜袱涓紝濡傦細SUM(A1,B2)" placement="top">
                 <label>SUM()</label>
               </el-tooltip>
-              <el-tooltip class="itemFomItem" effect="dark" content="姹傜粷瀵瑰�硷紝鍙傛暟涓暟鏈�灏戜竴涓紝濡傦細ABS(1)" placement="top">
+              <el-tooltip class="itemFomItem" effect="dark" content="姹傜粷瀵瑰�硷紝鍙傛暟涓暟鏈�灏戜竴涓紝濡傦細ABS(A1)" placement="top">
                 <label>ABS()</label>
               </el-tooltip>
-              <el-tooltip class="itemFomItem" effect="dark" content="姹傚钩鍧囧�硷紝鍙傛暟涓暟鏈�灏戜袱涓釜锛屽锛欰VERAGE(1,2)" placement="top">
+              <el-tooltip class="itemFomItem" effect="dark" content="姹傚钩鍧囧�硷紝鍙傛暟涓暟鏈�灏戜袱涓釜锛屽锛欰VERAGE(A1,B2)" placement="top">
                 <label>AVERAGE()</label>
               </el-tooltip>
-              <el-tooltip class="itemFomItem" effect="dark" content="姹備腑鍊硷紝鍙傛暟涓暟鏈�灏戜袱涓釜锛屽锛歁EDIAN(1,2)" placement="top">
+              <el-tooltip class="itemFomItem" effect="dark" content="姹備腑鍊硷紝鍙傛暟涓暟鏈�灏戜袱涓釜锛屽锛歁EDIAN(A1,B2)" placement="top">
                 <label>MEDIAN()</label>
               </el-tooltip>
-              <el-input type="textarea" autosi:autosize="{ minRows: 2, maxRows: 4}"ze placeholder="璇疯緭鍏ュ唴瀹�" v-model="configForm.formula" @change="evalResult"> </el-input>
+              <el-input type="textarea" autosi:autosize="{ minRows: 2, maxRows: 4}" ze placeholder="璇疯緭鍏ュ唴瀹�"
+                v-model="configForm.formula" @change="evalResult">
+              </el-input>
             </template>
           </el-form-item>
         </div>
       </el-form>
       <span slot="footer" class="dialog-footer">
-				<el-row>
-					<el-button @click="closeForm">鍙� 娑�</el-button>
-					<el-button type="primary" @click="submitForm3" :loading="upLoad3">纭� 瀹�</el-button>
-				</el-row>
-			</span>
+        <el-row>
+          <el-button @click="closeForm">鍙� 娑�</el-button>
+          <el-button type="primary" @click="submitForm3" :loading="upLoad3">纭� 瀹�</el-button>
+        </el-row>
+      </span>
     </el-dialog>
     <el-dialog title="鏁伴噰閰嶇疆" :visible.sync="dialogVisible4" width="400px">
       <div class="search_thing" style="margin-bottom: 14px;">
-				<div class="search_label"><span style="color:red;margin-right: 4px;">*</span>IP锛�</div>
-				<el-input size="small" placeholder="璇疯緭鍏�" clearable
-						v-model="configForm.ip"></el-input>
-			</div>
+        <div class="search_label">
+          <span style="color:red;margin-right: 4px;">*</span>IP锛�
+        </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_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_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_label">鍌ㄥ瓨鍦板潃锛�</div>
-				<el-input size="small" placeholder="璇疯緭鍏�" clearable
-						v-model="configForm.storageUrl"></el-input>
-			</div>
+        <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_label"><span style="color:red;margin-right: 4px;">*</span>鏂囦欢鍚庣紑锛�</div>
+        <div class="search_label">
+          <span style="color:red;margin-right: 4px;">*</span>鏂囦欢鍚庣紑锛�
+        </div>
         <el-select v-model="configForm.fileType" size="small" placeholder="璇烽�夋嫨" style="width: 100%;">
-          <el-option
-            v-for="item in fileTypeOptions"
-            :key="item.value"
-            :label="item.label"
-            :value="item.value">
+          <el-option v-for="item in fileTypeOptions" :key="item.value" :label="item.label" :value="item.value">
           </el-option>
         </el-select>
-			</div>
-      <div v-if="configForm.fileType == '.mdb'" class="search_thing" style="margin-bottom: 14px;">
-				<div class="search_label">濮旀墭瀛楁锛�</div>
-				<el-input size="small" placeholder="璇疯緭鍏�" clearable
-						v-model="configForm.mdbEntrustCode"></el-input>
-			</div>
-      <div v-if="configForm.fileType == '.mdb'" class="search_thing" style="margin-bottom: 14px;">
-				<div class="search_label">鏍峰搧瀛楁锛�</div>
-				<el-input size="small" placeholder="璇疯緭鍏�" clearable
-						v-model="configForm.mdbSampleCode"></el-input>
-			</div>
+      </div>
+      <div class="search_thing" style="margin-bottom: 14px;">
+        <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_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_label">鏂囦欢鍚嶇О锛�</div>
+        <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.dbFileName"></el-input>
+      </div>
       <span slot="footer" class="dialog-footer">
-				<el-row>
-					<el-button @click="dialogVisible4=false">鍙� 娑�</el-button>
-					<el-button type="primary" @click="submitForm4" :loading="upLoad4">纭� 瀹�</el-button>
-				</el-row>
-			</span>
+        <el-row>
+          <el-button @click="dialogVisible4 = false">鍙� 娑�</el-button>
+          <el-button type="primary" @click="submitForm4" :loading="upLoad4">纭� 瀹�</el-button>
+        </el-row>
+      </span>
     </el-dialog>
   </div>
 </template>
 
 <script>
-
 export default {
   name: "dataAcquisitionConfig",
   // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
-  components: {
-  },
+  components: {},
   props: {
     deviceId: {
       type: Number,
@@ -177,7 +179,7 @@
     }
   },
   mounted() {
-    this.init()
+    this.init();
   },
   data() {
     // 杩欓噷瀛樻斁鏁版嵁
@@ -186,191 +188,247 @@
       tableList: [],
       page: {
         current: 1,
-        size: 20,
+        size: 20
       },
-      dialogVisible3:false,
-      configForm:{
-        formula: '',
+      dialogVisible3: false,
+      configForm: {
+        formula: ""
       },
       domains: [
         {
-          referx: '',
-          refery: '',
-          x: '',
-          y: ''
+          referx: "",
+          refery: "",
+          x: "",
+          y: ""
         }
       ],
-      upLoad3:false,
-      upLoad4:false,
+      upLoad3: false,
+      upLoad4: false,
       fileTypeOptions: [
-        {label: 'csv', value: '.csv'},
-        {label: 'db', value: '.db'},
-        {label: 'mdb', value: '.mdb'},
-        {label: 'word', value: '.docx'},
-        {label: 'excel', value: '.xlsx'},
-        {label: 'txt', value: '.txt'},
-        {label: 'png', value: '.png'},
+        { label: "csv", value: ".csv" },
+        { label: "db", value: ".db" },
+        { label: "mdb", value: ".mdb" },
+        { label: "word", value: ".docx" },
+        { label: "excel", value: ".xlsx" },
+        { label: "txt", value: ".txt" },
+        { label: "png", value: ".png" }
       ],
       spanList: [],
       specialSpanList: [],
       spanConfig: {
-            special: {
-              main: "inspectionItemSubclass",
-              rows:[
-              {
-                name:'deviceName',
-                index:1
-              },
-              {
-                name:'fileType',
-                index:2
-              },
-              {
-                name:'collectUrl',
-                index:3
-              },
-              {
-                name:'storageUrl',
-                index:4
-              },
-              {
-                name:'ip',
-                index:5
-              },
-              {
-                name:'inspectionItem',
-                index:6
-              },
-              {
-                name:'inspectionItemSubclass',
-                index:7
-              },
-              {
-                name:'formula',
-                index:13
-              },
-              {
-                name:'inspectionItemSubclass',
-                index:14
-              }
-            ]
+        special: {
+          main: "inspectionItemSubclass",
+          rows: [
+            {
+              name: "deviceName",
+              index: 1
+            },
+            {
+              name: "fileType",
+              index: 2
+            },
+            {
+              name: "collectUrl",
+              index: 3
+            },
+            {
+              name: "storageUrl",
+              index: 4
+            },
+            {
+              name: "ip",
+              index: 5
+            },
+            {
+              name: "inspectionItem",
+              index: 6
+            },
+            {
+              name: "inspectionItemSubclass",
+              index: 7
+            },
+            {
+              name: "formula",
+              index: 13
+            },
+            {
+              name: "section",
+              index: 14
             }
+          ]
+        }
       },
       deleteList: []
-    }
+    };
   },
   // 鏂规硶闆嗗悎
   methods: {
+    getIndexWithAlphabet(index) {
+      const alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
+      const letterIndex = index % 26;
+      return alphabet.charAt(letterIndex) + (index + 1);
+    },
     rowspan(spanArr, position, spanName) {
-        this.tableList.forEach((item, index) => {
-          if (index === 0) {
-            spanArr.push(1);
-            position = 0;
+      this.tableList.forEach((item, index) => {
+        if (index === 0) {
+          spanArr.push(1);
+          position = 0;
+        } else {
+          if (
+            this.tableList[index][spanName] ===
+            this.tableList[index - 1][spanName]
+          ) {
+            spanArr[position] += 1;
+            spanArr.push(0);
           } else {
-            if (
-              this.tableList[index][spanName] ===
-              this.tableList[index - 1][spanName]
-            ) {
-              spanArr[position] += 1;
-              spanArr.push(0);
-            } else {
-              spanArr.push(1);
-              position = index;
-            }
+            spanArr.push(1);
+            position = index;
           }
+        }
+      });
+    },
+    spanMethod({ row, column, rowIndex, columnIndex }) {
+      // 涓�鑸殑鍚堝苟琛�
+      if (
+        this.spanConfig != undefined &&
+        this.spanConfig.rows &&
+        this.spanConfig.rows.length > 0
+      ) {
+        let i = null;
+        let obj = this.spanConfig.rows.find((item, index) => {
+          i = index;
+          return item.index == columnIndex;
         });
-      },
-    spanMethod({
-        row,
-        column,
-        rowIndex,
-        columnIndex
-      }) {
-        // 涓�鑸殑鍚堝苟琛�
-        if (this.spanConfig != undefined && this.spanConfig.rows && this.spanConfig.rows.length > 0) {
-          let i = null;
-          let obj = this.spanConfig.rows.find((item, index) => {
-            i = index;
-            return item.index == columnIndex
-          })
-          if (obj) {
-            const _row = this.spanList[i].arr[rowIndex];
-            const _col = _row > 0 ? 1 : 0;
-            return {
-              rowspan: _row,
-              colspan: _col,
-            };
-          }
+        if (obj) {
+          const _row = this.spanList[i].arr[rowIndex];
+          const _col = _row > 0 ? 1 : 0;
+          return {
+            rowspan: _row,
+            colspan: _col
+          };
         }
-        // 鐗规畩鐨勫悎骞惰
-        if (this.spanConfig != undefined && this.spanConfig.special && this.spanConfig.special.main &&
-          this.spanConfig.special.rows && this.spanConfig.special.rows.length > 0) {
-          let i = null;
-          let obj = this.spanConfig.special.rows.find((item, index) => {
-            i = index;
-            return item.index == columnIndex
-          })
-          if (obj) {
-            const _row = this.specialSpanList[i].arr[rowIndex];
-            const _col = _row > 0 ? 1 : 0;
-            return {
-              rowspan: _row,
-              colspan: _col,
-            };
-          }
+      }
+      // 鐗规畩鐨勫悎骞惰
+      if (
+        this.spanConfig != undefined &&
+        this.spanConfig.special &&
+        this.spanConfig.special.main &&
+        this.spanConfig.special.rows &&
+        this.spanConfig.special.rows.length > 0
+      ) {
+        let i = null;
+        let obj = this.spanConfig.special.rows.find((item, index) => {
+          i = index;
+          return item.index == columnIndex;
+        });
+        if (obj) {
+          const _row = this.specialSpanList[i].arr[rowIndex];
+          const _col = _row > 0 ? 1 : 0;
+          return {
+            rowspan: _row,
+            colspan: _col
+          };
         }
-      },
+      }
+    },
     fileConfiguration() {
-      this.dialogVisible4 = true
-      if(this.tableList[0]) {
-          this.$set(this.configForm, 'fileType', this.tableList[0].fileType)
-          this.$set(this.configForm, 'collectUrl', this.tableList[0].collectUrl)
-          this.$set(this.configForm, 'storageUrl', this.tableList[0].storageUrl)
-          this.$set(this.configForm, 'ip', this.tableList[0].ip)
-        }
+      this.dialogVisible4 = true;
+      if (this.tableList[0]) {
+        this.$set(this.configForm, "fileType", this.tableList[0].fileType);
+        this.$set(this.configForm, "collectUrl", this.tableList[0].collectUrl);
+        this.$set(this.configForm, "storageUrl", this.tableList[0].storageUrl);
+        this.$set(this.configForm, "ip", this.tableList[0].ip);
+      }
     },
     init() {
-      // this.tableList = []
-      this.$axios.get(this.$api.deviceScope.queryDataAcquisitionConfiguration + "?deviceId=" + this.deviceId + "&isDevice=" + false).then(res => {
-        this.tableList = res.data
-        this.tableList.forEach(i => {
-          // replace(/=/g, ' ')
-          i.sample = i.sample.replace(/"/g, '').replace(/],/g, '锛�').replace(/\[/g, '').replace(/]/g, '')
-        })
-        if(this.tableList[0]) {
-          this.$set(this.configForm, 'fileType', this.tableList[0].fileType)
-          this.$set(this.configForm, 'collectUrl', this.tableList[0].collectUrl)
-          this.$set(this.configForm, 'storageUrl', this.tableList[0].storageUrl)
-          this.$set(this.configForm, 'ip', this.tableList[0].ip)
-          this.$set(this.configForm, 'mdbEntrustCode', this.tableList[0].mdbEntrustCode)
-          this.$set(this.configForm, 'mdbSampleCode', this.tableList[0].mdbSampleCode)
-        }
-        // 涓�鑸殑鍚堝苟琛�
-        if (this.spanConfig != undefined && this.spanConfig.rows && this.spanConfig.rows.length >
-            0) {
+      this.$axios
+        .get(
+          this.$api.deviceScope.queryDataAcquisitionConfiguration +
+          "?deviceId=" +
+          this.deviceId +
+          "&isDevice=" +
+          false
+        )
+        .then(res => {
+          this.tableList = res.data;
+          this.tableList.forEach(i => {
+            // replace(/=/g, ' ')
+            i.sample = i.sample
+              .replace(/"/g, "")
+              .replace(/],/g, "锛�")
+              .replace(/\[/g, "")
+              .replace(/]/g, "");
+          });
+          if (this.tableList[0]) {
+            this.$set(this.configForm, "fileType", this.tableList[0].fileType);
+            this.$set(
+              this.configForm,
+              "collectUrl",
+              this.tableList[0].collectUrl
+            );
+            this.$set(
+              this.configForm,
+              "storageUrl",
+              this.tableList[0].storageUrl
+            );
+            this.$set(this.configForm, "ip", this.tableList[0].ip);
+            this.$set(
+              this.configForm,
+              "entrustCode",
+              this.tableList[0].entrustCode
+            );
+            this.$set(
+              this.configForm,
+              "sampleCode",
+              this.tableList[0].sampleCode
+            );
+            this.$set(
+              this.configForm,
+              "dbFileName",
+              this.tableList[0].dbFileName
+            );
+          }
+          // 涓�鑸殑鍚堝苟琛�
+          if (
+            this.spanConfig != undefined &&
+            this.spanConfig.rows &&
+            this.spanConfig.rows.length > 0
+          ) {
             this.spanList = [];
             this.spanConfig.rows.forEach((item, index) => {
               this.spanList.push({
                 arr: [],
                 position: 0
-              })
-              this.rowspan(this.spanList[index].arr, this.spanList[index].position, item.name);
-            })
+              });
+              this.rowspan(
+                this.spanList[index].arr,
+                this.spanList[index].position,
+                item.name
+              );
+            });
           }
           // 鐗规畩鐨勫悎骞惰
-          if (this.spanConfig != undefined && this.spanConfig.special && this.spanConfig.special
-            .main && this.spanConfig.special.rows && this.spanConfig.special.rows.length > 0) {
-            this.specialSpanList = []
+          if (
+            this.spanConfig != undefined &&
+            this.spanConfig.special &&
+            this.spanConfig.special.main &&
+            this.spanConfig.special.rows &&
+            this.spanConfig.special.rows.length > 0
+          ) {
+            this.specialSpanList = [];
             this.spanConfig.special.rows.forEach((item, index) => {
               this.specialSpanList.push({
                 arr: [],
                 position: 0
-              })
-              this.rowspan(this.specialSpanList[index].arr, this.specialSpanList[index].position, this
-                .spanConfig.special.main);
-            })
+              });
+              this.rowspan(
+                this.specialSpanList[index].arr,
+                this.specialSpanList[index].position,
+                this.spanConfig.special.main
+              );
+            });
           }
-      })
+        });
     },
     submitForm4() {
       const obj = Object.assign({
@@ -380,97 +438,130 @@
         storageUrl: this.configForm.storageUrl,
         ip: this.configForm.ip,
         isDevice: true,
-        mdbEntrustCode: this.configForm.mdbEntrustCode,
-        mdbSampleCode: this.configForm.mdbSampleCode
-      })
-      this.upLoad4 = true
-      this.$axios.post(this.$api.deviceScope.saveDataAcquisitionConfiguration + "?deviceId=" + this.deviceId, obj, {headers: {
-            'Content-Type': 'application/json'
-          }}).then(res => {
-            if(res.code == 200) {
-              this.tableList = res.data
-              this.dialogVisible4 = false
-              this.init()
-              this.$message.success('鎿嶄綔鎴愬姛')
+        entrustCode: this.configForm.entrustCode,
+        sampleCode: this.configForm.sampleCode,
+        dbFileName: this.configForm.dbFileName
+      });
+      this.upLoad4 = true;
+      this.$axios
+        .post(
+          this.$api.deviceScope.saveDataAcquisitionConfiguration +
+          "?deviceId=" +
+          this.deviceId,
+          obj,
+          {
+            headers: {
+              "Content-Type": "application/json"
             }
-            this.upLoad4 = false
-      }).catch(err => {
-        this.upLoad4 = false
-      })
+          }
+        )
+        .then(res => {
+          if (res.code == 200) {
+            this.tableList = res.data;
+            this.dialogVisible4 = false;
+            this.init();
+            this.$message.success("鎿嶄綔鎴愬姛");
+          }
+          this.upLoad4 = false;
+        })
+        .catch(err => {
+          this.upLoad4 = false;
+        });
     },
-    dataConfig (row) {
+    dataConfig(row) {
       this.configForm = {
         deviceId: row.deviceId,
         inspectionItem: row.inspectionItem.trim(),
         inspectionItemSubclass: row.inspectionItemSubclass,
         structureItemParameterId: row.structureItemParameterId
-      }
-      this.dialogVisible3 = true
-      this.$axios.get(this.$api.deviceScope.queryDataAcquisitionConfiguration + "?deviceId=" + this.deviceId +
-      "&inspectionItem=" + row.inspectionItem.trim() +
-      "&isDevice=" + true +
-      "&inspectionItemSubclass=" + row.inspectionItemSubclass.trim()).then(res => {
-        const data = res.data
-        if(data[0]) {
-          this.domains.splice(0, 1)
-          this.$set(this.configForm, 'formula', data[0].formula)
-          data.forEach(i => {
-            this.domains.push({
-              referx: i.referx,
-              refery: i.refery,
-              x: i.x,
-              y: i.y,
-              id: i.id
+      };
+      this.dialogVisible3 = true;
+      this.$axios
+        .get(
+          this.$api.deviceScope.queryDataAcquisitionConfiguration +
+          "?deviceId=" +
+          this.deviceId +
+          "&inspectionItem=" +
+          row.inspectionItem.trim() +
+          "&isDevice=" +
+          true +
+          "&inspectionItemSubclass=" +
+          row.inspectionItemSubclass.trim()
+        )
+        .then(res => {
+          const data = res.data;
+          if (data[0]) {
+            this.domains.splice(0, 1);
+            this.$set(this.configForm, "formula", data[0].formula);
+            data.forEach(i => {
+              this.domains.push({
+                referx: i.referx,
+                refery: i.refery,
+                x: i.x,
+                y: i.y,
+                id: i.id
+              });
             });
-          })
-        }
-      })
+          }
+        });
     },
     submitForm3() {
-      this.$refs.configForm.validate((valid) => { // 琛ㄥ崟鏍¢獙
+      this.$refs.configForm.validate(valid => {
+        // 琛ㄥ崟鏍¢獙
         if (valid) {
           this.domains.forEach(item => {
-            const isEmpty = Object.values(item).every(val => val === '')
+            const isEmpty = Object.values(item).every(val => val === "");
             if (isEmpty) {
-              this.$message.error('璇峰~鍐欏弬鐓ф暟鎹�')
+              this.$message.error("璇峰~鍐欏弬鐓ф暟鎹�");
             }
-          })
-          this.domains.forEach(i => {
-            if(i.x == '') {
-              i.x = null
-            }
-            if(i.y == '') {
-              i.y = null
-            }
-            i.formula = this.configForm.formula
-            i.deviceId = this.deviceId
-            i.inspectionItem = this.configForm.inspectionItem
-            i.inspectionItemSubclass = this.configForm.inspectionItemSubclass
-            i.structureItemParameterId = this.configForm.structureItemParameterId
-          })
-          this.$axios.post(this.$api.deviceScope.saveDataAcquisitionConfiguration + "?deviceId=" + this.deviceId, {dataConfigList: this.domains, isDevice: false},{headers: {
-            'Content-Type': 'application/json'
-          }}).then(res => {
-            this.dialogVisible3 = false
-            this.domains = [
+          });
+          this.domains.forEach((i, index) => {
+            i.formula = this.configForm.formula;
+            i.deviceId = this.deviceId;
+            i.inspectionItem = this.configForm.inspectionItem;
+            i.inspectionItemSubclass = this.configForm.inspectionItemSubclass;
+            i.structureItemParameterId = this.configForm.structureItemParameterId;
+            i.serialNumber = this.getIndexWithAlphabet(index)
+          });
+          this.$axios
+            .post(
+              this.$api.deviceScope.saveDataAcquisitionConfiguration +
+              "?deviceId=" +
+              this.deviceId,
+              { dataConfigList: this.domains, isDevice: false },
               {
-                referx: '',
-                refery: '',
-                x: '',
-                y: '',
-                id: ''
-              }
-            ]
-            if(this.deleteList.length > 0) {
-              this.$axios.delete(this.$api.deviceScope.deleteDataAcquisitionConfiguration + "?ids=" + this.deleteList.join()).then(res => {
-                if(res.code == 200) {
-                  this.init()
+                headers: {
+                  "Content-Type": "application/json"
                 }
-              })
-            }
-            this.init()
-            this.$message.success('娣诲姞鎴愬姛')
-          })
+              }
+            )
+            .then(res => {
+              this.dialogVisible3 = false;
+              this.domains = [
+                {
+                  referx: "",
+                  refery: "",
+                  x: "",
+                  y: "",
+                  id: ""
+                }
+              ];
+              if (this.deleteList.length > 0) {
+                this.$axios
+                  .delete(
+                    this.$api.deviceScope.deleteDataAcquisitionConfiguration +
+                    "?ids=" +
+                    this.deleteList.join()
+                  )
+                  .then(res => {
+                    if (res.code == 200) {
+                      this.init();
+                    }
+                  });
+              }
+              this.init();
+              this.$message.success("娣诲姞鎴愬姛");
+            });
         } else {
           return false;
         }
@@ -478,52 +569,54 @@
     },
     removeDomain(item) {
       // 鍒犻櫎鍏紡formItem
-      const index = this.domains.indexOf(item)
+      const index = this.domains.indexOf(item);
       if (index !== -1 && this.domains.length > 1) {
-        if(item.id){
-          this.deleteList.push(item.id)
-          this.domains.splice(index, 1)
+        if (item.id) {
+          this.deleteList.push(item.id);
+          this.domains.splice(index, 1);
         } else {
-          this.domains.splice(index, 1)
+          this.domains.splice(index, 1);
         }
       } else {
-        this.$message.error('涓嶅厑璁稿垹闄ゆ渶鍚庝竴鏉℃暟鎹紒');
+        this.$message.error("涓嶅厑璁稿垹闄ゆ渶鍚庝竴鏉℃暟鎹紒");
       }
     },
     addDomain() {
       // 娣诲姞鍏紡formItem
       this.domains.push({
-        referx: '',
-        refery: '',
-        x: '',
-        y: '',
-        id: ''
+        referx: "",
+        refery: "",
+        x: "",
+        y: "",
+        id: ""
       });
     },
-    evalResult (val) {
-      this.configForm.formula = val
+    evalResult(val) {
+      this.configForm.formula = val;
       // 鏍规嵁鍏紡璁$畻鍑虹粨鏋�
     },
     sizeChange(val) {
-      this.page.size = val
+      this.page.size = val;
     },
     currentChange(val) {
-      this.page.current = val
+      this.page.current = val;
     },
-    closeForm () {
-      this.deleteList = []
-      this.domains = [{
-        referx: '',
-        refery: '',
-        x: '',
-        y: '',
-        id: ''
-      }]
-      this.dialogVisible3 = false
+    closeForm() {
+      this.deleteList = [];
+      this.domains = [
+        {
+          referx: "",
+          refery: "",
+          x: "",
+          y: "",
+          id: ""
+        }
+      ];
+      this.dialogVisible3 = false;
       this.$refs.configForm.resetFields();
     }
-  },
-}
+  }
+};
 </script>
 
 <style scoped>
@@ -532,31 +625,36 @@
 }
 
 .search_thing {
-		width: 350px;
-		display: flex;
-		align-items: center;
-	}
-  .search_label {
-		width: 110px;
+  width: 350px;
+  display: flex;
+  align-items: center;
+}
 
-		font-size: 14px;
-		text-align: right;
-	}
+.search_label {
+  width: 110px;
+
+  font-size: 14px;
+  text-align: right;
+}
+
 .data-acquisition-config {
   width: 100%;
   height: 100%;
   overflow-y: auto;
+
   .title {
     height: 60px;
     line-height: 60px;
   }
 }
+
 .page {
   width: 100%;
   height: 30px;
   text-align: right;
   margin-top: 10px;
 }
+
 .table {
   margin-top: 10px;
   background-color: #fff;
@@ -564,22 +662,27 @@
   height: calc(100% - 60px - 80px - 10px - 40px);
   padding: 20px;
 }
+
 .fomItem1 {
   display: flex;
   height: 74px;
 }
+
 .fomItem2 {
   display: flex;
   width: 100%;
 }
+
 .fomItemInput {
   width: 180px;
   margin-right: 6px;
 }
+
 .fomItemInput1 {
   width: 100%;
   margin-right: 6px;
 }
+
 >>>.el-form-item__label {
   padding-bottom: 0 !important;
 }

--
Gitblit v1.9.3