From 6140eb0f56b7adae1d4e41dbd4a1ac582dd17d9b Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期三, 12 三月 2025 11:23:29 +0800
Subject: [PATCH] Merge branch 'dev' of http://114.132.189.42:9002/r/center-lims-before-ruoyi into dev

---
 src/views/CNAS/resourceDemand/device/component/management.vue | 2022 +++++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 1,220 insertions(+), 802 deletions(-)

diff --git a/src/views/CNAS/resourceDemand/device/component/management.vue b/src/views/CNAS/resourceDemand/device/component/management.vue
index e2e7602..bfc3c45 100644
--- a/src/views/CNAS/resourceDemand/device/component/management.vue
+++ b/src/views/CNAS/resourceDemand/device/component/management.vue
@@ -1,178 +1,378 @@
 <!-- 璁惧宸ュ叿鏄庣粏 -->
 <template>
-	<div class="role_manage">
-		<div class="search" v-show="!showData">
-			<div class="search_thing">
-				<div class="search_label">鐘舵�侊細</div>
-				<el-select v-model="queryParams.deviceStatus" placeholder="鍏ㄩ儴" size="small">
-					<el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label" :value="item.value">
-					</el-option>
-				</el-select>
-			</div>
-			<div class="search_thing">
-				<div class="search_label">璁惧鍚嶇О锛�</div>
-				<div class="search_input">
-					<el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.deviceName"
-						@keyup.enter.native="refreshTable()">
-					</el-input>
-				</div>
-			</div>
-			<div class="search_thing">
-				<div class="search_label">瑙勬牸鍨嬪彿锛�</div>
-				<div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable
-						v-model="queryParams.specificationModel" @keyup.enter.native="refreshTable()"></el-input>
-				</div>
-			</div>
-			<div style="padding-left: 30px;">
-				<el-button size="small" @click="refresh()">閲� 缃�</el-button>
-				<el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button>
-				<el-button size="small" type="primary" @click="dialogVisible2 = true">鏂� 澧�</el-button>
-				<el-button size="small" type="primary" @click="handleDownOne">瀵� 鍑�</el-button>
-			</div>
-		</div>
-		<div class="table" v-show="!showData">
-			<lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 320px)'"
-				:page="page" @pagination="pagination"></lims-table>
-		</div>
-    <el-dialog :title="isUp ? '璁惧璇︽儏' : '妗f淇'" :visible.sync="dialogVisible" width="70%"
-               top="5vh"
-               :before-close="handleClose">
-      <el-row style="display:flex;justify-content: space-around;">
+  <div class="role_manage">
+    <div class="search" v-show="!showData">
+      <div class="search_thing">
+        <div class="search_label">鐘舵�侊細</div>
+        <el-select
+          v-model="queryParams.deviceStatus"
+          placeholder="鍏ㄩ儴"
+          size="small"
+        >
+          <el-option
+            v-for="item in deviceStatusList"
+            :key="item.value"
+            :label="item.label"
+            :value="item.value"
+          >
+          </el-option>
+        </el-select>
+      </div>
+      <div class="search_thing">
+        <div class="search_label">璁惧鍚嶇О锛�</div>
+        <div class="search_input">
+          <el-input
+            size="small"
+            placeholder="璇疯緭鍏�"
+            clearable
+            v-model="queryParams.deviceName"
+            @keyup.enter.native="refreshTable()"
+          >
+          </el-input>
+        </div>
+      </div>
+      <div class="search_thing">
+        <div class="search_label">瑙勬牸鍨嬪彿锛�</div>
+        <div class="search_input">
+          <el-input
+            size="small"
+            placeholder="璇疯緭鍏�"
+            clearable
+            v-model="queryParams.specificationModel"
+            @keyup.enter.native="refreshTable()"
+          ></el-input>
+        </div>
+      </div>
+      <div style="padding-left: 30px">
+        <el-button size="small" @click="refresh()">閲� 缃�</el-button>
+        <el-button size="small" type="primary" @click="refreshTable()"
+          >鏌� 璇�</el-button
+        >
+        <el-button size="small" type="primary" @click="dialogVisible2 = true"
+          >鏂� 澧�</el-button
+        >
+        <el-button size="small" type="primary" @click="handleDownOne"
+          >瀵� 鍑�</el-button
+        >
+      </div>
+    </div>
+    <div class="table" v-show="!showData">
+      <lims-table
+        :tableData="tableData"
+        :column="column"
+        :tableLoading="tableLoading"
+        :height="'calc(100vh - 320px)'"
+        :page="page"
+        @pagination="pagination"
+      ></lims-table>
+    </div>
+    <el-dialog
+      :title="isUp ? '璁惧璇︽儏' : '妗f淇'"
+      :visible.sync="dialogVisible"
+      width="70%"
+      top="5vh"
+      :before-close="handleClose"
+    >
+      <el-row style="display: flex; justify-content: space-around">
         <!-- 宸﹁竟甯冨眬 -->
         <el-col :span="7">
           <el-col>
             <!-- 鍥剧墖 -->
-            <el-image class="img" style="width:100%;height: 320px;marginBottom:16px"
-                      :src="javaApi + '/img/' + formData.imageUpload">
-              <div slot="error" class="image-error" style="width: calc(100% -2px);
-            height: 318px;
-            border-radius: 16px;
-            display: flex;
-            align-items: center;
-            justify-content: center;
-            border: 1px solid #EEEEEE;">
-                <i class="el-icon-picture-outline" style="font-size:60px;color:#666666;"></i>
+            <el-image
+              class="img"
+              style="width: 100%; height: 320px; marginbottom: 16px"
+              :src="javaApi + '/img/' + formData.imageUpload"
+            >
+              <div
+                slot="error"
+                class="image-error"
+                style="
+                  width: calc(100% -2px);
+                  height: 318px;
+                  border-radius: 16px;
+                  display: flex;
+                  align-items: center;
+                  justify-content: center;
+                  border: 1px solid #eeeeee;
+                "
+              >
+                <i
+                  class="el-icon-picture-outline"
+                  style="font-size: 60px; color: #666666"
+                ></i>
               </div>
             </el-image>
             <!-- 琛ㄥ崟 -->
-            <el-form :label-position="labelPosition" :model="formData" label-width="120px">
+            <el-form
+              :label-position="labelPosition"
+              :model="formData"
+              label-width="120px"
+            >
               <el-form-item label="浠櫒鍚嶇О:" required>
-                <el-input :disabled="isUp" v-model="formData.deviceName" size="small"></el-input>
+                <el-input
+                  :disabled="isUp"
+                  v-model="formData.deviceName"
+                  size="small"
+                ></el-input>
               </el-form-item>
               <el-form-item label="浠櫒鍚嶇ОEN:" required>
-                <el-input :disabled="isUp" v-model="formData.enDeviceName" size="small"></el-input>
+                <el-input
+                  :disabled="isUp"
+                  v-model="formData.enDeviceName"
+                  size="small"
+                ></el-input>
               </el-form-item>
               <el-form-item label="瑙勬牸鍨嬪彿:" required>
-                <el-input :disabled="isUp" v-model="formData.specificationModel"
-                          size="small"></el-input>
+                <el-input
+                  :disabled="isUp"
+                  v-model="formData.specificationModel"
+                  size="small"
+                ></el-input>
               </el-form-item>
               <el-form-item label="鐢熶骇鍘傚:">
-                <el-input :disabled="isUp" v-model="formData.manufacturer" size="small"></el-input>
+                <el-input
+                  :disabled="isUp"
+                  v-model="formData.manufacturer"
+                  size="small"
+                ></el-input>
               </el-form-item>
             </el-form>
           </el-col>
         </el-col>
         <!-- 涓棿甯冨眬 -->
         <el-col :span="7">
-          <el-form :label-position="labelPosition" :model="formData" label-width="116px">
+          <el-form
+            :label-position="labelPosition"
+            :model="formData"
+            label-width="116px"
+          >
             <el-form-item label="鏍″噯鏈嶅姟鏈烘瀯:">
-              <el-input disabled v-model="formData.calibrationServices" size="small"></el-input>
+              <el-input
+                disabled
+                v-model="formData.calibrationServices"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="鍑哄巶缂栧彿:">
-              <el-input :disabled="isUp" v-model="formData.factoryNo" size="small"></el-input>
+              <el-input
+                :disabled="isUp"
+                v-model="formData.factoryNo"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="绠$悊缂栧彿:" required>
-              <el-input :disabled="isUp" v-model="formData.managementNumber" size="small"></el-input>
+              <el-input
+                :disabled="isUp"
+                v-model="formData.managementNumber"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="璐疆鏃ユ湡:">
-              <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.acquisitionDate"
-                              type="date" format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" size="small"
-                              placeholder="閫夋嫨鏃ユ湡">
+              <el-date-picker
+                :disabled="isUp"
+                style="width: 100%"
+                v-model="formData.acquisitionDate"
+                type="date"
+                format="yyyy-MM-dd"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                size="small"
+                placeholder="閫夋嫨鏃ユ湡"
+              >
               </el-date-picker>
             </el-form-item>
             <el-form-item label="鍚敤鏃ユ湡:" required>
-              <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.activationDate"
-                              type="date" format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" size="small"
-                              placeholder="閫夋嫨鏃ユ湡">
+              <el-date-picker
+                :disabled="isUp"
+                style="width: 100%"
+                v-model="formData.activationDate"
+                type="date"
+                format="yyyy-MM-dd"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                size="small"
+                placeholder="閫夋嫨鏃ユ湡"
+              >
               </el-date-picker>
             </el-form-item>
             <el-form-item label="绠$悊浜�:">
-              <el-select v-model="formData.equipmentManager" placeholder="璇烽�夋嫨" size="small"
-                         style="width:100%">
-                <el-option :disabled="isUp" v-for="item in responsiblePersonList" :key="item.value"
-                           :label="item.label" :value="item.value">
+              <el-select
+                v-model="formData.equipmentManager"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+              >
+                <el-option
+                  :disabled="isUp"
+                  v-for="item in responsiblePersonList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="瀛樻斁鐐�:">
-              <el-input :disabled="isUp" v-model="formData.storagePoint" size="small"></el-input>
+              <el-input
+                :disabled="isUp"
+                v-model="formData.storagePoint"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="鎶�鏈寚鏍�:">
-              <el-input :disabled="isUp" v-model="formData.technicalIndicators" :rows="7" type="textarea"
-                        size="small"></el-input>
+              <el-input
+                :disabled="isUp"
+                v-model="formData.technicalIndicators"
+                :rows="7"
+                type="textarea"
+                size="small"
+              ></el-input>
             </el-form-item>
           </el-form>
         </el-col>
         <!-- 鍙宠竟甯冨眬 -->
         <el-col :span="7">
-          <el-form :label-position="labelPosition" :model="formData" label-width="140px" ref="ruleForm">
+          <el-form
+            :label-position="labelPosition"
+            :model="formData"
+            label-width="140px"
+            ref="ruleForm"
+          >
             <!-- 瀹為獙瀹ゅ垪琛� -->
             <el-form-item label="鎵�灞為儴闂�:">
-              <el-select :disabled="isUp" v-model="formData.subordinateDepartmentsId" placeholder="璇烽�夋嫨"
-                         size="small" style="width:100%">
-                <el-option v-for="item in subordinateDepartmentsList" :key="item.value"
-                           :label="item.label" :value="item.value">
+              <el-select
+                :disabled="isUp"
+                v-model="formData.subordinateDepartmentsId"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in subordinateDepartmentsList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="妫�娴嬮」鐩�:">
-              <el-cascader :disabled="isUp" v-model="formData.insProductIds" :options="options"
-                           :show-all-levels="false" :props="props" placeholder="璇烽�夋嫨" size="small"
-                           style="width:100%;" :collapse-tags="!isUp" separator="," filterable
-                           clearable></el-cascader>
+              <el-cascader
+                :disabled="isUp"
+                v-model="formData.insProductIds"
+                :options="options"
+                :show-all-levels="false"
+                :props="props"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+                :collapse-tags="!isUp"
+                separator=","
+                filterable
+                clearable
+              ></el-cascader>
             </el-form-item>
             <el-form-item label="鏈�杩戞牎鍑嗘棩鏈�:" v-if="isUp">
-              <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.latestTraceability"
-                              format="yyyy-MM-dd" value-format="yyyy-MM-dd" type="date" size="small"
-                              placeholder="閫夋嫨鏃ユ湡">
+              <el-date-picker
+                :disabled="isUp"
+                style="width: 100%"
+                v-model="formData.latestTraceability"
+                format="yyyy-MM-dd"
+                value-format="yyyy-MM-dd"
+                type="date"
+                size="small"
+                placeholder="閫夋嫨鏃ユ湡"
+              >
               </el-date-picker>
             </el-form-item>
             <el-form-item label="涓嬫鏍″噯鏃ユ湡:" v-if="isUp">
-              <el-date-picker :disabled="isUp" style="width:100%" v-model="formData.latestTraceability"
-                              format="yyyy-MM-dd" value-format="yyyy-MM-dd" type="date" size="small"
-                              placeholder="閫夋嫨鏃ユ湡">
+              <el-date-picker
+                :disabled="isUp"
+                style="width: 100%"
+                v-model="formData.latestTraceability"
+                format="yyyy-MM-dd"
+                value-format="yyyy-MM-dd"
+                type="date"
+                size="small"
+                placeholder="閫夋嫨鏃ユ湡"
+              >
               </el-date-picker>
             </el-form-item>
             <el-form-item label="璁惧绫诲瀷:">
-              <el-select :disabled="isUp" v-model="formData.largeCategory" placeholder="璇烽�夋嫨" size="small"
-                         style="width:100%">
-                <el-option v-for="item in equipmentList" :key="item.value" :label="item.label"
-                           :value="item.value">
+              <el-select
+                :disabled="isUp"
+                v-model="formData.largeCategory"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in equipmentList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="鍗曚环(涓囧厓):">
-              <el-input :disabled="isUp" v-model="formData.unitPrice" size="small"></el-input>
+              <el-input
+                :disabled="isUp"
+                v-model="formData.unitPrice"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="褰撳墠鐘舵��:" required>
-              <el-select :disabled="isUp" v-model="formData.deviceStatus" placeholder="璇烽�夋嫨" size="small"
-                         style="width:100%">
-                <el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label"
-                           :value="item.value">
+              <el-select
+                :disabled="isUp"
+                v-model="formData.deviceStatus"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in deviceStatusList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="鏍″噯鍛ㄦ湡锛堟湀锛�:" required>
-              <el-input :disabled="isUp" v-model="formData.calibrationDate" size="small"></el-input>
+              <el-input
+                :disabled="isUp"
+                v-model="formData.calibrationDate"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="鍥剧墖:">
               <div
-                style="border: 1px solid #DCDFE6;border-radius:4px;height:32px;lineHeight:32px;display:flex;justify-content: space-around;font-size: 13px;">
-                <div v-show="formData.imageName" class="picName">{{ formData.imageName }}</div>
-                <el-upload :disabled="isUp" :action="action" :on-success="handleSuccessUpImg2"
-                           :show-file-list="false" accept='image/jpg,image/jpeg,image/png' :headers="uploadHeader"
-                           :on-change="beforeUpload" :on-error="onError" ref='upload'>
-                  <el-button type="text" style="height:30px;padding-top:8px">涓婁紶</el-button>
+                style="
+                  border: 1px solid #dcdfe6;
+                  border-radius: 4px;
+                  height: 32px;
+                  lineheight: 32px;
+                  display: flex;
+                  justify-content: space-around;
+                  font-size: 13px;
+                "
+              >
+                <div v-show="formData.imageName" class="picName">
+                  {{ formData.imageName }}
+                </div>
+                <el-upload
+                  :disabled="isUp"
+                  :action="action"
+                  :on-success="handleSuccessUpImg2"
+                  :show-file-list="false"
+                  accept="image/jpg,image/jpeg,image/png"
+                  :headers="uploadHeader"
+                  :on-change="beforeUpload"
+                  :on-error="onError"
+                  ref="upload"
+                >
+                  <el-button type="text" style="height: 30px; padding-top: 8px"
+                    >涓婁紶</el-button
+                  >
                 </el-upload>
               </div>
             </el-form-item>
@@ -180,112 +380,218 @@
         </el-col>
       </el-row>
       <span slot="footer" class="dialog-footer">
-				<el-row v-if="!isUp">
-					<el-button @click="handleClose">鍙� 娑�</el-button>
-					<el-button type="primary" @click="submitForm" :loading="upLoad">纭� 瀹�</el-button>
-				</el-row>
-			</span>
+        <el-row v-if="!isUp">
+          <el-button @click="handleClose">鍙� 娑�</el-button>
+          <el-button type="primary" @click="submitForm" :loading="upLoad"
+            >纭� 瀹�</el-button
+          >
+        </el-row>
+      </span>
     </el-dialog>
     <!-- 鏂板-->
-    <el-dialog title="鏂板璁惧" top="5vh" :visible.sync="dialogVisible2" width="70%" :before-close="handleClose2">
-      <el-row style="display:flex;justify-content: space-around;">
+    <el-dialog
+      title="鏂板璁惧"
+      top="5vh"
+      :visible.sync="dialogVisible2"
+      width="70%"
+      :before-close="handleClose2"
+    >
+      <el-row style="display: flex; justify-content: space-around">
         <!-- 宸﹁竟甯冨眬 -->
         <el-col :span="7">
           <el-col>
             <!-- 鍥剧墖 -->
-            <el-image class="img" style="width:100%;height: 320px;margin-bottom:16px"
-                      :src="javaApi + '/img/' + formData2.imageUpload">
-              <div slot="error" class="image-error" style="width: calc(100% -2px);
-          height: 318px;
-          border-radius: 16px;
-          display: flex;
-          align-items: center;
-          justify-content: center;
-          border: 1px solid #EEEEEE;">
-                <i class="el-icon-picture-outline" style="font-size:60px;color:#666666;"></i>
+            <el-image
+              class="img"
+              style="width: 100%; height: 320px; margin-bottom: 16px"
+              :src="javaApi + '/img/' + formData2.imageUpload"
+            >
+              <div
+                slot="error"
+                class="image-error"
+                style="
+                  width: calc(100% -2px);
+                  height: 318px;
+                  border-radius: 16px;
+                  display: flex;
+                  align-items: center;
+                  justify-content: center;
+                  border: 1px solid #eeeeee;
+                "
+              >
+                <i
+                  class="el-icon-picture-outline"
+                  style="font-size: 60px; color: #666666"
+                ></i>
               </div>
             </el-image>
             <!-- 琛ㄥ崟 -->
-            <el-form :label-position="labelPosition" :model="formData2" label-width="120px">
+            <el-form
+              :label-position="labelPosition"
+              :model="formData2"
+              label-width="120px"
+            >
               <el-form-item label="浠櫒鍚嶇О:" required>
-                <el-input v-model="formData2.deviceName" size="small"></el-input>
+                <el-input
+                  v-model="formData2.deviceName"
+                  size="small"
+                ></el-input>
               </el-form-item>
               <el-form-item label="浠櫒鍚嶇ОEN:" required>
-                <el-input v-model="formData2.enDeviceName" size="small"></el-input>
+                <el-input
+                  v-model="formData2.enDeviceName"
+                  size="small"
+                ></el-input>
               </el-form-item>
               <el-form-item label="瑙勬牸鍨嬪彿:" required>
-                <el-input v-model="formData2.specificationModel" size="small"></el-input>
+                <el-input
+                  v-model="formData2.specificationModel"
+                  size="small"
+                ></el-input>
               </el-form-item>
               <el-form-item label="鐢熶骇鍘傚:">
-                <el-input v-model="formData2.manufacturer" size="small"></el-input>
+                <el-input
+                  v-model="formData2.manufacturer"
+                  size="small"
+                ></el-input>
               </el-form-item>
             </el-form>
           </el-col>
         </el-col>
         <!-- 涓棿甯冨眬 -->
         <el-col :span="7">
-          <el-form :label-position="labelPosition" :model="formData2" label-width="110px">
+          <el-form
+            :label-position="labelPosition"
+            :model="formData2"
+            label-width="110px"
+          >
             <!-- <el-form-item label="鐢熶骇鍘傚EN:">
               <el-input v-model="formData2.factoryNo" size="small"></el-input>
             </el-form-item> -->
             <el-form-item label="鏍″噯鏈嶅姟鏈烘瀯:">
-              <el-input v-model="formData2.calibrationServices" size="small"></el-input>
+              <el-input
+                v-model="formData2.calibrationServices"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="鍑哄巶缂栧彿:">
               <el-input v-model="formData2.factoryNo" size="small"></el-input>
             </el-form-item>
             <el-form-item label="绠$悊缂栧彿:" required>
-              <el-input v-model="formData2.managementNumber" size="small"></el-input>
+              <el-input
+                v-model="formData2.managementNumber"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="璐疆鏃ユ湡:">
-              <el-date-picker style="width:100%" v-model="formData2.acquisitionDate" type="date"
-                              format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" size="small" placeholder="閫夋嫨鏃ユ湡">
+              <el-date-picker
+                style="width: 100%"
+                v-model="formData2.acquisitionDate"
+                type="date"
+                format="yyyy-MM-dd"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                size="small"
+                placeholder="閫夋嫨鏃ユ湡"
+              >
               </el-date-picker>
             </el-form-item>
             <el-form-item label="鍚敤鏃ユ湡:" required>
-              <el-date-picker style="width:100%" v-model="formData2.activationDate" type="date"
-                              format="yyyy-MM-dd" value-format="yyyy-MM-dd HH:mm:ss" size="small" placeholder="閫夋嫨鏃ユ湡">
+              <el-date-picker
+                style="width: 100%"
+                v-model="formData2.activationDate"
+                type="date"
+                format="yyyy-MM-dd"
+                value-format="yyyy-MM-dd HH:mm:ss"
+                size="small"
+                placeholder="閫夋嫨鏃ユ湡"
+              >
               </el-date-picker>
             </el-form-item>
             <el-form-item label="绠$悊浜�:">
-              <el-select v-model="formData2.equipmentManager" placeholder="璇烽�夋嫨" size="small"
-                         style="width:100%">
-                <el-option v-for="item in responsiblePersonList" :key="item.value" :label="item.label"
-                           :value="item.value">
+              <el-select
+                v-model="formData2.equipmentManager"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in responsiblePersonList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="瀛樻斁鐐�:">
-              <el-input v-model="formData2.storagePoint" size="small"></el-input>
+              <el-input
+                v-model="formData2.storagePoint"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="鎶�鏈寚鏍�:">
-              <el-input v-model="formData2.technicalIndicators" :rows="7" type="textarea"
-                        size="small"></el-input>
+              <el-input
+                v-model="formData2.technicalIndicators"
+                :rows="7"
+                type="textarea"
+                size="small"
+              ></el-input>
             </el-form-item>
           </el-form>
         </el-col>
         <!-- 鍙宠竟甯冨眬 -->
         <el-col :span="7">
-          <el-form :label-position="labelPosition" :model="formData2" label-width="120px" ref="ruleForm">
+          <el-form
+            :label-position="labelPosition"
+            :model="formData2"
+            label-width="120px"
+            ref="ruleForm"
+          >
             <!-- 瀹為獙瀹ゅ垪琛� -->
             <el-form-item label="鎵�灞為儴闂�:">
-              <el-select v-model="formData2.subordinateDepartmentsId" placeholder="璇烽�夋嫨" size="small"
-                         style="width:100%">
-                <el-option v-for="item in subordinateDepartmentsList" :key="item.value"
-                           :label="item.label" :value="item.value">
+              <el-select
+                v-model="formData2.subordinateDepartmentsId"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in subordinateDepartmentsList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="妫�娴嬮」鐩�:">
-              <el-cascader v-model="formData2.insProductIds" :options="options" :show-all-levels="false"
-                           :props="props" placeholder="璇烽�夋嫨" size="small" style="width:100%" collapse-tags
-                           separator="," filterable clearable></el-cascader>
+              <el-cascader
+                v-model="formData2.insProductIds"
+                :options="options"
+                :show-all-levels="false"
+                :props="props"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+                collapse-tags
+                separator=","
+                filterable
+                clearable
+              ></el-cascader>
             </el-form-item>
             <el-form-item label="璁惧绫诲瀷:">
-              <el-select v-model="formData2.largeCategory" placeholder="璇烽�夋嫨" size="small"
-                         style="width:100%">
-                <el-option v-for="item in equipmentList" :key="item.value" :label="item.label"
-                           :value="item.value">
+              <el-select
+                v-model="formData2.largeCategory"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in equipmentList"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
@@ -293,24 +599,55 @@
               <el-input v-model="formData2.unitPrice" size="small"></el-input>
             </el-form-item>
             <el-form-item label="褰撳墠鐘舵��:" required>
-              <el-select v-model="formData2.deviceStatus" placeholder="璇烽�夋嫨" size="small"
-                         style="width:100%">
-                <el-option v-for="item in deviceStatusList" :key="item.id" :label="item.label"
-                           :value="item.value">
+              <el-select
+                v-model="formData2.deviceStatus"
+                placeholder="璇烽�夋嫨"
+                size="small"
+                style="width: 100%"
+              >
+                <el-option
+                  v-for="item in deviceStatusList"
+                  :key="item.id"
+                  :label="item.label"
+                  :value="item.value"
+                >
                 </el-option>
               </el-select>
             </el-form-item>
             <el-form-item label="鏍″噯鍛ㄦ湡锛堟湀锛�:" required>
-              <el-input v-model="formData2.calibrationDate" size="small"></el-input>
+              <el-input
+                v-model="formData2.calibrationDate"
+                size="small"
+              ></el-input>
             </el-form-item>
             <el-form-item label="鍥剧墖:">
               <div
-                style="border: 1px solid #DCDFE6;border-radius:4px;height:32px;line-height:32px;display:flex;justify-content: space-around;font-size: 13px;">
-                <div v-show="formData2.imageName" class="picName">{{ formData2.imageName }}</div>
-                <el-upload :action="action" :on-success="handleSuccessUpImg2" :show-file-list="false"
-                           accept='image/jpg,image/jpeg,image/png' :headers="uploadHeader" :on-change="beforeUpload"
-                           :on-error="onError" ref='upload'>
-                  <el-button type="text" style="height:30px;padding-top:8px">涓婁紶</el-button>
+                style="
+                  border: 1px solid #dcdfe6;
+                  border-radius: 4px;
+                  height: 32px;
+                  line-height: 32px;
+                  display: flex;
+                  justify-content: space-around;
+                  font-size: 13px;
+                "
+              >
+                <div v-show="formData2.imageName" class="picName">
+                  {{ formData2.imageName }}
+                </div>
+                <el-upload
+                  :action="action"
+                  :on-success="handleSuccessUpImg2"
+                  :show-file-list="false"
+                  accept="image/jpg,image/jpeg,image/png"
+                  :headers="uploadHeader"
+                  :on-change="beforeUpload"
+                  :on-error="onError"
+                  ref="upload"
+                >
+                  <el-button type="text" style="height: 30px; padding-top: 8px"
+                    >涓婁紶</el-button
+                  >
                 </el-upload>
               </div>
             </el-form-item>
@@ -318,695 +655,776 @@
         </el-col>
       </el-row>
       <span slot="footer" class="dialog-footer">
-				<el-row>
-					<el-button @click="handleClose2">鍙� 娑�</el-button>
-					<el-button type="primary" @click="submitForm2" :loading="upLoad2">纭� 瀹�</el-button>
-				</el-row>
-			</span>
+        <el-row>
+          <el-button @click="handleClose2">鍙� 娑�</el-button>
+          <el-button type="primary" @click="submitForm2" :loading="upLoad2"
+            >纭� 瀹�</el-button
+          >
+        </el-row>
+      </span>
     </el-dialog>
     <el-dialog title="鏁伴噰閰嶇疆" :visible.sync="dialogVisible3" 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 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_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 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_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.storageUrl"></el-input>
+      <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.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>
-        <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.refer"></el-input>
+      <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.refer"
+        ></el-input>
       </div>
-      <div class="search_thing" style="margin-bottom: 14px;">
-        <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>X锛�</div>
-        <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.x"></el-input>
+      <div class="search_thing" style="margin-bottom: 14px">
+        <div class="search_label">
+          <span style="color: red; margin-right: 4px">*</span>X锛�
+        </div>
+        <el-input
+          size="small"
+          placeholder="璇疯緭鍏�"
+          clearable
+          v-model="configForm.x"
+        ></el-input>
       </div>
-      <div class="search_thing" style="margin-bottom: 14px;">
-        <div class="search_label"><span style="color:red;margin-right: 4px;">*</span>Y锛�</div>
-        <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.y"></el-input>
+      <div class="search_thing" style="margin-bottom: 14px">
+        <div class="search_label">
+          <span style="color: red; margin-right: 4px">*</span>Y锛�
+        </div>
+        <el-input
+          size="small"
+          placeholder="璇疯緭鍏�"
+          clearable
+          v-model="configForm.y"
+        ></el-input>
       </div>
       <div class="search_thing">
         <div class="search_label">鍏紡锛�</div>
-        <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="configForm.formula"></el-input>
+        <el-input
+          size="small"
+          placeholder="璇疯緭鍏�"
+          clearable
+          v-model="configForm.formula"
+        ></el-input>
       </div>
       <span slot="footer" class="dialog-footer">
-				<el-row>
-					<el-button @click="dialogVisible3 = false">鍙� 娑�</el-button>
-					<el-button type="primary" @click="submitForm3" :loading="upLoad3">纭� 瀹�</el-button>
-				</el-row>
-			</span>
+        <el-row>
+          <el-button @click="dialogVisible3 = false">鍙� 娑�</el-button>
+          <el-button type="primary" @click="submitForm3" :loading="upLoad3"
+            >纭� 瀹�</el-button
+          >
+        </el-row>
+      </span>
     </el-dialog>
-		<dataAcquisitionConfig v-if="showData" :deviceId="deviceId" />
-	</div>
+    <dataAcquisitionConfig v-if="showData" :deviceId="deviceId" />
+  </div>
 </template>
 
 <script>
 import limsTable from "@/components/Table/lims-table.vue";
-import dataAcquisitionConfig from './acquisitionConfig.vue'
+import dataAcquisitionConfig from "./acquisitionConfig.vue";
 import {
-	obtainItemParameterList,
-	exportEquipmentDetails,
-	getInsProduction,
-	upDeviceParameter,
-	addDeviceParameter,
-	numberCollect,
-	getDeviceParameter,
-	delDeviceParameter,
-} from '@/api/cnas/resourceDemand/device.js'
+  obtainItemParameterList,
+  exportEquipmentDetails,
+  getInsProduction,
+  upDeviceParameter,
+  addDeviceParameter,
+  numberCollect,
+  getDeviceParameter,
+  delDeviceParameter,
+} from "@/api/cnas/resourceDemand/device.js";
 import { selectUserCondition } from "@/api/system/user";
 export default {
-	props: {
-		clickNodeVal: {
-			type: Object,
-			default: () => {
-				return {};
-			}
-		}
-	},
-	components: {
-		limsTable,
-		dataAcquisitionConfig,
-	},
-	data() {
-		return {
-			dateFormat: 'yyyy-MM-dd',
-			deviceId: '',
-			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' },
-			],
-			//鏄惁鏄。妗堜慨璁�  true涓嶆槸 false鏄�
-			isUp: true,
-			formData: {
-				authorizedPerson: []
-			},
-			formData2: {
-				imageUpload: '',
-				imageName: '',
-				deviceStatus: '',
-				authorizedPerson: []
-			},
-			value: '',
-			props: { multiple: true, emitPath: false, value: 'id', label: 'name' },
-			options: [],
-			labelPosition: 'right',
-			dialogVisible: false,
-			dialogVisible2: false,
-			addPower: false,
-			showData: false, // 鏁伴噰閰嶇疆椤甸潰
-			tableList: [],
-			addDia: true,
-			addPower: true,
-			//璁惧绫诲瀷鍒楄〃
-			equipmentList: [],
-			// 璐熻矗浜哄垪琛�
-			responsiblePersonList: [],
-			// 鎺堟潈浜哄垪琛�
-			authorizerList: [],
-			// 褰撳墠鐘舵�佸垪琛�
-			deviceStatusList: [],
-			// 鎵�灞為儴闂�
-			subordinateDepartmentsList: [],
-			upLoad: false,
-			upLoad2: false,
-			dialogVisible3: false,
-			upLoad3: false,
-			configForm: {},
-			laboratoryNameIsNull: false,
-			queryParams: {},
-			tableData: [],
-			column: [
-				{ label: "璁惧鍚嶇О", prop: "deviceName", dataType: 'link', linkMethod: 'selectAllByOne' },
-				{ label: "璁惧鍚嶇ОEN", prop: "enDeviceName" },
-				{
-					label: "瑙勬牸鍨嬪彿",
-					prop: "specificationModel",
-				},
-				{ label: "鐢熶骇鍘傚", prop: "manufacturer" },
-				{ label: "鍑哄巶缂栧彿", prop: "factoryNo" },
-				{ label: "绠$悊缂栧彿", prop: "managementNumber" },
-				{ label: "鎶�鏈寚鏍�", prop: "technicalIndicators" },
-				{ label: "璐疆鏃ユ湡", prop: "acquisitionDate" },
-				{ label: "鍚敤鏃ユ湡", prop: "activationDate" },
-				{ label: "绠$悊浜�", prop: "equipmentManagerUser" },
-				{ label: "瀛樻斁鐐�", prop: "storagePoint" },
-				{ label: "鎵�灞為儴闂�", prop: "laboratoryName" },
-				{ label: "妫�楠岄」鐩�", prop: "insProductItem" },
-				{ label: "鏍″噯鏈嶅姟鏈烘瀯", prop: "calibrationServices" },
-				{ label: "鏈�杩戞牎鍑嗘棩鏈�", prop: "lastCalibrationDateTwo" },
-				{ label: "鏈�杩戞牳鏌ユ棩鏈�", prop: "lastCalibrationDate" },
-				{ label: "涓嬫鏍″噯鏃ユ湡", prop: "nextCalibrationDateTwo" },
-				{ label: "涓嬫鏍告煡鏃ユ湡", prop: "nextCalibrationDate" },
-				{
-					label: "璁惧鍒嗙被", prop: "largeCategory", dataType: "tag",
-					formatData: (params) => {
-						return this.equipmentList.find(m => m.value == params).label
-					},
-					formatType: (params) => {
-						return this.equipmentList.find(m => m.value == params).type
-					}
-				},
-				{ label: "鍗曚环", prop: "unitPrice" },
-				{
-					label: "璁惧鐘舵��", prop: "deviceStatus", dataType: "tag",
-					formatData: (params) => {
-						return this.deviceStatusList.find(m => m.value == params).label
-					},
-					formatType: (params) => {
-						return this.deviceStatusList.find(m => m.value == params).type
-					}
-				},
-				{ label: "鏍″噯鍛ㄦ湡(鏈�)", prop: "calibrationDate" },
-				{
-					dataType: "action",
-					fixed: "right",
-					label: "鎿嶄綔",
-					operation: [
-						{
-							name: "妗f淇",
-							type: "text",
-							clickFun: (row) => {
-								this.isUpdate(row);
-							},
-						},
-						{
-							name: "鏁伴噰閰嶇疆",
-							type: "text",
-							clickFun: (row) => {
-								this.handleConfig(row);
-							},
-							disabled: (row) => {
-								return row.insProductItem == null || row.insProductItem === ''
-							}
-						},
-						{
-							name: "鍒犻櫎",
-							type: "text",
-							clickFun: (row) => {
-								this.handleDelete(row);
-							},
-						},
-					],
-				},
-			],
-			page: {
-				total: 0,
-				size: 10,
-				current: 0,
-			},
-			tableLoading: false,
-		}
-	},
-	computed: {
-		action() {
-			return this.javaApi + '/deviceScope/uploadFile'
-		}
-	},
-	mounted() {
-		this.selectEnumByCategory()
-		this.selectDevicePrincipal()
-		this.obtainItemParameterList()
-		this.getInsProductIds()
-		// 鍒濆鍖�
-		this.clickSidebar(this.clickNodeVal)
-	},
-	methods: {
-		//鍒嗙被
-		handleNotification(cate) {
-			this.queryParams.largeCategory = cate
-		},
-		obtainItemParameterList() {
-			obtainItemParameterList().then(res => {
-				let data = []
-				res.data.forEach(a => {
-					data.push({
-						label: a.laboratoryName,
-						value: a.id
-					})
-				})
-				this.subordinateDepartmentsList = data
-			})
-		},
-		getList() {
-			this.tableLoading = true;
-			let param = { laboratoryNameIsNull: this.laboratoryNameIsNull, ...this.queryParams, ...this.page };
-			delete param.total;
-			getDeviceParameter({ ...param })
-				.then((res) => {
-					this.tableLoading = false;
-					if (res.code === 200) {
-						this.tableData = res.data.records;
-						this.page.total = res.data.total;
-					}
-				})
-				.catch((err) => {
-					this.tableLoading = false;
-				});
-		},
-		pagination({ page, limit }) {
-			this.page.current = page;
-			this.page.size = limit;
-			this.getList();
-		},
-		refresh() {
-			this.queryParams = {};
-			this.page.current = 1;
-			this.getList();
-		},
-		refreshTable() {
-			this.page.current = 1;
-			this.getList();
-		},
-		// 瀵煎嚭
-		handleDownOne() {
-			this.outLoading = true
-			exportEquipmentDetails().then(res => {
-				this.outLoading = false
-				const blob = new Blob([res], { type: 'application/octet-stream' });
-				this.$download.saveAs(blob, '璁惧浠櫒涓�瑙堣〃.doc')
-			})
-		},
-		// 鑾峰彇瀛楀吀
-		selectEnumByCategory() {
-			// 璁惧鐘舵��
-			this.getDicts("device_status").then((response) => {
-				this.deviceStatusList = this.dictToValue(response.data);
-			});
-			// 璁惧鍒嗙被
-			this.getDicts("device_type").then((response) => {
-				this.equipmentList = this.dictToValue(response.data);
-			});
-		},
-		// 鑾峰彇璐熻矗浜哄垪琛�
-		selectDevicePrincipal() {
-			selectUserCondition().then(res => {
-				let data = [];
-				res.data.forEach((a) => {
-					data.push({
-						label: a.name,
-						value: a.id,
-					});
-				});
-				this.responsiblePersonList = data
-				this.authorizerList = data
-			})
-		},
-		getInsProductIds() {
-			getInsProduction().then(res => {
-				this.options = res.data.map((m, i) => {
-					m.id = m.name;
-					let children = m.children.map(n => {
-						n.label = n.name;
-						n.value = n.id;
-						return n
-					})
-					return m
-				})
-				this.options.forEach(item => {
-					if (item.children.length == 0) {
-						item.children = null;
-					} else {
-						item.children.forEach(m => {
-							if (m.children.length == 0) {
-								m.children = null;
-							} else {
-								m.children.forEach(n => {
-									if (n.children && n.children.length == 0) {
-										n.children = null;
-									}
-								})
-							}
-						})
-					}
-				})
-			})
-		},
-		handleClose() {
-			this.formData = {
-				authorizedPerson: []
-			}
-			this.formData2 = {
-				imageUpload: '',
-				imageName: '',
-				authorizedPerson: []
-			}
-			this.dialogVisible = false;
-			this.upLoad = false;
-		},
-		handleClose2() {
-			this.formData = {
-				authorizedPerson: []
-			}
-			this.formData2 = {
-				imageUpload: '',
-				imageName: '',
-				authorizedPerson: []
-			}
-			this.dialogVisible2 = false;
-			this.upLoad = false;
-		},
-		selectAllByOne(row) {
-			this.isUp = true
-			//鎵撳紑寮规
-			this.dialogVisible = true;
-			//row = 鐐瑰嚮瀵瑰簲琛屽��
-			//澶嶅埗缁檉ormData
-			this.formData = this.HaveJson(row);
-			console.log(row.insProductIds + 'valll');
-			this.formData.insProductIds = row.insProductIds ? row.insProductIds.split(',') : [];
-		},
-		isUpdate(row) {
-			//淇敼  isUp 涓烘。妗堜慨鏀�
-			this.isUp = false
-			//鎵撳紑寮规
-			this.dialogVisible = true;
-			//row = 鐐瑰嚮瀵瑰簲琛屽�间竴琛屽��
-			//澶嶅埗缁檉ormData
-			this.formData = this.HaveJson(row);
-			if (typeof (row.insProductIds) === 'number') {
-				row.insProductIds = row.insProductIds + ''
-			}
-			this.formData.deviceStatus = this.formData.deviceStatus + ''
-			this.formData.insProductIds = row.insProductIds ? row.insProductIds.split(',') : [];
-			// 灏嗘椂闂存牸寮忎负yyyy-MM-dd 杩涜杞崲
-			const dateRegex = /^\d{4}-\d{2}-\d{2}$/
-			Object.keys(this.formData).forEach(key => {
-				if (dateRegex.test(this.formData[key])) {
-					this.formData[key] = `${this.formData[key]} 00:00:00`
-				}
-			})
-		},
-		beforeUpload(file) {
-			if (file.size > 1024 * 1024 * 10) {
-				this.$message.error('涓婁紶鏂囦欢涓嶈秴杩�10M');
-				this.$refs.upload.clearFiles()
-				return false;
-			} else {
-				return true;
-			}
-		},
-		onError(err, file, fileList) {
-			this.$message.error('涓婁紶澶辫触')
-			this.$refs.upload.clearFiles()
-		},
-		// 涓婁紶鍥剧墖鎴愬姛
-		handleSuccessUpImg(response,) {
-			if (response.code == 200) {
-				this.formData.imageUpload = response.data.url;
-				this.formData.imageName = response.data.name;
-			}
-		},
-		handleSuccessUpImg2(response) {
-			if (response.code == 200) {
-				this.$nextTick(() => {
-					this.formData.imageUpload = response.data.url;
-					this.formData.imageName = response.data.name;
-					this.formData2.imageUpload = response.data.url;
-					this.formData2.imageName = response.data.name;
-				})
-			}
-		},
-		submitForm() {
-			if (!this.formData.deviceName) {
-				this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉�')
-				return
-			}
-			if (!this.formData.enDeviceName) {
-				this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉癊N')
-				return
-			}
-			if (!this.formData.specificationModel) {
-				this.$message.error('鏈緭鍏ヨ鏍煎瀷鍙�')
-				return
-			}
-			if (!this.formData.managementNumber) {
-				this.$message.error('鏈緭鍏ョ鐞嗙紪鍙�')
-				return
-			}
-			if (!this.formData.activationDate) {
-				this.$message.error('鏈緭鍏ユ牎鍑嗘湁鏁堟湡')
-				return
-			}
-			if (!this.formData.subordinateDepartmentsId) {
-				this.$message.error('鏈�夋嫨鎵�灞為儴闂�')
-				return
-			}
-			if (this.formData.deviceStatus === '' || this.formData.deviceStatus === null) {
-				this.$message.error('鏈�夋嫨褰撳墠鐘舵��')
-				return
-			}
-			if (!this.formData.calibrationDate) {
-				this.$message.error('鏈緭鍏ユ牎鍑嗗懆鏈燂紙鏈堬級')
-				return
-			}
-			delete this.formData.createTime
-			delete this.formData.updateTime
-			delete this.formData.createUser
-			delete this.formData.updateUser
-			const formData = this.HaveJson(this.formData)
-			formData.insProductIds = formData.insProductIds ? formData.insProductIds.join() : ''
-			if (formData.authorizedPerson.length === 0) {
-				formData.authorizedPerson = ''
-			} else {
-				formData.authorizedPerson = JSON.stringify(formData.authorizedPerson)
-			}
-			this.upLoad = true;
-			upDeviceParameter(formData).then(res => {
-				this.$message.success('淇敼鎴愬姛')
-				this.upLoad = false
-				this.refreshTable('page')
-				this.dialogVisible = false
-			}).catch(e => {
-				this.$message.error('淇敼澶辫触')
-				this.dialogVisible = false
-				this.upLoad = false
-			})
-		},
-		// 鎻愪氦妗f淇--鏂板
-		submitForm2() {
-			if (!this.formData2.deviceName) {
-				this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉�')
-				return
-			}
-			if (!this.formData2.enDeviceName) {
-				this.$message.error('鏈緭鍏ヤ华鍣ㄥ悕绉癊N')
-				return
-			}
-			if (!this.formData2.specificationModel) {
-				this.$message.error('鏈緭鍏ヨ鏍煎瀷鍙�')
-				return
-			}
-			if (!this.formData2.managementNumber) {
-				this.$message.error('鏈緭鍏ョ鐞嗙紪鍙�')
-				return
-			}
-			if (!this.formData2.activationDate) {
-				this.$message.error('鏈緭鍏ユ牎鍑嗘湁鏁堟湡')
-				return
-			}
-			if (!this.formData2.deviceStatus) {
-				this.$message.error('鏈�夋嫨褰撳墠鐘舵��')
-				return
-			}
-			if (!this.formData2.calibrationDate) {
-				this.$message.error('杈撳叆鏍″噯鍛ㄦ湡锛堟湀锛�')
-				return
-			}
-			const formData = this.HaveJson(this.formData2)
-			formData.insProductIds = formData.insProductIds ? formData.insProductIds.join() : ''
-			if (formData.authorizedPerson.length === 0) {
-				formData.authorizedPerson = ''
-			} else {
-				formData.authorizedPerson = JSON.stringify(formData.authorizedPerson)
-			}
-			this.upLoad2 = true;
-			addDeviceParameter(formData).then(res => {
-				this.$message.success('鎻愪氦鎴愬姛')
-				this.upLoad2 = false
-				this.refreshTable('page')
-				this.dialogVisible2 = false
-				this.formData2 = {
-					imageUpload: '',
-					imageName: '',
-					authorizedPerson: []
-				}
-			}).catch(e => {
-				this.$message.error('鎻愪氦澶辫触')
-				this.dialogVisible2 = false
-				this.upLoad2 = false
-			})
-		},
-		handleConfig(row) {
-			let list = []
-			if (row.insProductItem) {
-				list = row.insProductItem.split(';')
-			}
-			let list2 = []
-			list.map((item) => {
-				const obj = Object.assign({
-					deviceId: row.id,
-					insProductItem: item,
-				})
-				list2.push(obj)
-			})
-			this.tableList = list2
-			this.deviceId = row.id
-			this.$nextTick(() => {
-				this.showData = true
-			})
-		},
-		closeDataVue() {
-			this.clickSidebar(this.clickNodeVal)
-			this.showData = false
-		},
-		submitForm3() {
-			if (!this.configForm.ip) {
-				this.$message.error('璇峰~鍐橧P');
-				return
-			}
-			if (!this.configForm.collectUrl) {
-				this.$message.error('璇峰~鍐欓噰闆嗗湴鍧�');
-				return
-			}
-			if (!this.configForm.storageUrl) {
-				this.$message.error('璇峰~鍐欏偍瀛樺湴鍧�');
-				return
-			}
-			if (!this.configForm.refer) {
-				this.$message.error('璇峰~鍐欏弬鐓�');
-				return
-			}
-			if (!this.configForm.x) {
-				this.$message.error('璇峰~鍐橷');
-				return
-			}
-			if (!this.configForm.y) {
-				this.$message.error('璇峰~鍐橸');
-				return
-			}
+  props: {
+    clickNodeVal: {
+      type: Object,
+      default: () => {
+        return {};
+      },
+    },
+  },
+  components: {
+    limsTable,
+    dataAcquisitionConfig,
+  },
+  data() {
+    return {
+      dateFormat: "yyyy-MM-dd",
+      deviceId: "",
+      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" },
+      ],
+      //鏄惁鏄。妗堜慨璁�  true涓嶆槸 false鏄�
+      isUp: true,
+      formData: {
+        authorizedPerson: [],
+      },
+      formData2: {
+        imageUpload: "",
+        imageName: "",
+        deviceStatus: "",
+        authorizedPerson: [],
+      },
+      value: "",
+      props: { multiple: true, emitPath: false, value: "id", label: "name" },
+      options: [],
+      labelPosition: "right",
+      dialogVisible: false,
+      dialogVisible2: false,
+      addPower: false,
+      showData: false, // 鏁伴噰閰嶇疆椤甸潰
+      tableList: [],
+      addDia: true,
+      addPower: true,
+      //璁惧绫诲瀷鍒楄〃
+      equipmentList: [],
+      // 璐熻矗浜哄垪琛�
+      responsiblePersonList: [],
+      // 鎺堟潈浜哄垪琛�
+      authorizerList: [],
+      // 褰撳墠鐘舵�佸垪琛�
+      deviceStatusList: [],
+      // 鎵�灞為儴闂�
+      subordinateDepartmentsList: [],
+      upLoad: false,
+      upLoad2: false,
+      dialogVisible3: false,
+      upLoad3: false,
+      configForm: {},
+      laboratoryNameIsNull: false,
+      queryParams: {},
+      tableData: [],
+      column: [
+        {
+          label: "璁惧鍚嶇О",
+          prop: "deviceName",
+          dataType: "link",
+          linkEvent: { method: "selectAllByOne", vueComponent: this },
+        },
+        { label: "璁惧鍚嶇ОEN", prop: "enDeviceName" },
+        {
+          label: "瑙勬牸鍨嬪彿",
+          prop: "specificationModel",
+        },
+        { label: "鐢熶骇鍘傚", prop: "manufacturer" },
+        { label: "鍑哄巶缂栧彿", prop: "factoryNo" },
+        { label: "绠$悊缂栧彿", prop: "managementNumber" },
+        { label: "鎶�鏈寚鏍�", prop: "technicalIndicators" },
+        { label: "璐疆鏃ユ湡", prop: "acquisitionDate" },
+        { label: "鍚敤鏃ユ湡", prop: "activationDate" },
+        { label: "绠$悊浜�", prop: "equipmentManagerUser" },
+        { label: "瀛樻斁鐐�", prop: "storagePoint" },
+        { label: "鎵�灞為儴闂�", prop: "laboratoryName" },
+        { label: "妫�楠岄」鐩�", prop: "insProductItem" },
+        { label: "鏍″噯鏈嶅姟鏈烘瀯", prop: "calibrationServices" },
+        { label: "鏈�杩戞牎鍑嗘棩鏈�", prop: "lastCalibrationDateTwo" },
+        { label: "鏈�杩戞牳鏌ユ棩鏈�", prop: "lastCalibrationDate" },
+        { label: "涓嬫鏍″噯鏃ユ湡", prop: "nextCalibrationDateTwo" },
+        { label: "涓嬫鏍告煡鏃ユ湡", prop: "nextCalibrationDate" },
+        {
+          label: "璁惧鍒嗙被",
+          prop: "largeCategory",
+          dataType: "tag",
+          formatData: (params) => {
+            return this.equipmentList.find((m) => m.value == params).label;
+          },
+          formatType: (params) => {
+            return this.equipmentList.find((m) => m.value == params).type;
+          },
+        },
+        { label: "鍗曚环", prop: "unitPrice" },
+        {
+          label: "璁惧鐘舵��",
+          prop: "deviceStatus",
+          dataType: "tag",
+          formatData: (params) => {
+            return this.deviceStatusList.find((m) => m.value == params).label;
+          },
+          formatType: (params) => {
+            return this.deviceStatusList.find((m) => m.value == params).type;
+          },
+        },
+        { label: "鏍″噯鍛ㄦ湡(鏈�)", prop: "calibrationDate" },
+        {
+          dataType: "action",
+          fixed: "right",
+          label: "鎿嶄綔",
+          operation: [
+            {
+              name: "妗f淇",
+              type: "text",
+              clickFun: (row) => {
+                this.isUpdate(row);
+              },
+            },
+            {
+              name: "鏁伴噰閰嶇疆",
+              type: "text",
+              clickFun: (row) => {
+                this.handleConfig(row);
+              },
+              disabled: (row) => {
+                return row.insProductItem == null || row.insProductItem === "";
+              },
+            },
+            {
+              name: "鍒犻櫎",
+              type: "text",
+              clickFun: (row) => {
+                this.handleDelete(row);
+              },
+            },
+          ],
+        },
+      ],
+      page: {
+        total: 0,
+        size: 10,
+        current: 0,
+      },
+      tableLoading: false,
+    };
+  },
+  computed: {
+    action() {
+      return this.javaApi + "/deviceScope/uploadFile";
+    },
+  },
+  mounted() {
+    this.selectEnumByCategory();
+    this.selectDevicePrincipal();
+    this.obtainItemParameterList();
+    this.getInsProductIds();
+    // 鍒濆鍖�
+    this.clickSidebar(this.clickNodeVal);
+  },
+  methods: {
+    //鍒嗙被
+    handleNotification(cate) {
+      this.queryParams.largeCategory = cate;
+    },
+    obtainItemParameterList() {
+      obtainItemParameterList().then((res) => {
+        let data = [];
+        res.data.forEach((a) => {
+          data.push({
+            label: a.laboratoryName,
+            value: a.id,
+          });
+        });
+        this.subordinateDepartmentsList = data;
+      });
+    },
+    getList() {
+      this.tableLoading = true;
+      let param = {
+        laboratoryNameIsNull: this.laboratoryNameIsNull,
+        ...this.queryParams,
+        ...this.page,
+      };
+      delete param.total;
+      getDeviceParameter({ ...param })
+        .then((res) => {
+          this.tableLoading = false;
+          if (res.code === 200) {
+            this.tableData = res.data.records;
+            this.page.total = res.data.total;
+          }
+        })
+        .catch((err) => {
+          this.tableLoading = false;
+        });
+    },
+    pagination({ page, limit }) {
+      this.page.current = page;
+      this.page.size = limit;
+      this.getList();
+    },
+    refresh() {
+      this.queryParams = {};
+      this.page.current = 1;
+      this.getList();
+    },
+    refreshTable() {
+      this.page.current = 1;
+      this.getList();
+    },
+    // 瀵煎嚭
+    handleDownOne() {
+      this.outLoading = true;
+      exportEquipmentDetails().then((res) => {
+        this.outLoading = false;
+        const blob = new Blob([res], { type: "application/octet-stream" });
+        this.$download.saveAs(blob, "璁惧浠櫒涓�瑙堣〃.doc");
+      });
+    },
+    // 鑾峰彇瀛楀吀
+    selectEnumByCategory() {
+      // 璁惧鐘舵��
+      this.getDicts("device_status").then((response) => {
+        this.deviceStatusList = this.dictToValue(response.data);
+      });
+      // 璁惧鍒嗙被
+      this.getDicts("device_type").then((response) => {
+        this.equipmentList = this.dictToValue(response.data);
+      });
+    },
+    // 鑾峰彇璐熻矗浜哄垪琛�
+    selectDevicePrincipal() {
+      selectUserCondition().then((res) => {
+        let data = [];
+        res.data.forEach((a) => {
+          data.push({
+            label: a.name,
+            value: a.id,
+          });
+        });
+        this.responsiblePersonList = data;
+        this.authorizerList = data;
+      });
+    },
+    getInsProductIds() {
+      getInsProduction().then((res) => {
+        this.options = res.data.map((m, i) => {
+          m.id = m.name;
+          let children = m.children.map((n) => {
+            n.label = n.name;
+            n.value = n.id;
+            return n;
+          });
+          return m;
+        });
+        this.options.forEach((item) => {
+          if (item.children.length == 0) {
+            item.children = null;
+          } else {
+            item.children.forEach((m) => {
+              if (m.children.length == 0) {
+                m.children = null;
+              } else {
+                m.children.forEach((n) => {
+                  if (n.children && n.children.length == 0) {
+                    n.children = null;
+                  }
+                });
+              }
+            });
+          }
+        });
+      });
+    },
+    handleClose() {
+      this.formData = {
+        authorizedPerson: [],
+      };
+      this.formData2 = {
+        imageUpload: "",
+        imageName: "",
+        authorizedPerson: [],
+      };
+      this.dialogVisible = false;
+      this.upLoad = false;
+    },
+    handleClose2() {
+      this.formData = {
+        authorizedPerson: [],
+      };
+      this.formData2 = {
+        imageUpload: "",
+        imageName: "",
+        authorizedPerson: [],
+      };
+      this.dialogVisible2 = false;
+      this.upLoad = false;
+    },
+    selectAllByOne(row) {
+      this.isUp = true;
+      //鎵撳紑寮规
+      this.dialogVisible = true;
+      //row = 鐐瑰嚮瀵瑰簲琛屽��
+      //澶嶅埗缁檉ormData
+      this.formData = this.HaveJson(row);
+      console.log(row.insProductIds + "valll");
+      this.formData.insProductIds = row.insProductIds
+        ? row.insProductIds.split(",")
+        : [];
+    },
+    isUpdate(row) {
+      //淇敼  isUp 涓烘。妗堜慨鏀�
+      this.isUp = false;
+      //鎵撳紑寮规
+      this.dialogVisible = true;
+      //row = 鐐瑰嚮瀵瑰簲琛屽�间竴琛屽��
+      //澶嶅埗缁檉ormData
+      this.formData = this.HaveJson(row);
+      if (typeof row.insProductIds === "number") {
+        row.insProductIds = row.insProductIds + "";
+      }
+      this.formData.deviceStatus = this.formData.deviceStatus + "";
+      this.formData.insProductIds = row.insProductIds
+        ? row.insProductIds.split(",")
+        : [];
+      // 灏嗘椂闂存牸寮忎负yyyy-MM-dd 杩涜杞崲
+      const dateRegex = /^\d{4}-\d{2}-\d{2}$/;
+      Object.keys(this.formData).forEach((key) => {
+        if (dateRegex.test(this.formData[key])) {
+          this.formData[key] = `${this.formData[key]} 00:00:00`;
+        }
+      });
+    },
+    beforeUpload(file) {
+      if (file.size > 1024 * 1024 * 10) {
+        this.$message.error("涓婁紶鏂囦欢涓嶈秴杩�10M");
+        this.$refs.upload.clearFiles();
+        return false;
+      } else {
+        return true;
+      }
+    },
+    onError(err, file, fileList) {
+      this.$message.error("涓婁紶澶辫触");
+      this.$refs.upload.clearFiles();
+    },
+    // 涓婁紶鍥剧墖鎴愬姛
+    handleSuccessUpImg(response) {
+      if (response.code == 200) {
+        this.formData.imageUpload = response.data.url;
+        this.formData.imageName = response.data.name;
+      }
+    },
+    handleSuccessUpImg2(response) {
+      if (response.code == 200) {
+        this.$nextTick(() => {
+          this.formData.imageUpload = response.data.url;
+          this.formData.imageName = response.data.name;
+          this.formData2.imageUpload = response.data.url;
+          this.formData2.imageName = response.data.name;
+        });
+      }
+    },
+    submitForm() {
+      if (!this.formData.deviceName) {
+        this.$message.error("鏈緭鍏ヤ华鍣ㄥ悕绉�");
+        return;
+      }
+      if (!this.formData.enDeviceName) {
+        this.$message.error("鏈緭鍏ヤ华鍣ㄥ悕绉癊N");
+        return;
+      }
+      if (!this.formData.specificationModel) {
+        this.$message.error("鏈緭鍏ヨ鏍煎瀷鍙�");
+        return;
+      }
+      if (!this.formData.managementNumber) {
+        this.$message.error("鏈緭鍏ョ鐞嗙紪鍙�");
+        return;
+      }
+      if (!this.formData.activationDate) {
+        this.$message.error("鏈緭鍏ユ牎鍑嗘湁鏁堟湡");
+        return;
+      }
+      if (!this.formData.subordinateDepartmentsId) {
+        this.$message.error("鏈�夋嫨鎵�灞為儴闂�");
+        return;
+      }
+      if (
+        this.formData.deviceStatus === "" ||
+        this.formData.deviceStatus === null
+      ) {
+        this.$message.error("鏈�夋嫨褰撳墠鐘舵��");
+        return;
+      }
+      if (!this.formData.calibrationDate) {
+        this.$message.error("鏈緭鍏ユ牎鍑嗗懆鏈燂紙鏈堬級");
+        return;
+      }
+      delete this.formData.createTime;
+      delete this.formData.updateTime;
+      delete this.formData.createUser;
+      delete this.formData.updateUser;
+      const formData = this.HaveJson(this.formData);
+      formData.insProductIds = formData.insProductIds
+        ? formData.insProductIds.join()
+        : "";
+      if (formData.authorizedPerson.length === 0) {
+        formData.authorizedPerson = "";
+      } else {
+        formData.authorizedPerson = JSON.stringify(formData.authorizedPerson);
+      }
+      this.upLoad = true;
+      upDeviceParameter(formData)
+        .then((res) => {
+          this.$message.success("淇敼鎴愬姛");
+          this.upLoad = false;
+          this.refreshTable("page");
+          this.dialogVisible = false;
+        })
+        .catch((e) => {
+          this.$message.error("淇敼澶辫触");
+          this.dialogVisible = false;
+          this.upLoad = false;
+        });
+    },
+    // 鎻愪氦妗f淇--鏂板
+    submitForm2() {
+      if (!this.formData2.deviceName) {
+        this.$message.error("鏈緭鍏ヤ华鍣ㄥ悕绉�");
+        return;
+      }
+      if (!this.formData2.enDeviceName) {
+        this.$message.error("鏈緭鍏ヤ华鍣ㄥ悕绉癊N");
+        return;
+      }
+      if (!this.formData2.specificationModel) {
+        this.$message.error("鏈緭鍏ヨ鏍煎瀷鍙�");
+        return;
+      }
+      if (!this.formData2.managementNumber) {
+        this.$message.error("鏈緭鍏ョ鐞嗙紪鍙�");
+        return;
+      }
+      if (!this.formData2.activationDate) {
+        this.$message.error("鏈緭鍏ユ牎鍑嗘湁鏁堟湡");
+        return;
+      }
+      if (!this.formData2.deviceStatus) {
+        this.$message.error("鏈�夋嫨褰撳墠鐘舵��");
+        return;
+      }
+      if (!this.formData2.calibrationDate) {
+        this.$message.error("杈撳叆鏍″噯鍛ㄦ湡锛堟湀锛�");
+        return;
+      }
+      const formData = this.HaveJson(this.formData2);
+      formData.insProductIds = formData.insProductIds
+        ? formData.insProductIds.join()
+        : "";
+      if (formData.authorizedPerson.length === 0) {
+        formData.authorizedPerson = "";
+      } else {
+        formData.authorizedPerson = JSON.stringify(formData.authorizedPerson);
+      }
+      this.upLoad2 = true;
+      addDeviceParameter(formData)
+        .then((res) => {
+          this.$message.success("鎻愪氦鎴愬姛");
+          this.upLoad2 = false;
+          this.refreshTable("page");
+          this.dialogVisible2 = false;
+          this.formData2 = {
+            imageUpload: "",
+            imageName: "",
+            authorizedPerson: [],
+          };
+        })
+        .catch((e) => {
+          this.$message.error("鎻愪氦澶辫触");
+          this.dialogVisible2 = false;
+          this.upLoad2 = false;
+        });
+    },
+    handleConfig(row) {
+      let list = [];
+      if (row.insProductItem) {
+        list = row.insProductItem.split(";");
+      }
+      let list2 = [];
+      list.map((item) => {
+        const obj = Object.assign({
+          deviceId: row.id,
+          insProductItem: item,
+        });
+        list2.push(obj);
+      });
+      this.tableList = list2;
+      this.deviceId = row.id;
+      this.$nextTick(() => {
+        this.showData = true;
+      });
+    },
+    closeDataVue() {
+      this.clickSidebar(this.clickNodeVal);
+      this.showData = false;
+    },
+    submitForm3() {
+      if (!this.configForm.ip) {
+        this.$message.error("璇峰~鍐橧P");
+        return;
+      }
+      if (!this.configForm.collectUrl) {
+        this.$message.error("璇峰~鍐欓噰闆嗗湴鍧�");
+        return;
+      }
+      if (!this.configForm.storageUrl) {
+        this.$message.error("璇峰~鍐欏偍瀛樺湴鍧�");
+        return;
+      }
+      if (!this.configForm.refer) {
+        this.$message.error("璇峰~鍐欏弬鐓�");
+        return;
+      }
+      if (!this.configForm.x) {
+        this.$message.error("璇峰~鍐橷");
+        return;
+      }
+      if (!this.configForm.y) {
+        this.$message.error("璇峰~鍐橸");
+        return;
+      }
 
-			this.upLoad3 = true
-			numberCollect(this.configForm).then(res => {
-				this.upLoad3 = false
-				this.$message.success('鎿嶄綔鎴愬姛')
-				this.refreshTable('page')
-				this.dialogVisible3 = false
-			}).catch(e => {
-				this.$message.error('鎿嶄綔澶辫触')
-				this.dialogVisible3 = false
-				this.upLoad3 = false
-			})
-		},
-		// 鐐瑰嚮渚ц竟鏍忓埛鏂�
-		clickSidebar(clickNodeVal) {
-			this.laboratoryNameIsNull = false
-			// 鏄惁瀛樺湪value锛屽瓨鍦╲alue浠h〃涓轰笁绾�
-			if (!clickNodeVal.value) {
-				this.list = [];
-				this.queryParams.laboratoryName = null
-				this.queryParams.storagePoint = null
-				// 绛変簬1浠h〃涓烘爲鐨勪竴绾э紝label涓洪儴闂�
-				if (clickNodeVal.label == '鍏朵粬') {
-					this.laboratoryNameIsNull = true
-					this.refreshTable('page')
-					return
-				}
-				if (clickNodeVal.level == 1) {
-					this.queryParams.laboratoryName = clickNodeVal.label
-					// 绛変簬浜岀骇銆俵abel涓哄瓨鍌ㄥ湴鐐�
-				} else if (clickNodeVal.level == 2) {
-					// 鍏朵粬琛ㄧず娌℃湁閰嶇疆瀹為獙瀹わ紝鍙厤缃簡鍦扮偣
-					if (clickNodeVal.parent.label == '鍏朵粬') {
-						this.laboratoryNameIsNull = true
-					} else {
-						this.queryParams.laboratoryName = clickNodeVal.parent.label
-					}
-					this.queryParams.storagePoint = clickNodeVal.label
-				}
-				this.refreshTable('page')
-			}
-		},
-		handleDelete(row) {
-			this.$confirm("鏄惁鍒犻櫎璇ユ潯鏁版嵁?", "鎻愮ず", {
-				confirmButtonText: "纭畾",
-				cancelButtonText: "鍙栨秷",
-				type: "warning",
-			})
-				.then(() => {
-					delDeviceParameter({ id: row.id }).then((res) => {
-						this.$message.success("鍒犻櫎鎴愬姛");
-						this.refresh();
-					});
-				})
-				.catch(() => { });
-		},
-	},
-	watch: {
-		// 鐩戝惉鐐瑰嚮el-tree鐨勬暟鎹紝杩涜鏁版嵁鍒锋柊
-		clickNodeVal(newVal) {
-			this.clickSidebar(newVal)
-		}
-	}
-}
+      this.upLoad3 = true;
+      numberCollect(this.configForm)
+        .then((res) => {
+          this.upLoad3 = false;
+          this.$message.success("鎿嶄綔鎴愬姛");
+          this.refreshTable("page");
+          this.dialogVisible3 = false;
+        })
+        .catch((e) => {
+          this.$message.error("鎿嶄綔澶辫触");
+          this.dialogVisible3 = false;
+          this.upLoad3 = false;
+        });
+    },
+    // 鐐瑰嚮渚ц竟鏍忓埛鏂�
+    clickSidebar(clickNodeVal) {
+      this.laboratoryNameIsNull = false;
+      // 鏄惁瀛樺湪value锛屽瓨鍦╲alue浠h〃涓轰笁绾�
+      if (!clickNodeVal.value) {
+        this.list = [];
+        this.queryParams.laboratoryName = null;
+        this.queryParams.storagePoint = null;
+        // 绛変簬1浠h〃涓烘爲鐨勪竴绾э紝label涓洪儴闂�
+        if (clickNodeVal.label == "鍏朵粬") {
+          this.laboratoryNameIsNull = true;
+          this.refreshTable("page");
+          return;
+        }
+        if (clickNodeVal.level == 1) {
+          this.queryParams.laboratoryName = clickNodeVal.label;
+          // 绛変簬浜岀骇銆俵abel涓哄瓨鍌ㄥ湴鐐�
+        } else if (clickNodeVal.level == 2) {
+          // 鍏朵粬琛ㄧず娌℃湁閰嶇疆瀹為獙瀹わ紝鍙厤缃簡鍦扮偣
+          if (clickNodeVal.parent.label == "鍏朵粬") {
+            this.laboratoryNameIsNull = true;
+          } else {
+            this.queryParams.laboratoryName = clickNodeVal.parent.label;
+          }
+          this.queryParams.storagePoint = clickNodeVal.label;
+        }
+        this.refreshTable("page");
+      }
+    },
+    handleDelete(row) {
+      this.$confirm("鏄惁鍒犻櫎璇ユ潯鏁版嵁?", "鎻愮ず", {
+        confirmButtonText: "纭畾",
+        cancelButtonText: "鍙栨秷",
+        type: "warning",
+      })
+        .then(() => {
+          delDeviceParameter({ id: row.id }).then((res) => {
+            this.$message.success("鍒犻櫎鎴愬姛");
+            this.refresh();
+          });
+        })
+        .catch(() => {});
+    },
+  },
+  watch: {
+    // 鐩戝惉鐐瑰嚮el-tree鐨勬暟鎹紝杩涜鏁版嵁鍒锋柊
+    clickNodeVal(newVal) {
+      this.clickSidebar(newVal);
+    },
+  },
+};
 </script>
 
 <style scoped>
 .role_manage {
-	width: 100%;
-	height: 100%;
+  width: 100%;
+  height: 100%;
 }
 
 .title {
-	line-height: 15px;
+  line-height: 15px;
 }
 
 .search {
-	display: flex;
-	align-items: center;
-	justify-content: space-between;
-	margin-top: 10px;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  margin-top: 10px;
 }
 
 .search_thing {
-	width: 14em;
-	display: flex;
-	align-items: center;
+  width: 14em;
+  display: flex;
+  align-items: center;
 }
 
 .search_label {
-	width: 80px;
-	font-size: 14px;
-	text-align: right;
+  width: 80px;
+  font-size: 14px;
+  text-align: right;
 }
 
 .search_input {
-	width: calc(100% - 80px);
+  width: calc(100% - 80px);
 }
 
 .table {
-	margin-top: 12px;
-	background-color: #fff;
-	height: calc(100vh - 17em);
+  margin-top: 12px;
+  background-color: #fff;
+  height: calc(100vh - 17em);
 }
 
 .el-form-item {
-	margin-bottom: 16px;
+  margin-bottom: 16px;
 }
 
 .picName {
-	overflow: hidden;
-	text-overflow: ellipsis;
-	white-space: nowrap;
-	word-break: break-all;
-	width: 120px;
+  overflow: hidden;
+  text-overflow: ellipsis;
+  white-space: nowrap;
+  word-break: break-all;
+  width: 120px;
 }
 </style>

--
Gitblit v1.9.3