From eb8a6c6d3dcec5f49803669d69b1c22f70583640 Mon Sep 17 00:00:00 2001
From: spring <2396852758@qq.com>
Date: 星期一, 10 三月 2025 10:41:51 +0800
Subject: [PATCH] 完成设施和环境条件搬迁

---
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/three-wastes-treatment.vue                                             |  206 ++
 src/views/index.vue                                                                                                                  |  337 ++-
 src/assets/styles/index.scss                                                                                                         |    8 
 src/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment.js                                                        |  254 +++
 src/views/CNAS/resourceDemand/facilitiesEnvironment/index.vue                                                                        |   51 
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/lightning-protection-detection.vue |  231 ++
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue         |  360 ++++
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/illuminance-recording.vue          |  359 ++++
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/Personnel-management.vue                                               |  217 ++
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions.vue                                |   51 
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/temperature-humidity-record.vue    |  428 +++++
 src/api/cnas/resourceDemand/facilitiesEnvironment/internalWastes.js                                                                  |   56 
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/Personnel-management-dia.vue                                           |  212 ++
 src/api/cnas/resourceDemand/foreignRegister/foreignRegister.js                                                                       |   65 
 src/views/business/inspectionOrder/add.vue                                                                                           |  874 ++--------
 src/views/business/inspectionOrder/index.vue                                                                                         |  779 ++-------
 src/views/CNAS/resourceDemand/facilitiesEnvironment/component/three-wastes-dialog.vue                                                |  189 ++
 17 files changed, 3,292 insertions(+), 1,385 deletions(-)

diff --git a/src/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment.js b/src/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment.js
new file mode 100644
index 0000000..6709093
--- /dev/null
+++ b/src/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment.js
@@ -0,0 +1,254 @@
+import request from '@/utils/request'
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-鐢垫簮绋冲畾鎬ф煡璇�
+export function getLaboratoryFacilityPowerStablePage(query) {
+  return request({
+    url: '/fePowerStable/getLaboratoryFacilityPowerStablePage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 閫氳繃璁惧鍒嗙被鑾峰彇璁惧鍒楄〃
+export function deviceScopeSearch(query) {
+  return request({
+    url: '/deviceScope/search',
+    method: 'get',
+    params: query
+  })
+}
+
+// 璁惧鏍戝舰
+export function treeDevice(query) {
+  return request({
+    url: '/deviceScope/treeDevice',
+    method: 'get',
+    params: query
+  })
+}
+
+//鑾峰彇鐢ㄦ埛鍒楄〃
+export function selectUserCondition(query) {
+  return request({
+    url: "/system/newUser/selectUserCondition",
+    method: "get",
+    params: query,
+  });
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-鐢垫簮绋冲畾鎬ф柊澧�/淇敼
+export function addLaboratoryFacilityPowerStable(query) {
+  return request({
+    url: '/fePowerStable/addLaboratoryFacilityPowerStable',
+    method: 'post',
+    data: query
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠�-璁炬柦鍜岀幆澧冩潯浠惰姹�-鐢垫簮绋冲畾鎬�-娴嬪畾閲� 鍒犻櫎
+export function deleteFeMeasuredQuantity(query) {
+  return request({
+    url: '/fePowerStable/deleteFeMeasuredQuantity',
+    method: 'delete',
+    params: query
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-鐢垫簮绋冲畾鎬у垹闄�
+export function deleteLaboratoryFacilityPowerStable(query) {
+  return request({
+    url: '/fePowerStable/deleteLaboratoryFacilityPowerStable',
+    method: 'delete',
+    params: query
+  })
+}
+
+// 鐢垫簮绋冲畾鎬�-娴嬪畾閲� 鏍规嵁鐢垫簮绋冲畾鎬ф煡璇�
+export function getFeMeasuredQuantityService(query) {
+  return request({
+    url: "/fePowerStable/getFeMeasuredQuantityService",
+    method: "get",
+    params: query,
+  });
+}
+
+// 鐢垫簮绋冲畾鎬�-娴嬪畾閲� 瀵煎嚭
+export function exportFePowerStable(query) {
+  return request({
+    url: "/fePowerStable/exportFePowerStable",
+    method: "get",
+    responseType: "blob",
+    params: query,
+  });
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-闃查浄妫�娴嬫煡璇�
+export function getLightningProtectionDetection(query) {
+  return request({
+    url: '/feLightningProtection/getLightningProtectionDetection',
+    method: 'get',
+    params: query
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-闃查浄妫�娴嬫柊澧�/淇敼
+export function addLightningProtectionDetection(query) {
+  return request({
+    url: '/feLightningProtection/addLightningProtectionDetection',
+    method: 'post',
+    data: query,
+    headers: {
+      'Content-Type': 'multipart/form-data' // 蹇呴』璁剧疆涓� multipart
+    }
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-闃查浄妫�娴嬪垹闄�
+export function deleteLightningProtectionDetection(query) {
+  return request({
+    url: '/feLightningProtection/deleteLightningProtectionDetection',
+    method: 'delete',
+    params: query
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-闃查浄妫�娴嬪鍑�
+export function exportOfLightningProtectionDetection(query) {
+  return request({
+    url: "/feLightningProtection/exportOfLightningProtectionDetection",
+    method: "get",
+    responseType: "blob",
+    params: query,
+  });
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-鐓у害璁板綍琛�-妫�娴嬪尯鍩� 鏌ヨ
+export function getFeLightningProtection(query) {
+  return request({
+    url: '/feIllumination/getFeLightningProtection',
+    method: 'get',
+    params: query
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-鐓у害璁板綍琛�-妫�娴嬪尯鍩� 鏂板/淇敼
+export function addFeLightningProtection(query) {
+  return request({
+    url: '/feIllumination/addFeLightningProtection',
+    method: 'post',
+    data: query,
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-鐓у害璁板綍琛�-妫�娴嬪尯鍩� 鍒犻櫎
+export function deleteFeLightningProtection(query) {
+  return request({
+    url: '/feIllumination/deleteFeLightningProtection',
+    method: 'delete',
+    params: query
+  })
+}
+
+// 鐓у害璁板綍琛�-妫�娴嬪尯鍩� 鏍规嵁鐓у害璁板綍鏌ヨ
+export function getFeIlluminationDetectionArea(query) {
+  return request({
+    url: '/feIllumination/getFeIlluminationDetectionArea',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鐓у害璁板綍琛�-妫�娴嬪尯鍩� 鍒犻櫎
+export function deleteFeIlluminationDetectionArea(query) {
+  return request({
+    url: '/feIllumination/deleteFeIlluminationDetectionArea',
+    method: 'delete',
+    params: query
+  })
+}
+
+// 鐓у害璁板綍琛�-妫�娴嬪尯鍩� 瀵煎嚭
+export function exportFeIllumination(query) {
+  return request({
+    url: "/feIllumination/exportFeIllumination",
+    method: "get",
+    responseType: "blob",
+    params: query,
+  });
+}
+
+// 璇曢獙鍖哄煙-鏌ヨ"
+export function getFeTempHumDate(query) {
+  return request({
+    url: '/feTempHumDate/getFeTempHumDate',
+    method: 'get',
+    params: query
+  })
+}
+
+// 璇曢獙鍖哄煙-鏂板/淇敼
+export function addFeTempHumDate(query) {
+  return request({
+    url: '/feTempHumDate/addFeTempHumDate',
+    method: 'post',
+    data: query,
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-娓╂箍搴﹁褰曟煡璇�
+export function getFeTempHumRecordPage(query) {
+  return request({
+    url: '/feTempHumDate/getFeTempHumRecordPage',
+    method: 'get',
+    params: query
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-娓╂箍搴﹁褰曟柊澧�/淇敼
+export function addFeTempHumRecord(query) {
+  return request({
+    url: '/feTempHumDate/addFeTempHumRecord',
+    method: 'post',
+    data: query,
+  })
+}
+
+// 璁炬柦鍜岀幆澧冩潯浠惰姹�-娓╂箍搴﹁褰曞垹闄�
+export function deleteFeTempHumRecord(query) {
+  return request({
+    url: '/feTempHumDate/deleteFeTempHumRecord',
+    method: 'delete',
+    params: query
+  })
+}
+
+// 璇曢獙鍖哄煙-鍒犻櫎
+export function deleteFeTempHumDate(query) {
+  return request({
+    url: '/feTempHumDate/deleteFeTempHumDate',
+    method: 'delete',
+    params: query
+  })
+}
+
+// // 璁炬柦鍜岀幆澧冩潯浠惰姹�-娓╂箍搴﹁褰� 瀵煎嚭
+export function exportTemperatureAndHumidityRecords(query) {
+  return request({
+    url: "/feTempHumDate/exportTemperatureAndHumidityRecords",
+    method: "get",
+    responseType: "blob",
+    params: query,
+  });
+}
+
+// 娓╂箍搴︾‘璁�
+export function affirmFeTempHumDate(query) {
+  return request({
+    url: '/feTempHumDate/affirmFeTempHumDate',
+    method: 'post',
+    data: query,
+  })
+}
+
+
+
diff --git a/src/api/cnas/resourceDemand/facilitiesEnvironment/internalWastes.js b/src/api/cnas/resourceDemand/facilitiesEnvironment/internalWastes.js
new file mode 100644
index 0000000..e9a5915
--- /dev/null
+++ b/src/api/cnas/resourceDemand/facilitiesEnvironment/internalWastes.js
@@ -0,0 +1,56 @@
+import request from '@/utils/request'
+
+// 瀹夊叏鍐呭姟涓夊簾澶勭悊鍒嗛〉鏌ヨ
+export function pageInternalWastes(query) {
+  return request({
+    url: '/internalWastes/pageInternalWastes',
+    method: 'get',
+    params: query
+  })
+}
+
+// 瀹夊叏鍐呭姟涓夊簾澶勭悊鏌ョ湅璇︽儏
+export function getInternalWastesOne(query) {
+  return request({
+    url: '/internalWastes/getInternalWastesOne',
+    method: 'get',
+    params: query
+  })
+}
+
+// 瀹夊叏鍐呭姟涓夊簾澶勭悊鏂板
+export function addInternalWastes(query) {
+  return request({
+    url: '/internalWastes/addInternalWastes',
+    method: 'post',
+    data: query
+  })
+}
+
+// 瀹夊叏鍐呭姟涓夊簾澶勭悊鍒嗛〉淇敼
+export function updateInternalWastes(query) {
+  return request({
+    url: '/internalWastes/updateInternalWastes',
+    method: 'post',
+    data: query
+  })
+}
+
+// 瀵煎嚭涓夊簾澶勭悊
+export function exportInternalWastes(query) {
+  return request({
+    url: "/internalWastes/exportInternalWastes",
+    method: "get",
+    responseType: "blob",
+    params: query,
+  });
+}
+
+//瀹夊叏鍐呭姟涓夊簾澶勭悊鍒犻櫎
+export function removeStandardSubstance(query) {
+  return request({
+    url: '/internalWastes/delInternalWastes',
+    method: 'delete',
+    params: query
+  })
+}
diff --git a/src/api/cnas/resourceDemand/foreignRegister/foreignRegister.js b/src/api/cnas/resourceDemand/foreignRegister/foreignRegister.js
new file mode 100644
index 0000000..7811cf5
--- /dev/null
+++ b/src/api/cnas/resourceDemand/foreignRegister/foreignRegister.js
@@ -0,0 +1,65 @@
+import request from '@/utils/request'
+
+// 澶栨潵浜哄憳鍒嗛〉鏌ヨ
+export function pageForeignRegister(query) {
+  return request({
+    url: '/foreignRegister/pageForeignRegister',
+    method: 'get',
+    params: query
+  })
+}
+
+// 澶栨潵浜哄憳鏌ョ湅璇︽儏
+export function getForeignRegisterOne(query) {
+  return request({
+    url: '/foreignRegister/getForeignRegisterOne',
+    method: 'get',
+    params: query
+  })
+}
+
+// 鑾峰彇鐢ㄦ埛鍒楄〃
+export function selectUserCondition(query) {
+  return request({
+    url: "/system/newUser/selectUserCondition",
+    method: "get",
+    params: query,
+  });
+}
+
+// 澶栨潵浜哄憳鏂板
+export function addForeignRegister(query) {
+  return request({
+    url: '/foreignRegister/addForeignRegister',
+    method: 'post',
+    data: query
+  })
+}
+
+// 澶栨潵浜哄憳淇敼
+export function updateForeignRegister(query) {
+  return request({
+    url: '/foreignRegister/updateForeignRegister',
+    method: 'post',
+    data: query
+  })
+}
+
+//澶栨潵浜哄憳鍒犻櫎
+export function delForeignRegister(query) {
+  return request({
+    url: '/foreignRegister/delForeignRegister',
+    method: 'delete',
+    params: query
+  })
+}
+
+// 瀵煎嚭澶栨潵浜哄憳
+export function exportForeignRegister(query) {
+  return request({
+    url: "/foreignRegister/exportForeignRegister",
+    method: "get",
+    responseType: "blob",
+    params: query,
+  });
+}
diff --git a/src/assets/styles/index.scss b/src/assets/styles/index.scss
index 87825e4..a8f0459 100644
--- a/src/assets/styles/index.scss
+++ b/src/assets/styles/index.scss
@@ -196,3 +196,11 @@
 .required-span {
   color: red;
 }
+
+.bg-1 {
+  width: 100%;
+  height: calc(100% - 50px);
+  overflow-y: auto;
+  padding: 20px 10px 10px;
+  background: rgb(245, 247, 251);
+}
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/Personnel-management-dia.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/Personnel-management-dia.vue
new file mode 100644
index 0000000..ec6912c
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/Personnel-management-dia.vue
@@ -0,0 +1,212 @@
+<template>
+  <div>
+    <el-dialog v-loading="diaLoading" :close-on-click-modal="false"
+               :close-on-press-escape="false"
+               :visible.sync="formDia"
+               title="澶栨潵浜哄憳绠$悊淇℃伅"
+               width="80%" @close="closeThreeWastesDia">
+      <el-form ref="form" :model="form" :rules="rules" label-width="auto">
+        <el-col :span="12">
+          <el-form-item label="鏃ユ湡" prop="registerDate">
+            <el-date-picker v-model="form.registerDate"
+                            clearable
+                            format="yyyy-MM-dd"
+                            placeholder="閫夋嫨鏃ユ湡"
+                            size="small"
+                            type="date"
+                            value-format="yyyy-MM-dd">
+            </el-date-picker>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="杩涘叆鍖哄煙" prop="area">
+            <el-input v-model="form.area" clearable size="small"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="杩涘叆浜哄憳" prop="personnel">
+            <el-input v-model="form.personnel" clearable size="small"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="杩涘叆鍘熷洜" prop="reason">
+            <el-input v-model="form.reason" clearable size="small"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="闄悓浜哄憳" prop="accompanyingId">
+            <el-select v-model="form.accompanyingId" clearable filterable
+                       placeholder="璇烽�夋嫨闄悓浜哄憳" size="small">
+              <el-option v-for="(item,i) in personList" :key="i" :label="item.label" :value="item.value">
+              </el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="鎵瑰噯浜虹鍚�" prop="approveId">
+            <el-select v-model="form.approveId" clearable filterable
+                       placeholder="璇烽�夋嫨鎵瑰噯浜�" size="small">
+              <el-option v-for="(item,i) in personList" :key="i" :label="item.label" :value="item.value">
+              </el-option>
+            </el-select>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="淇濆瘑鍙婂叾瀹冩儏鍐�" prop="confidentiality">
+            <el-input v-model="form.confidentiality" clearable size="small"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="12">
+          <el-form-item label="澶囨敞" prop="remark">
+            <el-input v-model="form.remark" clearable size="small"></el-input>
+          </el-form-item>
+        </el-col>
+      </el-form>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="closeThreeWastesDia">鍙� 娑�</el-button>
+        <el-button :loading="loading" type="primary" @click="handleEdit">鎻� 浜�</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  getForeignRegisterOne,
+  selectUserCondition,
+  addForeignRegister,
+  updateForeignRegister
+} from '@/api/cnas/resourceDemand/foreignRegister/foreignRegister'
+
+export default {
+  name: 'Personnel-management-dia',
+  // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
+  components: {},
+  data() {
+    // 杩欓噷瀛樻斁鏁版嵁
+    return {
+      formDia: false,
+      diaLoading: false,
+      loading: false,
+      form: {
+        registerDate: '',
+        area: '',
+        personnel: '',
+        reason: '',
+        accompanyingId: '',
+        accompanyingName: '',
+        approveId: '',
+        approveName: '',
+        confidentiality: '',
+        remark: '',
+      },
+      rules: {
+        registerDate: [{required: true, message: '璇烽�夋嫨鏃ユ湡',trigger: 'change'}],
+        area: [{required: true, message: '璇峰~鍐欒繘鍏ュ尯鍩�',trigger: 'blur'}],
+        personnel: [{required: true, message: '璇峰~鍐欒繘鍏ヤ汉鍛�',trigger: 'blur'}],
+        reason: [{required: true, message: '璇峰~鍐欒繘鍏ュ師鍥�',trigger: 'blur'}],
+        accompanyingId: [{required: true, message: '璇烽�夋嫨闄悓浜哄憳',trigger: 'change'}],
+        approveId: [{required: true, message: '璇烽�夋嫨鎵瑰噯浜�',trigger: 'change'}],
+        confidentiality: [{required: true, message: '璇峰~鍐欎繚瀵嗗強鍏朵粬鎯呭喌',trigger: 'blur'}],
+        remark: [{required: false, message: '璇峰~鍐欏娉�',trigger: 'blur'}],
+      },
+      operationType: '',
+      personList: []
+    };
+  },
+  mounted() {
+
+  },
+  // 鏂规硶闆嗗悎
+  methods: {
+    // 鎵撳紑寮规
+    openDia (type, row) {
+      this.getAuthorizedPerson()
+      this.formDia = true
+      this.operationType = type
+      if (type !== 'add') {
+        this.searchInfo(row)
+      } else {
+        this.form.accompanyingId = JSON.parse(localStorage.getItem("user")).userId
+      }
+    },
+    // 鏌ヨ璇︽儏
+    searchInfo (row) {
+      this.diaLoading = true
+      getForeignRegisterOne({registerId : row.registerId}).then(res =>{
+        this.diaLoading = false
+        if (res.code === 200){
+          this.form = res.data
+        }
+      }).catch(err => {
+        console.log(err)
+        this.diaLoading = false
+      })
+    },
+    // 鎻愪氦寮规鏁版嵁
+    handleEdit () {
+      this.$refs['form'].validate((valid) => {
+        if (valid) {
+          this.loading = true
+          const internalImplementDto = this.HaveJson(this.form)
+          const index = this.personList.findIndex(item => item.value === internalImplementDto.accompanyingId)
+          if (index > -1) {
+            internalImplementDto.accompanyingName = this.personList[index].label
+          }
+          const index1 = this.personList.findIndex(item => item.value === internalImplementDto.approveId)
+          if (index1 > -1) {
+            internalImplementDto.approveName = this.personList[index].label
+          }
+          if (this.operationType === 'add') {
+            addForeignRegister(internalImplementDto).then(res => {
+              this.loading = false
+              if (res.code === 200){
+                this.$message.success('鎿嶄綔鎴愬姛')
+                this.closeThreeWastesDia()
+              }
+            }).catch(err => {
+              console.log('err---', err);
+              this.loading = false
+            })
+          } else if (this.operationType === 'edit') {
+            updateForeignRegister(internalImplementDto).then(res => {
+              this.loading = false
+              if (res.code === 200){
+                this.$message.success('鎿嶄綔鎴愬姛')
+                this.closeThreeWastesDia()
+              }
+
+            }).catch(err => {
+              console.log('err---', err);
+              this.loading = false
+            })
+          }
+        } else {
+          console.log('error submit!!');
+          return false;
+        }
+      });
+    },
+    closeThreeWastesDia () {
+      this.$refs.form.resetFields();
+      this.formDia = false
+      this.$emit('closeThreeWastesDia')
+    },
+    getAuthorizedPerson() {
+      selectUserCondition().then(res => {
+        let data = []
+        res.data.forEach(a => {
+          data.push({
+            label: a.name,
+            value: a.id
+          })
+        })
+        this.personList = data
+      })
+    },
+  }
+};
+</script>
+
+<style scoped>
+</style>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/Personnel-management.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/Personnel-management.vue
new file mode 100644
index 0000000..dea9995
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/Personnel-management.vue
@@ -0,0 +1,217 @@
+<template>
+  <div class="capacity-scope">
+    <div class="search">
+      <div>
+        <el-form :model="searchForm" ref="searchForm" size="small" :inline="true">
+          <el-form-item label="鏃ユ湡" prop="registerDate">
+            <el-date-picker v-model="searchForm.registerDate" clearable format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡"
+              size="small" style="width: 100%" type="date" value-format="yyyy-MM-dd">
+            </el-date-picker>
+          </el-form-item>
+          <el-form-item>
+            <el-button type="primary" icon="el-icon-search" size="mini" @click="searchList">鏌� 璇�</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetSearchForm">閲� 缃�</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+      <div>
+        <el-button size="medium" @click="handleDown">瀵� 鍑�</el-button>
+        <el-button size="medium" type="primary" @click="openFormDia('add')">鏂� 澧�</el-button>
+      </div>
+    </div>
+    <div class="table">
+      <lims-table :tableData="tableData" :column="tableColumn" :height="'calc(100vh - 280px)'" @pagination="pagination"
+        :page="page" :tableLoading="tableLoading"></lims-table>
+    </div>
+    <personnel-management-dia v-if="threeWastesDia" ref="threeWastesDia"
+      @closeThreeWastesDia="closeThreeWastesDia"></personnel-management-dia>
+  </div>
+</template>
+
+<script>
+import PersonnelManagementDia from '../component/Personnel-management-dia.vue';
+import limsTable from '@/components/Table/lims-table.vue'
+
+import {
+  pageForeignRegister,
+  delForeignRegister,
+  exportForeignRegister
+} from '@/api/cnas/resourceDemand/foreignRegister/foreignRegister'
+
+export default {
+  name: 'Personnel-management',
+  // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
+  components: { limsTable, PersonnelManagementDia },
+  data() {
+    // 杩欓噷瀛樻斁鏁版嵁
+    return {
+      searchForm: {
+        registerDate: '',
+      },
+      tableColumn: [
+        {
+          label: '鏃ユ湡',
+          prop: 'registerDate',
+          minWidth: '100'
+        },
+        {
+          label: '杩涘叆鍖哄煙',
+          prop: 'area',
+          minWidth: '100'
+        },
+        {
+          label: '杩涘叆浜哄憳',
+          prop: 'personnel',
+          minWidth: '100'
+        },
+        {
+          label: '杩涘叆鍘熷洜',
+          prop: 'reason',
+          minWidth: '100'
+        },
+        {
+          label: '闄悓浜哄憳',
+          prop: 'accompanyingName',
+          minWidth: '100'
+        },
+        {
+          label: '鎵瑰噯浜虹鍚�',
+          prop: 'approveName',
+          minWidth: '100'
+        },
+        {
+          label: '淇濆瘑鍙婂叾浠栨儏鍐�',
+          prop: 'confidentiality',
+          minWidth: '100'
+        },
+        {
+          label: '澶囨敞',
+          prop: 'remark',
+          minWidth: '100'
+        },
+        {
+          dataType: 'action',
+          fixed: 'right',
+          minWidth: '220',
+          label: '鎿嶄綔',
+          operation: [
+            {
+              name: '缂栬緫',
+              type: 'text',
+              clickFun: (row) => {
+                this.openFormDia('edit', row);
+              },
+            },
+            {
+              name: '鍒犻櫎',
+              type: 'text',
+              color: '#f56c6c',
+              clickFun: (row) => {
+                this.delPlan(row)
+              },
+            }
+          ]
+        }
+      ],
+      tableData: [],
+      tableLoading: false,
+      page: {
+        total: 0,
+        size: 10,
+        current: 1
+      },
+      total: 0,
+      threeWastesDia: false
+    };
+  },
+  mounted() {
+    this.searchList()
+  },
+  // 鏂规硶闆嗗悎
+  methods: {
+    // 鏌ヨ鍒楄〃
+    searchList() {
+      this.tableLoading = true
+      pageForeignRegister({
+        ...this.page,
+        ...this.searchForm
+      }).then(res => {
+        this.tableLoading = false
+        if (res.code === 200) {
+          this.tableData = res.data.records
+          this.page.total = res.data.total
+        }
+
+      }).catch(err => {
+        console.log('err---', err);
+        this.tableLoading = false
+      })
+    },
+    // 鍒犻櫎
+    delPlan(row) {
+      this.$confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        this.tableLoading = true
+        delForeignRegister({ registerId: row.registerId }).then(res => {
+          this.tableLoading = false
+          if (res.code === 200) {
+            this.$message.success('鍒犻櫎鎴愬姛')
+            this.searchList()
+          }
+        }).catch(err => {
+          this.tableLoading = false
+          console.log('err---', err);
+        })
+      }).catch(() => {
+        this.$message({
+          type: 'info',
+          message: '宸插彇娑堝垹闄�'
+        });
+      });
+    },
+    // 鏂板锛岀紪杈戯紝鎵瑰噯寮规
+    openFormDia(type, row) {
+      this.threeWastesDia = true
+      this.$nextTick(() => {
+        this.$refs.threeWastesDia.openDia(type, row)
+      })
+    },
+    // 瀵煎嚭
+    handleDown() {
+      exportForeignRegister(this.searchForm).then(res => {
+        const blob = new Blob([res], { type: 'application/msword' });
+        this.$download.saveAs(blob, '澶栨潵浜哄憳鐧昏.docx')
+      })
+    },
+    closeThreeWastesDia() {
+      this.threeWastesDia = false
+      this.searchList()
+    },
+    // 閲嶇疆鏌ヨ鏉′欢
+    resetSearchForm() {
+      this.searchForm.registerDate = '';
+      this.searchList()
+    },
+    // 鍒嗛〉鍒囨崲
+    pagination(page) {
+      this.page.size = page.limit
+      this.searchList();
+    },
+  }
+};
+</script>
+
+<style scoped>
+.search {
+  height: 46px;
+  display: flex;
+  justify-content: space-between;
+}
+
+.capacity-scope {
+  padding: 20px;
+}
+</style>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions.vue
new file mode 100644
index 0000000..38db4fc
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions.vue
@@ -0,0 +1,51 @@
+<template>
+  <el-row>
+    <el-col :span="2">
+      <el-menu style="height: 100vh;" @select="clickSelect" :default-active="activeName">
+        <el-menu-item index="鐢垫簮绋冲畾鎬�">
+          <span slot="title">鐢垫簮绋冲畾鎬�</span>
+        </el-menu-item>
+        <el-menu-item index="闃查浄妫�娴�">
+          <span slot="title">闃查浄妫�娴�</span>
+        </el-menu-item>
+        <el-menu-item index="鐓у害璁板綍">
+          <span slot="title">鐓у害璁板綍</span>
+        </el-menu-item>
+        <el-menu-item index="娓╂箍搴﹁褰�">
+          <span slot="title">娓╂箍搴﹁褰�</span>
+        </el-menu-item>
+      </el-menu>
+    </el-col>
+    <el-col :span="22" style="padding: 10px">
+      <power-supply-stability v-if="activeName === '鐢垫簮绋冲畾鎬�'"/>
+      <lightning-protection-detection v-if="activeName === '闃查浄妫�娴�'" />
+      <illuminance-recording v-if="activeName === '鐓у害璁板綍'"/>
+      <temperature-humidity-record v-if="activeName === '娓╂箍搴﹁褰�'"/>
+    </el-col>
+  </el-row>
+</template>
+
+<script>
+// 鐢垫簮绋冲畾鎬�
+import PowerSupplyStability from "./facilities-environmental-conditions/power-supply-stability.vue";
+// 闃查浄妫�娴�
+import LightningProtectionDetection from "./facilities-environmental-conditions/lightning-protection-detection.vue";
+// 鐓у害璁板綍
+import IlluminanceRecording from "./facilities-environmental-conditions/illuminance-recording.vue";
+// 娓╂箍搴﹁褰�
+import TemperatureHumidityRecord from "./facilities-environmental-conditions/temperature-humidity-record.vue";
+
+export default {
+  components: {TemperatureHumidityRecord, IlluminanceRecording, LightningProtectionDetection, PowerSupplyStability},
+  data() {
+    return {
+      activeName: "鐢垫簮绋冲畾鎬�"
+    }
+  },
+  methods: {
+    clickSelect(index) {
+      this.activeName = index;
+    }
+  }
+}
+</script>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/illuminance-recording.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/illuminance-recording.vue
new file mode 100644
index 0000000..b269f84
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/illuminance-recording.vue
@@ -0,0 +1,359 @@
+<template>
+  <div>
+    <div class="header">
+      <div>鐓у害璁板綍</div>
+      <div>
+        <el-button size="small" type="primary" @click="clickAdd">鏂� 澧�</el-button>
+      </div>
+    </div>
+    <el-table :data="tableData" height="calc(100vh - 19em)" style="width: 100%">
+      <el-table-column label="搴忓彿" type="index" width="120">
+        <template v-slot="scope">
+          <span>{{ (search.current - 1) * search.size + scope.$index + 1 }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="缁撹" min-width="180" prop="conclusion"></el-table-column>
+      <el-table-column label="娴嬭瘯鏃ユ湡" min-width="180" prop="testDate" width="testDate"></el-table-column>
+      <el-table-column label="妫�娴嬭��" min-width="180" prop="testerUser"></el-table-column>
+      <el-table-column label="鏍告煡浜�" min-width="180" prop="checkerUser"></el-table-column>
+      <el-table-column label="璁惧鍚嶇О" min-width="180" prop="deviceName"></el-table-column>
+      <el-table-column label="璁惧缂栧彿" min-width="180" prop="managementNumber"></el-table-column>
+      <el-table-column label="鏍″噯鏃ユ湡" min-width="180" prop="lastCalibrationDate"></el-table-column>
+      <el-table-column label="涓嬫鏍″噯鏃ユ湡" min-width="180" prop="nextCalibrationDate"></el-table-column>
+      <el-table-column label="鍒涘缓鏃堕棿" min-width="180" prop="createTime"></el-table-column>
+      <el-table-column fixed="right" label="鎿嶄綔" min-width="140">
+        <template v-slot="scope">
+          <el-button size="small" type="text" @click="downLoadPost(scope.row)">瀵煎嚭</el-button>
+          <el-button size="small" type="text" @click="edit(scope.row)">缂栬緫</el-button>
+          <el-button size="small" type="text" @click="deleteRowFun(scope.row)">鍒犻櫎</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    <el-pagination :current-page="1" :page-size="search.size" :page-sizes="[10, 20, 30, 50, 100]" :total="search.total"
+      layout="->,total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange"
+      @current-change="handleCurrentChange">
+    </el-pagination>
+    <el-dialog :visible.sync="dialogVisible" title="鏂板" width="50%" @open="openDialog">
+      <div style="height: 50vh; overflow-y: auto">
+        <el-form ref="form" :model="form" label-width="120px">
+          <el-row>
+            <el-col :span="12">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ祴璇曞湴鐐�', trigger: 'change' }]" label="娴嬭瘯鏃ユ湡"
+                prop="testDate">
+                <el-date-picker v-model="form.testDate" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" size="small"
+                  style="width: 100%" type="date" value-format="yyyy-MM-dd">
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ヨ澶囧悕绉�', trigger: 'change' }]" label="璁惧鍚嶇О"
+                prop="deviceId">
+                <el-select v-model="form.deviceId" class="table_input" clearable filterable placeholder="璁惧鍚嶇О"
+                  size="small" @change="getCalibrationDateFun">
+                  <el-option v-for="item in equipOptions" :key="item.id" :label="item.deviceName" :value="item.id">
+                    {{ item.deviceName + item.managementNumber }}
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="璁惧缂栧彿">
+                <el-input v-model="form.managementNumber" disabled size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="鏈�杩戞牎鍑嗘棩鏈�">
+                <el-input v-model="form.lastCalibrationDate" disabled size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓嬫鏍″噯鏃ユ湡">
+                <el-input v-model="form.nextCalibrationDate" disabled size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="妫�娴嬭��" prop="recipientUser">
+                <el-select v-model="form.testerId" clearable filterable placeholder="璇烽�夋嫨" size="small"
+                  style="width: 100%;">
+                  <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="鏍告煡浜�" prop="recipientUser">
+                <el-select v-model="form.checkerId" clearable filterable placeholder="璇烽�夋嫨" size="small"
+                  style="width: 100%;">
+                  <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="缁撹">
+                <el-input v-model="form.conclusion" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" type="textarea">
+                </el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <div>
+            <div style="display: flex; justify-content: flex-end; margin-bottom: 0.5em">
+              <el-button size="small" type="primary" @click="feMeasuredQuantityListAdd">鏂板</el-button>
+            </div>
+            <div>
+              <el-table :data="form.illuminationDetectionAreaList" height="40vh" style="width: 100%; margin: auto">
+                <el-table-column label="搴忓彿" type="index" width="80"></el-table-column>
+                <el-table-column align="center" label="妫�娴嬪尯鍩熷悕绉�" min-width="180" prop="detectionAreaLabel">
+                  <template #default="{ row }">
+                    <el-input v-model="row.detectionAreaLabel" :rows="1" type="textarea"></el-input>
+                  </template>
+                </el-table-column>
+                <el-table-column align="center" label="妫�娴嬪��" min-width="300" prop="name">
+                  <template>
+                    <el-table-column align="center" label="绗竴娆�" min-width="100" prop="valueOne">
+                      <template #default="{ row }">
+                        <el-input v-model="row.valueOne" :rows="1" @blur="getAverage(row)"></el-input>
+                      </template>
+                    </el-table-column>
+                    <el-table-column align="center" label="绗簩娆�" min-width="100" prop="valueTwo">
+                      <template #default="{ row }">
+                        <el-input v-model="row.valueTwo" :rows="1" @blur="getAverage(row)"></el-input>
+                      </template>
+                    </el-table-column>
+                    <el-table-column align="center" label="绗笁娆�" min-width="100" prop="valueThree">
+                      <template #default="{ row }">
+                        <el-input v-model="row.valueThree" :rows="1" @blur="getAverage(row)"></el-input>
+                      </template>
+                    </el-table-column>
+                    <el-table-column align="center" label="骞冲潎鍊�" min-width="100" prop="average">
+                      <template #default="{ row }">
+                        <el-input v-model="row.average" :rows="1"></el-input>
+                      </template>
+                    </el-table-column>
+                  </template>
+                </el-table-column>
+                <el-table-column align="center" label="澶囨敞" min-width="180" prop="detectionAreaLabel">
+                  <template #default="{ row }">
+                    <el-input v-model="row.remark" :rows="1" type="textarea"></el-input>
+                  </template>
+                </el-table-column>
+                <el-table-column fixed="right" label="鎿嶄綔" width="100">
+                  <template slot-scope="scope">
+                    <el-button size="small" type="text" @click="feMeasuredQuantityListDelete(scope.row, scope.$index)">
+                      鍒犻櫎
+                    </el-button>
+                  </template>
+                </el-table-column>
+              </el-table>
+            </div>
+          </div>
+        </el-form>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" :loading="submitLoading" @click="addPowerSupplyStability">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  getFeLightningProtection,
+  deviceScopeSearch,
+  selectUserCondition,
+  treeDevice,
+  addFeLightningProtection,
+  deleteFeLightningProtection,
+  getFeIlluminationDetectionArea,
+  deleteFeIlluminationDetectionArea,
+  exportFeIllumination
+} from '@/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment'
+
+export default {
+  data() {
+    return {
+      search: {
+        size: 10,
+        current: 1,
+        total: 0
+      },
+      tableData: [],
+      dialogVisible: false,
+      submitLoading: false,
+      form: {
+        testDate: '',
+        deviceId: '',
+        managementNumber: '',
+        lastCalibrationDate: '',
+        nextCalibrationDate: '',
+        testerId: '',
+        checkerId: '',
+        conclusion: '',
+        illuminationDetectionAreaList: []
+      },
+      cascaderList: [],
+      responsibleOptions: [],
+      equipOptions: [],
+    }
+  },
+  mounted() {
+    this.initData()
+  },
+  watch: {
+    dialogVisible(newVal) {
+      if (!newVal) {
+        this.form = {
+          deviceId: null,
+          illuminationDetectionAreaList: []
+        }
+      }
+    }
+  },
+  methods: {
+    getAverage(row) {
+      if (row.valueOne && row.valueTwo && row.valueThree) {
+        if (!isNaN(row.valueOne) && !isNaN(row.valueTwo) && !isNaN(row.valueThree)) {
+          const avg = Number(row.valueOne) + Number(row.valueTwo) + Number(row.valueThree)
+          console.log(avg)
+          row.average = Math.round(avg / 3);
+        } else {
+          this.$message.warning("蹇呴』涓烘暟瀛楋紒")
+        }
+      }
+    },
+    edit(row) {
+      getFeIlluminationDetectionArea({ intensityIlluminationId: row.intensityIlluminationId }).then(res => {
+        this.form = { ...row }
+        this.form.illuminationDetectionAreaList = res.data;
+        this.dialogVisible = true
+      });
+    },
+    initData() {
+      getFeLightningProtection({ ...this.search }).then(res => {
+        if (res.code === 200) {
+          this.tableData = res.data.records;
+          this.search.total = res.data.total;
+        }
+      });
+    },
+    handleSizeChange(val) {
+      this.search.size = val;
+      this.initData();
+    },
+    handleCurrentChange(val) {
+      this.search.current = val;
+      this.initData();
+    },
+    deleteRowFun(row) {
+      this.$confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        deleteFeLightningProtection({ intensityIlluminationId: row.intensityIlluminationId }).then(res => {
+          this.$message.success('鍒犻櫎鎴愬姛锛�')
+          this.initData()
+        })
+      })
+    },
+    feMeasuredQuantityListDelete(row, index) {
+      if (row.detectionAreaId) {
+        deleteFeIlluminationDetectionArea({ detectionAreaId: row.detectionAreaId }).then(res => {
+          if (res.code === 200) {
+            this.form.illuminationDetectionAreaList.splice(index, 1)
+            this.$message.success('鍒犻櫎鎴愬姛锛�')
+          }
+        })
+      } else {
+        this.form.illuminationDetectionAreaList.splice(index, 1)
+        this.$message.success('鍒犻櫎鎴愬姛锛�')
+      }
+    },
+    openDialog() {
+      treeDevice().then(res => {
+        this.cascaderList = res.data;
+      });
+      this.$nextTick(() => {
+        this.$refs['form'].clearValidate()
+      })
+      this.getUserList()
+    },
+    clickAdd() {
+      this.dialogVisible = true
+      this.getEquipOptions()
+    },
+    // 鑾峰彇鎵�鏈夎澶�
+    getEquipOptions() {
+      this.equipOptions = []
+      deviceScopeSearch({ status: '0' }).then(res => {
+        if (res.code === 200 && res.data) {
+          this.equipOptions = res.data
+        }
+      }).catch(error => {
+        console.error(error)
+      })
+    },
+    feMeasuredQuantityListAdd() {
+      const obj = {
+        detectionAreaLabel: null,
+        valueOne: null,
+        valueTwo: null,
+        valueThree: null,
+        average: null,
+        remark: null,
+      }
+      this.form.illuminationDetectionAreaList.push(obj)
+    },
+    addPowerSupplyStability() {
+      this.submitLoading = true
+      this.$refs.form.validate((valid) => {
+        if (valid) {
+          addFeLightningProtection(this.form).then(res => {
+            this.submitLoading = false
+            if (res.code === 200) {
+              this.initData()
+              this.dialogVisible = false
+            }
+          }).catch(error => {
+            this.submitLoading = false
+          })
+        }
+      });
+    },
+    // 鑾峰彇璐熻矗浜轰俊鎭帴鍙�
+    getUserList() {
+      selectUserCondition().then(res => {
+        if (res.code == 200) {
+          this.responsibleOptions = res.data
+        }
+      })
+    },
+    getCalibrationDateFun(val) {
+      const index = this.equipOptions.findIndex(item => item.id === val)
+      if (index > -1) {
+        this.form.managementNumber = this.equipOptions[index].managementNumber
+        this.form.lastCalibrationDate = this.equipOptions[index].lastCalibrationDate
+        this.form.nextCalibrationDate = this.equipOptions[index].nextCalibrationDate
+      }
+    },
+    // 瀵煎嚭
+    downLoadPost(row) {
+      exportFeIllumination({ intensityIlluminationId: row.intensityIlluminationId }).then(res => {
+        this.outLoading = false
+        const blob = new Blob([res], { type: 'application/msword' });
+        this.$download.saveAs(blob, '鐓у害璁板綍.docx')
+      })
+    },
+  }
+}
+</script>
+
+<style scoped>
+.header {
+  height: 3em;
+  width: 100%;
+  display: flex;
+  justify-content: space-between;
+}
+</style>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/lightning-protection-detection.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/lightning-protection-detection.vue
new file mode 100644
index 0000000..673283f
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/lightning-protection-detection.vue
@@ -0,0 +1,231 @@
+<template>
+  <div>
+    <div class="header">
+      <div>闃查浄妫�娴�</div>
+      <div>
+        <el-button size="small" type="primary" @click="clickAdd">瀵� 鍏�</el-button>
+        <el-button size="small" type="primary" @click="downLoadPost">瀵� 鍑�</el-button>
+      </div>
+    </div>
+    <el-table :data="tableData" height="calc(100vh - 19em)" style="width: 100%">
+      <el-table-column label="搴忓彿" type="index" width="120">
+        <template v-slot="scope">
+          <span>{{ (search.current - 1) * search.size + scope.$index + 1 }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="鍘熸枃浠跺悕" min-width="180" prop="fileName">
+      </el-table-column>
+      <el-table-column label="妫�娴嬫棩鏈�" min-width="180" prop="detectionDate">
+      </el-table-column>
+      <el-table-column label="鏈夋晥鏈�" min-width="180" prop="termValidity">
+      </el-table-column>
+      <el-table-column label="妫�娴嬪崟浣�" min-width="180" prop="detectionUnit">
+      </el-table-column>
+      <el-table-column fixed="right" label="鎿嶄綔" min-width="100">
+        <template v-slot="scope">
+          <el-button size="small" type="text" @click="edit(scope.row)">缂栬緫</el-button>
+          <el-button size="small" type="text" @click="deleteRowFun(scope.row)">鍒犻櫎</el-button>
+          <el-button size="small" type="text" @click="download(scope.row)">涓嬭浇</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    <el-pagination :current-page="1" :page-size="search.size" :page-sizes="[10, 20, 30, 50, 100]" :total="search.total"
+      layout="->,total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange"
+      @current-change="handleCurrentChange">
+    </el-pagination>
+    <el-dialog :visible.sync="dialogVisible" title="鏂� 澧�" width="50%">
+      <div style="height: 50vh;">
+        <el-form ref="form" :model="form" label-width="80px">
+          <el-row>
+            <el-col :span="12">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ祴璇曞湴鐐�', trigger: 'blur' }]" label="妫�娴嬫棩鏈�"
+                prop="detectionDate">
+                <el-date-picker v-model="form.detectionDate" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" size="small"
+                  style="width: 100%" type="date" value-format="yyyy-MM-dd">
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ祴璇曞湴鐐�', trigger: 'blur' }]" label="鏈夋晥鏈�"
+                prop="termValidity">
+                <el-date-picker v-model="form.termValidity" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" size="small"
+                  style="width: 100%" type="date" value-format="yyyy-MM-dd">
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ祴璇曞湴鐐�', trigger: 'blur' }]" label="妫�娴嬪崟浣�"
+                prop="detectionUnit">
+                <el-input v-model="form.detectionUnit" size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="妫�娴嬪崟浣�">
+                <el-upload :file-list="form.fileList" :http-request="httpRequest" :limit="1" :on-exceed="handleExceed"
+                  :on-remove="handleRemove" action="#" class="upload-demo" drag multiple>
+                  <i class="el-icon-upload"></i>
+                  <div class="el-upload__text">灏嗘枃浠舵嫋鍒版澶勶紝鎴�<em>鐐瑰嚮涓婁紶</em></div>
+                </el-upload>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="addImport">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+
+import {
+  getLightningProtectionDetection,
+  addLightningProtectionDetection,
+  deleteLightningProtectionDetection,
+  exportOfLightningProtectionDetection
+} from '@/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment'
+
+import axios from 'axios';
+
+export default {
+  data() {
+    return {
+      search: {
+        size: 10,
+        current: 1,
+        total: 0
+      },
+      tableData: [],
+      dialogVisible: false,
+      form: {
+        fileList: [],
+        fileData: []
+      },
+    }
+  },
+  mounted() {
+    this.initData()
+  },
+  watch: {
+    dialogVisible(newVal) {
+      if (!newVal) {
+        this.form = {
+          fileList: [],
+          fileData: []
+        }
+      }
+    }
+  },
+  methods: {
+    // 瀵煎嚭
+    downLoadPost() {
+      exportOfLightningProtectionDetection().then(res => {
+        this.outLoading = false
+        const blob = new Blob([res], { type: 'application/msword' });
+        //灏咮lob 瀵硅薄杞崲鎴愬瓧绗︿覆
+        this.$download.saveAs(blob, '闃查浄妫�娴嬪鍑�.xlsx')
+      })
+    },
+    initData() {
+      getLightningProtectionDetection({ ...this.search }).then(res => {
+        if (res.code === 200) {
+          this.tableData = res.data.records;
+          this.search.total = res.data.total;
+        }
+
+      });
+    },
+    handleSizeChange(val) {
+      this.search.size = val;
+      this.initData();
+    },
+    handleCurrentChange(val) {
+      this.search.current = val;
+      this.initData();
+    },
+    clickAdd() {
+      this.dialogVisible = true
+    },
+    // 鏂囦欢鏁伴噺杩囧鏃舵彁閱�
+    handleExceed() {
+      this.$message({ type: 'error', message: '鏈�澶氭敮鎸�1涓檮浠朵笂浼�' })
+    },
+    // 瑕嗙洊榛樿鐨勪笂浼犺涓猴紝鍙互鑷畾涔変笂浼犵殑瀹炵幇锛屽皢涓婁紶鐨勬枃浠朵緷娆℃坊鍔犲埌fileList鏁扮粍涓�,鏀寔澶氫釜鏂囦欢
+    httpRequest(option) {
+      this.form.fileData.push(option)
+    },
+    addImport() {
+      console.log(this.form)
+      this.$refs.form.validate((valid) => {
+        if (valid) {
+          let params = new FormData()
+          if (this.form.lightningProtectionId) {
+            params.append("lightningProtectionId", this.form.lightningProtectionId)
+          }
+          params.append("termValidity", this.form.termValidity)
+          params.append("detectionUnit", this.form.detectionUnit)
+          params.append("detectionDate", this.form.detectionDate)
+          if (this.form.fileData.length > 0) {
+            params.append("file", this.form.fileData[0].file)
+          }
+          addLightningProtectionDetection(params).then(res => {
+            if (res.code === 200) {
+              this.dialogVisible = false
+              this.initData()
+            }
+          });
+        }
+      });
+    },
+    edit(row) {
+      this.dialogVisible = true
+      this.form = { ...row }
+      this.form.fileList = []
+      this.form.fileData = []
+      this.form.fileList.push({ name: row.systemFileName, url: "123434" })
+      console.log(this.form)
+    },
+    deleteRowFun(row) {
+      this.$confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        deleteLightningProtectionDetection({ lightningProtectionId: row.lightningProtectionId }).then(res => {
+          this.$message.success('鍒犻櫎鎴愬姛锛�')
+          this.initData()
+        })
+      })
+    },
+    handleRemove(file) {
+      this.$axios.delete(this.$api.personnel.deleteCNASFile + "?fileName=" + file.name).then(res => {
+        if (res.code === 201) return;
+        this.$message.success('鍒犻櫎鎴愬姛锛�')
+        let index = this.form.fileList.indexOf(fileName)
+        if (index != -1) {
+          this.successFileList.splice(index, 1)
+        }
+      })
+    },
+    download(row) {
+      if (!row.systemFileName) {
+        this.$message.warning('鏆傛棤鏂囦欢')
+        return
+      }
+      this.$download.downloadFileFromUrl(row.systemFileName, row.fileName)
+    }
+  }
+}
+</script>
+
+<style scoped>
+.header {
+  height: 3em;
+  width: 100%;
+  display: flex;
+  justify-content: space-between;
+}
+</style>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue
new file mode 100644
index 0000000..095eaa5
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue
@@ -0,0 +1,360 @@
+<template>
+  <div>
+    <div class="header">
+      <div>鐢垫簮绋冲畾鎬�</div>
+      <div>
+        <el-button size="small" type="primary" @click="openAddDia">鏂� 澧�</el-button>
+      </div>
+    </div>
+    <el-table :data="tableData" height="calc(100vh - 19em)" style="width: 100%">
+      <el-table-column label="搴忓彿" type="index" width="120">
+        <template v-slot="scope">
+          <span>{{ (search.current - 1) * search.size + scope.$index + 1 }}</span>
+        </template>
+      </el-table-column>
+      <el-table-column label="娴嬭瘯鍦扮偣" min-width="180" prop="testLocation"></el-table-column>
+      <el-table-column label="娴嬭瘯鏃ユ湡" min-width="180" prop="testDate" width="testDate"></el-table-column>
+      <el-table-column label="缁撹" min-width="180" prop="conclusion"></el-table-column>
+      <el-table-column label="妫�娴嬭��" min-width="180" prop="testerUser"></el-table-column>
+      <el-table-column label="鏍告煡浜�" min-width="180" prop="checkerUser"></el-table-column>
+      <el-table-column label="璁惧鍚嶇О" min-width="180" prop="deviceName"></el-table-column>
+      <el-table-column label="璁惧缂栧彿" min-width="180" prop="managementNumber"></el-table-column>
+      <el-table-column label="鏍″噯鏃ユ湡" min-width="180" prop="lastCalibrationDate"></el-table-column>
+      <el-table-column label="涓嬫鏍″噯鏃ユ湡" min-width="180" prop="nextCalibrationDate"></el-table-column>
+      <el-table-column label="鍒涘缓鏃堕棿" min-width="180" prop="createTime"></el-table-column>
+      <el-table-column fixed="right" label="鎿嶄綔" min-width="140">
+        <template v-slot="scope">
+          <el-button size="small" type="text" @click="downLoadPost(scope.row)">瀵煎嚭</el-button>
+          <el-button size="small" type="text" @click="edit(scope.row)">缂栬緫</el-button>
+          <el-button size="small" type="text" @click="deleteRowFun(scope.row)">鍒犻櫎</el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+    <el-pagination :current-page="1" :page-size="search.size" :page-sizes="[10, 20, 30, 50, 100]" :total="search.total"
+      layout="->,total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange"
+      @current-change="handleCurrentChange">
+    </el-pagination>
+    <el-dialog :visible.sync="dialogVisible" title="鏂板" width="50%" @open="openDialog">
+      <div style="height: 50vh; overflow-y: auto">
+        <el-form ref="form" :model="form" label-width="120px">
+          <el-row>
+            <el-col :span="12">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ祴璇曞湴鐐�', trigger: 'blur' }]" label="娴嬭瘯鍦扮偣"
+                prop="testLocation">
+                <el-input v-model="form.testLocation" size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ祴璇曟棩鏈�', trigger: 'change' }]" label="娴嬭瘯鏃ユ湡"
+                prop="testDate">
+                <el-date-picker v-model="form.testDate" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" size="small"
+                  style="width: 100%" type="date" value-format="yyyy-MM-dd">
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ヨ澶囧悕绉�', trigger: 'change' }]" label="璁惧鍚嶇О"
+                prop="deviceId">
+                <el-select v-model="form.deviceId" class="table_input" clearable filterable placeholder="璁惧鍚嶇О"
+                  size="small" @change="getCalibrationDateFun">
+                  <el-option v-for="item in equipOptions" :key="item.id" :label="item.deviceName" :value="item.id">
+                    {{ item.deviceName + item.managementNumber }}
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="璁惧缂栧彿">
+                <el-input v-model="form.managementNumber" disabled size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="鏈�杩戞牎鍑嗘棩鏈�">
+                <el-input v-model="form.lastCalibrationDate" disabled size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓嬫鏍″噯鏃ユ湡">
+                <el-input v-model="form.nextCalibrationDate" disabled size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="妫�娴嬭��" prop="recipientUser">
+                <el-select v-model="form.testerId" clearable filterable placeholder="璇烽�夋嫨" size="small"
+                  style="width: 100%;">
+                  <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="鏍告煡浜�" prop="recipientUser">
+                <el-select v-model="form.checkerId" clearable filterable placeholder="璇烽�夋嫨" size="small"
+                  style="width: 100%;">
+                  <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="缁撹">
+                <el-input v-model="form.conclusion" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" type="textarea">
+                </el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+          <div>
+            <div style="display: flex; justify-content: flex-end; margin-bottom: 0.5em">
+              <el-button size="small" type="primary" @click="feMeasuredQuantityListAdd">鏂板</el-button>
+            </div>
+            <div>
+              <el-table :data="form.feMeasuredQuantityList" height="40vh" style="width: 100%; margin: auto">
+                <el-table-column label="搴忓彿" type="index" width="80"></el-table-column>
+                <el-table-column align="center" label="娴嬪畾閲忓悕绉�" min-width="180" prop="measuredQuantityLabel">
+                  <template #default="{ row }">
+                    <el-input v-model="row.measuredQuantityLabel" :rows="1" type="textarea"></el-input>
+                  </template>
+                </el-table-column>
+                <el-table-column align="center" label="鍊�" min-width="300" prop="name">
+                  <template>
+                    <el-table-column align="center" label="A" min-width="100" prop="valueA">
+                      <template #default="{ row }">
+                        <el-input v-model="row.valueA" :rows="1"></el-input>
+                      </template>
+                    </el-table-column>
+                    <el-table-column align="center" label="B" min-width="100" prop="valueB">
+                      <template #default="{ row }">
+                        <el-input v-model="row.valueB" :rows="1"></el-input>
+                      </template>
+                    </el-table-column>
+                    <el-table-column align="center" label="C" min-width="100" prop="valueC">
+                      <template #default="{ row }">
+                        <el-input v-model="row.valueC" :rows="1"></el-input>
+                      </template>
+                    </el-table-column>
+                  </template>
+                </el-table-column>
+                <el-table-column fixed="right" label="鎿嶄綔" width="100">
+                  <template slot-scope="scope">
+                    <el-button size="small" type="text" @click="feMeasuredQuantityListDelete(scope.row, scope.$index)">
+                      鍒犻櫎
+                    </el-button>
+                  </template>
+                </el-table-column>
+              </el-table>
+            </div>
+          </div>
+        </el-form>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" :loading="submitLoading" @click="addPowerSupplyStability">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  getLaboratoryFacilityPowerStablePage,
+  deviceScopeSearch,
+  treeDevice,
+  selectUserCondition,
+  addLaboratoryFacilityPowerStable,
+  deleteFeMeasuredQuantity,
+  getFeMeasuredQuantityService,
+  deleteLaboratoryFacilityPowerStable,
+  exportFePowerStable
+} from '@/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment'
+
+export default {
+  data() {
+    return {
+      search: {
+        size: 10,
+        current: 1,
+        total: 0
+      },
+      tableData: [],
+      dialogVisible: false,
+      submitLoading: false,
+      form: {
+        testLocation: '',
+        testDate: '',
+        deviceId: '',
+        managementNumber: '',
+        lastCalibrationDate: '',
+        nextCalibrationDate: '',
+        testerId: '',
+        checkerId: '',
+        conclusion: '',
+        feMeasuredQuantityList: []
+      },
+      equipOptions: [],
+      cascaderList: [],
+      responsibleOptions: []
+    }
+  },
+  mounted() {
+    this.initData()
+  },
+  watch: {
+    dialogVisible(newVal) {
+      if (!newVal) {
+        this.form = {
+          deviceId: null,
+          feMeasuredQuantityList: []
+        }
+      }
+    }
+  },
+  methods: {
+    // 鍒濆鍖栬皟鐢�
+    initData() {
+      getLaboratoryFacilityPowerStablePage({
+        ...this.search
+      }).then(res => {
+        if (res.code === 200) {
+          this.tableData = res.data.records;
+          this.search.total = res.data.total;
+        }
+      })
+    },
+    handleSizeChange(val) {
+      this.search.size = val;
+      this.initData();
+    },
+    handleCurrentChange(val) {
+      this.search.current = val;
+      this.initData();
+    },
+    // 鐢垫簮绋冲畾鎬� 琛ㄦ牸涓殑琛屽垹闄ゆ寜閽�
+    deleteRowFun(row) {
+      this.$confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        deleteLaboratoryFacilityPowerStable({ powerStableId: row.powerStableId }).then(res => {
+          this.$message.success('鍒犻櫎鎴愬姛锛�')
+          this.initData()
+        })
+      })
+    },
+    openAddDia() {
+      this.dialogVisible = true
+      this.getEquipOptions()
+    },
+    // 鑾峰彇鎵�鏈夎澶�
+    getEquipOptions() {
+      this.equipOptions = []
+      deviceScopeSearch({ status: '0' }).then(res => {
+        if (res.code === 200 && res.data) {
+          this.equipOptions = res.data
+        }
+      }).catch(error => {
+        console.error(error)
+      })
+    },
+    // 鐢垫簮绋冲畾鎬�-鎵撳紑寮规璋冪敤璁惧鎺ュ彛锛屾煡璇娇鐢ㄧ殑璁惧
+    openDialog() {
+      treeDevice().then(res => {
+        this.cascaderList = res.data;
+      })
+      this.$nextTick(() => {
+        this.$refs['form'].clearValidate()
+      })
+      this.getUserList()
+    },
+    //
+    getCalibrationDateFun(val) {
+      const index = this.equipOptions.findIndex(item => item.id === val)
+      if (index > -1) {
+        this.form.managementNumber = this.equipOptions[index].managementNumber
+        this.form.lastCalibrationDate = this.equipOptions[index].lastCalibrationDate
+        this.form.nextCalibrationDate = this.equipOptions[index].nextCalibrationDate
+      }
+    },
+    // 鐢垫簮绋冲畾鎬�-娴嬪畾閲忓脊妗嗕腑琛ㄦ牸鐨勫垹闄よ
+    feMeasuredQuantityListDelete(row, index) {
+      if (row.measuredQuantityId) {
+        deleteFeMeasuredQuantity({ measuredQuantityId: row.measuredQuantityId }).then(res => {
+          if (res.code === 201) return
+          this.form.feMeasuredQuantityList.splice(index, 1)
+          this.$message.success('鍒犻櫎鎴愬姛锛�')
+        })
+      } else {
+        this.form.feMeasuredQuantityList.splice(index, 1)
+        this.$message.success('鍒犻櫎鎴愬姛锛�')
+      }
+    },
+    // 鐢垫簮绋冲畾鎬�-娴嬪畾閲忚〃鏍兼柊澧炶
+    feMeasuredQuantityListAdd() {
+      const obj = {
+        measuredQuantityLabel: null,
+        valueA: null,
+        valueB: null,
+        valueC: null,
+      }
+      this.form.feMeasuredQuantityList.push(obj)
+    },
+    // 鐢垫簮绋冲畾鎬� 鏂板
+    addPowerSupplyStability() {
+      this.submitLoading = true
+      this.$refs.form.validate((valid) => {
+        if (valid) {
+          addLaboratoryFacilityPowerStable(this.form).then(res => {
+            this.submitLoading = false
+            if (res.code === 200) {
+              this.initData()
+              this.dialogVisible = false
+            }
+          }).catch(error => {
+            this.submitLoading = false
+          })
+        }
+      });
+    },
+    // 瀵煎嚭
+    downLoadPost(row) {
+      exportFePowerStable({ powerStableId: row.powerStableId }).then(res => {
+        this.outLoading = false
+        const blob = new Blob([res], { type: 'application/msword' });
+        this.$download.saveAs(blob, '鐢垫簮绋冲畾鎬�.docx')
+      })
+    },
+    // 鐢垫簮绋冲畾鎬� 鐐瑰嚮琛岀紪杈戣Е鍙�
+    edit(row) {
+      getFeMeasuredQuantityService({ powerStableId: row.powerStableId }).then((res => {
+        this.form = { ...row }
+        this.form.feMeasuredQuantityList = res.data;
+        this.dialogVisible = true
+      }))
+    },
+    // 鑾峰彇璐熻矗浜轰俊鎭帴鍙�
+    getUserList() {
+      selectUserCondition().then(res => {
+        if (res.code == 200) {
+          let data = []
+          res.data.forEach(a => {
+            data.push({
+              id: a.id,
+              name: a.name
+            })
+          })
+          this.responsibleOptions = data
+        }
+      })
+    },
+  }
+}
+</script>
+
+<style scoped>
+.header {
+  height: 3em;
+  width: 100%;
+  display: flex;
+  justify-content: space-between;
+}
+</style>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/temperature-humidity-record.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/temperature-humidity-record.vue
new file mode 100644
index 0000000..7bed13c
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/temperature-humidity-record.vue
@@ -0,0 +1,428 @@
+<template>
+  <div>
+    <el-row :gutter="20">
+      <el-col :span="12">
+        <div class="header">
+          <div>璇曢獙鍖哄煙</div>
+          <div>
+            鍚嶇О锛�
+            <el-input v-model="search.testAreaName" clearable size="small" style="width: 120px"></el-input>
+            <el-button size="small" type="primary" @click="initData">鏌ヨ</el-button>
+            <el-button size="small" type="primary" @click="clickAdd">鏂� 澧�</el-button>
+          </div>
+        </div>
+        <el-table :data="tableData" height="calc(100vh - 19em)" highlight-current-row style="width: 100%"
+          @row-click="clickRow">
+          <el-table-column label="搴忓彿" type="index" width="60" align="center"></el-table-column>
+          <el-table-column label="鏈堝害鏃堕棿" min-width="180" prop="monthDate"></el-table-column>
+          <el-table-column label="璇曢獙鍖哄煙鍚嶇О" min-width="180" prop="testAreaName"></el-table-column>
+          <el-table-column label="纭鐘舵��" min-width="180" prop="isAffirm">
+            <template slot-scope="scope">
+              <el-tag type="danger" v-if="scope.row.isAffirm == 0">鏈‘璁�</el-tag>
+              <el-tag type="success" v-if="scope.row.isAffirm == 1">宸茬‘璁�</el-tag>
+            </template>
+          </el-table-column>
+          <el-table-column label="澧炶ˉ淇℃伅" min-width="180" prop="subjoin"></el-table-column>
+          <el-table-column fixed="right" label="鎿嶄綔" min-width="180" align="center">
+            <template v-slot="scope">
+              <el-button size="small" type="text" @click="downLoadPost(scope.row)">瀵煎嚭</el-button>
+              <el-button size="small" type="text" @click="edit(scope.row)">缂栬緫</el-button>
+              <el-button :disabled="scope.row.isAffirm === '1'" size="small" type="text"
+                @click="openApprovalDialog(scope.row)">纭</el-button>
+              <el-button size="small" type="text" @click="deleteRowFun(scope.row)">鍒犻櫎</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+        <el-pagination :current-page="1" :page-size="search.size" :page-sizes="[10, 20, 30, 50, 100]"
+          :total="search.total" layout="->,total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange"
+          @current-change="handleCurrentChange">
+        </el-pagination>
+      </el-col>
+      <el-col :span="12">
+        <div class="header">
+          <div>娓╂箍搴﹁褰曪細{{ saveRow.monthDate }}</div>
+          <div>
+            <el-button v-if="saveRow.monthDate" size="small" type="primary" @click="dialogVisible1 = true">鏂�
+              澧�</el-button>
+          </div>
+        </div>
+        <el-table :data="tableData1" height="calc(100vh - 18em)" style="width: 100%">
+          <el-table-column label="搴忓彿" type="index" width="60" align="center"></el-table-column>
+          <el-table-column label="鏃ユ湡" min-width="100" prop="recordDate"></el-table-column>
+          <el-table-column align="center" label="涓婂崍" min-width="200">
+            <template>
+              <el-table-column label="鏃堕棿" min-width="110" prop="morningTestTime"
+                show-overflow-tooltip></el-table-column>
+              <el-table-column label="娓╁害" min-width="80" prop="morningTemp" show-overflow-tooltip></el-table-column>
+              <el-table-column label="婀垮害" min-width="80" prop="morningHum" show-overflow-tooltip></el-table-column>
+            </template>
+          </el-table-column>
+          <el-table-column label="璁板綍鍛�" min-width="100" prop="morningRecorderUser"></el-table-column>
+          <el-table-column align="center" label="涓嬪崍" min-width="200">
+            <template>
+              <el-table-column label="鏃堕棿" min-width="110" prop="afternoonTime" show-overflow-tooltip></el-table-column>
+              <el-table-column label="娓╁害" min-width="80" prop="afternoonTemp" show-overflow-tooltip></el-table-column>
+              <el-table-column label="婀垮害" min-width="80" prop="afternoonHum" show-overflow-tooltip></el-table-column>
+            </template>
+          </el-table-column>
+          <el-table-column label="璁板綍鍛�" min-width="100" prop="afternoonRecorderUser"></el-table-column>
+          <el-table-column label="澶囨敞" min-width="100" prop="note" show-overflow-tooltip></el-table-column>
+          <el-table-column fixed="right" label="鎿嶄綔" min-width="100">
+            <template v-slot="scope">
+              <el-button size="small" type="text" @click="edit1(scope.row)">缂栬緫</el-button>
+              <el-button size="small" type="text" @click="deleteRowFun1(scope.row)">鍒犻櫎</el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+        <el-pagination :current-page="1" :page-size="search1.size" :page-sizes="[10, 20, 30, 50, 100]"
+          :total="search1.total" layout="->,total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange1"
+          @current-change="handleCurrentChange1">
+        </el-pagination>
+      </el-col>
+    </el-row>
+    <el-dialog :visible.sync="dialogVisible" title="鎻愮ず" width="50%">
+      <div style="height: 20vh;">
+        <el-form ref="form" :model="form" label-width="80px">
+          <el-row>
+            <el-col :span="24">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ湀搴︽椂闂�', trigger: 'blur' }]" label="鏈堝害鏃堕棿"
+                prop="monthDate">
+                <el-date-picker v-model="form.monthDate" format="yyyy-MM" placeholder="閫夋嫨鏈堜唤" size="small"
+                  style="width: 100%" type="month" value-format="yyyy-MM">
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ヨ瘯楠屽尯鍩�', trigger: 'blur' }]" label="璇曢獙鍖哄煙"
+                prop="testAreaName">
+                <el-input v-model="form.testAreaName"></el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" :loading="submitLoading" @click="addPowerSupplyStability">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog :visible.sync="dialogVisible1" title="鎻愮ず" width="50%" @open="openDialog">
+      <div style="height: 40vh;">
+        <el-form ref="form1" :model="form1" label-width="120px">
+          <el-row>
+            <el-col :span="24">
+              <el-form-item label="鏃ユ湡">
+                <el-date-picker v-model="form1.recordDate" format="yyyy-MM-dd" placeholder="璇烽�夋嫨鏃ユ湡" size="small"
+                  style="width: 50%" type="date" value-format="yyyy-MM-dd">
+                </el-date-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓婂崍鏃堕棿">
+                <el-time-picker v-model="form1.morningTestTime" size="small" value-format="HH:mm:ss" format="HH:mm:ss"
+                  style="width: 100%" placeholder="璇烽�夋嫨鏃堕棿">
+                </el-time-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓婂崍娓╁害">
+                <el-input v-model="form1.morningTemp" size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓婂崍婀垮害">
+                <el-input v-model="form1.morningHum" size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓婂崍璁板綍鍛�">
+                <el-select v-model="form1.morningRecorderId" clearable filterable placeholder="璇烽�夋嫨" size="small"
+                  style="width: 100%;">
+                  <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓嬪崍鏃堕棿">
+                <el-time-picker v-model="form1.afternoonTime" size="small" value-format="HH:mm:ss" format="HH:mm:ss"
+                  style="width: 100%" placeholder="璇烽�夋嫨鏃堕棿">
+                </el-time-picker>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓嬪崍娓╁害">
+                <el-input v-model="form1.afternoonTemp" size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓嬪崍婀垮害">
+                <el-input v-model="form1.afternoonHum" size="small"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="12">
+              <el-form-item label="涓嬪崍璁板綍鍛�">
+                <el-select v-model="form1.afternoonRecorderId" clearable filterable placeholder="璇烽�夋嫨" size="small"
+                  style="width: 100%;">
+                  <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="澶囨敞">
+                <el-input v-model="form1.note" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" type="textarea">
+                </el-input>
+              </el-form-item>
+            </el-col>
+          </el-row>
+        </el-form>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="dialogVisible1 = false">鍙� 娑�</el-button>
+        <el-button type="primary" :loading="submitLoading" @click="addPowerSupplyStability1">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+    <el-dialog :visible.sync="approvalDialog" title="纭" width="30%" @close="subjoin = ''">
+      <span>
+        澧炶ˉ淇℃伅锛�
+        <el-input v-model="subjoin" type="textarea"></el-input>
+      </span>
+      <span slot="footer" class="dialog-footer">
+        <el-button :loading="approvalLoading" @click="subjoin = '', approvalDialog = false">涓嶇‘璁�</el-button>
+        <el-button :loading="approvalLoading" type="primary" @click="handleApproval">纭� 璁�</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  getFeTempHumDate,
+  addFeTempHumDate,
+  getFeTempHumRecordPage,
+  addFeTempHumRecord,
+  selectUserCondition,
+  deleteFeTempHumRecord,
+  deleteFeTempHumDate,
+  exportTemperatureAndHumidityRecords,
+  affirmFeTempHumDate
+} from '@/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment'
+
+export default {
+  data() {
+    return {
+      search: {
+        size: 20,
+        current: 1,
+        total: 0,
+        testAreaName: ''
+      },
+      search1: {
+        size: 20,
+        current: 1,
+        total: 0
+      },
+      tableData: [],
+      tableData1: [],
+      dialogVisible: false,
+      submitLoading: false,
+      dialogVisible1: false,
+      form: {},
+      form1: {},
+      saveRow: {},
+      responsibleOptions: [],
+      approvalDialog: false,
+      approvalLoading: false,
+      subjoin: '',
+      approvalRow: {},
+    }
+  },
+  mounted() {
+    this.initData()
+  },
+  watch: {
+    dialogVisible(newVal) {
+      if (!newVal) {
+        this.form = {
+        }
+      }
+    },
+    dialogVisible1(newVal) {
+      if (!newVal) {
+        this.form1 = {
+        }
+      }
+    }
+  },
+  methods: {
+    openApprovalDialog(row) {
+      this.approvalDialog = true
+      this.approvalRow = row
+    },
+    handleApproval() {
+      this.approvalLoading = true
+      const params = {
+        dateId: this.approvalRow.dateId,
+        subjoin: this.subjoin,
+      }
+      affirmFeTempHumDate(params).then(res => {
+        this.approvalLoading = false
+        if (res.code === 200) {
+          this.$message.success('纭鎴愬姛锛�')
+          this.approvalDialog = false
+          this.initData()
+        }
+      }).catch(err => {
+        this.approvalDialog = false
+      })
+    },
+    openDialog() {
+      selectUserCondition().then(res => {
+        if (res.code == 200) {
+          this.responsibleOptions = res.data
+        }
+      })
+    },
+    addPowerSupplyStability() {
+      this.$refs.form.validate((valid) => {
+        if (valid) {
+          this.submitLoading = true
+          addFeTempHumDate(this.form).then(res => {
+            if (res.code === 200) {
+              this.$message.success('鏂板鎴愬姛!')
+              this.submitLoading = false
+              this.initData()
+              this.dialogVisible = false
+            }
+          }).catch(err => {
+            this.submitLoading = false
+          })
+        }
+      });
+    },
+    addPowerSupplyStability1() {
+      if (!this.saveRow) {
+        this.$message.warning("璇烽�夋嫨璇曢獙鍖哄煙锛�")
+        return
+      }
+      this.$refs.form1.validate((valid) => {
+        this.submitLoading = true
+        if (valid) {
+          this.form1.dateId = this.saveRow.dateId
+          addFeTempHumRecord(this.form1).then(res => {
+            if (res.code === 200) {
+              this.$message.success('鏂板鎴愬姛!')
+              this.submitLoading = false
+              this.initData1(this.saveRow.dateId)
+              this.dialogVisible1 = false
+            }
+          }).catch(err => {
+            this.submitLoading = false
+          })
+        }
+      });
+    },
+    clickRow(row) {
+      this.saveRow = row
+      this.initData1(row.dateId)
+    },
+    edit(row) {
+      this.form = { ...row }
+      this.dialogVisible = true
+    },
+    deleteRowFun(row) {
+      this.$confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        deleteFeTempHumDate({ dateId: row.dateId }).then(res => {
+          this.$message.success('鍒犻櫎鎴愬姛锛�')
+          this.initData()
+        })
+      })
+    },
+    edit1(row) {
+      this.form1 = { ...row }
+      this.dialogVisible1 = true
+    },
+    // 瀵煎嚭
+    downLoadPost(row) {
+      exportTemperatureAndHumidityRecords({ dateId: row.dateId }).then(res => {
+        this.outLoading = false
+        const blob = new Blob([res], { type: 'application/msword' });
+        this.$download.saveAs(blob, '娓╂箍搴﹁褰�.docx')
+      })
+    },
+    deleteRowFun1(row) {
+      this.$confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        deleteFeTempHumRecord({ tempHumId: row.tempHumId }).then(res => {
+          this.$message.success('鍒犻櫎鎴愬姛锛�')
+          this.initData1(this.saveRow.dateId)
+        })
+      })
+    },
+    initData() {
+      getFeTempHumDate({
+        ...this.search,
+        ...this.search
+      }).then(res => {
+        if (res.code === 200) {
+          this.tableData = res.data.records;
+          this.search.total = res.data.total;
+          if (res.data.records.length === 0) {
+            this.tableData1 = []
+            this.saveRow.monthDate = ''
+          }
+        }
+
+      })
+    },
+    initData1(dateId) {
+      let form = { dateId: dateId }
+      getFeTempHumRecordPage({
+        ...this.search1,
+        ...form
+      }).then(res => {
+        if (res.code === 200) {
+          this.tableData1 = res.data.records;
+          this.search1.total = res.data.total;
+        }
+      });
+    },
+    handleSizeChange(val) {
+      this.search.size = val;
+      this.initData();
+    },
+    handleCurrentChange(val) {
+      this.search.current = val;
+      this.initData();
+    },
+    handleSizeChange1(val) {
+      this.search1.size = val;
+      this.initData1();
+    },
+    handleCurrentChange1(val) {
+      this.search1.current = val;
+      this.initData1();
+    },
+    clickAdd() {
+      this.dialogVisible = true
+    }
+  }
+}
+</script>
+
+<style scoped>
+.header {
+  height: 3em;
+  width: 100%;
+  display: flex;
+  justify-content: space-between;
+}
+</style>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/three-wastes-dialog.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/three-wastes-dialog.vue
new file mode 100644
index 0000000..510bbc2
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/three-wastes-dialog.vue
@@ -0,0 +1,189 @@
+<template>
+  <div>
+    <el-dialog v-loading="diaLoading" :close-on-click-modal="false"
+               :close-on-press-escape="false"
+               :visible.sync="formDia"
+               title="涓夊簾澶勭悊淇℃伅"
+               width="80%" @close="closeThreeWastesDia">
+      <el-form ref="form" :model="form" :rules="rules" label-width="auto">
+        <el-col :span="24">
+          <el-form-item label="澶囨敞" prop="purposes">
+            <el-input v-model="form.remark" clearable size="small"></el-input>
+          </el-form-item>
+        </el-col>
+      </el-form>
+      <div style="text-align: right;margin-bottom: 10px">
+        <el-button size="small" type="primary" @click="addRow">娣诲姞</el-button>
+        <el-button size="small" type="danger" @click="clearTable">娓呯┖</el-button>
+      </div>
+      <el-table :data="wastesDetailList" border height="300" style="width: 100%">
+        <el-table-column align="center" label="搴忓彿" type="index" width="60" />
+        <el-table-column header-align="center" label="鎺ユ敹浜�" prop="acceptor">
+          <template slot-scope="{row}">
+            <el-input v-model="row.acceptor" size="small"/>
+          </template>
+        </el-table-column>
+        <el-table-column header-align="center" label="鎺ユ敹鍗曚綅" prop="receivingUnit">
+          <template slot-scope="{row}">
+            <el-input v-model="row.receivingUnit" size="small"/>
+          </template>
+        </el-table-column>
+        <el-table-column header-align="center" label="鍚嶇О" prop="designation">
+          <template slot-scope="{row}">
+            <el-input v-model="row.designation" size="small"/>
+          </template>
+        </el-table-column>
+        <el-table-column header-align="center" label="绉讳氦浜�" prop="transferPeople" width="180">
+          <template slot-scope="{row}">
+            <el-input v-model="row.transferPeople" size="small"/>
+          </template>
+        </el-table-column>
+        <el-table-column header-align="center" label="浣撶Н" prop="volume" width="180">
+          <template slot-scope="{row}">
+            <el-input v-model="row.volume" size="small"/>
+          </template>
+        </el-table-column>
+        <el-table-column header-align="center" label="閫佸鐞嗘棩鏈�" prop="deliveryDate" width="180">
+          <template slot-scope="{row}">
+            <!-- <el-input v-model="row.deliveryDate" size="small"/> -->
+            <el-date-picker
+                value-format="yyyy-MM-dd"
+                style="width: 100%"
+                format="yyyy-MM-dd"
+                size="small"
+                v-model="row.deliveryDate"
+                type="date"
+                placeholder="閫夋嫨鏃ユ湡">
+              </el-date-picker>
+          </template>
+        </el-table-column>
+      </el-table>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="closeThreeWastesDia">鍙� 娑�</el-button>
+        <el-button :loading="loading" type="primary" @click="handleEdit">鎻� 浜�</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {
+  getInternalWastesOne,
+  addInternalWastes,
+  updateInternalWastes
+} from '@/api/cnas/resourceDemand/facilitiesEnvironment/internalWastes'
+
+export default {
+  name: 'three-wastes-dialog',
+  // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
+  components: {},
+  data() {
+    // 杩欓噷瀛樻斁鏁版嵁
+    return {
+      formDia: false,
+      diaLoading: false,
+      loading: false,
+      form: {
+        remark: '',
+        wastesId: '',
+      },
+      rules: {
+        remark: [{required: false, message: '璇峰~鍐欏娉�',trigger: 'blur'}],
+      },
+      wastesDetailList: [],
+      operationType: '',
+    };
+  },
+  mounted() {
+
+  },
+  // 鏂规硶闆嗗悎
+  methods: {
+    // 鎵撳紑寮规
+    openDia (type, row) {
+      this.formDia = true
+      this.operationType = type
+      if (type !== 'add') {
+        this.searchInfo(row)
+      }
+    },
+    // 鏌ヨ璇︽儏
+    searchInfo (row) {
+      this.diaLoading = true
+      getInternalWastesOne({wastesId: row.wastesId}).then(res => {
+        this.diaLoading = false
+        if (res.code === 200){
+          this.form = res.data
+          this.wastesDetailList = this.form.wastesDetailList
+        }
+      }).catch(err => {
+        console.log(err)
+        this.diaLoading = false
+      })
+    },
+    // 鎻愪氦寮规鏁版嵁
+    handleEdit () {
+      this.$refs['form'].validate((valid) => {
+        if (valid) {
+          if (this.wastesDetailList.length === 0) {
+            this.$message.warning('璇锋坊鍔犺〃鏍兼暟鎹�')
+            return
+          }
+          this.loading = true
+          const internalImplementDto = this.HaveJson(this.form)
+          internalImplementDto.wastesDetailList = this.HaveJson(this.wastesDetailList)
+          if (this.operationType === 'add') {
+            addInternalWastes(internalImplementDto).then(res => {
+              this.loading = false
+              if (res.code === 200){
+                this.$message.success('鎿嶄綔鎴愬姛')
+                this.closeThreeWastesDia()
+              }
+            }).catch(err => {
+              console.log('err---', err);
+              this.loading = false
+            })
+          } else if (this.operationType === 'edit') {
+            updateInternalWastes(internalImplementDto).then(res => {
+              this.loading = false
+              if (res.code === 200){
+                this.$message.success('鎿嶄綔鎴愬姛')
+                this.closeThreeWastesDia()
+              }
+            }).catch(err => {
+              console.log('err---', err);
+              this.loading = false
+            })
+          }
+        } else {
+          console.log('error submit!!');
+          return false;
+        }
+      });
+    },
+    // 澧炲姞琛ㄦ牸琛屾暟鎹�
+    addRow () {
+      this.wastesDetailList.push({
+        acceptor: '',
+        receivingUnit: '',
+        designation: '',
+        transferPeople: '',
+        volume: '',
+        deliveryDate: '',
+      })
+    },
+    // 娓呯┖琛ㄦ牸鏁版嵁
+    clearTable () {
+      this.wastesDetailList = []
+    },
+    closeThreeWastesDia () {
+      this.$refs.form.resetFields();
+      this.formDia = false
+      this.$emit('closeThreeWastesDia')
+    },
+  }
+};
+</script>
+
+<style scoped>
+</style>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/three-wastes-treatment.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/three-wastes-treatment.vue
new file mode 100644
index 0000000..3f70121
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/three-wastes-treatment.vue
@@ -0,0 +1,206 @@
+<template>
+  <div class="capacity-scope">
+    <div class="search">
+      <div>
+        <el-form :model="searchForm" ref="searchForm" size="small" :inline="true">
+          <el-form-item label="澶囨敞" prop="remark">
+            <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="searchForm.remark">
+            </el-input>
+          </el-form-item>
+          <el-form-item>
+            <el-button type="primary" icon="el-icon-search" size="mini" @click="searchList">鏌� 璇�</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetSearchForm">閲� 缃�</el-button>
+          </el-form-item>
+        </el-form>
+      </div>
+      <div>
+        <el-button size="medium" type="primary" @click="openFormDia('add')">鏂� 澧�</el-button>
+      </div>
+
+    </div>
+    <div class="table">
+      <lims-table :tableData="tableData" :column="tableColumn" :height="'calc(100vh - 280px)'" @pagination="pagination"
+        :page="page" :tableLoading="tableLoading"></lims-table>
+    </div>
+    <three-wastes-dialog v-if="threeWastesDia" ref="threeWastesDia"
+      @closeThreeWastesDia="closeThreeWastesDia"></three-wastes-dialog>
+  </div>
+</template>
+
+<script>
+import ThreeWastesDialog from './three-wastes-dialog.vue';
+import limsTable from '@/components/Table/lims-table.vue'
+import {
+  pageInternalWastes,
+  removeStandardSubstance,
+  exportInternalWastes
+} from '@/api/cnas/resourceDemand/facilitiesEnvironment/internalWastes'
+export default {
+  name: 'a6-three-wastes-treatment',
+  // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
+  components: {
+    ThreeWastesDialog,
+    limsTable
+  },
+  data() {
+    // 杩欓噷瀛樻斁鏁版嵁
+    return {
+      searchForm: {
+        remark: '',
+      },
+      tableColumn: [
+        {
+          label: '鍒涘缓鏃堕棿',
+          prop: 'createTime',
+          minWidth: '100'
+        },
+        {
+          label: '鍒涘缓浜�',
+          prop: 'createUserName',
+          minWidth: '100'
+        },
+        {
+          label: '澶囨敞',
+          prop: 'remark',
+          minWidth: '100'
+        },
+        {
+          label: '淇敼鏃堕棿',
+          prop: 'updateTime',
+          minWidth: '100'
+        },
+        {
+          label: '淇敼浜�',
+          prop: 'updateUserName',
+          minWidth: '100'
+        },
+        {
+          dataType: 'action',
+          fixed: 'right',
+          minWidth: '220',
+          label: '鎿嶄綔',
+          operation: [
+            {
+              name: '瀵煎嚭',
+              type: 'text',
+              clickFun: (row) => {
+                this.handleDown(row)
+              }
+            },
+            {
+              name: '缂栬緫',
+              type: 'text',
+              clickFun: (row) => {
+                this.openFormDia('edit', row);
+              },
+            },
+            {
+              name: '鍒犻櫎',
+              type: 'text',
+              color: '#f56c6c',
+              clickFun: (row) => {
+                this.delPlan(row)
+              },
+            }
+          ]
+        }
+      ],
+      tableData: [],
+      tableLoading: false,
+      page: {
+        total: 0,
+        size: 10,
+        current: 1
+      },
+      total: 0,
+      threeWastesDia: false
+    };
+  },
+  mounted() {
+    this.searchList()
+  },
+  // 鏂规硶闆嗗悎
+  methods: {
+    // 鏌ヨ鍒楄〃
+    searchList() {
+      this.tableLoading = true
+      pageInternalWastes({ ...this.page, ...this.searchForm }).then(res => {
+        this.tableLoading = false
+        if (res.code === 200) {
+          this.tableData = res.data.records
+          this.page.total = res.data.total
+        }
+      }).catch(err => {
+        console.log('err---', err);
+        this.tableLoading = false
+      })
+    },
+    // 鍒犻櫎
+    delPlan(row) {
+      this.$confirm('姝ゆ搷浣滃皢姘镐箙鍒犻櫎璇ユ暟鎹�, 鏄惁缁х画?', '鎻愮ず', {
+        confirmButtonText: '纭畾',
+        cancelButtonText: '鍙栨秷',
+        type: 'warning'
+      }).then(() => {
+        this.tableLoading = true
+        removeStandardSubstance({ wastesId: row.wastesId }).then(res => {
+          this.tableLoading = false
+          if (res.code === 200) {
+            this.$message.success('鍒犻櫎鎴愬姛')
+            this.searchList()
+          }
+        }).catch(err => {
+          this.tableLoading = false
+          console.log('err---', err);
+        })
+      }).catch(() => {
+        this.$message({
+          type: 'info',
+          message: '宸插彇娑堝垹闄�'
+        });
+      });
+    },
+    // 鏂板锛岀紪杈戯紝鎵瑰噯寮规
+    openFormDia(type, row) {
+      this.threeWastesDia = true
+      this.$nextTick(() => {
+        this.$refs.threeWastesDia.openDia(type, row)
+      })
+    },
+    // 瀵煎嚭
+    handleDown(row) {
+      exportInternalWastes({ wastesId: row.wastesId }).then(res => {
+        this.outLoading = false
+        const blob = new Blob([res], { type: 'application/msword' });
+        this.$download.saveAs(blob, '涓夊簾澶勭悊瀵煎嚭.docx')
+      })
+    },
+    closeThreeWastesDia() {
+      this.threeWastesDia = false
+      this.searchList()
+    },
+    // 閲嶇疆鏌ヨ鏉′欢
+    resetSearchForm() {
+      this.searchForm.remark = '';
+      this.searchList()
+    },
+    // 鍒嗛〉鍒囨崲
+    pagination(page) {
+      this.page.size = page.limit
+      this.searchList();
+    },
+  }
+};
+</script>
+
+<style scoped>
+.search {
+  height: 46px;
+  display: flex;
+  justify-content: space-between;
+}
+
+.capacity-scope {
+  padding: 20px;
+}
+</style>
diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/index.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/index.vue
new file mode 100644
index 0000000..45fec52
--- /dev/null
+++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/index.vue
@@ -0,0 +1,51 @@
+<template>
+  <div class="main">
+    <el-tabs v-model="activeName" :lazy="true" type="border-card">
+      <el-tab-pane label="璁炬柦鍜岀幆澧冩潯浠惰姹�" name="璁炬柦鍜岀幆澧冩潯浠惰姹�">
+        <FacilitiesEnvironmentalConditions v-if="activeName === '璁炬柦鍜岀幆澧冩潯浠惰姹�'" />
+      </el-tab-pane>
+
+      <el-tab-pane label="涓夊簾澶勭悊" name="涓夊簾澶勭悊">
+        <a6-three-wastes-treatment v-if="activeName === '涓夊簾澶勭悊'"></a6-three-wastes-treatment>
+      </el-tab-pane>
+      <el-tab-pane label="杩涘嚭浜哄憳绠$悊" name="杩涘嚭浜哄憳绠$悊">
+        <personnel-management v-if="activeName === '杩涘嚭浜哄憳绠$悊'"></personnel-management>
+      </el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+
+<script>
+import FacilitiesEnvironmentalConditions from "../facilitiesEnvironment/component/facilities-environmental-conditions.vue";
+//   // 澶栨潵浜哄憳绠$悊
+//   import ExternalPersonnelManagement from "../facilitiesEnvironment/component/Personnel-management.vue";
+import A6ThreeWastesTreatment from '../facilitiesEnvironment/component/three-wastes-treatment.vue';
+import PersonnelManagement from '../facilitiesEnvironment/component/Personnel-management.vue';
+
+export default {
+  components: {
+    //   PersonnelManagement,
+    A6ThreeWastesTreatment,
+    PersonnelManagement,
+    FacilitiesEnvironmentalConditions
+  },
+  data() {
+    return {
+      activeName: '璁炬柦鍜岀幆澧冩潯浠惰姹�',
+    }
+  }
+}
+</script>
+
+<style scoped>
+.main {
+  padding: 15px 0;
+  width: 100%;
+  border-radius: 15px;
+}
+
+>>>.el-tabs--border-card>.el-tabs__content {
+  height: calc(100vh - 10em) !important;
+  padding: 0;
+}
+</style>
diff --git a/src/views/business/inspectionOrder/add.vue b/src/views/business/inspectionOrder/add.vue
index 1bb080d..68a2506 100644
--- a/src/views/business/inspectionOrder/add.vue
+++ b/src/views/business/inspectionOrder/add.vue
@@ -1,94 +1,35 @@
 <template>
-  <div>
+  <div class="bg-1">
     <div v-show="!configShow && !equipConfigShow && !cableConfigShow">
       <el-row class="title">
-        <el-col :span="6" style="padding-left: 20px; text-align: left"
-          >濮旀墭鍗曚俊鎭�&nbsp;&nbsp;&nbsp;鎬讳环锛�<span style="color: #3a7bfa"
-            >锟{ total }}</span
-          ></el-col
-        >
+        <el-col :span="6" style="padding-left: 20px; text-align: left">濮旀墭鍗曚俊鎭�&nbsp;&nbsp;&nbsp;鎬讳环锛�<span
+            style="color: #3a7bfa">锟{ total }}</span></el-col>
         <el-col :span="18" style="text-align: right">
-          <el-select
-            v-model="template"
-            size="medium"
-            filterable
-            placeholder="涓嬪崟妯℃澘"
-            style="margin-right: 10px"
-            v-show="active == 1"
-            @change="selectInsOrderTemplateById"
-          >
-            <el-option
-              v-for="(a, ai) in templates"
-              :key="ai"
-              :value="a.id"
-              :label="a.name"
-            >
+          <el-select v-model="template" size="medium" filterable placeholder="涓嬪崟妯℃澘" style="margin-right: 10px"
+            v-show="active == 1" @change="selectInsOrderTemplateById">
+            <el-option v-for="(a, ai) in templates" :key="ai" :value="a.id" :label="a.name">
               <span style="float: left">{{ a.name }}</span>
-              <i
-                class="el-icon-delete"
-                style="float: right; color: #66b1ff; font-size: 16px"
-                @click.stop="handleDelete(a)"
-              ></i>
+              <i class="el-icon-delete" style="float: right; color: #66b1ff; font-size: 16px"
+                @click.stop="handleDelete(a)"></i>
             </el-option>
           </el-select>
-          <el-button
-            size="medium"
-            @click="templateDia = true"
-            v-show="active == 1"
-          >
+          <el-button size="medium" @click="templateDia = true" v-show="active == 1">
             <span style="color: #3a7bfa">淇濆瓨妯℃澘</span>
           </el-button>
-          <el-button
-            size="medium"
-            type="primary"
-            @click="openCableConfig"
-            v-if="
-              active == 1 &&
-              PROJECT == '瑁呭鐢电紗' &&
-              addObj.sampleType != undefined &&
-              addObj.sampleType.indexOf('鐢电紗') > -1
-            "
-            >鐢电紗閰嶇疆</el-button
-          >
-          <el-button
-            size="medium"
-            type="primary"
-            @click="openEquipConfig"
-            v-if="active == 1"
-            >瀛愭牱鍝侀厤缃�</el-button
-          >
-          <el-button
-            size="medium"
-            type="primary"
-            @click="openConfig"
-            v-if="addObj.sampleType === '鍏夌紗'"
-            >鍏夌氦閰嶇疆</el-button
-          >
-          <el-button
-            size="medium"
-            type="primary"
-            @click="save"
-            :loading="saveLoad"
-            v-show="active == 1"
-            >鎻愪氦</el-button
-          >
+          <el-button size="medium" type="primary" @click="openCableConfig" v-if="
+            active == 1 &&
+            PROJECT == '瑁呭鐢电紗' &&
+            addObj.sampleType != undefined &&
+            addObj.sampleType.indexOf('鐢电紗') > -1
+          ">鐢电紗閰嶇疆</el-button>
+          <el-button size="medium" type="primary" @click="openEquipConfig" v-if="active == 1">瀛愭牱鍝侀厤缃�</el-button>
+          <el-button size="medium" type="primary" @click="openConfig" v-if="addObj.sampleType === '鍏夌紗'">鍏夌氦閰嶇疆</el-button>
+          <el-button size="medium" type="primary" @click="save" :loading="saveLoad" v-show="active == 1">鎻愪氦</el-button>
           <!-- 瀹℃牳 -->
-          <el-button
-            size="medium"
-            @click="upInsOrderOfState(2)"
-            :loading="saveLoad"
-            v-show="active == 3 && addObj.companyId"
-            :disabled="saveLoad"
-            >涓嶉�氳繃</el-button
-          >
-          <el-button
-            size="medium"
-            type="primary"
-            @click="upInsOrderOfState(1)"
-            :loading="saveLoad"
-            v-show="active == 3 && addObj.companyId"
-            >閫氳繃</el-button
-          >
+          <el-button size="medium" @click="upInsOrderOfState(2)" :loading="saveLoad"
+            v-show="active == 3 && addObj.companyId" :disabled="saveLoad">涓嶉�氳繃</el-button>
+          <el-button size="medium" type="primary" @click="upInsOrderOfState(1)" :loading="saveLoad"
+            v-show="active == 3 && addObj.companyId">閫氳繃</el-button>
           <el-button size="medium" @click="$parent.playOrder(0)">
             <span style="color: #3a7bfa">杩斿洖</span>
           </el-button>
@@ -96,79 +37,35 @@
       </el-row>
     </div>
     <basic-container>
-      <div
-        class="search"
-        v-show="!configShow && !equipConfigShow && !cableConfigShow"
-      >
-        <el-form
-          :model="addObj"
-          :rules="formRule"
-          label-position="right"
-          inline
-        >
+      <div class="search" v-show="!configShow && !equipConfigShow && !cableConfigShow">
+        <el-form :model="addObj" :rules="formRule" label-position="right" inline>
           <el-row>
             <el-col :span="6">
               <el-form-item label="濮旀墭缂栧彿锛�" prop="entrustCode">
-                <el-input
-                  v-model="addObj.entrustCode"
-                  size="small"
-                  class="search_input"
-                  placeholder="绯荤粺鐢熸垚"
-                  disabled
-                ></el-input>
+                <el-input v-model="addObj.entrustCode" size="small" class="search_input" placeholder="绯荤粺鐢熸垚"
+                  disabled></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="妫�楠岀被鍒細" prop="orderType">
-                <el-select
-                  size="small"
-                  class="search_input"
-                  clearable
-                  v-model="addObj.orderType"
-                  :disabled="active > 1"
-                >
-                  <el-option
-                    v-for="(a, ai) in orderType"
-                    :key="ai"
-                    :value="a.dictValue"
-                    :label="a.dictLabel"
-                  ></el-option>
+                <el-select size="small" class="search_input" clearable v-model="addObj.orderType"
+                  :disabled="active > 1">
+                  <el-option v-for="(a, ai) in orderType" :key="ai" :value="a.dictValue"
+                    :label="a.dictLabel"></el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="鍒跺崟浜猴細" prop="custom">
-                <el-input
-                  size="small"
-                  class="search_input"
-                  clearable
-                  disabled
-                  v-model="addObj.custom"
-                ></el-input>
+                <el-input size="small" class="search_input" clearable disabled v-model="addObj.custom"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
-              <el-form-item
-                label="濮旀墭鍗曚綅锛�"
-                prop="company"
-                class="company_input"
-              >
-                <el-input
-                  readonly
-                  size="small"
-                  v-model="addObj.company"
-                  placeholder="閫夋嫨濮旀墭鍗曚綅"
-                >
-                  <template slot="append"
-                    ><el-button
-                      slot="append"
-                      icon="el-icon-search"
-                      @click="selectUserDia = true"
-                      :disabled="
-                        active > 1 || addObj.company != '涓ぉ绉戞妧妫�娴嬩腑蹇�'
-                      "
-                    ></el-button
-                  ></template>
+              <el-form-item label="濮旀墭鍗曚綅锛�" prop="company" class="company_input">
+                <el-input readonly size="small" v-model="addObj.company" placeholder="閫夋嫨濮旀墭鍗曚綅">
+                  <template slot="append"><el-button slot="append" icon="el-icon-search" @click="selectUserDia = true"
+                      :disabled="active > 1 || addObj.company != '涓ぉ绉戞妧妫�娴嬩腑蹇�'
+                        "></el-button></template>
                 </el-input>
               </el-form-item>
             </el-col>
@@ -176,82 +73,39 @@
           <el-row>
             <el-col :span="6">
               <el-form-item label="鑱旂郴鏂瑰紡锛�" prop="phone">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  class="search_input"
-                  clearable
-                  :readonly="active > 1"
-                  v-model="addObj.phone"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" class="search_input" clearable :readonly="active > 1"
+                  v-model="addObj.phone"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="绱ф�ョ▼搴︼細" prop="type">
-                <el-select
-                  @change="changeType"
-                  size="small"
-                  class="search_input"
-                  clearable
-                  v-model="addObj.type"
-                  :disabled="active > 1"
-                >
-                  <el-option
-                    v-for="(a, ai) in type"
-                    :key="ai"
-                    :value="a.dictValue"
-                    :label="a.dictLabel"
-                  ></el-option>
+                <el-select @change="changeType" size="small" class="search_input" clearable v-model="addObj.type"
+                  :disabled="active > 1">
+                  <el-option v-for="(a, ai) in type" :key="ai" :value="a.dictValue" :label="a.dictLabel"></el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="6">
-              <el-form-item
-                label="鏍峰搧鍚嶇О锛�"
-                prop="sample"
-                class="sample_input"
-              >
+              <el-form-item label="鏍峰搧鍚嶇О锛�" prop="sample" class="sample_input">
                 <el-input readonly size="small" v-model="addObj.sample">
-                  <template slot="append"
-                    ><el-button
-                      slot="append"
-                      icon="el-icon-search"
-                      @click="selectStandardTree = true"
-                      :disabled="active > 1"
-                    ></el-button
-                  ></template>
+                  <template slot="append"><el-button slot="append" icon="el-icon-search"
+                      @click="selectStandardTree = true" :disabled="active > 1"></el-button></template>
                 </el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="鏍峰搧鏁伴噺锛�" prop="sampleNum">
-                <el-input-number
-                  size="small"
-                  v-model="addObj.sampleNum"
-                  :min="1"
-                  :max="100"
-                  :precision="0"
-                  @change="addStandardTree"
-                  :disabled="active > 1"
-                ></el-input-number>
+                <el-input-number size="small" v-model="addObj.sampleNum" :min="1" :max="100" :precision="0"
+                  @change="addStandardTree" :disabled="active > 1"></el-input-number>
               </el-form-item>
             </el-col>
           </el-row>
           <el-row>
             <el-col :span="6">
               <el-form-item label="鏉ユ牱鏂瑰紡锛�" prop="formType">
-                <el-select
-                  v-model="addObj.formType"
-                  size="small"
-                  class="search_input"
-                  :disabled="active > 1"
-                >
-                  <el-option
-                    v-for="(a, ai) in formType"
-                    :key="ai"
-                    :label="a.dictLabel"
-                    :value="a.dictValue"
-                  ></el-option>
+                <el-select v-model="addObj.formType" size="small" class="search_input" :disabled="active > 1">
+                  <el-option v-for="(a, ai) in formType" :key="ai" :label="a.dictLabel"
+                    :value="a.dictValue"></el-option>
                 </el-select>
               </el-form-item>
             </el-col>
@@ -264,11 +118,7 @@
               </el-form-item>
             </el-col>
             <el-col :span="6">
-              <el-form-item
-                label="鏍峰搧澶勭悊鏂瑰紡锛�"
-                prop="processing"
-                class="processing_input"
-              >
+              <el-form-item label="鏍峰搧澶勭悊鏂瑰紡锛�" prop="processing" class="processing_input">
                 <el-radio-group v-model="addObj.processing" size="mini">
                   <el-radio :label="0">濮旀墭鍗曚綅鍙栧洖</el-radio>
                   <el-radio :label="1">瀹為獙瀹ゅ鐞�</el-radio>
@@ -277,59 +127,28 @@
             </el-col>
             <el-col :span="6">
               <el-form-item label="宸ョ▼鍚嶇О锛�" prop="engineering">
-                <el-input
-                  size="small"
-                  class="search_input"
-                  :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
-                  clearable
-                  v-model="addObj.engineering"
-                  :readonly="active > 1"
-                ></el-input>
+                <el-input size="small" class="search_input" :placeholder="active > 1 ? '' : '璇疯緭鍏�'" clearable
+                  v-model="addObj.engineering" :readonly="active > 1"></el-input>
               </el-form-item>
             </el-col>
           </el-row>
           <el-row>
             <el-col :span="6">
-              <el-form-item
-                label="宸ョ▼鍚嶇ОEN锛�"
-                prop="engineeringEn"
-                class="engineeringEn_input"
-              >
-                <el-input
-                  size="small"
-                  :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
-                  clearable
-                  v-model="addObj.engineeringEn"
-                  :readonly="active > 1"
-                ></el-input>
+              <el-form-item label="宸ョ▼鍚嶇ОEN锛�" prop="engineeringEn" class="engineeringEn_input">
+                <el-input size="small" :placeholder="active > 1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.engineeringEn"
+                  :readonly="active > 1"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="鐢熶骇鍗曚綅锛�" prop="production">
-                <el-input
-                  size="small"
-                  class="search_input"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="addObj.production"
-                  :readonly="active > 1"
-                ></el-input>
+                <el-input size="small" class="search_input" placeholder="璇疯緭鍏�" clearable v-model="addObj.production"
+                  :readonly="active > 1"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
-              <el-form-item
-                label="鐢熶骇鍗曚綅EN锛�"
-                prop="productionEn"
-                class="productionEn_input"
-              >
-                <el-input
-                  size="small"
-                  class="search_input"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="addObj.productionEn"
-                  :readonly="active > 1"
-                ></el-input>
+              <el-form-item label="鐢熶骇鍗曚綅EN锛�" prop="productionEn" class="productionEn_input">
+                <el-input size="small" class="search_input" placeholder="璇疯緭鍏�" clearable v-model="addObj.productionEn"
+                  :readonly="active > 1"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
@@ -344,53 +163,28 @@
           <el-row>
             <el-col :span="6">
               <el-form-item label="鏄惁娑夊強閰嶅鏍峰搧锛�" prop="mating">
-                <el-radio-group
-                  v-model="addObj.mating"
-                  @change="$refs.sampleTable.doLayout()"
-                >
+                <el-radio-group v-model="addObj.mating" @change="$refs.sampleTable.doLayout()">
                   <el-radio :label="1">鏄�</el-radio>
                   <el-radio :label="0">鍚�</el-radio>
                 </el-radio-group>
               </el-form-item>
             </el-col>
             <el-col :span="6">
-              <el-form-item
-                label="OTC璁㈠崟鍙凤細"
-                prop="otcCode"
-                class="otcCode_input"
-              >
-                <el-input
-                  size="small"
-                  :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
-                  clearable
-                  v-model="addObj.otcCode"
-                  :readonly="active > 1"
-                ></el-input>
+              <el-form-item label="OTC璁㈠崟鍙凤細" prop="otcCode" class="otcCode_input">
+                <el-input size="small" :placeholder="active > 1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.otcCode"
+                  :readonly="active > 1"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="濮旀墭浜猴細" prop="prepareUser">
-                <el-input
-                  size="small"
-                  class="search_input"
-                  :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
-                  clearable
-                  v-model="addObj.prepareUser"
-                  :readonly="active > 1"
-                ></el-input>
+                <el-input size="small" class="search_input" :placeholder="active > 1 ? '' : '璇疯緭鍏�'" clearable
+                  v-model="addObj.prepareUser" :readonly="active > 1"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="6">
               <el-form-item label="澶囨敞锛�" prop="remark">
-                <el-input
-                  type="textarea"
-                  :autosize="{ minRows: 2, maxRows: 2 }"
-                  size="small"
-                  clearable
-                  :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
-                  v-model="addObj.remark"
-                  :readonly="active > 1"
-                ></el-input>
+                <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 2 }" size="small" clearable
+                  :placeholder="active > 1 ? '' : '璇疯緭鍏�'" v-model="addObj.remark" :readonly="active > 1"></el-input>
               </el-form-item>
             </el-col>
           </el-row>
@@ -399,29 +193,13 @@
     </basic-container>
     <basic-container>
       <div style="height: auto">
-        <div
-          class="search"
-          v-if="active == 1"
-          style="display: flex; background: transparent"
-        >
+        <div class="search" v-if="active == 1" style="display: flex; background: transparent">
           <div>
             <div class="search_label">鏍峰搧鍨嬪彿锛�</div>
             <div class="search_input">
-              <el-select
-                v-model="model"
-                :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
-                filterable
-                allow-create
-                default-first-option
-                size="small"
-                @change="changeModel"
-              >
-                <el-option
-                  v-for="item in models"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                >
+              <el-select v-model="model" :placeholder="active > 1 ? '' : '璇疯緭鍏�'" filterable allow-create
+                default-first-option size="small" @change="changeModel">
+                <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
                 </el-option>
               </el-select>
             </div>
@@ -429,385 +207,151 @@
           <div>
             <div class="search_label">妫�楠屾爣鍑嗭細</div>
             <div class="search_input">
-              <el-select
-                filterable
-                v-model="standardMethodListId"
-                :placeholder="active > 1 ? '' : '璇疯緭鍏�'"
-                size="small"
-                @focus="methodFocus"
-                :loading="methodLoad"
-                @change="changeStandardMethodListId"
-              >
-                <el-option
-                  v-for="item in methods"
-                  :key="item.id"
-                  :label="item.code"
-                  :value="item.id"
-                >
+              <el-select filterable v-model="standardMethodListId" :placeholder="active > 1 ? '' : '璇疯緭鍏�'" size="small"
+                @focus="methodFocus" :loading="methodLoad" @change="changeStandardMethodListId">
+                <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
                 </el-option>
               </el-select>
             </div>
           </div>
         </div>
-        <el-table
-          class="el-table sampleTable"
-          ref="sampleTable"
-          :data="sampleList"
-          max-height="400px"
-          tooltip-effect="dark"
-          border
-          @selection-change="selectSample"
-          highlight-current-row
-          @row-click="rowClick"
-          style="margin-top: 10px"
-        >
-          <el-table-column
-            type="selection"
-            width="60"
-            :selectable="selectable"
-            v-if="active == 1"
-          ></el-table-column>
-          <el-table-column
-            type="index"
-            label="搴忓彿"
-            width="65"
-            align="center"
-          ></el-table-column>
-          <el-table-column
-            prop="sample"
-            label="鏍峰搧鍚嶇О"
-            align="center"
-            min-width="100"
-          >
+        <el-table class="el-table sampleTable" ref="sampleTable" :data="sampleList" max-height="400px"
+          tooltip-effect="dark" border @selection-change="selectSample" highlight-current-row @row-click="rowClick"
+          style="margin-top: 10px">
+          <el-table-column type="selection" width="60" :selectable="selectable" v-if="active == 1"></el-table-column>
+          <el-table-column type="index" label="搴忓彿" width="65" align="center"></el-table-column>
+          <el-table-column prop="sample" label="鏍峰搧鍚嶇О" align="center" min-width="100">
             <template slot-scope="scope">
-              <el-input
-                size="small"
-                v-model="scope.row.sample"
-                clearable
-                :readonly="active > 1"
-              ></el-input>
+              <el-input size="small" v-model="scope.row.sample" clearable :readonly="active > 1"></el-input>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="sampleCode"
-            label="鏍峰搧缂栧彿"
-            min-width="140"
-            align="center"
-          >
+          <el-table-column prop="sampleCode" label="鏍峰搧缂栧彿" min-width="140" align="center">
             <template slot-scope="scope">
-              <el-input
-                size="small"
-                v-model="scope.row.sampleCode"
-                clearable
-                placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚"
-                :readonly="active > 1"
-              ></el-input>
+              <el-input size="small" v-model="scope.row.sampleCode" clearable placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚"
+                :readonly="active > 1"></el-input>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="model"
-            label="鏍峰搧鍨嬪彿"
-            align="center"
-            min-width="100"
-          >
+          <el-table-column prop="model" label="鏍峰搧鍨嬪彿" align="center" min-width="100">
             <template slot-scope="scope">
-              <el-select
-                v-model="scope.row.model"
-                filterable
-                allow-create
-                default-first-option
-                placeholder="鏍峰搧鍨嬪彿"
-                size="small"
-                @change="handleChangeModel"
-                :disabled="active > 1"
-                style="width: 100%"
-              >
-                <el-option
-                  v-for="item in models"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                >
+              <el-select v-model="scope.row.model" filterable allow-create default-first-option placeholder="鏍峰搧鍨嬪彿"
+                size="small" @change="handleChangeModel" :disabled="active > 1" style="width: 100%">
+                <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value">
                 </el-option>
               </el-select>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="modelNum"
-            label="鍨嬪彿鍙傛暟"
-            width="130"
-            align="center"
-            v-if="!(active > 1)"
-          >
+          <el-table-column prop="modelNum" label="鍨嬪彿鍙傛暟" width="130" align="center" v-if="!(active > 1)">
             <template slot-scope="scope">
-              <el-input
-                size="small"
-                v-model="scope.row.modelNum"
-                clearable
-                placeholder="闈炲繀濉�"
-                @keyup.enter.native="
-                  methodChange(scope.row.standardMethodListId, scope.row)
-                "
-                @clear="methodChange(scope.row.standardMethodListId, scope.row)"
-              ></el-input>
+              <el-input size="small" v-model="scope.row.modelNum" clearable placeholder="闈炲繀濉�" @keyup.enter.native="
+                methodChange(scope.row.standardMethodListId, scope.row)
+                " @clear="methodChange(scope.row.standardMethodListId, scope.row)"></el-input>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="standardMethodListId"
-            label="妫�楠屾爣鍑�"
-            align="center"
-            min-width="100"
-          >
+          <el-table-column prop="standardMethodListId" label="妫�楠屾爣鍑�" align="center" min-width="100">
             <template slot-scope="scope">
-              <el-select
-                v-model="scope.row.standardMethodListId"
-                :disabled="scope.row.model == null || active > 1"
-                placeholder="妫�楠屾爣鍑�"
-                filterable
-                size="small"
-                :loading="methodLoad"
-                @change="(value) => methodChange(value, scope.row)"
-                @focus="methodFocus"
-                :readonly="active > 1"
-                style="width: 100%"
-                clearable
-                @clear="productList = []"
-              >
-                <el-option
-                  v-for="item in methods"
-                  :key="item.id"
-                  :label="item.code"
-                  :value="item.id"
-                >
+              <el-select v-model="scope.row.standardMethodListId" :disabled="scope.row.model == null || active > 1"
+                placeholder="妫�楠屾爣鍑�" filterable size="small" :loading="methodLoad"
+                @change="(value) => methodChange(value, scope.row)" @focus="methodFocus" :readonly="active > 1"
+                style="width: 100%" clearable @clear="productList = []">
+                <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id">
                 </el-option>
               </el-select>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="joinName"
-            label="閰嶅鏍峰搧鍚嶇О"
-            width="140"
-            align="center"
-            v-if="addObj.mating == 1"
-          >
+          <el-table-column prop="joinName" label="閰嶅鏍峰搧鍚嶇О" width="140" align="center" v-if="addObj.mating == 1">
             <template slot-scope="scope">
-              <el-input
-                size="small"
-                type="textarea"
-                :autosize="{ minRows: 1, maxRows: 1 }"
-                v-model="scope.row.joinName"
-              ></el-input>
+              <el-input size="small" type="textarea" :autosize="{ minRows: 1, maxRows: 1 }"
+                v-model="scope.row.joinName"></el-input>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="joinModel"
-            label="閰嶅鏍峰搧鍨嬪彿"
-            width="140"
-            align="center"
-            v-if="addObj.mating == 1"
-          >
+          <el-table-column prop="joinModel" label="閰嶅鏍峰搧鍨嬪彿" width="140" align="center" v-if="addObj.mating == 1">
             <template slot-scope="scope">
-              <el-input
-                size="small"
-                type="textarea"
-                :autosize="{ minRows: 1, maxRows: 1 }"
-                v-model="scope.row.joinModel"
-              ></el-input>
+              <el-input size="small" type="textarea" :autosize="{ minRows: 1, maxRows: 1 }"
+                v-model="scope.row.joinModel"></el-input>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="joinNum"
-            label="閰嶅鏍峰搧鏁伴噺"
-            width="140"
-            align="center"
-            v-if="addObj.mating == 1"
-          >
+          <el-table-column prop="joinNum" label="閰嶅鏍峰搧鏁伴噺" width="140" align="center" v-if="addObj.mating == 1">
             <template slot-scope="scope">
-              <el-input-number
-                size="small"
-                v-model="scope.row.joinNum"
-                :min="1"
-                :max="100"
-                :precision="0"
-                :controls="false"
-                style="width: 80%"
-              ></el-input-number>
+              <el-input-number size="small" v-model="scope.row.joinNum" :min="1" :max="100" :precision="0"
+                :controls="false" style="width: 80%"></el-input-number>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="proNum"
-            label="寰呮椤规暟閲�"
-            width="105"
-            align="center"
-          ></el-table-column>
+          <el-table-column prop="proNum" label="寰呮椤规暟閲�" width="105" align="center"></el-table-column>
         </el-table>
-        <el-table
-          class="el-table"
-          ref="productTable"
-          :data="productList"
-          max-height="400px"
-          tooltip-effect="dark"
-          border
-          @selection-change="selectProduct"
-          style="margin-bottom: 10px"
-          @select="upProductSelect"
-          :row-class-name="tableRowClassName"
-          v-loading="standardLoading || getProductLoad"
-          @select-all="handleAll"
-        >
-          <el-table-column
-            type="selection"
-            width="65"
-            :selectable="selectable"
-            v-if="active == 1"
-          ></el-table-column>
-          <el-table-column
-            prop="inspectionItem"
-            label="妫�楠岄」"
-            min-width="140"
-            show-overflow-tooltip
-          >
+        <el-table class="el-table" ref="productTable" :data="productList" max-height="400px" tooltip-effect="dark"
+          border @selection-change="selectProduct" style="margin-bottom: 10px" @select="upProductSelect"
+          :row-class-name="tableRowClassName" v-loading="standardLoading || getProductLoad" @select-all="handleAll">
+          <el-table-column type="selection" width="65" :selectable="selectable" v-if="active == 1"></el-table-column>
+          <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip>
             <template slot="header" slot-scope="scope">
-              <div
-                style="
+              <div style="
                   display: flex;
                   align-items: center;
                   flex-direction: column;
                   font-size: 14px;
-                "
-              >
+                ">
                 <span>妫�楠岄」</span>
-                <el-input
-                  v-if="active == 1"
-                  v-model="inspectionItem"
-                  @input="searchFilterList"
-                  size="mini"
-                  placeholder="璇疯緭鍏�"
-                />
+                <el-input v-if="active == 1" v-model="inspectionItem" @input="searchFilterList" size="mini"
+                  placeholder="璇疯緭鍏�" />
               </div>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="inspectionItemSubclass"
-            label="妫�楠岄」瀛愰」"
-            min-width="140"
-            show-overflow-tooltip
-          >
+          <el-table-column prop="inspectionItemSubclass" label="妫�楠岄」瀛愰」" min-width="140" show-overflow-tooltip>
             <template slot="header" slot-scope="scope">
-              <div
-                style="
+              <div style="
                   display: flex;
                   align-items: center;
                   flex-direction: column;
                   font-size: 14px;
-                "
-              >
+                ">
                 <span>妫�楠岄」瀛愰」</span>
-                <el-input
-                  v-if="active == 1"
-                  v-model="inspectionItemSubclass"
-                  @input="searchFilterList"
-                  size="mini"
-                  placeholder="璇疯緭鍏�"
-                />
+                <el-input v-if="active == 1" v-model="inspectionItemSubclass" @input="searchFilterList" size="mini"
+                  placeholder="璇疯緭鍏�" />
               </div>
             </template>
           </el-table-column>
           <el-table-column prop="tell" label="瑕佹眰鎻忚堪" min-width="220px">
             <template slot-scope="scope">
-              <el-input
-                size="small"
-                placeholder="瑕佹眰鎻忚堪"
-                v-model="scope.row.tell"
-                clearable
-                type="textarea"
-                :autosize="{ minRows: 1, maxRows: 3 }"
-                @change="(e) => requestChange(e, scope.row, 'tell')"
-                v-if="active == 1 && isAskOnlyRead"
-              ></el-input>
+              <el-input size="small" placeholder="瑕佹眰鎻忚堪" v-model="scope.row.tell" clearable type="textarea"
+                :autosize="{ minRows: 1, maxRows: 3 }" @change="(e) => requestChange(e, scope.row, 'tell')"
+                v-if="active == 1 && isAskOnlyRead"></el-input>
               <span v-else>
                 <template>{{ scope.row.tell }}</template>
               </span>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="ask"
-            label="瑕佹眰鍊�"
-            min-width="220px"
-            v-if="isAskOnlyRead"
-          >
+          <el-table-column prop="ask" label="瑕佹眰鍊�" min-width="220px" v-if="isAskOnlyRead">
             <template slot-scope="scope">
-              <el-input
-                size="small"
-                placeholder="瑕佹眰鍊�"
-                v-model="scope.row.ask"
-                clearable
-                type="textarea"
-                :autosize="{ minRows: 1, maxRows: 3 }"
-                @change="(e) => requestChange(e, scope.row, 'ask')"
-                v-if="
+              <el-input size="small" placeholder="瑕佹眰鍊�" v-model="scope.row.ask" clearable type="textarea"
+                :autosize="{ minRows: 1, maxRows: 3 }" @change="(e) => requestChange(e, scope.row, 'ask')" v-if="
                   active == 1 &&
                   isAskOnlyRead &&
                   scope.row.inspectionValueType != '5'
-                "
-              ></el-input>
+                "></el-input>
               <span v-else>
                 <template>{{ scope.row.ask }}</template>
               </span>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="methodS"
-            label="璇曢獙鏂规硶"
-            min-width="120"
-            show-overflow-tooltip
-          >
+          <el-table-column prop="methodS" label="璇曢獙鏂规硶" min-width="120" show-overflow-tooltip>
             <template slot="header" slot-scope="scope">
-              <div
-                style="
+              <div style="
                   display: flex;
                   align-items: center;
                   flex-direction: column;
                   font-size: 14px;
-                "
-              >
+                ">
                 <span>璇曢獙鏂规硶</span>
-                <el-input
-                  v-if="active == 1"
-                  v-model="methodS"
-                  @input="searchFilterList"
-                  size="mini"
-                  placeholder="璇疯緭鍏�"
-                />
+                <el-input v-if="active == 1" v-model="methodS" @input="searchFilterList" size="mini"
+                  placeholder="璇疯緭鍏�" />
               </div>
             </template>
           </el-table-column>
-          <el-table-column
-            prop="unit"
-            label="璁¢噺鍗曚綅"
-            width="100"
-            show-overflow-tooltip
-          ></el-table-column>
-          <el-table-column
-            prop="price"
-            label="鍗曚环"
-            width="100"
-            show-overflow-tooltip
-          ></el-table-column>
-          <el-table-column
-            prop="section"
-            label="鍖洪棿"
-            min-width="120"
-            show-overflow-tooltip
-          ></el-table-column>
-          <el-table-column
-            prop="sonLaboratory"
-            label="瀛愬疄楠屽"
-            min-width="130"
-            show-overflow-tooltip
-            :filters="filters"
-            :filter-method="filterHandler"
-          ></el-table-column>
+          <el-table-column prop="unit" label="璁¢噺鍗曚綅" width="100" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="price" label="鍗曚环" width="100" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="section" label="鍖洪棿" min-width="120" show-overflow-tooltip></el-table-column>
+          <el-table-column prop="sonLaboratory" label="瀛愬疄楠屽" min-width="130" show-overflow-tooltip :filters="filters"
+            :filter-method="filterHandler"></el-table-column>
         </el-table>
       </div>
     </basic-container>
@@ -1226,7 +770,7 @@
       });
     },
     //淇濆瓨鍗曟牴鍨傜洿鐕冪儳鐗规畩鍊�
-    saveSingleVerticalCombustionData() {},
+    saveSingleVerticalCombustionData() { },
     openSingleVerticalCombustionDialog() {
       this.$prompt("鍗曟牴鍨傜洿鐕冪儳娆℃暟", "鐗规畩妫�娴嬮」鐩�", {
         confirmButtonText: "纭畾",
@@ -1244,7 +788,7 @@
           this.currentMethod.insProduct = this.productList0;
           this.getProNum();
         })
-        .catch(() => {});
+        .catch(() => { });
     },
     singleVerticalData(arr, value) {
       arr.forEach((ins) => {
@@ -1745,7 +1289,7 @@
       try {
         let num = this.replaceAll(tell, symbolItem, value);
         return num;
-      } catch (e) {}
+      } catch (e) { }
     },
     replaceAll(str, find, value) {
       if (str === undefined) {
@@ -1927,7 +1471,7 @@
                       .then(() => {
                         this.saveMethod(sampleList);
                       })
-                      .catch(() => {});
+                      .catch(() => { });
                   } else {
                     let isRTS = this.totalArr.find(
                       (a) =>
@@ -2009,7 +1553,7 @@
                 .then(() => {
                   this.saveMethod(sampleList);
                 })
-                .catch(() => {});
+                .catch(() => { });
             } else {
               let isRTS = this.totalArr.find(
                 (a) =>
@@ -2040,7 +1584,7 @@
         });
       }
     },
-    errorSet() {},
+    errorSet() { },
     /**
      * 鏍¢獙濮旀墭瑕佹眰鐨勬楠岄」鐨勮姹傛弿杩板拰瑕佹眰鍊�
      *
@@ -2062,10 +1606,10 @@
           console.log("ask or tell is null");
           this.errorInspectionItemList.push(
             ele.inspectionItem +
-              " " +
-              (ele.inspectionItemSubclass == null
-                ? ""
-                : ele.inspectionItemSubclass)
+            " " +
+            (ele.inspectionItemSubclass == null
+              ? ""
+              : ele.inspectionItemSubclass)
           );
         });
         isTrue = false;
@@ -2102,10 +1646,10 @@
                     );
                     this.errorInspectionItemList.push(
                       ele.inspectionItem +
-                        " " +
-                        (ele.inspectionItemSubclass == null
-                          ? ""
-                          : ele.inspectionItemSubclass)
+                      " " +
+                      (ele.inspectionItemSubclass == null
+                        ? ""
+                        : ele.inspectionItemSubclass)
                     );
                     isTrue = false;
                   }
@@ -2114,10 +1658,10 @@
                   console.log("瑕佹眰鍊间腑娌℃湁鏁板瓧");
                   this.errorInspectionItemList.push(
                     ele.inspectionItem +
-                      " " +
-                      (ele.inspectionItemSubclass == null
-                        ? ""
-                        : ele.inspectionItemSubclass)
+                    " " +
+                    (ele.inspectionItemSubclass == null
+                      ? ""
+                      : ele.inspectionItemSubclass)
                   );
                   isTrue = false;
                 }
@@ -2128,10 +1672,10 @@
                   console.log("鐩村緞鍏樊涔嬪崐涓�0.5涓嶅尮閰�");
                   this.errorInspectionItemList.push(
                     ele.inspectionItem +
-                      " " +
-                      (ele.inspectionItemSubclass == null
-                        ? ""
-                        : ele.inspectionItemSubclass)
+                    " " +
+                    (ele.inspectionItemSubclass == null
+                      ? ""
+                      : ele.inspectionItemSubclass)
                   );
                   isTrue = false;
                   //   if(ele.tell.indexOf(askVal[0])<0 && ele.tell.indexOf('鍗�')<0){
@@ -2182,10 +1726,10 @@
                     console.log("鏈�澶у�煎拰鏈�灏忓�肩浉绛�");
                     this.errorInspectionItemList.push(
                       ele.inspectionItem +
-                        " " +
-                        (ele.inspectionItemSubclass == null
-                          ? ""
-                          : ele.inspectionItemSubclass)
+                      " " +
+                      (ele.inspectionItemSubclass == null
+                        ? ""
+                        : ele.inspectionItemSubclass)
                     );
                     isTrue = false;
                   }
@@ -2194,20 +1738,20 @@
                     console.log("瑕佹眰鎻忚堪涓笉鍖呭惈卤浠ュ強鍖洪棿鐨勬暟瀛�");
                     this.errorInspectionItemList.push(
                       ele.inspectionItem +
-                        " " +
-                        (ele.inspectionItemSubclass == null
-                          ? ""
-                          : ele.inspectionItemSubclass)
+                      " " +
+                      (ele.inspectionItemSubclass == null
+                        ? ""
+                        : ele.inspectionItemSubclass)
                     );
                     isTrue = false;
                   } else if (ele.tell.indexOf("-") == 0) {
                     console.log("瑕佹眰鍊肩殑鍖洪棿鏍煎紡閿欒");
                     this.errorInspectionItemList.push(
                       ele.inspectionItem +
-                        " " +
-                        (ele.inspectionItemSubclass == null
-                          ? ""
-                          : ele.inspectionItemSubclass)
+                      " " +
+                      (ele.inspectionItemSubclass == null
+                        ? ""
+                        : ele.inspectionItemSubclass)
                     );
                     isTrue = false;
                   } else if (tell.indexOf("-") > 0 || tell.indexOf("卤") > 0) {
@@ -2226,10 +1770,10 @@
                             console.log("閿欒鐨勫尯闂磋缃�");
                             this.errorInspectionItemList.push(
                               ele.inspectionItem +
-                                " " +
-                                (ele.inspectionItemSubclass == null
-                                  ? ""
-                                  : ele.inspectionItemSubclass)
+                              " " +
+                              (ele.inspectionItemSubclass == null
+                                ? ""
+                                : ele.inspectionItemSubclass)
                             );
                             isTrue = false;
                           }
@@ -2242,10 +1786,10 @@
                         console.log(777777);
                         this.errorInspectionItemList.push(
                           ele.inspectionItem +
-                            " " +
-                            (ele.inspectionItemSubclass == null
-                              ? ""
-                              : ele.inspectionItemSubclass)
+                          " " +
+                          (ele.inspectionItemSubclass == null
+                            ? ""
+                            : ele.inspectionItemSubclass)
                         );
                         isTrue = false;
                       } else {
@@ -2262,10 +1806,10 @@
                           console.log(888888);
                           this.errorInspectionItemList.push(
                             ele.inspectionItem +
-                              " " +
-                              (ele.inspectionItemSubclass == null
-                                ? ""
-                                : ele.inspectionItemSubclass)
+                            " " +
+                            (ele.inspectionItemSubclass == null
+                              ? ""
+                              : ele.inspectionItemSubclass)
                           );
                           isTrue = false;
                         }
@@ -2279,10 +1823,10 @@
                         console.log(99999);
                         this.errorInspectionItemList.push(
                           ele.inspectionItem +
-                            " " +
-                            (ele.inspectionItemSubclass == null
-                              ? ""
-                              : ele.inspectionItemSubclass)
+                          " " +
+                          (ele.inspectionItemSubclass == null
+                            ? ""
+                            : ele.inspectionItemSubclass)
                         );
                         isTrue = false;
                       }
@@ -2292,10 +1836,10 @@
                   console.log(1010101001);
                   this.errorInspectionItemList.push(
                     ele.inspectionItem +
-                      " " +
-                      (ele.inspectionItemSubclass == null
-                        ? ""
-                        : ele.inspectionItemSubclass)
+                    " " +
+                    (ele.inspectionItemSubclass == null
+                      ? ""
+                      : ele.inspectionItemSubclass)
                   );
                   isTrue = false;
                 }
@@ -2606,8 +2150,8 @@
                     a.model =
                       a.model +
                       (a.modelNum == null ||
-                      a.modelNum == "" ||
-                      a.modelNum == "null"
+                        a.modelNum == "" ||
+                        a.modelNum == "null"
                         ? ""
                         : "-" + a.modelNum);
                   }
@@ -2615,8 +2159,8 @@
                   a.model =
                     a.model +
                     (a.modelNum == null ||
-                    a.modelNum == "" ||
-                    a.modelNum == "null"
+                      a.modelNum == "" ||
+                      a.modelNum == "null"
                       ? ""
                       : "-" + a.modelNum);
                 }
@@ -3036,7 +2580,7 @@
             } else {
               this.methods = res.data.standardMethodList;
             }
-          } catch (e) {}
+          } catch (e) { }
         });
     },
     addStandardTree(currentValue, oldValue) {
@@ -3234,7 +2778,7 @@
           // row.manHour = arr2[index];
           // row.price = arr3[index];
           // row.tell = arr4[index];
-        } catch (e) {}
+        } catch (e) { }
       }
       if (
         row.bsm === "1" &&
@@ -3393,8 +2937,8 @@
       this.$axios
         .get(
           this.$api.insOrder.selectInsOrderTemplate +
-            "?company=" +
-            this.addObj.company
+          "?company=" +
+          this.addObj.company
         )
         .then((res) => {
           if (res.code == 201) return;
@@ -3424,7 +2968,7 @@
               this.$message.error("鍒犻櫎澶辫触");
             });
         })
-        .catch(() => {});
+        .catch(() => { });
     },
     // 淇濆瓨妯℃澘
     addTemplateDia() {
@@ -4454,17 +3998,21 @@
   line-height: 24px;
   margin-top: 5px;
 }
+
 .circulateTable {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
 }
+
 .opticalProject {
   width: 38%;
 }
+
 .temperatureList {
   width: 60%;
 }
+
 .temperatureListTitle {
   display: flex;
   flex-direction: row;
@@ -4484,10 +4032,7 @@
   border-radius: 2px;
 }
 
-.ins_order_add
-  .el-tree--highlight-current
-  .el-tree-node.is-current
-  > .el-tree-node__content {
+.ins_order_add .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {
   color: #3a7bfa;
 }
 
@@ -4515,15 +4060,18 @@
 .ins_order_add .el-select .is-disabled .el-input__inner {
   background: transparent !important;
 }
+
 .company_input .el-form-item__content,
 .sample_input .el-form-item__content {
   width: 72%;
 }
+
 .engineeringEn_input .el-form-item__content,
 .otcCode_input .el-form-item__content,
 .productionEn_input .el-form-item__content {
   width: 65%;
 }
+
 .processing_input .el-form-item__content {
   width: 60%;
 }
diff --git a/src/views/business/inspectionOrder/index.vue b/src/views/business/inspectionOrder/index.vue
index 7c68b70..56b36ab 100644
--- a/src/views/business/inspectionOrder/index.vue
+++ b/src/views/business/inspectionOrder/index.vue
@@ -1,26 +1,14 @@
 <template>
-  <div>
+  <div class="bg-1">
     <div style="margin: 5px 15px">
       <el-row class="title">
         <el-col :span="12" style="text-align: left">妫�楠屼笅鍗�</el-col>
         <el-col :span="12" style="text-align: right">
-          <el-button
-            size="medium"
-            type="primary"
-            @click="dialogVisible1 = true"
-            :loading="exportCheckedLoading"
-            >瀵煎嚭妫�楠岀粨鏋�</el-button
-          >
-          <el-button size="medium" type="primary" @click="print"
-            >鏍囩鎵撳嵃</el-button
-          >
-          <el-button
-            size="medium"
-            type="primary"
-            @click="playOrder(1)"
-            v-hasPermi="['business:order:add']"
-            >涓嬪崟</el-button
-          >
+          <el-button size="medium" type="primary" @click="dialogVisible1 = true"
+            :loading="exportCheckedLoading">瀵煎嚭妫�楠岀粨鏋�</el-button>
+          <el-button size="medium" type="primary" @click="print">鏍囩鎵撳嵃</el-button>
+          <el-button size="medium" type="primary" @click="playOrder(1)"
+            v-hasPermi="['business:order:add']">涓嬪崟</el-button>
         </el-col>
       </el-row>
     </div>
@@ -31,13 +19,8 @@
             <div class="search_thing" style="width: 20%">
               <div class="search_label">濮旀墭缂栧彿锛�</div>
               <div class="search_input">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="queryParams.entrustCode"
-                  @keyup.enter.native="refreshTable()"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.entrustCode"
+                  @keyup.enter.native="refreshTable()"></el-input>
               </div>
             </div>
             <div class="search_thing" style="width: 20%">
@@ -45,119 +28,68 @@
                 澶栭儴濮旀墭缂栧彿锛�
               </div>
               <div class="search_input">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="queryParams.outEntrustCode"
-                  @keyup.enter.native="refreshTable()"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.outEntrustCode"
+                  @keyup.enter.native="refreshTable()"></el-input>
               </div>
             </div>
             <div class="search_thing" style="width: 20%">
               <div class="search_label">鏍峰搧鍚嶇О锛�</div>
               <div class="search_input">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="queryParams.sampleName"
-                  @keyup.enter.native="refreshTable()"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.sampleName"
+                  @keyup.enter.native="refreshTable()"></el-input>
               </div>
             </div>
             <div class="search_thing" style="width: 20%">
               <div class="search_label">鏍峰搧鍨嬪彿锛�</div>
               <div class="search_input">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="queryParams.sampleModel"
-                  @keyup.enter.native="refreshTable()"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.sampleModel"
+                  @keyup.enter.native="refreshTable()"></el-input>
               </div>
             </div>
             <div class="search_thing" style="width: 20%">
               <div class="search_label">鏍峰搧缂栧彿锛�</div>
               <div class="search_input">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="queryParams.sampleCode"
-                  @keyup.enter.native="refreshTable()"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.sampleCode"
+                  @keyup.enter.native="refreshTable()"></el-input>
               </div>
             </div>
             <div class="search_thing" style="width: 40%" v-if="more">
               <div class="search_label">涓嬪崟鏃堕棿锛�</div>
               <div class="search_input">
-                <el-date-picker
-                  style="width: 100%"
-                  v-model="queryParams.startAndEndTime"
-                  type="daterange"
-                  size="small"
-                  range-separator="鑷�"
-                  start-placeholder="寮�濮嬫棩鏈�"
-                  end-placeholder="缁撴潫鏃ユ湡"
-                  value-format="yyyy-MM-dd"
-                  clearable
-                  placeholder="閫夋嫨鏃ユ湡"
-                >
+                <el-date-picker style="width: 100%" v-model="queryParams.startAndEndTime" type="daterange" size="small"
+                  range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" value-format="yyyy-MM-dd"
+                  clearable placeholder="閫夋嫨鏃ユ湡">
                 </el-date-picker>
               </div>
             </div>
             <div class="search_thing" style="width: 20%" v-if="more">
               <div class="search_label">涓嬪崟浜猴細</div>
               <div class="search_input">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="queryParams.name"
-                  @keyup.enter.native="refreshTable()"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.name"
+                  @keyup.enter.native="refreshTable()"></el-input>
               </div>
             </div>
             <div class="search_thing" style="width: 20%" v-if="more">
               <div class="search_label">宸ョ▼鍚嶇О锛�</div>
               <div class="search_input">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="queryParams.engineering"
-                  @keyup.enter.native="refreshTable()"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.engineering"
+                  @keyup.enter.native="refreshTable()"></el-input>
               </div>
             </div>
             <div class="search_thing" style="width: 20%" v-if="more">
               <div class="search_label">鐢熶骇鍗曚綅锛�</div>
               <div class="search_input">
-                <el-input
-                  size="small"
-                  placeholder="璇疯緭鍏�"
-                  clearable
-                  v-model="queryParams.production"
-                  @keyup.enter.native="refreshTable()"
-                ></el-input>
+                <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.production"
+                  @keyup.enter.native="refreshTable()"></el-input>
               </div>
             </div>
           </el-col>
           <el-col :span="4">
             <div class="search_thing">
-              <el-button
-                type="text"
-                :icon="!more ? 'el-icon-arrow-down' : 'el-icon-arrow-up'"
-                style="color: #3a7bfa"
-                @click="more = !more"
-                >{{ !more ? "鏇村" : "鏀惰捣" }}</el-button
-              >
+              <el-button type="text" :icon="!more ? 'el-icon-arrow-down' : 'el-icon-arrow-up'" style="color: #3a7bfa"
+                @click="more = !more">{{ !more ? "鏇村" : "鏀惰捣" }}</el-button>
               <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="refreshTable()">鏌� 璇�</el-button>
             </div>
           </el-col>
         </el-row>
@@ -167,115 +99,59 @@
       <div v-show="active == 0">
         <div class="table">
           <ul class="tab">
-            <li
-              v-for="(m, i) in tabList"
-              :key="i + 'afgh'"
-              :class="{ active: i == tabIndex }"
-              @click="handleTab(m, i)"
-            >
+            <li v-for="(m, i) in tabList" :key="i + 'afgh'" :class="{ active: i == tabIndex }" @click="handleTab(m, i)">
               {{ m.label }}
             </li>
           </ul>
-          <lims-table
-            :tableData="tableData"
-            :height="tableHeight + ''"
-            @pagination="pagination"
-            :column="column"
-            :page="page"
-            :tableLoading="tableLoading"
-          ></lims-table>
+          <lims-table :tableData="tableData" :height="tableHeight + ''" @pagination="pagination" :column="column"
+            :page="page" :tableLoading="tableLoading"></lims-table>
         </div>
         <!-- 瀹℃牳 -->
-        <el-dialog
-          title="涓嬪崟瀹℃牳"
-          :visible.sync="verifyDialogVisible"
-          width="30%"
-          :before-close="handleClose"
-        >
+        <el-dialog title="涓嬪崟瀹℃牳" :visible.sync="verifyDialogVisible" width="30%" :before-close="handleClose">
           <p style="font-size: 16px; color: #333333" v-if="!isPass">
-            濮旀墭缂栧彿<span style="color: #34bd66">ZTMS2023071001</span
-            >鐨勪俊鎭槸鍚﹂�氳繃
+            濮旀墭缂栧彿<span style="color: #34bd66">ZTMS2023071001</span>鐨勪俊鎭槸鍚﹂�氳繃
           </p>
-          <el-form
-            :label-position="labelPosition"
-            :model="formData"
-            label-width="150px"
-            ref="ruleForm"
-            v-else
-          >
+          <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
             <el-form-item label="璇疯緭鍏ユ牱鍝佸簱浣嶅彿锛�">
-              <el-input
-                v-model="formData.specificationModel"
-                size="small"
-                style="width: 60%"
-              ></el-input>
+              <el-input v-model="formData.specificationModel" size="small" style="width: 60%"></el-input>
             </el-form-item>
           </el-form>
           <span slot="footer" class="dialog-footer">
             <el-row v-if="!isPass">
               <el-button @click="handleClose">閫� 鍥�</el-button>
-              <el-button type="primary" @click="submitForm" :loading="upLoad"
-                >閫� 杩�</el-button
-              >
+              <el-button type="primary" @click="submitForm" :loading="upLoad">閫� 杩�</el-button>
             </el-row>
             <el-row v-else>
               <el-button @click="handleClose">杩� 鍥�</el-button>
-              <el-button type="primary" @click="submitForm" :loading="upLoad"
-                >纭� 瀹�</el-button
-              >
+              <el-button type="primary" @click="submitForm" :loading="upLoad">纭� 瀹�</el-button>
             </el-row>
           </span>
         </el-dialog>
         <!-- 鎾ら攢 -->
-        <el-dialog
-          title="涓嬪崟鎾ら攢"
-          :visible.sync="quashDialogVisible"
-          width="30%"
-          :before-close="handleClose"
-        >
+        <el-dialog title="涓嬪崟鎾ら攢" :visible.sync="quashDialogVisible" width="30%" :before-close="handleClose">
           <p style="font-size: 16px; color: #333333" v-if="!isQuash">
             濮旀墭缂栧彿<span style="color: #34bd66">{{
               this.insOrderRow.entrustCode
-            }}</span
-            >鐨勪俊鎭槸鍚︽挙閿�
+            }}</span>鐨勪俊鎭槸鍚︽挙閿�
           </p>
-          <el-form
-            :label-position="labelPosition"
-            :model="formData"
-            label-width="150px"
-            ref="ruleForm"
-            v-else
-          >
+          <el-form :label-position="labelPosition" :model="formData" label-width="150px" ref="ruleForm" v-else>
             <el-form-item label="璇疯緭鍏ユ挙閿�鍘熷洜锛�">
-              <el-input
-                v-model="formData.specificationModel"
-                size="small"
-                style="width: 60%"
-              ></el-input>
+              <el-input v-model="formData.specificationModel" size="small" style="width: 60%"></el-input>
             </el-form-item>
           </el-form>
           <span slot="footer" class="dialog-footer">
             <el-row v-if="!isQuash">
               <el-button @click="handleClose">鍙� 娑�</el-button>
-              <el-button type="primary" @click="submitForm" :loading="upLoad"
-                >纭� 瀹�</el-button
-              >
+              <el-button type="primary" @click="submitForm" :loading="upLoad">纭� 瀹�</el-button>
             </el-row>
             <el-row v-else>
               <el-button @click="handleClose">杩� 鍥�</el-button>
-              <el-button type="primary" @click="submitForm" :loading="upLoad"
-                >纭� 瀹�</el-button
-              >
+              <el-button type="primary" @click="submitForm" :loading="upLoad">纭� 瀹�</el-button>
             </el-row>
           </span>
         </el-dialog>
         <!-- 涓嬪彂 -->
-        <el-dialog
-          title="妫�楠屽垎閰�"
-          :visible.sync="issuedDialogVisible"
-          width="400px"
-          :before-close="handleClose"
-        >
+        <el-dialog title="妫�楠屽垎閰�" :visible.sync="issuedDialogVisible" width="400px" :before-close="handleClose">
           <div class="body" style="max-height: 60vh">
             <el-row>
               <el-col class="search_thing" style="width: 95%">
@@ -283,73 +159,34 @@
                   <span class="required-span">* </span>绾﹀畾鏃堕棿锛�
                 </div>
                 <div class="search_input">
-                  <el-date-picker
-                    size="small"
-                    v-model="distributeData.appointed"
-                    type="date"
-                    placeholder="閫夋嫨鏃ユ湡"
-                    value-format="yyyy-MM-dd"
-                    style="width: 100%"
-                    format="yyyy-MM-dd"
-                  >
+                  <el-date-picker size="small" v-model="distributeData.appointed" type="date" placeholder="閫夋嫨鏃ユ湡"
+                    value-format="yyyy-MM-dd" style="width: 100%" format="yyyy-MM-dd">
                   </el-date-picker>
                 </div>
               </el-col>
               <el-col class="search_thing" style="width: 95%">
                 <div class="search_label">
-                  <span class="required-span" v-show="distributeData.type == 2"
-                    >* </span
-                  >鎸囨淳浜哄憳锛�
+                  <span class="required-span" v-show="distributeData.type == 2">* </span>鎸囨淳浜哄憳锛�
                 </div>
                 <div class="search_input">
-                  <el-select
-                    v-model="distributeData.userId"
-                    placeholder="璇烽�夋嫨"
-                    size="small"
-                    style="width: 100%"
-                    clearable
-                    filterable
-                    @change="changeUser"
-                  >
-                    <el-option-group
-                      v-for="(item, index) in Object.keys(personList)"
-                      :key="index"
-                      :label="item"
-                    >
-                      <el-option
-                        v-for="op in personList[item]"
-                        :key="op.id"
-                        :label="op.name"
-                        :value="op.id"
-                      >
+                  <el-select v-model="distributeData.userId" placeholder="璇烽�夋嫨" size="small" style="width: 100%"
+                    clearable filterable @change="changeUser">
+                    <el-option-group v-for="(item, index) in Object.keys(personList)" :key="index" :label="item">
+                      <el-option v-for="op in personList[item]" :key="op.id" :label="op.name" :value="op.id">
                       </el-option>
                     </el-option-group>
                   </el-select>
                 </div>
               </el-col>
-              <el-col
-                class="search_thing"
-                style="width: 95%"
-                v-if="distributeData.userId"
-              >
+              <el-col class="search_thing" style="width: 95%" v-if="distributeData.userId">
                 <div class="search_label">
                   <span class="required-span">* </span>璇曢獙瀹わ細
                 </div>
                 <div class="search_input">
-                  <el-select
-                    v-model="distributeData.sonLaboratory"
-                    placeholder="璇烽�夋嫨11"
-                    size="small"
-                    style="width: 100%"
-                    clearable
-                    filterable
-                  >
-                    <el-option
-                      v-for="(item, i) in sonLaboratoryList"
-                      :key="i + 'oooo'"
-                      :label="item.label"
-                      :value="item.value"
-                    >
+                  <el-select v-model="distributeData.sonLaboratory" placeholder="璇烽�夋嫨11" size="small" style="width: 100%"
+                    clearable filterable>
+                    <el-option v-for="(item, i) in sonLaboratoryList" :key="i + 'oooo'" :label="item.label"
+                      :value="item.value">
                     </el-option>
                   </el-select>
                 </div>
@@ -359,34 +196,18 @@
           <span slot="footer" class="dialog-footer">
             <el-row>
               <el-button @click="handleClose2">鍙� 娑�</el-button>
-              <el-button type="primary" @click="submitForm2" :loading="upLoad"
-                >纭� 瀹�</el-button
-              >
+              <el-button type="primary" @click="submitForm2" :loading="upLoad">纭� 瀹�</el-button>
             </el-row>
           </span>
         </el-dialog>
-        <el-dialog
-          title="鏁版嵁鏌ョ湅"
-          :visible.sync="dataDialogVisible"
-          width="100%"
-          fullscreen
-        >
+        <el-dialog title="鏁版嵁鏌ョ湅" :visible.sync="dataDialogVisible" width="100%" fullscreen>
           <div style="height: 80vh; overflow-y: auto" v-if="dataDialogVisible">
-            <ValueTable
-              ref="ValueTableDataLook"
-              :rowKey="'insProductId'"
-              :url="$api.insOrder.selectSampleAndProductByOrderId"
-              :componentData="componentDataDataLook"
-            />
+            <ValueTable ref="ValueTableDataLook" :rowKey="'insProductId'"
+              :url="$api.insOrder.selectSampleAndProductByOrderId" :componentData="componentDataDataLook" />
           </div>
         </el-dialog>
-        <el-dialog
-          top="5vh"
-          :title="deleteTilte"
-          :visible.sync="deleteDialogVisible"
-          :before-close="handleCloseDelete"
-          width="80%"
-        >
+        <el-dialog top="5vh" :title="deleteTilte" :visible.sync="deleteDialogVisible" :before-close="handleCloseDelete"
+          width="80%">
           <div class="table-container" v-if="deleteDialogVisible">
             <!-- <ValueTable
             ref="ValueTableDataDelete"
@@ -400,57 +221,23 @@
             :componentData="componentDataDelete"
             :isColumnWidth="true"
           /> -->
-            <el-table
-              height="500px"
-              ref="revokeTable"
-              @select="handleSelectionChange"
-              @select-all="handleSelectionAll"
-              :data="treeTableData"
-              style="width: 100%"
-              row-key="id"
-              border
-              lazy
-              :load="load"
-              :tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
-            >
-              <el-table-column
-                v-if="deleteTilte == '鎾ら攢'"
-                type="selection"
-                width="55"
-              ></el-table-column>
-              <el-table-column
-                prop="sampleCode"
-                label="鏍峰搧缂栧彿"
-                show-overflow-tooltip
-              >
+            <el-table height="500px" ref="revokeTable" @select="handleSelectionChange" @select-all="handleSelectionAll"
+              :data="treeTableData" style="width: 100%" row-key="id" border lazy :load="load"
+              :tree-props="{ children: 'children', hasChildren: 'hasChildren' }">
+              <el-table-column v-if="deleteTilte == '鎾ら攢'" type="selection" width="55"></el-table-column>
+              <el-table-column prop="sampleCode" label="鏍峰搧缂栧彿" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column
-                prop="inspectionItem"
-                label="妫�楠岄」"
-                show-overflow-tooltip
-              >
+              <el-table-column prop="inspectionItem" label="妫�楠岄」" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column
-                prop="inspectionItemSubclass"
-                label="妫�楠屽瓙椤�"
-                show-overflow-tooltip
-              >
+              <el-table-column prop="inspectionItemSubclass" label="妫�楠屽瓙椤�" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column
-                prop="sampleType"
-                label="鏍峰搧鍒嗙被"
-                show-overflow-tooltip
-              >
+              <el-table-column prop="sampleType" label="鏍峰搧鍒嗙被" show-overflow-tooltip>
               </el-table-column>
               <el-table-column prop="sample" label="鏍峰搧" show-overflow-tooltip>
               </el-table-column>
               <el-table-column prop="model" label="鍨嬪彿" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column
-                prop="sonLaboratory"
-                label="璇曢獙瀹�"
-                show-overflow-tooltip
-              >
+              <el-table-column prop="sonLaboratory" label="璇曢獙瀹�" show-overflow-tooltip>
               </el-table-column>
               <el-table-column prop="tell" label="瑕佹眰鍊�" show-overflow-tooltip>
               </el-table-column>
@@ -461,118 +248,46 @@
               <el-button @click="handleNo">{{
                 deleteTilte == "鎾ら攢" ? "鍙� 娑�" : "涓嶉�氳繃"
               }}</el-button>
-              <el-button
-                type="primary"
-                @click="submitDelete"
-                :loading="printLoading"
-                >{{ deleteTilte == "鎾ら攢" ? "纭� 瀹�" : "閫� 杩�" }}</el-button
-              >
+              <el-button type="primary" @click="submitDelete" :loading="printLoading">{{ deleteTilte == "鎾ら攢" ? "纭� 瀹�" :
+                "閫� 杩�" }}</el-button>
             </el-row>
           </span>
         </el-dialog>
         <!-- 鏁版嵁鏌ョ湅璇︽儏 -->
-        <el-dialog
-          title="鏌ョ湅璇︽儏"
-          :visible.sync="dialogVisible"
-          width="70%"
-          :before-close="handleClose3"
-        >
-          <el-table
-            v-if="type == '鍗曟牴鍨傜洿鐕冪儳' || type == '鏉惧绠�'"
-            :data="viewDetailsList"
-            height="400px"
-            border
-            style="width: 100%"
-          >
-            <el-table-column
-              type="index"
-              label="搴忓彿"
-              width="80px"
-            ></el-table-column>
-            <el-table-column
-              prop="entrustCode"
-              label="濮旀墭鍗曞彿"
-            ></el-table-column>
-            <el-table-column
-              prop="sampleCode"
-              label="鏍峰搧缂栧彿"
-            ></el-table-column>
+        <el-dialog title="鏌ョ湅璇︽儏" :visible.sync="dialogVisible" width="70%" :before-close="handleClose3">
+          <el-table v-if="type == '鍗曟牴鍨傜洿鐕冪儳' || type == '鏉惧绠�'" :data="viewDetailsList" height="400px" border
+            style="width: 100%">
+            <el-table-column type="index" label="搴忓彿" width="80px"></el-table-column>
+            <el-table-column prop="entrustCode" label="濮旀墭鍗曞彿"></el-table-column>
+            <el-table-column prop="sampleCode" label="鏍峰搧缂栧彿"></el-table-column>
             <el-table-column prop="color" label="濂楃"></el-table-column>
             <!-- <el-table-column prop="inspectionItem" label="妫�楠岄」"></el-table-column> -->
             <el-table-column prop="insValue" label="妫�楠岀粨鏋�"></el-table-column>
           </el-table>
 
-          <el-table
-            v-if="type == '鎶楁媺寮哄害'"
-            :data="viewDetailsList"
-            height="400px"
-            border
-            style="width: 100%"
-          >
-            <el-table-column
-              type="index"
-              label="搴忓彿"
-              width="80px"
-            ></el-table-column>
-            <el-table-column
-              prop="inspectionItem"
-              label="妫�楠岄」"
-            ></el-table-column>
-            <el-table-column
-              prop="inspectionItemSubclass"
-              label="妫�楠屽瓙椤�"
-            ></el-table-column>
+          <el-table v-if="type == '鎶楁媺寮哄害'" :data="viewDetailsList" height="400px" border style="width: 100%">
+            <el-table-column type="index" label="搴忓彿" width="80px"></el-table-column>
+            <el-table-column prop="inspectionItem" label="妫�楠岄」"></el-table-column>
+            <el-table-column prop="inspectionItemSubclass" label="妫�楠屽瓙椤�"></el-table-column>
             <el-table-column prop="width" label="瀹藉害"></el-table-column>
             <el-table-column prop="thickness" label="鍘氬害"></el-table-column>
             <el-table-column prop="testValue" label="妫�楠屽��"></el-table-column>
           </el-table>
 
-          <el-table
-            v-if="type == '鏂浼搁暱鐜�'"
-            :data="viewDetailsList"
-            height="400px"
-            border
-            style="width: 100%"
-          >
-            <el-table-column
-              type="index"
-              label="搴忓彿"
-              width="80px"
-            ></el-table-column>
-            <el-table-column
-              prop="inspectionItem"
-              label="妫�楠岄」"
-            ></el-table-column>
-            <el-table-column
-              prop="inspectionItemSubclass"
-              label="妫�楠屽瓙椤�"
-            ></el-table-column>
-            <el-table-column
-              v-for="(v, i) in tableHeader"
-              :key="i"
-              :prop="`testValue${i}`"
-              :label="`妫�楠屽��${i + 1}`"
-            ></el-table-column>
+          <el-table v-if="type == '鏂浼搁暱鐜�'" :data="viewDetailsList" height="400px" border style="width: 100%">
+            <el-table-column type="index" label="搴忓彿" width="80px"></el-table-column>
+            <el-table-column prop="inspectionItem" label="妫�楠岄」"></el-table-column>
+            <el-table-column prop="inspectionItemSubclass" label="妫�楠屽瓙椤�"></el-table-column>
+            <el-table-column v-for="(v, i) in tableHeader" :key="i" :prop="`testValue${i}`"
+              :label="`妫�楠屽��${i + 1}`"></el-table-column>
           </el-table>
         </el-dialog>
 
         <!-- 瀵煎嚭宸叉鏁版嵁 -->
-        <el-dialog
-          title="閫夋嫨鏃ユ湡"
-          :visible.sync="dialogVisible1"
-          width="30%"
-          :before-close="handleClose4"
-        >
+        <el-dialog title="閫夋嫨鏃ユ湡" :visible.sync="dialogVisible1" width="30%" :before-close="handleClose4">
           <span>涓嬪崟鏃ユ湡:&nbsp;</span>
-          <el-date-picker
-            v-model="exportCheckedDate"
-            type="daterange"
-            size="small"
-            value-format="yyyy-MM-dd"
-            range-separator="鑷�"
-            start-placeholder="寮�濮嬫棩鏈�"
-            end-placeholder="缁撴潫鏃ユ湡"
-          >
+          <el-date-picker v-model="exportCheckedDate" type="daterange" size="small" value-format="yyyy-MM-dd"
+            range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡">
           </el-date-picker>
           <span slot="footer" class="dialog-footer">
             <el-button @click="handleClose4">鍙� 娑�</el-button>
@@ -581,47 +296,17 @@
         </el-dialog>
       </div>
       <div style="width: 100%; height: 100%" v-if="active > 0">
-        <Add
-          :active="active"
-          :currentId="currentId"
-          v-if="active < 4"
-          :examine="examine"
-        />
+        <Add :active="active" :currentId="currentId" v-if="active < 4" :examine="examine" />
       </div>
-      <el-dialog
-        title="鏍囩鎵撳嵃"
-        :visible.sync="printDialogVisible"
-        width="40%"
-        top="5vh"
-      >
-        <div
-          style="width: 100%; height: 400px; overflow-y: auto"
-          v-loading="loadPint"
-        >
+      <el-dialog title="鏍囩鎵撳嵃" :visible.sync="printDialogVisible" width="40%" top="5vh">
+        <div style="width: 100%; height: 400px; overflow-y: auto" v-loading="loadPint">
           <div class="dia_body">
-            <el-checkbox
-              style="margin: 10px 5px"
-              :indeterminate="isIndeterminate"
-              v-model="checkAll"
-              @change="handleCheckAllChange"
-              >鍏ㄩ��</el-checkbox
-            >
-            <el-checkbox-group
-              @change="changePrintCode()"
-              v-model="checkIndexList"
-            >
-              <el-card
-                class="box-card"
-                v-for="(item, i) in qrData"
-                :key="i + 'wwwww'"
-                style="margin-bottom: 15px; font-size: 16px !important"
-              >
-                <el-checkbox
-                  :label="i"
-                  :key="i"
-                  style="position: relative; top: -20px; left: 5px"
-                  ><br
-                /></el-checkbox>
+            <el-checkbox style="margin: 10px 5px" :indeterminate="isIndeterminate" v-model="checkAll"
+              @change="handleCheckAllChange">鍏ㄩ��</el-checkbox>
+            <el-checkbox-group @change="changePrintCode()" v-model="checkIndexList">
+              <el-card class="box-card" v-for="(item, i) in qrData" :key="i + 'wwwww'"
+                style="margin-bottom: 15px; font-size: 16px !important">
+                <el-checkbox :label="i" :key="i" style="position: relative; top: -20px; left: 5px"><br /></el-checkbox>
                 <div>
                   <el-row style="font-size: 14px; padding-left: 20px">
                     <el-col style="font-weight: bold">{{ item.pName }}</el-col>
@@ -629,89 +314,48 @@
                   <div style="display: flex">
                     <div>
                       <el-col :span="8" :offset="4">
-                        <vueQr
-                          :text="
-                            'https://zttx-lims.ztt.cn:8021/lims/qr/qrScan?code=' +
-                            item.id +
-                            '&type=sample'
-                          "
-                          :size="140"
-                          :margin="2"
-                        ></vueQr>
+                        <vueQr :text="'https://zttx-lims.ztt.cn:8021/lims/qr/qrScan?code=' +
+                          item.id +
+                          '&type=sample'
+                          " :size="140" :margin="2"></vueQr>
                       </el-col>
                     </div>
                     <div style="margin-left: 50px; width: 100%">
                       <el-row>
-                        <el-col
-                          style="
+                        <el-col style="
                             font-weight: bold;
                             text-align: left;
                             font-size: 14px;
-                          "
-                          ><span>鏍峰搧缂栧彿:&nbsp; </span
-                          >{{ item.sampleCode }}</el-col
-                        >
+                          "><span>鏍峰搧缂栧彿:&nbsp; </span>{{ item.sampleCode }}</el-col>
                       </el-row>
                       <el-row style="margin-top: 1px; font-size: 14px">
-                        <el-col style="font-weight: bold; text-align: left"
-                          ><span>濮旀墭鍗曞彿:&nbsp; </span>{{ item.code }}</el-col
-                        >
+                        <el-col style="font-weight: bold; text-align: left"><span>濮旀墭鍗曞彿:&nbsp; </span>{{ item.code
+                          }}</el-col>
                       </el-row>
                       <el-row style="margin-top: 1px; font-size: 14px">
-                        <el-col style="font-weight: bold; text-align: left"
-                          ><span>瑙勬牸鍨嬪彿:&nbsp; </span>{{ item.model }}</el-col
-                        >
+                        <el-col style="font-weight: bold; text-align: left"><span>瑙勬牸鍨嬪彿:&nbsp; </span>{{ item.model
+                          }}</el-col>
                       </el-row>
                       <el-row style="margin-top: 1px; font-size: 14px">
-                        <el-col style="font-weight: bold; text-align: left"
-                          ><span>鏍峰搧鍚嶇О:&nbsp; </span
-                          >{{ item.sample }}</el-col
-                        >
+                        <el-col style="font-weight: bold; text-align: left"><span>鏍峰搧鍚嶇О:&nbsp; </span>{{ item.sample
+                          }}</el-col>
                       </el-row>
-                      <el-row
-                        style="margin-top: 1px; font-size: 14px"
-                        class="ellipsis-multiline"
-                      >
-                        <el-col style="font-weight: bold; text-align: left"
-                          ><span>妫�娴嬮」鐩�:&nbsp; </span>{{ item.item }}</el-col
-                        >
+                      <el-row style="margin-top: 1px; font-size: 14px" class="ellipsis-multiline">
+                        <el-col style="font-weight: bold; text-align: left"><span>妫�娴嬮」鐩�:&nbsp; </span>{{ item.item
+                          }}</el-col>
                       </el-row>
                       <el-row style="margin-top: 2px; font-size: 14px">
-                        <el-col
-                          style="
+                        <el-col style="
                             font-weight: bold;
                             display: flex;
                             align-items: center;
-                          "
-                          ><span>鏍峰搧鐘舵��:&nbsp; </span
-                          ><el-radio-group
-                            :value="item.insState"
-                            style="margin-top: 7px; margin-left: 4px"
-                            disabled
-                          >
-                            <el-radio
-                              :label="0"
-                              style="font-weight: bold; margin-right: 7px"
-                              >寰呮</el-radio
-                            >
-                            <el-radio
-                              :label="1"
-                              style="font-weight: bold; margin-right: 7px"
-                              >鍦ㄦ</el-radio
-                            >
-                            <el-radio
-                              :label="2"
-                              style="font-weight: bold; margin-right: 7px"
-                              >宸叉</el-radio
-                            > </el-radio-group
-                          ><el-radio
-                            :label="1"
-                            style="font-weight: bold; margin-top: 7px"
-                            v-model="item.isLeave"
-                            disabled
-                            >鐣欐牱</el-radio
-                          ></el-col
-                        >
+                          "><span>鏍峰搧鐘舵��:&nbsp; </span><el-radio-group :value="item.insState"
+                            style="margin-top: 7px; margin-left: 4px" disabled>
+                            <el-radio :label="0" style="font-weight: bold; margin-right: 7px">寰呮</el-radio>
+                            <el-radio :label="1" style="font-weight: bold; margin-right: 7px">鍦ㄦ</el-radio>
+                            <el-radio :label="2" style="font-weight: bold; margin-right: 7px">宸叉</el-radio>
+                          </el-radio-group><el-radio :label="1" style="font-weight: bold; margin-top: 7px"
+                            v-model="item.isLeave" disabled>鐣欐牱</el-radio></el-col>
                       </el-row>
                     </div>
                   </div>
@@ -723,61 +367,40 @@
         <span slot="footer" class="dialog-footer">
           <el-row>
             <el-button @click="printDialogVisible = false">鍙� 娑�</el-button>
-            <el-button
-              type="primary"
-              @click="submitPrint"
-              :loading="printLoading"
-              >鎵� 鍗�</el-button
-            >
+            <el-button type="primary" @click="submitPrint" :loading="printLoading">鎵� 鍗�</el-button>
           </el-row>
         </span>
       </el-dialog>
-      <div
-        class="el-dialog__body"
-        style="
+      <div class="el-dialog__body" style="
           overflow-y: auto;
           margin-top: 0;
           position: fixed;
           top: 999px;
           z-index: 99999;
           display: none;
-        "
-      >
+        ">
         <div id="printMOrder" class="printMOrder" ref="printMOrder">
-          <el-card
-            class="box-card"
-            v-for="(item, i) in checkDataList"
-            :key="i + 'uuuuu'"
-            style="
+          <el-card class="box-card" v-for="(item, i) in checkDataList" :key="i + 'uuuuu'" style="
               font-size: 0.2cm !important;
               page-break-after: always;
               color: #000;
               box-shadow: none;
               margin: 0 !important;
               padding: 0 !important;
-            "
-          >
+            ">
             <div style="display: flex">
               <div>
                 <el-col :span="10" :offset="2">
-                  <vueQr
-                    :text="
-                      'https://zttx-lims.ztt.cn:8021/lims/qr/qrScan?code=' +
-                      item.id +
-                      '&type=sample'
-                    "
-                    :size="60"
-                    :margin="2"
-                  ></vueQr>
+                  <vueQr :text="'https://zttx-lims.ztt.cn:8021/lims/qr/qrScan?code=' +
+                    item.id +
+                    '&type=sample'
+                    " :size="60" :margin="2"></vueQr>
                 </el-col>
               </div>
               <div style="margin-left: 0.32cm; line-height: 0.22cm">
                 <el-row>
-                  <el-col
-                    style="font-size: 0.2cm; width: 4cm"
-                    class="single-line-ellipsis"
-                    ><span>鏍峰搧缂栧彿:&nbsp; </span>{{ item.sampleCode }}</el-col
-                  >
+                  <el-col style="font-size: 0.2cm; width: 4cm" class="single-line-ellipsis"><span>鏍峰搧缂栧彿:&nbsp; </span>{{
+                    item.sampleCode }}</el-col>
                 </el-row>
                 <el-row style="font-size: 0.2cm">
                   <el-col><span>濮旀墭鍗曞彿:&nbsp; </span>{{ item.code }}</el-col>
@@ -786,29 +409,19 @@
                   <el-col><span>瑙勬牸鍨嬪彿:&nbsp; </span>{{ item.model }}</el-col>
                 </el-row>
                 <el-row style="font-size: 0.2cm">
-                  <el-col
-                    ><span>鏍峰搧鍚嶇О:&nbsp; </span>{{ item.sample }}</el-col
-                  >
+                  <el-col><span>鏍峰搧鍚嶇О:&nbsp; </span>{{ item.sample }}</el-col>
                 </el-row>
                 <el-row style="font-size: 0.2cm; width: 4cm">
-                  <el-col class="ellipsis-multiline"
-                    ><span>妫�娴嬮」鐩�:&nbsp; </span>{{ item.item }}</el-col
-                  >
+                  <el-col class="ellipsis-multiline"><span>妫�娴嬮」鐩�:&nbsp; </span>{{ item.item }}</el-col>
                 </el-row>
                 <el-row style="margin-top: 0.01cm; font-size: 0.2cm">
-                  <el-col style="display: flex; align-items: center"
-                    ><span>鏍峰搧鐘舵��:&nbsp; </span>
-                    <span style="white-space: nowrap"
-                      ><span v-if="item.insState == 0">鈭�</span
-                      ><span class="scor" v-if="item.insState != 0"></span>寰呮
-                      <span v-if="item.insState == 1">鈭�</span
-                      ><span class="scor" v-if="item.insState != 1"></span>鍦ㄦ
-                      <span v-if="item.insState == 2">鈭�</span
-                      ><span class="scor" v-if="item.insState != 2"></span>宸叉
-                      <span v-if="item.isLeave == 1">鈭�</span
-                      ><span class="scor" v-if="item.isLeave != 1"></span
-                      >鐣欐牱</span
-                    >
+                  <el-col style="display: flex; align-items: center"><span>鏍峰搧鐘舵��:&nbsp; </span>
+                    <span style="white-space: nowrap"><span v-if="item.insState == 0">鈭�</span><span class="scor"
+                        v-if="item.insState != 0"></span>寰呮
+                      <span v-if="item.insState == 1">鈭�</span><span class="scor" v-if="item.insState != 1"></span>鍦ㄦ
+                      <span v-if="item.insState == 2">鈭�</span><span class="scor" v-if="item.insState != 2"></span>宸叉
+                      <span v-if="item.isLeave == 1">鈭�</span><span class="scor"
+                        v-if="item.isLeave != 1"></span>鐣欐牱</span>
                   </el-col>
                 </el-row>
               </div>
@@ -994,32 +607,32 @@
             {
               name: "鏁版嵁鏌ョ湅",
               type: "text",
-              clickFun: (row) => {},
+              clickFun: (row) => { },
             },
             {
               name: "鎶ュ憡涓嬭浇",
               type: "text",
-              clickFun: (row) => {},
+              clickFun: (row) => { },
             },
             {
               name: "瀹℃牳",
               type: "text",
-              clickFun: (row) => {},
+              clickFun: (row) => { },
             },
             {
               name: "鎾ら攢",
               type: "text",
-              clickFun: (row) => {},
+              clickFun: (row) => { },
             },
             {
               name: "鎾ら攢瀹℃牳",
               type: "text",
-              clickFun: (row) => {},
+              clickFun: (row) => { },
             },
             {
               name: "鍒嗛厤",
               type: "text",
-              clickFun: (row) => {},
+              clickFun: (row) => { },
             },
           ],
         },
@@ -2022,8 +1635,8 @@
           this.$axios
             .get(
               this.$api.insOrder.selectTemperatureByProductId +
-                "?productId=" +
-                tree.id
+              "?productId=" +
+              tree.id
             )
             .then((res) => {
               this.loadRecursion(this.treeTableData, tree.id, res.data);
@@ -2037,10 +1650,10 @@
           this.$axios
             .get(
               this.$api.insOrder.selectTemperatureNumberByProductId +
-                "?parentId=" +
-                tree.parentId +
-                "&inspectionItem=" +
-                tree.inspectionItemTwo
+              "?parentId=" +
+              tree.parentId +
+              "&inspectionItem=" +
+              tree.inspectionItemTwo
             )
             .then((res) => {
               this.loadRecursion(this.treeTableData, tree.id, res.data);
@@ -2052,10 +1665,10 @@
           this.$axios
             .get(
               this.$api.insOrder.selectProductsBySampleId +
-                "?sampleId=" +
-                tree.id +
-                "&orderId=" +
-                this.orderId
+              "?sampleId=" +
+              tree.id +
+              "&orderId=" +
+              this.orderId
             )
             .then((res) => {
               this.treeTableData.forEach((m, index) => {
@@ -2087,8 +1700,8 @@
           this.$axios
             .get(
               this.$api.insOrder.revokeReviewTemperatureByProductId +
-                "?productId=" +
-                tree.id
+              "?productId=" +
+              tree.id
             )
             .then((res) => {
               resolve(res.data);
@@ -2100,10 +1713,10 @@
           this.$axios
             .get(
               this.$api.insOrder.revokeReviewConsistentByProductId +
-                "?parentId=" +
-                tree.parentId +
-                "&inspectionItem=" +
-                tree.inspectionItemTwo
+              "?parentId=" +
+              tree.parentId +
+              "&inspectionItem=" +
+              tree.inspectionItemTwo
             )
             .then((res) => {
               resolve(res.data);
@@ -2113,10 +1726,10 @@
           this.$axios
             .get(
               this.$api.insOrder.revokeReviewProduct +
-                "?sampleId=" +
-                tree.id +
-                "&orderId=" +
-                this.orderId
+              "?sampleId=" +
+              tree.id +
+              "&orderId=" +
+              this.orderId
             )
             .then((res) => {
               resolve(res.data);
@@ -2585,10 +2198,12 @@
 .el-form-item {
   margin-bottom: 16px;
 }
-.box-card >>> .el-radio__inner {
+
+.box-card>>>.el-radio__inner {
   border-radius: 2px !important;
 }
-.box-card >>> .el-radio__input.is-checked .el-radio__inner::after {
+
+.box-card>>>.el-radio__input.is-checked .el-radio__inner::after {
   content: "";
   width: 8px;
   height: 3px;
@@ -2604,13 +2219,16 @@
   border-radius: 0px;
   background: none;
 }
->>> .el-radio__label {
+
+>>>.el-radio__label {
   color: #000 !important;
 }
-.el-dialog__body >>> .el-radio__label {
+
+.el-dialog__body>>>.el-radio__label {
   font-size: 8px;
 }
-.el-dialog__body >>> .el-radio__input.is-checked .el-radio__inner::after {
+
+.el-dialog__body>>>.el-radio__input.is-checked .el-radio__inner::after {
   content: "";
   width: 4px;
   height: 3px;
@@ -2626,31 +2244,40 @@
   border-radius: 0px;
   background: none;
 }
->>> .el-radio__input.is-disabled.is-checked .el-radio__inner {
+
+>>>.el-radio__input.is-disabled.is-checked .el-radio__inner {
   background: #3a7bfa;
 }
-.el-dialog__body >>> .el-radio__input.is-disabled.is-checked .el-radio__inner {
+
+.el-dialog__body>>>.el-radio__input.is-disabled.is-checked .el-radio__inner {
   background: transparent;
 }
-.el-dialog__body >>> .el-radio__inner {
+
+.el-dialog__body>>>.el-radio__inner {
   width: 8px !important;
   height: 8px !important;
 }
-.el-dialog__body >>> .el-radio__label {
+
+.el-dialog__body>>>.el-radio__label {
   padding-left: 2px !important;
 }
-.el-dialog__body >>> .el-card__body {
+
+.el-dialog__body>>>.el-card__body {
   padding: 0 !important;
 }
-.el-dialog__body >>> .el-card {
+
+.el-dialog__body>>>.el-card {
   border: none;
 }
-.el-dialog__body >>> .el-radio__input.is-disabled .el-radio__inner {
+
+.el-dialog__body>>>.el-radio__input.is-disabled .el-radio__inner {
   border-color: #000 !important;
 }
-.el-dialog__body >>> .el-radio__input.is-disabled.is-checked .el-radio__inner {
+
+.el-dialog__body>>>.el-radio__input.is-disabled.is-checked .el-radio__inner {
   border: none !important;
 }
+
 .scor {
   width: 0.01cm;
   height: 0.01cm;
@@ -2658,6 +2285,7 @@
   border: 1px solid #000;
   display: inline-block;
 }
+
 .ellipsis-multiline {
   display: -webkit-box;
   -webkit-line-clamp: 2;
@@ -2665,14 +2293,19 @@
   overflow: hidden;
   text-overflow: ellipsis;
   word-wrap: break-word;
-  max-height: 3em; /* 楂樺害涓哄瓧浣撳ぇ灏忕殑涓ゅ�� */
-  line-height: 1.5em; /* 琛岄珮 */
-  height: 3em; /* 楂樺害涓鸿楂樼殑涓ゅ�� */
+  max-height: 3em;
+  /* 楂樺害涓哄瓧浣撳ぇ灏忕殑涓ゅ�� */
+  line-height: 1.5em;
+  /* 琛岄珮 */
+  height: 3em;
+  /* 楂樺害涓鸿楂樼殑涓ゅ�� */
 }
+
 .table-container {
   height: 70vh;
   overflow-y: auto;
 }
+
 .table-container.el-table {
   overflow: hidden;
   text-overflow: ellipsis;
diff --git a/src/views/index.vue b/src/views/index.vue
index db59dcc..2fcc034 100644
--- a/src/views/index.vue
+++ b/src/views/index.vue
@@ -1,33 +1,40 @@
 <template>
-  <div class="index">
+  <div class="bg-1">
     <el-row :gutter="25">
       <el-col :lg="14" :md="14" :sm="24" :xl="14" :xs="24">
         <div class="left-1">
           <div class="say">
             <div style="display: flex;align-items: center;flex-wrap: wrap;">
-              <div class="say-1">{{user.name}} 鎮ㄥソ锛佺鎮ㄥ紑蹇冩瘡涓�澶�</div>
-              <div class="say-2">褰撳墠鏃堕棿锛� {{now}}</div>
+              <div class="say-1">{{ user.name }} 鎮ㄥソ锛佺鎮ㄥ紑蹇冩瘡涓�澶�</div>
+              <div class="say-2">褰撳墠鏃堕棿锛� {{ now }}</div>
             </div>
           </div>
         </div>
         <div v-loading="workLoading" class="left-2 card" style="overflow: hidden;">
-          <div v-for="(item,index) in workDay" :key="index" class="left-2-item">
+          <div v-for="(item, index) in workDay" :key="index" class="left-2-item">
             <div class="left-item-title">
               <span style="font-size: 18px;">{{ item }}</span>
               <span style="font-size: 14px;color: #999999;">{{ weekdays[index] }}</span>
             </div>
             <div class="left-item-body">
-              <div v-for="(m,i) in workList[index]" :key="i" :class="{color0:m.type==0,color1:m.type==1,color2:m.type==2}" class="body-item">
+              <div v-for="(m, i) in workList[index]" :key="i"
+                :class="{ color0: m.type == 0, color1: m.type == 1, color2: m.type == 2 }" class="body-item">
                 <div>
                   <span style="font-size: 12px;margin-bottom: 17px;">{{ m.text }}</span>
                   <div style="display: flex">
                     <span class="body-item-name">{{ m.name }}</span>
-                    <span v-if="m.insState == 0" class="body-item-insState" style="background-color: #909399;font-size: 12px;">寰呮楠�</span>
-                    <span v-if="m.insState == 1" class="body-item-insState" style="background-color: #E6A23C;font-size: 12px;">妫�楠屼腑</span>
-                    <span v-if="m.insState == 2" class="body-item-insState" style="background-color: #67C23A;font-size: 12px;">宸叉楠�</span>
-                    <span v-if="m.insState == 3" class="body-item-insState" style="background-color: #E6A23C;font-size: 12px;">寰呭鏍�</span>
-                    <span v-if="m.insState == 4" class="body-item-insState" style="background-color: #F56C6C;font-size: 9px;">澶嶆牳鏈�氳繃</span>
-                    <span v-if="m.insState == 5" class="body-item-insState" style="background-color: #67C23A;font-size: 10px;">澶嶆牳閫氳繃</span>
+                    <span v-if="m.insState == 0" class="body-item-insState"
+                      style="background-color: #909399;font-size: 12px;">寰呮楠�</span>
+                    <span v-if="m.insState == 1" class="body-item-insState"
+                      style="background-color: #E6A23C;font-size: 12px;">妫�楠屼腑</span>
+                    <span v-if="m.insState == 2" class="body-item-insState"
+                      style="background-color: #67C23A;font-size: 12px;">宸叉楠�</span>
+                    <span v-if="m.insState == 3" class="body-item-insState"
+                      style="background-color: #E6A23C;font-size: 12px;">寰呭鏍�</span>
+                    <span v-if="m.insState == 4" class="body-item-insState"
+                      style="background-color: #F56C6C;font-size: 9px;">澶嶆牳鏈�氳繃</span>
+                    <span v-if="m.insState == 5" class="body-item-insState"
+                      style="background-color: #67C23A;font-size: 10px;">澶嶆牳閫氳繃</span>
                   </div>
                 </div>
               </div>
@@ -42,7 +49,7 @@
               <img alt="" src="@/assets/index_image/index-0.svg">
             </div>
             <div class="mun">
-              <p style="font-size: 20px;">{{getNumberFourTypes.totalNumberOfMessages}}</p>
+              <p style="font-size: 20px;">{{ getNumberFourTypes.totalNumberOfMessages }}</p>
               <p style="font-size: 14px;margin-bottom: 10px;">鎴戠殑寰呭姙</p>
             </div>
           </div>
@@ -78,52 +85,55 @@
           <div class="right-2-title">
             <span style="color: #333333;font-size: 16px;">鎴戠殑鏃ョ▼</span>
             <span style="cursor: pointer;font-size: 12px;
-color: #3A7BFA;" @click="dialogVisible=true">娣诲姞鎴戠殑鏃ョ▼</span>
+color: #3A7BFA;" @click="dialogVisible = true">娣诲姞鎴戠殑鏃ョ▼</span>
           </div>
           <div class="right-2-body">
             <div class="calendar" style="width: 49%;">
               <div class="control">
                 <el-button class="prevm" icon="el-icon-arrow-left" @click="prevMonth(calendarValue)"></el-button>
-                <span>{{ calendarValue.getFullYear()+'骞�'+(calendarValue.getMonth() + 1)+'鏈�' }}</span>
+                <span>{{ calendarValue.getFullYear() + '骞�' + (calendarValue.getMonth() + 1) + '鏈�' }}</span>
                 <el-button class="nextm" icon="el-icon-arrow-right" @click="nextMonth(calendarValue)"></el-button>
               </div>
               <el-calendar v-model="calendarValue">
-                <template
-                  slot="dateCell"
-                  slot-scope="{date, data}">
-                        <span>
-                            {{ data.day.split('-').slice(2)+'' }}
-                        </span>
+                <template slot="dateCell" slot-scope="{date, data}">
+                  <span>
+                    {{ data.day.split('-').slice(2) + '' }}
+                  </span>
                   <!-- <el-badge v-if="data.isSelected" is-dot class="item">
                   </el-badge> -->
                 </template>
               </el-calendar>
             </div>
             <div v-loading="scheduleLoading" class="right-2-list" style="width: 49%;height: 286px;">
-              <div v-for="(m,i) in listScheduleByMe" :key="i" class="list2-item">
+              <div v-for="(m, i) in listScheduleByMe" :key="i" class="list2-item">
                 <span>{{ m.scheduleTimes }}</span>
                 <el-tooltip :content="m.text" effect="dark" placement="top" style="margin-left: 10px;">
-                  <p class="ellipsis-multiline" >{{ m.text }}</p>
+                  <p class="ellipsis-multiline">{{ m.text }}</p>
                 </el-tooltip>
               </div>
-              <span v-if="listScheduleByMe.length==0" style="color:rgb(144, 147, 153);font-size: 14px;text-align: center;margin: 120px 0;display: inline-block;width: 100%;">鏆傛棤鏁版嵁</span>
+              <span v-if="listScheduleByMe.length == 0"
+                style="color:rgb(144, 147, 153);font-size: 14px;text-align: center;margin: 120px 0;display: inline-block;width: 100%;">鏆傛棤鏁版嵁</span>
             </div>
           </div>
         </div>
         <div class="right-3 card" style="overflow: hidden;">
           <div class="right-3-tab">
             <!--            <div :class="{active:currentIndex==4}" class="tab-item" style="cursor: pointer;" @click="currentIndex=4">棰勮鎻愰啋</div>-->
-            <div :class="{active:currentIndex==5}" class="tab-item" style="cursor: pointer;" @click="currentIndexChange">CNAS閫氱煡閫氬憡</div>
+            <div :class="{ active: currentIndex == 5 }" class="tab-item" style="cursor: pointer;"
+              @click="currentIndexChange">
+              CNAS閫氱煡閫氬憡</div>
           </div>
           <div v-loading="listLoading" class="right-3-list">
-            <scroll-pagination v-if="list.length>0||listLoading" :finishLoding="finishLoding" :list="list" @load="getList">
-              <div v-for="(m,i) in list" :key="i" class="list3-item">
+            <scroll-pagination v-if="list.length > 0 || listLoading" :finishLoding="finishLoding" :list="list"
+              @load="getList">
+              <div v-for="(m, i) in list" :key="i" class="list3-item">
                 <div class="list3-item-title">
                   <!--                <img alt="" src="../../../static/img/index-tip.svg">-->
                   <p style="color: #FF7756">{{ m.theme }}</p>
                 </div>
                 <div class="list3-item-info">
-                  <p class="ellipsis-multiline" style="width: 73%;-webkit-line-clamp: 1;cursor: pointer;" @click="goNoticeDetail(m)">
+                  <p class="ellipsis-multiline" style="width: 73%;-webkit-line-clamp: 1;cursor: pointer;"
+                    @click="goNoticeDetail(m)">
                     <!-- 缂栧彿<span style="color:#3A7BFA;"> SB20240101-001 </span>鐨勮澶囧皢浜�2023-09-09 11:11:11杩囨湡 -->
                     {{ m.content }}
                   </p>
@@ -131,7 +141,9 @@
                 </div>
               </div>
             </scroll-pagination>
-            <div v-if="list.length<1&&!listLoading" style="color:#909399;font-size:14px;text-align: center;margin-top:80px" >鏆傛棤鏁版嵁</div>
+            <div v-if="list.length < 1 && !listLoading"
+              style="color:#909399;font-size:14px;text-align: center;margin-top:80px">鏆傛棤鏁版嵁
+            </div>
           </div>
         </div>
       </el-col>
@@ -142,11 +154,7 @@
           <el-col :span="22" class="search_thing">
             <div class="search_label"><span style="color: red;margin-right: 4px;">*</span>鏃堕棿锛�</div>
             <div class="search_input">
-              <el-date-picker
-                v-model="query.time"
-                format="yyyy-MM-dd HH:mm:ss"
-                placeholder="閫夋嫨鏃ユ湡鏃堕棿"
-                size="small"
+              <el-date-picker v-model="query.time" format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨鏃ユ湡鏃堕棿" size="small"
                 style="width: 100%;" type="datetime" value-format="yyyy-MM-dd HH:mm:ss">
               </el-date-picker>
             </div>
@@ -154,24 +162,23 @@
           <el-col :span="22" class="search_thing">
             <div class="search_label"><span style="color: red;margin-right: 4px;">*</span>鍐呭锛�</div>
             <div class="search_input">
-              <el-input v-model="query.text" :rows="2"
-                        placeholder="璇疯緭鍏ュ唴瀹�" size="small" type="textarea"></el-input>
+              <el-input v-model="query.text" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" size="small" type="textarea"></el-input>
             </div>
           </el-col>
         </el-row>
       </div>
       <span slot="footer" class="dialog-footer">
-				<el-row>
-					<el-button @click="handleCancel">鍙� 娑�</el-button>
-					<el-button :loading="loading" type="primary" @click="submit">纭� 瀹�</el-button>
-				</el-row>
-			</span>
+        <el-row>
+          <el-button @click="handleCancel">鍙� 娑�</el-button>
+          <el-button :loading="loading" type="primary" @click="submit">纭� 瀹�</el-button>
+        </el-row>
+      </span>
     </el-dialog>
   </div>
 </template>
 
 <script>
-import {getYearAndMonthAndDays} from '@/utils/date.js'
+import { getYearAndMonthAndDays } from '@/utils/date.js'
 import ScrollPagination from '@/components/index/scroll-paging.vue'
 export default {
   components: {
@@ -182,35 +189,35 @@
       user: {},
       now: null,
       calendarValue: new Date(),
-      currentIndex:5,
-      dialogVisible:false,
-      query:{
-        time:'',
-        text:''
+      currentIndex: 5,
+      dialogVisible: false,
+      query: {
+        time: '',
+        text: ''
       },
-      loading:false,
-      workLoading:false,
-      workList:[],
-      workDay:[],
-      weekdays:[],
-      listScheduleByMe:[],
-      scheduleLoading:false,
-      list:[],
-      currentPage:1,
+      loading: false,
+      workLoading: false,
+      workList: [],
+      workDay: [],
+      weekdays: [],
+      listScheduleByMe: [],
+      scheduleLoading: false,
+      list: [],
+      currentPage: 1,
       pageSize: 8, // 涓�椤�7鏉�
       total: null,
       listLoading: true, // 缁勪欢loading鐨勫睍绀�,榛樿涓簍rue
       finishLoding: false, // 鍔犺浇瀹屾垚锛屾樉绀哄凡缁忔病鏈夋洿澶氫簡
-      timer:null,
-      keyMap:{},
+      timer: null,
+      keyMap: {},
       getNumberFourTypes: {},
     }
   },
-  watch:{
-    calendarValue(val){
+  watch: {
+    calendarValue(val) {
       this.getScheduleByMe()
     },
-    currentIndex(){
+    currentIndex() {
       this.keyMap = {}
       this.currentPage = 1;
       this.list = [];
@@ -230,7 +237,7 @@
     this.list = [];
     this.getList();
     this.getScheduleByMe()
-    this.timer&&clearInterval(this.timer)
+    this.timer && clearInterval(this.timer)
     this.timer = setInterval(() => {
       this.init();
       this.currentPage = 1;
@@ -238,16 +245,16 @@
       this.list = [];
       this.getList();
       this.getScheduleByMe()
-    },1000*60*10)
+    }, 1000 * 60 * 10)
     this.getNumberFourTypesFun()
   },
   methods: {
-    changeState (val) {
+    changeState(val) {
       if (val == 0) {
         return '寰呮楠�'
       }
     },
-    currentIndexChange () {
+    currentIndexChange() {
       this.keyMap = {}
       this.currentPage = 1;
       this.list = [];
@@ -258,35 +265,35 @@
         this.getNumberFourTypes = res.data
       })
     },
-    getList(){
+    getList() {
       const key = `_${this.currentPage}`
       const value = this.keyMap[key]
       // 濡傛灉value瀛樺湪锛岃〃绀虹紦瀛樻湁鍊硷紝閭d箞闃绘璇锋眰
-      if(value) {
+      if (value) {
         return
       }
       // value涓嶅瓨鍦紝琛ㄧず绗竴娆¤姹�,璁剧疆鍗犱綅
       this.keyMap[key] = 'temp'
-      if(this.currentPage==1){
+      if (this.currentPage == 1) {
         this.listLoading = true
       }
-      if(this.list.length==0){
+      if (this.list.length == 0) {
         this.finishLoding = false;
       }
-      this.$axios.get(this.$api.informationNotification.page+'?size='+this.pageSize+'&current='+this.currentPage+'&messageType='+this.currentIndex).then(res => {
-        if(res.code === 201){
+      this.$axios.get(this.$api.informationNotification.page + '?size=' + this.pageSize + '&current=' + this.currentPage + '&messageType=' + this.currentIndex).then(res => {
+        if (res.code === 201) {
           return
         }
         let list = res.data.records;
         this.total = res.data.total;
-        if(list.length==0){
+        if (list.length == 0) {
           this.finishLoding = true;
-        }else{
-          if(list.length<this.pageSize){
+        } else {
+          if (list.length < this.pageSize) {
             this.finishLoding = true;
           }
           this.list = this.list.concat(list)
-          if(this.total==this.list.length){
+          if (this.total == this.list.length) {
             this.finishLoding = true;
           }
           this.currentPage++;
@@ -376,19 +383,19 @@
       // 灏嗗緱鍒扮殑骞存湀鏃ユ牸寮忚浆鎹负鏍囧噯鏃堕棿锛屼笌楗夸簡涔堟椂闂存牸寮忕浉鍚屾墠鑳借仈鍔�
       this.calendarValue = new Date(prevtime);
     },
-    handleCancel(){
+    handleCancel() {
       this.dialogVisible = false;
       this.query = {
-        time:'',
-        text:''
+        time: '',
+        text: ''
       }
     },
-    submit(){
-      if(!this.query.time){
+    submit() {
+      if (!this.query.time) {
         this.$message.error('鏃堕棿鏈~鍐�')
         return
       }
-      if(!this.query.text){
+      if (!this.query.text) {
         this.$message.error('鍐呭鏈~鍐�')
         return
       }
@@ -404,16 +411,16 @@
         this.getScheduleByMe()
       })
     },
-    init(){
+    init() {
       this.workLoading = true;
       this.$axios.get(this.$api.report.calendarWorkByWeek).then(res => {
         if (res.code == 201) return
         this.workLoading = false;
         this.workList = [];
-        for(let i=0;i<7;i++){
+        for (let i = 0; i < 7; i++) {
           this.workList.push(res.data[`work${i}`])
         }
-        this.workDay = res.data.weekDays.map(m=>{
+        this.workDay = res.data.weekDays.map(m => {
           let arr = m.split('-')
           return arr[2]
         })
@@ -428,8 +435,8 @@
         weekdays.push(day);
       }
       weekdays.reverse()
-      weekdays = weekdays.map(m=>{
-        let day =''
+      weekdays = weekdays.map(m => {
+        let day = ''
         switch (m) {
           case 0:
             day = '鏄熸湡澶�'
@@ -457,56 +464,48 @@
       })
       return weekdays;
     },
-    getScheduleByMe(){
+    getScheduleByMe() {
       this.scheduleLoading = true;
       this.$axios.post(this.$api.report.ScheduleByMe, {
-        date:getYearAndMonthAndDays(this.calendarValue)
+        date: getYearAndMonthAndDays(this.calendarValue)
       }).then(res => {
         this.loading = false;
         this.scheduleLoading = false;
         if (res.code == 201) {
           return
         }
-        this.listScheduleByMe = res.data.map(m=>{
-          if(m.scheduleTime){
+        this.listScheduleByMe = res.data.map(m => {
+          if (m.scheduleTime) {
             let time = m.scheduleTime.split(' ')[1].split(':')
             m.scheduleTimes = time[0] + ':' + time[1]
-          }else{
+          } else {
             m.scheduleTimes = ''
           }
           return m
         })
       })
     },
-    goNoticeDetail(row){
-      this.$axios.put(this.$api.informationNotification.triggerModificationStatusToRead+'/'+row.id).then(res => {
+    goNoticeDetail(row) {
+      this.$axios.put(this.$api.informationNotification.triggerModificationStatusToRead + '/' + row.id).then(res => {
         row.num = Math.random(100);
         this.$bus.$emit("change", JSON.stringify(row));
         this.$parent.addTab({
           v: "娑堟伅璇︽儏",
           i: "el-icon-s-tools",
           u: "notice-detail",
-          k:35,
+          k: 35,
           p: "abcd"
-        },29);
+        }, 29);
       })
     },
   },
-  deactivated(){
-    this.timer&&clearInterval(this.timer)
+  deactivated() {
+    this.timer && clearInterval(this.timer)
   }
 }
 </script>
 
 <style scoped lang="scss">
-.index {
-  width: 100%;
-  height: calc(100% - 50px);
-  overflow-y: auto;
-  padding: 20px 10px 10px;
-  background: rgb(245, 247, 251);
-}
-
 .left-1 {
   background-image: url("~@/assets/index_image/index-img1.png");
   background-size: 100% 100%;
@@ -545,14 +544,14 @@
   border-radius: 3px;
 }
 
-.card{
+.card {
   background: #FFFFFF;
   border-radius: 16px;
   width: 100%;
   box-sizing: border-box;
 }
 
-.right-1{
+.right-1 {
   padding: 10px 10px 4px;
   display: flex;
   align-items: center;
@@ -560,64 +559,72 @@
   margin-bottom: 16px;
 }
 
-.right-1-item{
+.right-1-item {
   width: 25%;
   display: flex;
   align-items: center;
   justify-content: center;
 }
 
-.right-1-item .mun{
+.right-1-item .mun {
   margin-left: 6px;
   color: #0166E2;
 }
 
-.right-2{
+.right-2 {
   padding: 13px 14px 8px;
   margin-bottom: 16px;
 }
 
-.right-2-title{
+.right-2-title {
   display: flex;
   align-items: center;
   justify-content: space-between;
 }
 
-.right-2-body{
+.right-2-body {
   width: 100%;
   margin-top: 20px;
   display: flex;
   align-items: flex-start;
   justify-content: space-between;
 }
+
 >>>.el-calendar__header {
   display: none;
 }
->>>.el-calendar__body{
+
+>>>.el-calendar__body {
   padding: 0;
 }
+
 >>>.el-calendar-table:not(.is-range) td.next {
   /*闅愯棌涓嬩釜鏈堢殑鏃ユ湡*/
   display: none;
 }
->>>.el-calendar-day{
+
+>>>.el-calendar-day {
   height: 40px;
 }
->>>.el-calendar-table td{
+
+>>>.el-calendar-table td {
   border: 0;
   font-size: 14px;
 }
->>>.el-calendar-table tr td:first-child{
+
+>>>.el-calendar-table tr td:first-child {
   border-left: 0;
 }
-.control{
+
+.control {
   display: flex;
   align-items: center;
   justify-content: space-between;
   box-sizing: border-box;
   padding: 0px 0 10px;
 }
-.control .el-button{
+
+.control .el-button {
   width: 32px;
   height: 32px;
   border-radius: 8px;
@@ -627,17 +634,20 @@
   color: #0166E2;
   font-size: 20px;
 }
-.list2-item{
+
+.list2-item {
   line-height: 22px;
   display: flex;
   margin-bottom: 12px;
   font-size: 14px;
 }
-.right-3-tab{
+
+.right-3-tab {
   display: flex;
   align-items: center;
 }
-.tab-item{
+
+.tab-item {
   width: 50%;
   box-sizing: border-box;
   text-align: center;
@@ -646,56 +656,68 @@
   background: #F5F7FB;
   color: #333333;
 }
-.tab-item.active{
+
+.tab-item.active {
   background: #fff;
   color: #FF3838;
   padding-left: 16px;
   text-align: left;
 }
-.right-3-list{
+
+.right-3-list {
   padding: 0 12px 8px;
   box-sizing: border-box;
   height: 390px;
   overflow-y: auto;
 }
-.list3-item{
+
+.list3-item {
   padding: 6px 4px;
   margin: 8px 0;
 }
-.list3-item:hover{
-  background: rgba(58, 123, 250,0.05);
+
+.list3-item:hover {
+  background: rgba(58, 123, 250, 0.05);
 }
-.list3-item-title{
+
+.list3-item-title {
   display: flex;
   align-items: flex-start;
   margin-bottom: 10px;
 }
-.list3-item-info{
+
+.list3-item-info {
   display: flex;
   align-items: center;
   justify-content: space-between;
   color: #666666;
   font-size: 14px;
 }
-.left-2{
+
+.left-2 {
   display: grid;
   grid-template-columns: repeat(7, 1fr);
   height: 777px;
 }
-.left-2-item{
+
+.left-2-item {
   border-right: 1px solid #F1F1F1;
   overflow: hidden !important;
 }
-.left-2-item:nth-last-child(1){
+
+.left-2-item:nth-last-child(1) {
   border-right: 0;
 }
-.left-2-item:hover{
-  background: rgba(58,123,250,0.05);
+
+.left-2-item:hover {
+  background: rgba(58, 123, 250, 0.05);
 }
-.left-2-item:hover .left-item-title span{
+
+.left-2-item:hover .left-item-title span {
   color: #3A7BFA !important;
 }
-.left-item-title{
+
+.left-item-title {
   border-bottom: 1px solid #F1F1F1;
   display: flex;
   flex-direction: column;
@@ -703,35 +725,42 @@
   justify-content: center;
   padding: 20px 0;
 }
-.left-item-body{
+
+.left-item-body {
   box-sizing: border-box;
   padding: 5px;
   height: 693px;
   overflow-y: auto;
 }
-.body-item{
+
+.body-item {
   background: #70A090;
   border-radius: 16px;
   overflow: hidden;
   margin-bottom: 8px;
 }
-.body-item.color0{
+
+.body-item.color0 {
   background: #70A090;
 }
-.body-item.color1{
+
+.body-item.color1 {
   background: #EBD476;
 }
-.body-item.color2{
+
+.body-item.color2 {
   background: #FF3838;
 }
-.body-item>div{
+
+.body-item>div {
   height: calc(100% - 16px);
   margin-top: 16px;
-  background: rgba(255, 255, 255,0.9);
+  background: rgba(255, 255, 255, 0.9);
   padding: 8px 8px 16px;
   display: flex;
   flex-direction: column;
 }
+
 .search_thing {
   height: 50px;
   margin-bottom: 26px;
@@ -743,7 +772,8 @@
   text-align: left;
   margin-bottom: 10px;
 }
->>>.el-calendar-day span{
+
+>>>.el-calendar-day span {
   display: inline-block;
   width: 30px;
   height: 30px;
@@ -751,26 +781,33 @@
   text-align: center;
   border-radius: 4px;
 }
->>>.is-selected{
+
+>>>.is-selected {
   background: transparent !important;
 }
->>>.is-selected .el-calendar-day{
+
+>>>.is-selected .el-calendar-day {
   background: transparent !important;
 }
->>>.is-selected .el-calendar-day span{
+
+>>>.is-selected .el-calendar-day span {
   background: #3A7BFA !important;
   color: #fff !important;
 }
->>>.el-calendar-day:hover{
+
+>>>.el-calendar-day:hover {
   background: transparent;
 }
->>>.el-calendar-day span:hover{
+
+>>>.el-calendar-day span:hover {
   background: #3A7BFA !important;
   color: #fff !important;
 }
+
 .body-item-name {
   display: inline-block;
-  height: 22px;width: 60px;
+  height: 22px;
+  width: 60px;
   border-radius: 10px;
   line-height: 22px;
   text-align: center;
@@ -778,10 +815,12 @@
   color: #fff;
   font-size: 14px
 }
+
 .body-item-insState {
   margin-left: 2px;
   display: inline-block;
-  height: 22px;width: 60px;
+  height: 22px;
+  width: 60px;
   border-radius: 10px;
   line-height: 22px;
   text-align: center;

--
Gitblit v1.9.3