From 988558aaa309068fd393cc654be537434b0a15ea Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: 星期四, 11 八月 2022 19:11:18 +0800
Subject: [PATCH] 修改

---
 src/views/doublePrevent/riskLevel/event/components/safetyRiskEventDialog.vue                                |    4 
 src/views/accidentManagementSystem/workInjuryDeclaration/index.vue                                          |  763 ++--
 src/views/contingencyManagement/panManagement/component/approval.vue                                        |  169 
 src/views/contingencyManagement/contingency/component/openAdd.vue                                           |   70 
 src/views/intellectInspect/inspectBasic/discriminate/index.vue                                              |   29 
 src/views/goalManagement/Goalsummary/index.vue                                                              |   20 
 src/views/loginPage/loginPage.vue                                                                           |  282 
 src/views/doublePrevent/riskCheckManage/checkTaskManage/checkWork/components/workDialog.vue                 |   22 
 src/views/specialWorkSystem/workApplyManage/workTicket/components/tempElectForm.vue                         |  153 
 src/layout/navBars/breadcrumb/user.vue                                                                      |  173 
 src/views/specialWorkSystem/workApplyManage/workTicket/components/highWorkForm.vue                          |  153 
 src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/components/reportDialog.vue           |   32 
 src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue                   |   22 
 src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue                             |   15 
 .env.development                                                                                            |   13 
 src/views/specialWorkSystem/workApplyManage/workTicket/components/cutLineForm.vue                           |  220 +
 src/views/accidentManagementSystem/accidentReport/component/openAdd.vue                                     |   80 
 src/views/facilityManagement/ProductionEquipment/index.vue                                                  |   36 
 src/components/equipmentDailog/repairDailog.vue                                                             |  114 
 src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue               |    6 
 src/views/specialWorkSystem/approveProcessManage/examineTemplate/index.vue                                  |  367 ++
 src/components/equipmentDailog/Dailog.vue                                                                   |  105 
 src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue         |    4 
 src/views/goalManagement/targetDecompositionMonth/index.vue                                                 |    2 
 src/views/accidentManagementSystem/accidentReport/index.vue                                                 |   17 
 src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue                              |   14 
 src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue         |   10 
 src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue                                         |   77 
 src/components/checkTemplate/index.vue                                                                      |  434 +-
 src/views/goalManagement/safetyAssessment/component/Dailog.vue                                              |   45 
 src/views/contingencyManagement/emergencyResources/emergencySupplies/component/maintain.vue                 |    1 
 src/views/facilityManagement/InstrumentationInformation/index.vue                                           |   42 
 src/components/equipmentDailog/maintenanceDailog.vue                                                        |   87 
 src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/components/checkDialog.vue             |   23 
 src/views/specialWorkSystem/workApplyManage/workTicket/components/limitedSpaceForm.vue                      |  175 +
 src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue             |   12 
 src/views/specialWorkSystem/workApplyManage/workTicket/components/hangLoadForm.vue                          |  169 +
 src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/index.vue                |   16 
 src/views/facilityManagement/deviceType/component/Dailog.vue                                                |   20 
 src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue                                          |   10 
 src/views/contingencyManagement/panManagement/component/abolishLibrary.vue                                  |   11 
 src/views/intellectInspect/inspectBasic/inspectPoint/index.vue                                              |   16 
 src/views/specialWorkSystem/workApplyManage/workTicket/components/dirtWorkForm.vue                          |  221 +
 src/views/contingencyManagement/panManagement/component/approvalProcess.vue                                 |  316 -
 src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/index.vue                             |   37 
 src/views/contingencyManagement/emergencyResources/emergencySupplies/component/inspect.vue                  |    1 
 src/views/intellectInspect/inspectBasic/inspectTarget/components/inspectTargetDialog.vue                    |   14 
 src/views/doublePrevent/riskLevel/riskCheckUnit/index.vue                                                   |   17 
 src/views/intellectInspect/inspectBasic/facility/index.vue                                                  |   16 
 src/views/goalManagement/targetDecompositionYear/component/DailogAdd.vue                                    |   27 
 src/views/safeKnowledge/index.vue                                                                           |    0 
 src/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue                         |   10 
 src/views/contingencyManagement/contingency/index.vue                                                       |   31 
 src/views/doublePrevent/riskLevel/device/components/productionDeviceDialog.vue                              |    8 
 src/views/intellectInspect/inspectBasic/inspectTarget/index.vue                                             |   14 
 src/components/equipmentDailog/detectDailog.vue                                                             |   94 
 src/views/facilityManagement/safetyEquipment/index.vue                                                      |   65 
 src/views/goalManagement/performanceAppraisal/component/DailogAq.vue                                        |    8 
 src/components/equipmentDailog/standardDailog.vue                                                           |   72 
 src/components/DailogSearchUser/index.vue                                                                   |   21 
 src/components/iconSelector/index.vue                                                                       |  461 +-
 src/views/doublePrevent/riskLevel/event/index.vue                                                           |   13 
 src/views/goalManagement/Incentivestandard/component/DailogAdd.vue                                          |    6 
 src/views/doublePrevent/riskLevel/action/components/riskControlMeasureDialog.vue                            |   20 
 src/views/specialWorkSystem/workApplyManage/workTicket/components/fireWorkForm.vue                          |  164 +
 src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue                              |   13 
 src/views/contingencyManagement/panManagement/index.vue                                                     |   22 
 src/views/doublePrevent/riskCheckManage/checkTaskManage/checkTask/components/recordDialog.vue               |    2 
 src/views/goalManagement/safetyAssessment/component/DailogAdd.vue                                           |  249 +
 src/views/specialWorkSystem/workApplyManage/workTicket/components/blindPanelForm.vue                        |  354 ++
 src/components/equipmentDailog/categoryDailog.vue                                                           |  122 
 src/views/goalManagement/IncentiveRecording/index.vue                                                       |   13 
 src/components/equipmentDailog/DailogS.vue                                                                  |  215 
 src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/component/openAdd.vue    |    4 
 src/views/goalManagement/targetDecompositionYear/index.vue                                                  |    2 
 .env.production                                                                                             |    4 
 src/api/goalManagement/index.ts                                                                             |    2 
 src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue                              |    7 
 src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue                     |   15 
 src/views/facilityManagement/keyEquipment/index.vue                                                         |  811 ++--
 src/views/contingencyManagement/panManagement/component/openAdd.vue                                         |  163 
 src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue                                      |   74 
 src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue |  118 
 src/views/goalManagement/performanceAppraisal/index.vue                                                     |   10 
 src/views/goalManagement/targetDecompositionYear/component/Dailog.vue                                       |   52 
 src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue                            |   30 
 src/views/specialWorkSystem/approveProcessManage/templateSetting/index.vue                                  |  293 +
 src/views/specialWorkSystem/workApplyManage/workTicket/index.vue                                            |  671 ++++
 src/views/doublePrevent/riskLevel/unit/index.vue                                                            |   13 
 src/views/specialWorkSystem/workApplyManage/myJobApply/index.vue                                            |  362 ++
 src/views/doublePrevent/riskLevel/action/index.vue                                                          |   15 
 src/views/contingencyManagement/emergencyPlanStartRecord/index.vue                                          |    3 
 .env                                                                                                        |    2 
 src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/index.vue                   |    8 
 src/views/contingencyManagement/emergencyPlanStartRecord/component/selectEmergencyPlan.vue                  |    6 
 src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/component/openAdd.vue       |    4 
 src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue                                       |    2 
 src/views/doublePrevent/riskLevel/unit/components/safetyRiskAnalyseUnitDialog.vue                           |   10 
 /dev/null                                                                                                   |   39 
 src/views/doublePrevent/riskLevel/device/index.vue                                                          |   13 
 src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue                                    |   17 
 src/views/goalManagement/targetSettings/component/dailogAdd.vue                                             |    2 
 src/views/doublePrevent/riskLevel/riskCheckUnit/components/checkUnitDialog.vue                              |   20 
 src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue                                      |   74 
 104 files changed, 6,788 insertions(+), 2,717 deletions(-)

diff --git a/.env b/.env
index e0dead4..5cf9abf 100644
--- a/.env
+++ b/.env
@@ -5,6 +5,6 @@
 VITE_OPEN = false
 
 # public path 配置线上环境路径(打包)、本地通过 http-server 访问时,请置空即可
-#VITE_PUBLIC_PATH = 'http://121.239.169.27:6006'
 VITE_PUBLIC_PATH = 'http://121.239.169.27:6006'
 #VITE_PUBLIC_PATH = 'http://192.168.0.179:6006'
+#VITE_PUBLIC_PATH = 'http://192.168.0.52:6006'
diff --git a/.env.development b/.env.development
index 23bf9f2..de61f1c 100644
--- a/.env.development
+++ b/.env.development
@@ -1,12 +1,17 @@
 # 本地环境
 ENV = 'development'
 
-# 本地环境接口地址
 #VITE_API_URL = 'http://192.168.0.35:8008'
+#李宇飞接口地址
 #VITE_API_URL = 'http://192.168.0.29:8008'
-VITE_API_URL = 'http://192.168.0.29:8008'
-#VITE_API_URL = 'http://192.168.0.69:8008'
+#黄振接口地址
+VITE_API_URL = 'http://192.168.0.69:8008'
+#戚会山接口地址
 #VITE_API_URL = 'http://192.168.0.52:8011/safeplatform'
-#VITE_API_URL = 'http://121.239.169.27:16006/safeplatform'
+#本地测试接口地址
 #VITE_API_URL_OUT = 'http://192.168.0.52:8011/safeplatform-out'
+#本地外包测试接口地址
+#VITE_API_URL = 'http://121.239.169.27:16006/safeplatform'
+#线上正式环境接口地址
 VITE_API_URL_OUT = 'http://121.239.169.27:16006/safeplatform-out'
+#线上正式环境外包接口地址
diff --git a/.env.production b/.env.production
index ead0942..73165f4 100644
--- a/.env.production
+++ b/.env.production
@@ -2,7 +2,7 @@
 ENV = 'production'
 
 # 线上环境接口地址
-#VITE_API_URL = 'http://121.239.169.27:16008/safeplatform'
-#VITE_API_URL_OUT = 'http://121.239.169.27:16008/safeplatform-out'
 VITE_API_URL = 'http://121.239.169.27:16006/safeplatform'
 VITE_API_URL_OUT = 'http://121.239.169.27:16006/safeplatform-out'
+#VITE_API_URL = 'http://192.168.0.52:8011/safeplatform'
+#VITE_API_URL_OUT = 'http://192.168.0.52:8011/safeplatform-out'
diff --git a/src/api/goalManagement/index.ts b/src/api/goalManagement/index.ts
index 412f1a7..45e866b 100644
--- a/src/api/goalManagement/index.ts
+++ b/src/api/goalManagement/index.ts
@@ -265,7 +265,7 @@
         // 人员
         getManName: (params: any) => {
             return request({
-                url: `/account/dep/list?depId=${params}`,
+                url: import.meta.env.VITE_API_URL_OUT + `/account/dep/list?depId=${params}`,
                 method: 'get'
             });
         }
diff --git a/src/components/DailogSearchUser/index.vue b/src/components/DailogSearchUser/index.vue
index e7f8eb1..7345d2e 100644
--- a/src/components/DailogSearchUser/index.vue
+++ b/src/components/DailogSearchUser/index.vue
@@ -13,20 +13,20 @@
 			<el-col :span="14" style="padding: 20px">
 				<el-form ref="ruleFormRef" :model="ruleForm" status-icon>
 					<el-row>
-						<el-col :span="10" :offset="1">
+						<!-- <el-col :span="10" :offset="1">
 							<el-form-item size="default">
 								<el-input v-model="ruleForm.pass" placeholder="登录名" />
 							</el-form-item>
-						</el-col>
+						</el-col> -->
 						<el-col :span="8" :offset="1">
 							<el-form-item>
-								<el-button size="default" type="primary" >查询</el-button>
-								<el-button size="default">重置</el-button>
+								<!-- <el-button size="default" type="primary" >查询</el-button> -->
+								<el-button size="default" @click="clear">清除选择</el-button>
 							</el-form-item>
 						</el-col>
 					</el-row>
 				</el-form>
-				<el-table :data="tableData" style="width: 100%; margin-top: 20px"  @selection-change="handleSelectionChange">
+				<el-table :data="tableData" style="width: 100%; margin-top: 20px" ref="clearAll"  @selection-change="handleSelectionChange">
 				<el-table-column type="selection" width="55" v-if="types==0"/>
 					<el-table-column align="center"  v-if="types!=0">
 						<template #default="scope">
@@ -164,7 +164,7 @@
 		};
 		const handleSelectionChange = (val:any) => {
              dynamicTags.value=val
-}
+        }
 		const types=ref()
 		// 开启弹窗
 		const dialogVisible = ref(false);
@@ -189,8 +189,17 @@
 			}
 
 			dialogVisible.value = false;
+			clear()
 		};
+		const clearAll=ref()
+		const clear=()=>{
+           dynamicTags.value=[]
+		   radio1.value=""
+		  clearAll.value.clearSelection()
+		}
 		return {
+			clear,
+			clearAll,
 			total,
 			types,
 			filterText,
diff --git a/src/components/checkTemplate/index.vue b/src/components/checkTemplate/index.vue
index 24f6c25..7dcd7eb 100644
--- a/src/components/checkTemplate/index.vue
+++ b/src/components/checkTemplate/index.vue
@@ -1,250 +1,230 @@
 <template>
-  <el-dialog v-model="dialogVisible" title="选择检查模板" width="900px" draggable :fullscreen="full">
-    <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
-    <el-row>
-      <el-col :span="18">
-        <el-row>
-          <el-col :span="24">
-            <el-form ref="ruleFormRef" :inline="true" status-icon>
-              <el-form-item>
-                <el-input size="default" v-model="listQuery.searchParams.id" placeholder="id"  style="max-width: 215px;"/>
-              </el-form-item>
-              <el-form-item>
-                <el-input size="default" v-model="listQuery.searchParams.teamName" placeholder="队伍名称"  style="max-width: 215px;padding: 0 12px;"/>
-              </el-form-item>
-              <el-form-item>
-                <el-button size="default" type="primary" @click="onSubmit">查询</el-button>
-                <el-button size="default" @click="submitReset">重置</el-button>
-              </el-form-item>
-            </el-form>
-          </el-col>
-          <el-col :span="24">
-            <el-button size="default" :icon="Delete" style="margin-top: 15px;" @click="submitReset">清除选择</el-button>
-          </el-col>
-        </el-row>
-        <el-table
-            :data="tableData"
-            ref="multipleTableRef"
-            style="width: 100%;margin-top:20px"
-            @selection-change="handleSelectionChange"
-        >
-          <el-table-column type="selection" width="55" v-if="types==0">
-            <template #default="scope" v-if="types!=0">
-              <el-radio-group v-model="radio1">
-                <el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio>
-              </el-radio-group>
-            </template>
-          </el-table-column>
-          <el-table-column align="center" prop="id" label="id" />
-          <el-table-column align="center" prop="teamName" label="队伍名称"/>
-        </el-table>
-        <div class="pages">
-          <el-pagination
-              v-model:currentPage="pageIndex"
-              v-model:page-size="pageSize"
-              :page-sizes="[10, 20, 30, 40]"
-              layout="total, sizes, prev, pager, next, jumper"
-              :total="total"
-              @size-change="handleSizeChange"
-              @current-change="handleCurrentChange"
-          />
-        </div>
-      </el-col>
-      <el-col :span="6" style="padding-left: 15px">
-        <div v-if="dynamicTags[0] == '' ? false : true">
-          <el-tag
-              v-for="tag in dynamicTags"
-              :key="tag"
-              class="mx-1"
-              style="margin: 5px"
-              closable
-              :disable-transitions="false"
-              @close="handleClose(tag)"
-          >
-            {{ tag.teamName }}
-          </el-tag>
-        </div>
-      </el-col>
-    </el-row>
-    <template #footer>
+	<el-dialog v-model="dialogVisible" title="选择应急队伍" width="900px" draggable :fullscreen="full">
+		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
+		<el-row>
+			<el-col :span="18">
+				<el-row>
+					<el-col :span="24">
+						<el-form ref="ruleFormRef" :inline="true" status-icon>
+							<el-form-item>
+								<el-input size="default" v-model="listQuery.searchParams.teamName" placeholder="队伍名称" style="max-width: 215px; padding: 0 12px" />
+							</el-form-item>
+							<el-form-item>
+								<el-button size="default" type="primary" @click="onSubmit">查询</el-button>
+								<el-button size="default" @click="submitReset">重置</el-button>
+							</el-form-item>
+						</el-form>
+					</el-col>
+					<el-col :span="24">
+						<el-button size="default" :icon="Delete" style="margin-top: 15px" @click="submitReset">清除选择</el-button>
+					</el-col>
+				</el-row>
+				<el-table :data="tableData" ref="multipleTableRef" style="width: 100%; margin-top: 20px" @selection-change="handleSelectionChange">
+					<el-table-column type="selection" width="55" v-if="types == 0">
+						<template #default="scope" v-if="types != 0">
+							<el-radio-group v-model="radio1">
+								<el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio>
+							</el-radio-group>
+						</template>
+					</el-table-column>
+					<el-table-column align="center" prop="id" label="id" />
+					<el-table-column align="center" prop="teamName" label="队伍名称" />
+				</el-table>
+				<div class="pages">
+					<el-pagination
+						v-model:currentPage="pageIndex"
+						v-model:page-size="pageSize"
+						:page-sizes="[10, 20, 30, 40]"
+						layout="total, sizes, prev, pager, next, jumper"
+						:total="total"
+						@size-change="handleSizeChange"
+						@current-change="handleCurrentChange"
+					/>
+				</div>
+			</el-col>
+			<el-col :span="6" style="padding-left: 15px">
+				<div v-if="dynamicTags[0] == '' ? false : true">
+					<el-tag
+						v-for="tag in dynamicTags"
+						:key="tag"
+						class="mx-1"
+						style="margin: 5px"
+						closable
+						:disable-transitions="false"
+						@close="handleClose(tag)"
+					>
+						{{ tag.teamName }}
+					</el-tag>
+				</div>
+			</el-col>
+		</el-row>
+		<template #footer>
 			<span class="dialog-footer">
 				<el-button @click="dialogVisible = false" size="default">关闭</el-button>
 				<el-button type="primary" @click="submitForm" size="default">确定</el-button>
 			</span>
-    </template>
-  </el-dialog>
+		</template>
+	</el-dialog>
 </template>
 <script lang="ts">
-import {
-  defineComponent,
-  reactive,
-  ref,
-  onMounted,
-} from 'vue';
-import {
-  Delete,
-  FullScreen
-} from '@element-plus/icons-vue';
-import {
-  ElMessage,
-} from 'element-plus';
-import {contingencyApi} from "/@/api/contingencyManagement/contingency";
+import { defineComponent, reactive, ref, onMounted } from 'vue';
+import { Delete, FullScreen } from '@element-plus/icons-vue';
+import { ElMessage } from 'element-plus';
+import { contingencyApi } from '/@/api/contingencyManagement/contingency';
 
 export default defineComponent({
-  setup(props, { emit }) {
-    const types=ref()
-    const dialogVisible = ref<boolean>(false);
-    const openDailog = (type:any) => {
-      types.value=type
-      dialogVisible.value = true;
-      // onSubmit();
-    };
-    // 搜索条件
-    const listQuery = reactive({
-      pageIndex: 1,
-      pageSize: 10,
-      searchParams: {
-        teamName: "",
-        id: "",
-      }
-    });
-    // 列表数据请求
-    const onSubmit = async () => {
-      let res = await contingencyApi().getTeamManagementList(listQuery)
-      if(res.data.code === '200'){
-        tableData.value = res.data.data;
-        pageIndex.value = res.data.pageIndex;
-        pageSize.value = res.data.pageSize;
-        total.value = res.data.total;
-      }else{
-        ElMessage({
-          showClose: true,
-          type:'error',
-          message:res.data.msg
-        })
-      }
-    }
-    const submitForm = () => {
-      if(types.value==0){
-        emit('SearchUser',dynamicTags.value,types.value);
-      }
-      else {
-        emit('SearchUser',dynamicTags.value[0],types.value);
-      }
-      dialogVisible.value = false;
-    };
-    const handleSelectionChange = (val:any) => {
-      dynamicTags.value=val
-    }
-    // 重置
-    const submitReset = () => {
-      listQuery.searchParams.teamName = '';
-      listQuery.searchParams.id = '';
-      radio1.value=""
-      dynamicTags.value[0]=""
-      onSubmit();
-    };
-    // 表格
-    const tableData = ref();
-    // 分页
-    const pageIndex = ref();
-    const pageSize = ref();
-    const total = ref();
-    const handleSizeChange = (val: number) => {
-      listQuery.pageSize = val;
-      onSubmit();
-    };
-    const handleCurrentChange = (val: number) => {
-      listQuery.pageIndex = val;
-      onSubmit();
-    }
-    // 右方点击添加后显示标签
-    const dynamicTags = ref(['']);
-    const handleClose = (tag: string) => {
-      dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
-      radio1.value = '';
-    };
-    const radio1 = ref('');
-    const radio = (event: any) => {
-      console.log(event)
-      dynamicTags.value[0] = event;
-    };
-    onMounted(() => {
-      onSubmit();
-    });
-    //全屏
-    const full = ref(false);
-    const toggleFullscreen = () => {
-      if (full.value == false) {
-        full.value = true;
-      } else {
-        full.value = false;
-      }
-    };
-    return {
-      dialogVisible,
-      openDailog,
-      tableData,
-      pageSize,
-      pageIndex,
-      handleSizeChange,
-      handleCurrentChange,
-      dynamicTags,
-      handleClose,
-      Delete,
-      toggleFullscreen,
-      FullScreen,
-      full,
-      onSubmit,
-      listQuery,
-      submitReset,
-      total,
-      radio,
-      radio1,
-      submitForm,
-      types,
-      handleSelectionChange,
-    };
-  },
+	setup(props, { emit }) {
+		const types = ref();
+		const dialogVisible = ref<boolean>(false);
+		const openDailog = (type: any) => {
+			types.value = type;
+			dialogVisible.value = true;
+			// onSubmit();
+		};
+		// 搜索条件
+		const listQuery = reactive({
+			pageIndex: 1,
+			pageSize: 10,
+			searchParams: {
+				teamName: '',
+			},
+		});
+		// 列表数据请求
+		const onSubmit = async () => {
+			let res = await contingencyApi().getTeamManagementList(listQuery);
+			if (res.data.code === '200') {
+				tableData.value = res.data.data;
+				pageIndex.value = res.data.pageIndex;
+				pageSize.value = res.data.pageSize;
+				total.value = res.data.total;
+			} else {
+				ElMessage({
+					showClose: true,
+					type: 'error',
+					message: res.data.msg,
+				});
+			}
+		};
+		const submitForm = () => {
+			if (types.value == 0) {
+				emit('SearchUser', dynamicTags.value, types.value);
+			} else {
+				emit('SearchUser', dynamicTags.value[0], types.value);
+			}
+			dialogVisible.value = false;
+		};
+		const handleSelectionChange = (val: any) => {
+			dynamicTags.value = val;
+		};
+		// 重置
+		const submitReset = () => {
+			listQuery.searchParams.teamName = '';
+			listQuery.searchParams.id = '';
+			radio1.value = '';
+			dynamicTags.value[0] = '';
+			onSubmit();
+		};
+		// 表格
+		const tableData = ref();
+		// 分页
+		const pageIndex = ref();
+		const pageSize = ref();
+		const total = ref();
+		const handleSizeChange = (val: number) => {
+			listQuery.pageSize = val;
+			onSubmit();
+		};
+		const handleCurrentChange = (val: number) => {
+			listQuery.pageIndex = val;
+			onSubmit();
+		};
+		// 右方点击添加后显示标签
+		const dynamicTags = ref(['']);
+		const handleClose = (tag: string) => {
+			dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
+			radio1.value = '';
+		};
+		const radio1 = ref('');
+		const radio = (event: any) => {
+			console.log(event);
+			dynamicTags.value[0] = event;
+		};
+		onMounted(() => {
+			onSubmit();
+		});
+		//全屏
+		const full = ref(false);
+		const toggleFullscreen = () => {
+			if (full.value == false) {
+				full.value = true;
+			} else {
+				full.value = false;
+			}
+		};
+		return {
+			dialogVisible,
+			openDailog,
+			tableData,
+			pageSize,
+			pageIndex,
+			handleSizeChange,
+			handleCurrentChange,
+			dynamicTags,
+			handleClose,
+			Delete,
+			toggleFullscreen,
+			FullScreen,
+			full,
+			onSubmit,
+			listQuery,
+			submitReset,
+			total,
+			radio,
+			radio1,
+			submitForm,
+			types,
+			handleSelectionChange,
+		};
+	},
 });
 </script>
 <style scoped>
-.el-form--inline .el-form-item{
-  margin-bottom: 0;
-  margin-right: 0;
+.el-form--inline .el-form-item {
+	margin-bottom: 0;
+	margin-right: 0;
 }
 /*分页*/
-  .pages{
-    /*display: flex;*/
-    /*justify-content: flex-end;*/
-    margin-top: 15px;
-  }
+.pages {
+	/*display: flex;*/
+	/*justify-content: flex-end;*/
+	margin-top: 15px;
+}
 ::v-deep .el-pagination .el-pager li {
-  margin: 0 5px;
-  background-color: #f4f4f5;
-  color: #606266;
-  min-width: 30px;
-  border-radius: 2px;
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
 }
 ::v-deep .el-pagination .el-pager li.is-active {
-  background-color: #409eff;
-  color: #fff;
+	background-color: #409eff;
+	color: #fff;
 }
 ::v-deep .el-pagination .btn-prev {
-  margin: 0 5px;
-  background-color: #f4f4f5;
-  color: #606266;
-  min-width: 30px;
-  border-radius: 2px;
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
 }
-::v-deep .el-pagination button:disabled{
-  color: #c0c4cc;
+::v-deep .el-pagination button:disabled {
+	color: #c0c4cc;
 }
-::v-deep .el-pagination .btn-next{
-  margin: 0 5px;
-  background-color: #f4f4f5;
-  color: #606266;
-  min-width: 30px;
-  border-radius: 2px;
+::v-deep .el-pagination .btn-next {
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
 }
 </style>
diff --git a/src/components/equipmentDailog/Dailog.vue b/src/components/equipmentDailog/Dailog.vue
index f56333f..c75400c 100644
--- a/src/components/equipmentDailog/Dailog.vue
+++ b/src/components/equipmentDailog/Dailog.vue
@@ -6,7 +6,7 @@
 				<el-input v-model="form.qName" placeholder="请填写装置设施名称" />
 			</el-form-item>
 			<el-form-item label="装置设施位号" size="default" prop="positionNum">
-				<el-input v-model="form.positionNum" placeholder="请填写装置设施位号" />
+				<el-input disabled v-model="form.positionNum" placeholder="请填写装置设施位号" />
 			</el-form-item>
 			<el-form-item label="装置设施用途" size="default" prop="qUsage">
 				<el-input v-model="form.qUsage" placeholder="请填写装置设施用途" />
@@ -14,20 +14,20 @@
 			<el-form-item label="装置设施型号" size="default" prop="model">
 				<el-input v-model="form.model" placeholder="请填写装置设施型号" />
 			</el-form-item>
-			<el-form-item label="类型/类别外键" size="default" prop="equipmentTypeId">
-				<el-input v-model="form.equipmentTypeId" placeholder="请选择">
+			<el-form-item label="类型/类别外键" size="default" prop="equipmentTypeName">
+				<el-input v-model="form.equipmentTypeName" placeholder="请选择">
 					<template #append>
 						<el-button :icon="Search" @click="opencategory"></el-button>
 					</template>
 				</el-input>
 			</el-form-item>
 			<!-- <el-form-item label="区域名称" size="default">
-				<el-input v-model="form.name" placeholder="请选择">
-					<template #append>
-						<el-button :icon="Search" @click="openRegion"></el-button>
-					</template>
-				</el-input>
-			</el-form-item> -->
+            <el-input v-model="form.name" placeholder="请选择">
+              <template #append>
+                <el-button :icon="Search" @click="openRegion"></el-button>
+              </template>
+            </el-input>
+          </el-form-item> -->
 			<el-form-item label="单位部门" size="default" prop="departmentId">
 				<el-tree-select v-model="form.departmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
 			</el-form-item>
@@ -35,7 +35,7 @@
 				<el-input v-model="form.setPart" placeholder="请填写设置部位" />
 			</el-form-item>
 			<el-form-item label="生产日期" size="default" prop="produceTime">
-				<el-date-picker v-model="form.produceTime" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+				<el-date-picker v-model="form.produceTime" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="使用期限(天)" size="default" prop="useEndDay">
 				<el-input v-model="form.useEndDay" placeholder="请填写使用期限" />
@@ -44,11 +44,11 @@
 				<el-select v-model="form.lifeCycle" placeholder="请选择" style="width: 100%">
 					<el-option label="已投用" :value="1" />
 					<el-option label="库存中" :value="2" />
-					<el-option label="报废"   :value="3" />
+					<el-option label="报废" :value="3" />
 				</el-select>
 			</el-form-item>
 			<el-form-item label="投用日期" size="default" prop="useDate">
-				<el-date-picker v-model="form.useDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+				<el-date-picker v-model="form.useDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="维修状态" size="default" prop="repairStatus">
 				<el-select v-model="form.repairStatus" placeholder="请选择" style="width: 100%">
@@ -68,31 +68,33 @@
 				<el-date-picker
 					v-model="form.previousCheckDate"
 					format="YYYY-MM-DD HH:mm:ss"
+					value-format="YYYY-MM-DD HH:mm:ss"
 					type="datetime"
 					placeholder="选择日期时间"
 					style="width: 100%"
 				/>
 			</el-form-item>
 			<el-form-item label="上次检测日期" size="default" prop="previousTestDate">
-				<el-date-picker v-model="form.previousTestDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+				<el-date-picker v-model="form.previousTestDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="上次保养日期" size="default" prop="previousTakecareDate">
 				<el-date-picker
 					v-model="form.previousTakecareDate"
 					format="YYYY-MM-DD HH:mm:ss"
+					value-format="YYYY-MM-DD HH:mm:ss"
 					type="datetime"
 					placeholder="选择日期时间"
 					style="width: 100%"
 				/>
 			</el-form-item>
 			<el-form-item label="下次检查日期" size="default" prop="nextCheckDate">
-				<el-date-picker v-model="form.nextCheckDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+				<el-date-picker v-model="form.nextCheckDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="下次检测日期" size="default" prop="nextTestDate">
-				<el-date-picker v-model="form.nextTestDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+				<el-date-picker v-model="form.nextTestDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="下次保养日期" size="default" prop="nextTakecareDate">
-				<el-date-picker v-model="form.nextTakecareDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+				<el-date-picker v-model="form.nextTakecareDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="负责人" size="default" prop="leadingPersonName">
 				<el-input v-model="form.leadingPersonName" placeholder="请选择">
@@ -169,7 +171,7 @@
 				<el-input v-model="form.afterStopStep" placeholder="请填写停用后措施" />
 			</el-form-item>
 			<el-form-item label="实际停用日期" size="default" prop="actualStopDate">
-				<el-date-picker v-model="form.actualStopDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+				<el-date-picker v-model="form.actualStopDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="停用提交人" size="default" prop="stopSubmitPersonName">
 				<el-input v-model="form.stopSubmitPersonName" placeholder="请选择">
@@ -179,7 +181,7 @@
 				</el-input>
 			</el-form-item>
 			<el-form-item label="停用提交日期" size="default" prop="stopSubmitDate">
-				<el-date-picker v-model="form.stopSubmitDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+				<el-date-picker v-model="form.stopSubmitDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 			</el-form-item>
 			<el-form-item label="恢复理由" size="default" prop="recoveryReason">
 				<el-input v-model="form.recoveryReason" placeholder="请填写恢复理由" />
@@ -188,6 +190,7 @@
 				<el-date-picker
 					v-model="form.recoverySubmitDate"
 					format="YYYY-MM-DD HH:mm:ss"
+					value-format="YYYY-MM-DD HH:mm:ss"
 					type="datetime"
 					placeholder="选择日期时间"
 					style="width: 100%"
@@ -197,6 +200,7 @@
 				<el-date-picker
 					v-model="form.actualRecoveryDate"
 					format="YYYY-MM-DD HH:mm:ss"
+					value-format="YYYY-MM-DD HH:mm:ss"
 					type="datetime"
 					placeholder="选择日期时间"
 					style="width: 100%"
@@ -209,6 +213,7 @@
 				<el-date-picker
 					v-model="form.destorySubmitDate"
 					format="YYYY-MM-DD HH:mm:ss"
+					value-format="YYYY-MM-DD HH:mm:ss"
 					type="datetime"
 					placeholder="选择日期时间"
 					style="width: 100%"
@@ -218,6 +223,7 @@
 				<el-date-picker
 					v-model="form.actualDestoryDate"
 					format="YYYY-MM-DD HH:mm:ss"
+					value-format="YYYY-MM-DD HH:mm:ss"
 					type="datetime"
 					placeholder="选择日期时间"
 					style="width: 100%"
@@ -231,7 +237,7 @@
 					<el-table-column align="center" prop="takecareMemo" label="保养情况" />
 					<el-table-column align="center" prop="leadingPersonName" label="保养负责人" />
 					<el-table-column align="center" prop="takecareDate" :formatter="timeDate" label="保养日期" />
-					<el-table-column align="center" prop="leadingPersonDepartmentId" label="保养负责人单位" />
+					<el-table-column align="center" prop="leadingPersonDepartmentName" label="保养负责人单位" />
 					<el-table-column align="center" label="操作">
 						<template #default="scope">
 							<el-button link type="primary" @click="openMaintenance('查看', scope.row)" size="small">查看</el-button>
@@ -244,11 +250,16 @@
 			<el-tab-pane label="设备检测" name="second">
 				<el-button type="primary" size="default" :disabled="disabled" @click="openDetect('新增', '')">新增</el-button>
 				<el-table :data="form.testDetailList" style="width: 100%">
-					<el-table-column align="center" prop="testPersonId" label="检测人" />
+					<el-table-column align="center" prop="testPersonName" label="检测人" />
 					<el-table-column align="center" prop="testDate" :formatter="timeDate" label="检测日期" />
-					<el-table-column align="center" prop="testPersonDepartmentId" label="检测人单位" />
+					<el-table-column align="center" prop="testPersonDepartmentName" label="检测人单位" />
 					<el-table-column align="center" prop="testMemo" label="检测内容" />
-					<el-table-column align="center" prop="testResult" label="检测结果" />
+					<el-table-column align="center" label="检测结果" >
+						<template #default="scope">
+							<span v-if="scope.row.testResult==1">成功</span>
+							<span v-if="scope.row.testResult==2">失败</span>
+						</template>
+					</el-table-column>
 					<el-table-column align="center" prop="testStatus" label="检测状态" />
 					<el-table-column align="center" label="操作">
 						<template #default="scope">
@@ -263,10 +274,15 @@
 				<el-button type="primary" size="default" :disabled="disabled" @click="openRepair('新增', '')">新增</el-button>
 				<el-table :data="form.repaireDetailList" style="width: 100%">
 					<el-table-column align="center" prop="exceptionInfo" label="设施异常项" />
-					<el-table-column align="center" prop="repairStatus" label="维修状态" />
+					<el-table-column align="center"  label="维修状态">
+					<template #default="scope">
+							<span v-if="scope.row.repairStatus==1">维修中</span>
+							<span v-if="scope.row.repairStatus==2">已修好</span>
+						</template>
+					</el-table-column>
 					<el-table-column align="center" prop="repairMemo" label="维修情况" />
-					<el-table-column align="center" prop="repairPersonId" label="维修负责人" />
-					<el-table-column align="center" prop="repairPersonDepartmentId" label="维修负责人单位" />
+					<el-table-column align="center" prop="repairPersonName" label="维修负责人" />
+					<el-table-column align="center" prop="repairPersonDepartmentName" label="维修负责人单位" />
 					<el-table-column align="center" prop="repairStartDate" :formatter="timeDate" label="维修开始日期" />
 					<el-table-column align="center" prop="repairEndDate" :formatter="timeDate" label="维修结束日期" />
 					<el-table-column align="center" label="操作">
@@ -334,6 +350,7 @@
 		</template>
 	</el-dialog>
 	<categoryDailog ref="categoryShow"></categoryDailog>
+	<categoryDailog ref="categoryShow" @typeId="Tid"></categoryDailog>
 	<regionDailog ref="regionShow"></regionDailog>
 	<DailogSearchUser ref="UserShow" @SearchUser="userId"></DailogSearchUser>
 	<maintenanceDailog ref="maintenanceShow" @onMain="main"></maintenanceDailog>
@@ -356,6 +373,7 @@
 import type { UploadProps, UploadUserFile } from 'element-plus';
 import { facilityManagementApi } from '/@/api/facilityManagement';
 import { goalManagementApi } from '/@/api/goalManagement';
+import { deepClone } from '/@/utils/other';
 export default defineComponent({
 	components: { categoryDailog, regionDailog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },
 	setup(props, { emit }) {
@@ -459,7 +477,7 @@
 
 			repaireDetailList: [],
 
-			equipmentTypeId: 1,
+			equipmentTypeId: '',
 
 			useDate: '',
 
@@ -484,10 +502,12 @@
 			delTestDetails: '',
 		});
 		const titles = ref();
+		const titleT = ref();
 		const disabled = ref(false);
 		const Dailogtype = ref(false);
 		const openDailog = (title: string, type: boolean, id: number, num: any) => {
 			dialogVisible.value = true;
+			titleT.value = title;
 			department();
 			Dailogtype.value = type;
 			if (num == 0) {
@@ -519,6 +539,7 @@
 			qUsage: [],
 			model: [],
 			equipmentTypeId: [],
+			equipmentTypeName: [{ required: true, message: '类型/类别外键不能为空', trigger: 'change' }],
 			departmentId: [],
 			setPart: [],
 			produceTime: [],
@@ -571,6 +592,13 @@
 					form.value.delRepaireDetails = deleteCId.value.toString();
 					form.value.delCheckStandardeDetails = deleteDId.value.toString();
 					dialogVisible.value = false;
+					delete form.value.equipmentTypeName;
+					delete form.value.departmentName;
+					delete form.value.leadingPersonDepartmentName;
+					delete form.value.leadingDepartmentName;
+					if (titleT.value == '新建') {
+						delete form.value.id;
+					}
 					facilityManagementApi()
 						.getequipmentInfoAddOrUpdate(form.value)
 						.then((res) => {
@@ -618,7 +646,7 @@
 		};
 		const maintenanceShow = ref();
 		const openMaintenance = (title: string, data: any) => {
-			index.value = form.value.takecareDetailList.indexOf(data);
+            index.value = form.value.takecareDetailList.indexOf(data);
 			maintenanceShow.value.openDailog(title, data);
 		};
 		const detectShow = ref();
@@ -688,28 +716,32 @@
 			deleteDId.value.push(tag.id);
 		};
 		// 回传
-		const main = (val: any) => {
+		const main = (data: any) => {
+			const val = deepClone(data);
 			if (index.value == -1) {
 				form.value.takecareDetailList.push(val);
 			} else {
 				form.value.takecareDetailList[index.value] = val;
 			}
 		};
-		const delect = (val: any) => {
+		const delect = (data: any) => {
+			const val = deepClone(data);
 			if (index.value == -1) {
 				form.value.testDetailList.push(val);
-			} else {
+			} else  {
 				form.value.testDetailList[index.value] = val;
 			}
 		};
-		const Repair = (val: any) => {
+		const Repair = (data: any) => {
+			const val = deepClone(data);
 			if (index.value == -1) {
 				form.value.repaireDetailList.push(val);
 			} else {
 				form.value.repaireDetailList[index.value] = val;
 			}
 		};
-		const Stand = (val: any) => {
+		const Stand = (data: any) => {
+			const val = deepClone(data);
 			if (index.value == -1) {
 				form.value.checkStandardeDetailList.push(val);
 			} else {
@@ -725,6 +757,11 @@
 				form.value.stopSubmitPersonId = val.uid;
 				form.value.stopSubmitPersonName = val.realName;
 			}
+		};
+		const Tid = (data: any) => {
+			form.value.equipmentTypeId = data.id;
+			form.value.equipmentTypeName = data.typeName;
+			form.value.positionNum = data.sortNum;
 		};
 		//全屏
 		const full = ref(false);
@@ -754,6 +791,8 @@
 		};
 		const data = ref();
 		return {
+			Tid,
+			deepClone,
 			rules,
 			userId,
 			department,
@@ -827,4 +866,4 @@
 .el-form .el-form-item:last-of-type {
 	margin-bottom: 22px !important;
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/components/equipmentDailog/DailogS.vue b/src/components/equipmentDailog/DailogS.vue
index 749925a..01fcf6e 100644
--- a/src/components/equipmentDailog/DailogS.vue
+++ b/src/components/equipmentDailog/DailogS.vue
@@ -1,11 +1,11 @@
 <template>
-	<el-dialog :fullscreen="full" v-model="dialogVisible" draggable :title="titles" width="60%">
+	<el-dialog :fullscreen="full" v-model="dialogVisible" draggable :title="titles" width="60%" @close="resetForm(ruleFormRef)" >
 		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
-		<el-form :model="form" label-width="130px" :disabled="disabled">
+		<el-form :model="form" ref="ruleFormRef" label-width="130px" :rules="rules" :disabled="disabled">
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="类型/类别外键" size="default">
-						<el-input v-model="form.equipmentTypeId" placeholder="请选择">
+					<el-form-item label="类型/类别外键" size="default" prop="equipmentTypeId">
+						<el-input v-model="form.equipmentTypeName" placeholder="请选择">
 							<template #append>
 								<el-button :icon="Search" @click="opencategory"></el-button>
 							</template>
@@ -14,7 +14,7 @@
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="装置/部位名称" size="default">
-						<el-input v-model="form.name" placeholder="请选择" />
+						<el-input v-model="form.name" placeholder="请填写装置/部位名称" />
 					</el-form-item>
 				</el-col>
 			</el-row>
@@ -39,10 +39,10 @@
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="联系人" size="default">
+					<el-form-item label="联系人" size="default" prop="connectPersonName">
 						<el-input v-model="form.connectPersonName" placeholder="请选择">
 							<template #append>
-								<el-button :icon="Search" @click="openUser(0)"></el-button>
+								<el-button :icon="Search" @click="openUser(1)"></el-button>
 							</template>
 						</el-input>
 					</el-form-item>
@@ -50,19 +50,19 @@
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="录入人" size="default">
+					<el-form-item label="录入人" size="default" prop="inputPersonName">
 						<el-input v-model="form.inputPersonName" placeholder="请选择">
 							<template #append>
-								<el-button :icon="Search" @click="openUser(1)"></el-button>
+								<el-button :icon="Search" @click="openUser(2)"></el-button>
 							</template>
 						</el-input>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="责任人" size="default">
+					<el-form-item label="责任人" size="default" prop="responsibilityPersonName">
 						<el-input v-model="form.responsibilityPersonName" placeholder="请选择">
 							<template #append>
-								<el-button :icon="Search" @click="openUser(2)"></el-button>
+								<el-button :icon="Search" @click="openUser(3)"></el-button>
 							</template>
 						</el-input>
 					</el-form-item>
@@ -72,21 +72,21 @@
 				<el-col :span="11">
 					<el-form-item label="装置部位分类" size="default">
 						<el-select v-model="form.partType" placeholder="请选择" style="width: 100%">
-							<el-option label="关键装置" value="关键装置" />
-							<el-option label="重点部位" value="重点部位" />
+							<el-option label="关键装置" value="1" />
+							<el-option label="重点部位" value="2" />
 						</el-select>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="检查周期" size="default">
-						<el-input v-model="form.checkCycle" placeholder="请选择检查周期" />
+						<el-input v-model="form.checkCycle" placeholder="请填写检查周期" />
 					</el-form-item>
 				</el-col>
 			</el-row>
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="相关应急预案" size="default">
-						<el-input v-model="form.emergencePlanId" placeholder="请选择">
+						<el-input v-model="form.emergencePlanName" placeholder="请选择">
 							<template #append>
 								<el-button :icon="Search" @click="openPlan"></el-button>
 							</template>
@@ -95,21 +95,20 @@
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="主要危险有害因素" size="default">
-						<el-input v-model="form.dangerousElement" placeholder="请选择" />
+						<el-input v-model="form.dangerousElement" placeholder="请填写主要危险有害因素" />
 					</el-form-item>
 				</el-col>
 			</el-row>
-
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="易导致风险" size="default">
-						<el-input v-model="form.toDangerous" placeholder="请选择易导致风险" />
+						<el-input v-model="form.toDangerous" placeholder="请填写易导致风险" />
 					</el-form-item>
 				</el-col>
 
 				<el-col :span="11" :offset="2">
 					<el-form-item label="应急处置措施" size="default">
-						<el-input v-model="form.treatment" placeholder="请选择应急处置措施" />
+						<el-input v-model="form.treatment" placeholder="请填写应急处置措施" />
 					</el-form-item>
 				</el-col>
 			</el-row>
@@ -133,68 +132,78 @@
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="备注信息" size="default"> <el-input v-model="form.name" placeholder="请选择应急处置措施" /> </el-form-item>
+					<el-form-item label="备注信息" size="default"> <el-input v-model="form.memo" placeholder="请填写备注信息" /> </el-form-item>
 				</el-col>
 			</el-row>
 		</el-form>
 		<el-tabs v-model="activeName" class="demo-tabs">
 			<el-tab-pane label="设备保养" name="first">
-				<el-button type="primary" size="default" @click="openMaintenance('新增', '')">新增</el-button>
+				<el-button type="primary" size="default" @click="openMaintenance('新增', '')" :disabled="disabled">新增</el-button>
 				<el-table :data="form.takecareDetailList" style="width: 100%">
 					<el-table-column align="center" prop="takecareMemo" label="保养情况" />
-					<el-table-column align="center" prop="leadingPersonId" label="保养负责人" />
+					<el-table-column align="center" prop="leadingPersonName" label="保养负责人" />
 					<el-table-column align="center" prop="takecareDate" :formatter="timeDate" label="保养日期" />
-					<el-table-column align="center" prop="leadingPersonDepartmentId" label="保养负责人单位" />
+					<el-table-column align="center" prop="leadingPersonDepartmentName" label="保养负责人单位" />
 					<el-table-column align="center" label="操作">
 						<template #default="scope">
-							<el-button link type="primary" @click="openMaintenance('查看', scope.row)" size="small">查看</el-button>
-							<el-button link type="primary" @click="openMaintenance('修改', scope.row)" size="small">修改</el-button>
-							<el-button link type="primary" @click="deleteA(scope.row)" size="small">删除</el-button>
+							<el-button link type="primary" @click="openMaintenance('查看', scope.row)" size="small" :disabled="disabled">查看</el-button>
+							<el-button link type="primary" @click="openMaintenance('修改', scope.row)" size="small" :disabled="disabled">修改</el-button>
+							<el-button link type="primary" @click="deleteA(scope.row)" size="small" :disabled="disabled">删除</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
 			</el-tab-pane>
 			<el-tab-pane label="设备检测" name="second">
-				<el-button type="primary" size="default" @click="openDetect('新增', '')">新增</el-button>
-				<el-table :data="form.testDetailList" style="width: 100%">
-					<el-table-column align="center" prop="testPersonId" label="检测人" />
+				<el-button type="primary" size="default" @click="openDetect('新增', '')" :disabled="disabled">新增</el-button>
+				<el-table :data="form.checkDetailList" style="width: 100%">
+					<el-table-column align="center" prop="testPersonName" label="检测人" />
 					<el-table-column align="center" prop="testDate" :formatter="timeDate" label="检测日期" />
-					<el-table-column align="center" prop="testPersonDepartmentId" label="检测人单位" />
+					<el-table-column align="center" prop="testPersonDepartmentName" label="检测人单位" />
 					<el-table-column align="center" prop="testMemo" label="检测内容" />
-					<el-table-column align="center" prop="testResult" label="检测结果" />
+					<el-table-column align="center" prop="testResult" label="检测结果" >
+						<template #default="scope">
+							<span v-if="scope.row.testResult == 1">成功</span>
+							<span v-if="scope.row.testResult == 2">失败</span>
+						</template>
+					</el-table-column>
 					<el-table-column align="center" prop="testStatus" label="检测状态" />
 					<el-table-column align="center" label="操作">
 						<template #default="scope">
-							<el-button link type="primary" @click="openDetect('查看', scope.row)" size="small">查看</el-button>
-							<el-button link type="primary" @click="openDetect('修改', scope.row)" size="small">修改</el-button>
-							<el-button link type="primary" @click="deleteB(scope.row)" size="small">删除</el-button>
+							<el-button link type="primary" @click="openDetect('查看', scope.row)" size="small" :disabled="disabled">查看</el-button>
+							<el-button link type="primary" @click="openDetect('修改', scope.row)" size="small" :disabled="disabled">修改</el-button>
+							<el-button link type="primary" @click="deleteB(scope.row)" size="small" :disabled="disabled">删除</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
 			</el-tab-pane>
 			<el-tab-pane label="设备维修" name="third">
-				<el-button type="primary" size="default" @click="openRepair('新增', '')">新增</el-button>
+				<el-button type="primary" size="default" @click="openRepair('新增', '')" :disabled="disabled">新增</el-button>
 				<el-table :data="form.repaireDetailList" style="width: 100%">
 					<el-table-column align="center" prop="exceptionInfo" label="设施异常项" />
-					<el-table-column align="center" prop="repairStatus" label="维修状态" />
+					<el-table-column align="center" prop="repairStatus" label="维修状态" >
+						<template #default="scope">
+							<span v-if="scope.row.repairStatus == 1">维修中</span>
+							<span v-if="scope.row.repairStatus == 2">已维修</span>
+						</template>
+					</el-table-column>
 					<el-table-column align="center" prop="repairMemo" label="维修情况" />
-					<el-table-column align="center" prop="repairPersonId" label="维修负责人" />
-					<el-table-column align="center" prop="repairPersonDepartmentId" label="维修负责人单位" />
+					<el-table-column align="center" prop="repairPersonName" label="维修负责人" />
+					<el-table-column align="center" prop="repairPersonDepartmentName" label="维修负责人单位" />
 					<el-table-column align="center" prop="repairStartDate" :formatter="timeDate" label="维修开始日期" />
 					<el-table-column align="center" prop="repairEndDate" :formatter="timeDate" label="维修结束日期" />
 					<el-table-column align="center" label="操作">
 						<template #default="scope">
-							<el-button link type="primary" @click="openRepair('查看', scope.row)" size="small">查看</el-button>
-							<el-button link type="primary" @click="openRepair('修改', scope.row)" size="small">修改</el-button>
-							<el-button link type="primary" @click="deleteC(scope.row)" size="small">删除</el-button>
+							<el-button link type="primary" @click="openRepair('查看', scope.row)" size="small" :disabled="disabled">查看</el-button>
+							<el-button link type="primary" @click="openRepair('修改', scope.row)" size="small" :disabled="disabled">修改</el-button>
+							<el-button link type="primary" @click="deleteC(scope.row)" size="small" :disabled="disabled">删除</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
 			</el-tab-pane>
 			<el-tab-pane label="检查标准设置" name="fourth">
-				<el-button type="primary" size="default" @click="openStandard('新增', '')">新增</el-button>
+				<el-button type="primary" size="default" @click="openStandard('新增', '')" :disabled="disabled">新增</el-button>
 				<el-table :data="form.checkStandardeDetailList" style="width: 100%">
-					<el-table-column align="center" type="indexNum" label="序号" width="75" />
+					<el-table-column align="center" prop="indexNum" label="序号" width="75" />
 					<el-table-column align="center" prop="checkContent" label="检查内容" />
 					<el-table-column align="center" prop="checkTarget" label="检查指标" />
 					<el-table-column align="center" prop="unit" label="单位" />
@@ -202,9 +211,9 @@
 					<el-table-column align="center" prop="rate" label="频次" />
 					<el-table-column align="center" label="操作">
 						<template #default="scope">
-							<el-button link type="primary" @click="openStandard('查看', scope.row)" size="small">查看</el-button>
-							<el-button link type="primary" @click="openStandard('修改', scope.row)" size="small">修改</el-button>
-							<el-button link type="primary" @click="deleteD(scope.row)" size="small">删除</el-button>
+							<el-button link type="primary" @click="openStandard('查看', scope.row)" size="small" :disabled="disabled">查看</el-button>
+							<el-button link type="primary" @click="openStandard('修改', scope.row)" size="small" :disabled="disabled">修改</el-button>
+							<el-button link type="primary" @click="deleteD(scope.row)" size="small" :disabled="disabled">删除</el-button>
 						</template>
 					</el-table-column>
 				</el-table>
@@ -241,23 +250,21 @@
 		</el-tabs>
 		<template #footer>
 			<span class="dialog-footer">
-				<el-button @click="resetForm">关闭</el-button>
-				<el-button type="primary" @click="submitForm">确定</el-button>
+				<el-button @click="resetForm(ruleFormRef)">关闭</el-button>
+				<el-button type="primary" @click="submitForm(ruleFormRef)">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
-	<categoryDailog ref="categoryShow"></categoryDailog>
+	<categoryDailog ref="categoryShow" @typeId="Tid"></categoryDailog>
 	<RegionsDialog ref="planShow" @SearchUser="onUser"></RegionsDialog>
-	<DailogSearchUser ref="UserOneShow" @SearchUser="userId"></DailogSearchUser>
-<!--	<DailogSearchUser ref="UserTwoShow" @SearchUser="userId"></DailogSearchUser>-->
-<!--	<DailogSearchUser ref="UserThreeShow" @SearchUser="userId"></DailogSearchUser>-->
+	<DailogSearchUser ref="UserShow" @SearchUser="userId"></DailogSearchUser>
 	<maintenanceDailog ref="maintenanceShow" @onMain="main"></maintenanceDailog>
 	<detectDailog ref="detectShow" @onDelect="delect"></detectDailog>
 	<repairDailog ref="repairShow" @onRepair="Repair"></repairDailog>
 	<standardDailog ref="standardShow" @onStand="Stand"></standardDailog>
 </template>
 <script lang="ts">
-import { defineComponent, ref } from 'vue';
+import { defineComponent, ref ,reactive} from 'vue';
 import { Search, Plus, FullScreen } from '@element-plus/icons-vue';
 import { timeDate } from '/@/assets/index.ts';
 import categoryDailog from './categoryDailog.vue';
@@ -267,36 +274,37 @@
 import repairDailog from './repairDailog.vue';
 import standardDailog from './standardDailog.vue';
 import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
-import { ElMessage, ElMessageBox } from 'element-plus';
+import { ElMessage, ElMessageBox ,FormInstance ,FormRules,} from 'element-plus';
 import type { UploadProps, UploadUserFile } from 'element-plus';
 import { facilityManagementApi } from '/@/api/facilityManagement';
 import { goalManagementApi } from '/@/api/goalManagement';
+import {deepClone} from '/@/utils/other'
 export default defineComponent({
 	components: { categoryDailog, RegionsDialog, DailogSearchUser, maintenanceDailog, detectDailog, repairDailog, standardDailog },
 	setup(props, { emit }) {
 		const dialogVisible = ref(false);
 		const form = ref({
-			equipmentTypeId: '',
-
+			equipmentTypeId: 1,
+      equipmentTypeName:"",
 			treatment: '',
 
 			inputPersonId: '',
-      inputPersonName:'',
+      inputPersonName: '',
 			departmentId: '',
 
-			delRepaireDetailList: [],
+			// delRepaireDetailList: [],
 
-			delTestDetailList: [],
+			// delTestDetailList: [],
 
 			takecareDetailList: [],
 			checkDetailList: [],
 
 			responsibilityPersonId: '',
-      responsibilityPersonName:'',
-			delTakecareStardardeDetailList: [],
+      responsibilityPersonName: '',
+			// delTakecareStardardeDetailList: [],
 
 			connectPersonId: '',
-      connectPersonName:'',
+      connectPersonName: '',
 
 			scenePic: '',
 
@@ -305,6 +313,7 @@
 			toDangerous: '',
 
 			dangerousElement: '',
+      memo:'',
 
 			takecareStardardeDetailList: [
 				{
@@ -314,17 +323,18 @@
 			testDetailList: [],
 			checkCycle: '',
 			repaireDetailList: [],
-			delCheckStandardeDetailList: [],
+			// delCheckStandardeDetailList: [],
 
 			leadingPersonName: '',
 
 			name: '',
 
-			delTakecareDetailList: [],
+			// delTakecareDetailList: [],
 
 			position: '',
 
-			emergencePlanId: '',
+      emergencePlanId: '',
+      emergencePlanName:'',
 
 			checkStandardeDetailList: [],
 			infoTpe: '',
@@ -338,11 +348,14 @@
 
 			delTestDetails: '',
 		});
+    const ruleFormRef = ref<FormInstance>();
 		const titles = ref();
+    const titleT = ref();
 		const disabled = ref(false);
 		const Dailogtype = ref(false);
 		const openDailog = (title: string, type: boolean, id: number, num: any) => {
 			dialogVisible.value = true;
+      titleT.value = title;
 			department();
 			Dailogtype.value = type;
 			if (num == 0) {
@@ -375,6 +388,10 @@
 			form.value.delRepaireDetails = deleteCId.value.toString();
 			form.value.delCheckStandardeDetails = deleteDId.value.toString();
 			dialogVisible.value = false;
+      if (titleT.value == '新建') {
+        delete form.value.id;
+        delete form.value.infoTpe
+      }
 			facilityManagementApi()
 				.getkeypointEquipmentInfoAddOrUpdate(form.value)
 				.then((res) => {
@@ -391,8 +408,11 @@
 			// form.value = null;
 		};
 		//   取消
-		const resetForm = () => {
+		const resetForm = (formEl: FormInstance | undefined) => {
+			if (!formEl) return;
+			formEl.resetFields();
 			dialogVisible.value = false;
+			form.value={}
 		};
 		const activeName = ref('first');
 		const index = ref<any>();
@@ -408,33 +428,29 @@
 		};
 		const onUser = (e: any) => {
 			form.value.emergencePlanId = e.id;
+      form.value.emergencePlanName=e.name
 		};
 
-		const UserOneShow = ref();
-		// const UserTwoShow = ref();
-		// const UserThreeShow = ref();
-		const openUser = (type: number) => {
-			// if (type == 0) {
-			// 	UserOneShow.value.openDailog();
-			// } else if (type == 1) {
-			// 	UserTwoShow.value.openDailog();
-			// } else if (type == 2) {
-			// 	UserThreeShow.value.openDailog();
-			// }
-      UserOneShow.value.openDailog();
+		const UserShow = ref();
+		const openUser = (type: any) => {
+     	 UserShow.value.openDailog(type);
 		};
-		const userId = ( type: number,val: any) => {
-			if (type == 0) {
-        form.value.connectPersonId = val.uid;
-        form.value.connectPersonName = val.realName;
-			} else if (type == 1) {
-        form.value.inputPersonId = val.uid;
-        form.value.inputPersonName = val.username;
+		const userId = (val: any, type: number) => {
+			if (type == 1) {
+				form.value.connectPersonId = val.uid;
+				form.value.connectPersonName = val.realName;
 			} else if (type == 2) {
-        form.value.responsibilityPersonId = val.id;
-        form.value.responsibilityPersonName = val.username;
+				form.value.inputPersonId = val.uid;
+				form.value.inputPersonName = val.realName;
+			} else if (type == 3) {
+				form.value.responsibilityPersonId = val.id;
+				form.value.responsibilityPersonName = val.realName;
 			}
 		};
+    const Tid=(data:any)=>{
+      form.value.equipmentTypeId=data.id
+      form.value.equipmentTypeName=data.typeName
+    }
 		const maintenanceShow = ref();
 		const openMaintenance = (title: string, data: any) => {
 			index.value = form.value.takecareDetailList.indexOf(data);
@@ -507,35 +523,42 @@
 			deleteDId.value.push(tag.id);
 		};
 		// 回传
-		const main = (val: any) => {
+		const main = (data: any) => {
+      let val=deepClone(data)
 			if (index.value == -1) {
 				form.value.takecareDetailList.push(val);
 			} else {
 				form.value.takecareDetailList[index.value] = val;
 			}
 		};
-		const delect = (val: any) => {
+		const delect = (data: any) => {
+      let val=deepClone(data)
 			if (index.value == -1) {
 				form.value.testDetailList.push(val);
 			} else {
 				form.value.testDetailList[index.value] = val;
 			}
 		};
-		const Repair = (val: any) => {
+		const Repair = (data: any) => {
+      let val=deepClone(data)
 			if (index.value == -1) {
 				form.value.repaireDetailList.push(val);
 			} else {
 				form.value.repaireDetailList[index.value] = val;
 			}
 		};
-		const Stand = (val: any) => {
+		const Stand = (data: any) => {
+      let val=deepClone(data)
 			if (index.value == -1) {
 				form.value.checkStandardeDetailList.push(val);
 			} else {
 				form.value.checkStandardeDetailList[index.value] = val;
 			}
 		};
-
+    const rules = reactive<FormRules>({
+      equipmentTypeId: [],
+      equipmentTypeName:[],
+    })
 		//图片提交
 		const imageUrl = ref('');
 
@@ -594,6 +617,7 @@
 			delect,
 			Repair,
 			Stand,
+      ruleFormRef,
 			index,
 			activeName,
 			categoryShow,
@@ -601,10 +625,9 @@
 			planShow,
 			onUser,
 			openPlan,
-			UserOneShow,
-			// UserTwoShow,
-			// UserThreeShow,
+      UserShow,
 			openUser,
+      rules,
 			maintenanceShow,
 			openMaintenance,
 			detectShow,
@@ -628,6 +651,7 @@
 			full,
 			toggleFullscreen,
 			FullScreen,
+      Tid,
 			resetForm,
 			deleteAId,
 			deleteBId,
@@ -638,6 +662,7 @@
 			deleteC,
 			deleteD,
 			timeDate,
+      titleT,
 		};
 	},
 });
diff --git a/src/components/equipmentDailog/categoryDailog.vue b/src/components/equipmentDailog/categoryDailog.vue
index 4338c2d..4a8bf12 100644
--- a/src/components/equipmentDailog/categoryDailog.vue
+++ b/src/components/equipmentDailog/categoryDailog.vue
@@ -3,18 +3,18 @@
 		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
 		<el-row>
 			<el-col :span="17">
-				<el-form ref="ruleFormRef" :model="ruleForm" status-icon>
+				<!-- <el-form ref="ruleFormRef" :model="ruleForm" status-icon>
 					<el-row>
 						<el-col :span="12">
 							<el-form-item size="default">
 								<el-input v-model="ruleForm.pass" placeholder="类别名称" />
 							</el-form-item>
 						</el-col>
-						<!-- <el-col :span="6" :offset="1">
+						<el-col :span="6" :offset="1">
 							<el-form-item>
 								<el-input v-model="ruleForm.checkPass" placeholder="目标指标编号" />
 							</el-form-item>
-						</el-col> -->
+						</el-col>
 						<el-col :span="11" :offset="1">
 							<el-form-item>
 								<el-button size="default" type="primary" @click="submitForm(ruleFormRef)">查询</el-button>
@@ -22,34 +22,22 @@
 							</el-form-item>
 						</el-col>
 					</el-row>
-				</el-form>
-				<el-button size="default" :icon="Delete">清除选择</el-button>
-				<el-table :data="tableData" style="width: 100%; margin-top: 20px">
-					<el-table-column align="center">
+				</el-form> -->
+				<el-button size="default" :icon="Delete" @click="clear">清除选择</el-button>
+				<el-table :data="tableData" style="width: 100%; margin-top: 20px" row-key="id" :tree-props="propse">
+					<el-table-column align="center" width="100px">
 						<template #default="scope">
-							<el-radio-group v-model="radio1" @change="radio">
-								<el-radio :label="scope.row.date" size="large">{{ null }}</el-radio>
+							<el-radio-group v-model="radio1">
+								<el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio>
 							</el-radio-group>
 						</template>
 					</el-table-column>
-					<el-table-column align="center" prop="date" label="id" />
-					<el-table-column align="center" prop="name" label="类别名称" />
+					<el-table-column align="center" prop="id" label="id" />
+					<el-table-column align="center" prop="typeName" label="类别名称" />
 				</el-table>
-				<el-pagination
-					style="padding: 20px 0; border-bottom: 1px solid #dedede"
-					v-model:currentPage="currentPage4"
-					v-model:page-size="pageSize4"
-					:page-sizes="[100, 200, 300, 400]"
-					:small="small"
-					:disabled="disabled"
-					:background="background"
-					layout="total, sizes, prev, pager, next, jumper"
-					:total="400"
-					@size-change="handleSizeChange"
-					@current-change="handleCurrentChange"
-				/>
 			</el-col>
 			<el-col :span="7">
+			<div v-if="dynamicTags[0]==''?false:true">
 				<el-tag
 					v-for="tag in dynamicTags"
 					:key="tag"
@@ -59,14 +47,15 @@
 					:disable-transitions="false"
 					@close="handleClose(tag)"
 				>
-					{{ tag }}
+					{{ tag.typeName }}
 				</el-tag>
+				</div>
 			</el-col>
 		</el-row>
 		<template #footer>
 			<span class="dialog-footer">
 				<el-button @click="dialogVisible = false" size="default">关闭</el-button>
-				<el-button type="primary" @click="dialogVisible = false" size="default">确定</el-button>
+				<el-button type="primary" @click="submitForm" size="default">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
@@ -74,57 +63,54 @@
 <script lang="ts">
 import { defineComponent, reactive, ref } from 'vue';
 import { Delete, FullScreen } from '@element-plus/icons-vue';
+import { facilityManagementApi } from '/@/api/facilityManagement';
+import { ElMessage,ElMessageBox } from 'element-plus';
 export default defineComponent({
-	setup() {
+	setup(props,{emit}) {
 		const dialogVisible = ref<boolean>(false);
 		const openDailog = () => {
 			dialogVisible.value = true;
+			listApi()
 		};
-		// 搜索条件
-		const ruleForm = reactive({
-			pass: '',
-			checkPass: '',
-		});
+			// 列表
+		const listApi = () => {
+			facilityManagementApi()
+				.getequipmentTypeMngTreeData()
+				.then((res) => {
+					if (res.data.code == 200) {
+						tableData.value = res.data.data;
+					} else {
+						ElMessage({
+							showClose: true,
+							message: res.data.msg,
+							type: 'error',
+						});
+					}
+				});
+		};
 		// 表格
-		const tableData = [
-			{
-				date: '2016-05-03',
-				name: 'Tom',
-				address: 'No. 189, Grove St, Los Angeles',
-			},
-			{
-				date: '2016-05-02',
-				name: 'Tom',
-				address: 'No. 189, Grove St, Los Angeles',
-			},
-			{
-				date: '2016-05-04',
-				name: 'Tom',
-				address: 'No. 189, Grove St, Los Angeles',
-			},
-			{
-				date: '2016-05-01',
-				name: 'Tom',
-				address: 'No. 189, Grove St, Los Angeles',
-			},
-		];
-		const pageSize4 = ref(100);
-		const handleSizeChange = (val: number) => {
-			console.log(`${val} items per page`);
-		};
-		const handleCurrentChange = (val: number) => {
-			console.log(`current page: ${val}`);
+		const tableData = ref([])
+		const propse = {
+			children: 'childList',
 		};
 		// 右方点击添加后显示标签
-		const dynamicTags = ref(['2016-05-03']);
+		const dynamicTags = ref(['']);
 		const handleClose = (tag: string) => {
 			dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
 			radio1.value = '';
 		};
-		const radio1 = ref('2016-05-03');
-		const radio = (event: any) => {
-			dynamicTags.value[0] = event;
+		const radio1 = ref('');
+		const radio = (data: any) => {
+			dynamicTags.value[0] = data
 		};
+		const clear=()=>{
+			radio1.value=""
+			dynamicTags.value=['']
+		}
+		const submitForm=()=>{
+			emit('typeId',dynamicTags.value[0])
+			dialogVisible.value=false
+		}
 		//全屏
 		const full = ref(false);
 		const toggleFullscreen = () => {
@@ -135,13 +121,13 @@
 			}
 		};
 		return {
+			submitForm,
+			clear,
 			dialogVisible,
 			openDailog,
-			ruleForm,
+			listApi,
+			propse,
 			tableData,
-			pageSize4,
-			handleSizeChange,
-			handleCurrentChange,
 			dynamicTags,
 			handleClose,
 			radio1,
diff --git a/src/components/equipmentDailog/detectDailog.vue b/src/components/equipmentDailog/detectDailog.vue
index 71279e3..654f54c 100644
--- a/src/components/equipmentDailog/detectDailog.vue
+++ b/src/components/equipmentDailog/detectDailog.vue
@@ -1,36 +1,43 @@
 <template>
-	<el-dialog v-model="dialogVisible" @close="resetForm" :fullscreen="full" :title="titles" width="50%" draggable>
+	<el-dialog v-model="dialogVisible" @close="resetForm(ruleFormRef)"  :fullscreen="full" :title="titles" width="50%" draggable>
 		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
-		<el-form :model="form" :disabled="disabled" label-width="120px">
+		<el-form :model="form" ref="ruleFormRef" :rules="rules" :disabled="disabled" label-width="120px">
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="检测人" size="default">
-							<el-input v-model="form.testPersonName">
+					<el-form-item label="检测人" size="default" prop="testPersonName">
+						<el-input v-model="form.testPersonName">
 							<template #append> <el-button :icon="Search" @click="openUser" /> </template
 						></el-input>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="检测日期" size="default">
-						<el-date-picker v-model="form.testDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+					<el-form-item label="检测日期" size="default" prop="testDate">
+						<el-date-picker v-model="form.testDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
 					</el-form-item>
 				</el-col>
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="检测人单位" size="default">
-						<el-tree-select v-model="form.testPersonDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
+					<el-form-item label="检测人单位" size="default" prop="testPersonDepartmentId">
+						<el-tree-select
+							v-model="form.testPersonDepartmentId"
+							:data="data"
+							check-strictly="true"
+							class="w100"
+							:props="propse"
+							placeholder="请选择"
+						/>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="检测内容" size="default">
+					<el-form-item label="检测内容" size="default" prop="testMemo">
 						<el-input v-model="form.testMemo" placeholder="请填写检测内容" />
 					</el-form-item>
 				</el-col>
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="检测结果" size="default">
+					<el-form-item label="检测结果" size="default" prop="testResult">
 						<el-select v-model="form.testResult" placeholder="请选择" style="width: 100%">
 							<el-option label="成功" value="1" />
 							<el-option label="失败" value="2" />
@@ -38,7 +45,7 @@
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="检测状态" size="default">
+					<el-form-item label="检测状态" size="default" prop="testStatus">
 						<el-input v-model="form.testStatus" placeholder="请填写检测状态" />
 					</el-form-item>
 				</el-col>
@@ -47,8 +54,8 @@
 		<template #footer>
 			<span class="dialog-footer">
 				<!-- <el-button type="primary" @click="dialogVisible = false" size="default">继续添加</el-button> -->
-				<el-button @click="resetForm" size="default">关闭</el-button>
-				<el-button type="primary" @click="submitForm" size="default">确定</el-button>
+				<el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
+				<el-button type="primary" @click="submitForm(ruleFormRef)" :disabled="disabled" size="default">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
@@ -56,16 +63,18 @@
 </template>
 <script lang="ts">
 import { defineComponent, ref, reactive } from 'vue';
-import { ElMessage, ElMessageBox} from 'element-plus';
+import { ElMessage, ElMessageBox } from 'element-plus';
+import type { FormInstance, FormRules } from 'element-plus';
 import { Search, FullScreen } from '@element-plus/icons-vue';
 import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
 import { goalManagementApi } from '/@/api/goalManagement';
 export default defineComponent({
 	components: { DailogSearchUser },
 	setup(props, { emit }) {
+		const ruleFormRef = ref<FormInstance>();
 		const form = ref({
 			testPersonId: '',
-			testPersonName:'',
+			testPersonName: '',
 			testDate: '',
 			testPersonDepartmentId: '',
 			testMemo: '',
@@ -77,13 +86,13 @@
 		const disabled = ref(false);
 		const dialogVisible = ref(false);
 		const openDailog = (title: string, data: any) => {
-			department()
+			department();
 			dialogVisible.value = true;
 			titles.value = `${title}设备检测`;
 			if (title == '查看') {
 				disabled.value = true;
 				form.value = data;
-			} else if(title == '修改'){
+			} else if (title == '修改') {
 				disabled.value = false;
 				form.value = data;
 			}
@@ -95,36 +104,37 @@
 		};
 		const User = (val: any) => {
 			form.value.testPersonId = val.uid;
-			form.value.testPersonName=val.realName;
+			form.value.testPersonName = val.realName;
 		};
+		const rules = reactive<FormRules>({
+			testPersonName: [{ required: true, message: '检测人不能为空', trigger: 'blur' }],
+			testDate:[{ required: true, message: '检测日期不能为空', trigger: 'blur' }],
+			testPersonDepartmentId:[],
+			testMemo:[{ required: true, message: '检测内容不能为空', trigger: 'blur' }],
+			testResult:[{ required: true, message: '检测结果不能为空', trigger: 'blur' }],
+			testStatus:[{ required: true, message: '检测状态不能为空', trigger: 'blur' }],
+		});
 		// 提交
-		const submitForm = () => {
-			dialogVisible.value = false;
-			emit('onDelect', form.value);
-			form.value = {
-				testPersonId: '',
-				testPersonName:'',
-				testDate: '',
-				testPersonDepartmentId: '',
-				testMemo: '',
-				testResult: '',
-				testStatus: '',
-			};
+		const submitForm = async (formEl: FormInstance | undefined) => {
+			if (!formEl) return;
+			await formEl.validate((valid, fields) => {
+				if (valid) {
+					emit('onDelect', form.value);
+					dialogVisible.value = false;
+				} else {
+					console.log('error submit!', fields);
+				}
+			});
+
 			disabled.value = false;
 		};
 		//   取消
-		const resetForm = () => {
+		const resetForm = (formEl: FormInstance | undefined) => {
+			if (!formEl) return;
+			formEl.clearValidate();
 			dialogVisible.value = false;
-			form.value = {
-				testPersonId: '',
-				testPersonName:'',
-				testDate: '',
-				testPersonDepartmentId: '',
-				testMemo: '',
-				testResult: '',
-				testStatus: '',
-			};
 			disabled.value = false;
+			form.value={}
 		};
 		//全屏
 		const full = ref(false);
@@ -135,7 +145,7 @@
 				full.value = false;
 			}
 		};
-				//部门树
+		//部门树
 		const department = () => {
 			goalManagementApi()
 				.getTreedepartment()
@@ -154,6 +164,8 @@
 		};
 		const data = ref();
 		return {
+			ruleFormRef,
+			rules,
 			department,
 			propse,
 			data,
diff --git a/src/components/equipmentDailog/maintenanceDailog.vue b/src/components/equipmentDailog/maintenanceDailog.vue
index e742cd7..3a22bc9 100644
--- a/src/components/equipmentDailog/maintenanceDailog.vue
+++ b/src/components/equipmentDailog/maintenanceDailog.vue
@@ -19,12 +19,25 @@
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="保养日期" size="default" prop="takecareDate">
-						<el-date-picker v-model="form.takecareDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" style="width: 100%" />
+						<el-date-picker
+							v-model="form.takecareDate"
+							format="YYYY-MM-DD HH:mm:ss"
+							value-format="YYYY-MM-DD HH:mm:ss"
+							type="datetime"
+							style="width: 100%"
+						/>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="保养负责人单位" size="default" prop="leadingPersonDepartmentId">
-						<el-tree-select v-model="form.leadingPersonDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
+						<el-tree-select
+							v-model="form.leadingPersonDepartmentId"
+							:data="data"
+							check-strictly="true"
+							class="w100"
+							:props="propse"
+							placeholder="请选择"
+						/>
 					</el-form-item>
 				</el-col>
 			</el-row>
@@ -33,7 +46,7 @@
 			<span class="dialog-footer">
 				<!-- <el-button type="primary" @click="dialogVisible = false" size="default">继续添加</el-button> -->
 				<el-button @click="resetForms(ruleFormRefs)" size="default">关闭</el-button>
-				<el-button type="primary" @click="submitForms(ruleFormRefs)" size="default">确定</el-button>
+				<el-button type="primary" @click="submitForms(ruleFormRefs)" :disabled="disabled" size="default">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
@@ -41,7 +54,7 @@
 </template>
 <script lang="ts">
 import { defineComponent, ref, reactive } from 'vue';
-import { ElMessage, ElMessageBox} from 'element-plus';
+import { ElMessage, ElMessageBox } from 'element-plus';
 import { Search, FullScreen } from '@element-plus/icons-vue';
 import type { FormInstance, FormRules } from 'element-plus';
 import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
@@ -62,7 +75,7 @@
 		const disabled = ref(false);
 		const dialogVisible = ref(false);
 		const openDailog = (title: string, data: any) => {
-			department()
+			department();
 			dialogVisible.value = true;
 			titles.value = `${title}仪器仪表`;
 			if (title == '查看') {
@@ -75,32 +88,32 @@
 		};
 		const rules = reactive<FormRules>({
 			takecareMemo: [
-				// {
-				// 	required: true,
-				// 	message: '保养情况不能为空',
-				// 	trigger: 'change',
-				// },
+				{
+					required: true,
+					message: '保养情况不能为空',
+					trigger: 'blur',
+				},
 			],
 			leadingPersonName: [
-				// {
-				// 	required: true,
-				// 	message: '保养负责人不能为空',
-				// 	trigger: 'change',
-				// },
+				{
+					required: true,
+					message: '保养负责人不能为空',
+					trigger: 'blur',
+				},
 			],
 			takecareDate: [
-				// {
-				// 	required: true,
-				// 	message: '保养日期不能为空',
-				// 	trigger: 'change',
-				// },
+				{
+					required: true,
+					message: '保养日期不能为空',
+					trigger: 'blur',
+				},
 			],
 			leadingPersonDepartmentId: [
-				// {
-				// 	required: true,
-				// 	message: '保养负责人单位不能为空',
-				// 	trigger: 'change',
-				// },
+				{
+					required: true,
+					message: '保养负责人单位不能为空',
+					trigger: 'blur',
+				},
 			],
 		});
 		// 开启用户弹窗
@@ -123,29 +136,17 @@
 					console.log('error submit!', fields);
 				}
 			});
-			form.value = {
-				takecareMemo: '',
-				leadingPersonId: '',
-				leadingPersonName: '',
-				takecareDate: '',
-				leadingPersonDepartmentId: '',
-			};
 			disabled.value = false;
-			// formEl.resetFields();
 		};
 		//   取消
 		const resetForms = (formEl: FormInstance | undefined) => {
 			if (!formEl) return;
-					form.value = {
-				takecareMemo: '',
-				leadingPersonId: '',
-				leadingPersonName: '',
-				takecareDate: '',
-				leadingPersonDepartmentId: '',
-			};
-			// formEl.resetFields();
-			dialogVisible.value = false;
+			formEl.clearValidate();
+
 			disabled.value = false;
+			form.value = {};
+
+			dialogVisible.value = false;
 		};
 		//全屏
 		const full = ref(false);
@@ -156,7 +157,7 @@
 				full.value = false;
 			}
 		};
-			//部门树
+		//部门树
 		const department = () => {
 			goalManagementApi()
 				.getTreedepartment()
diff --git a/src/components/equipmentDailog/repairDailog.vue b/src/components/equipmentDailog/repairDailog.vue
index 0c3baff..54a2238 100644
--- a/src/components/equipmentDailog/repairDailog.vue
+++ b/src/components/equipmentDailog/repairDailog.vue
@@ -1,15 +1,15 @@
 <template>
-	<el-dialog v-model="dialogVisible" :fullscreen="full" :before-close="resetForm" :title="titles" width="50%" draggable>
+	<el-dialog v-model="dialogVisible" :fullscreen="full" @close="resetForm(ruleFormRef)" :title="titles" width="50%" draggable>
 		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
-		<el-form :model="form" :disabled="disabled" label-width="120px">
+		<el-form :model="form"  ref="ruleFormRef" :rules="rules" :disabled="disabled" label-width="120px">
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="设施异常项" size="default">
+					<el-form-item label="设施异常项" size="default" prop="exceptionInfo">
 						<el-input v-model="form.exceptionInfo" placeholder="请填写设施异常项" />
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="维修状态" size="default">
+					<el-form-item label="维修状态" size="default" prop="repairStatus">
 						<el-select v-model="form.repairStatus" placeholder="请选择" style="width: 100%">
 							<el-option label="维修中" value="1" />
 							<el-option label="已修好" value="2" />
@@ -19,12 +19,12 @@
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="维修情况" size="default">
+					<el-form-item label="维修情况" size="default" prop="repairMemo">
 						<el-input v-model="form.repairMemo" placeholder="请填写维修情况" />
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="维修负责人" size="default">
+					<el-form-item label="维修负责人" size="default" prop="repairPersonName">
 						<el-input v-model="form.repairPersonName" placeholder="请选择">
 							<template #append> <el-button :icon="Search" @click="openUser" /> </template
 						></el-input>
@@ -33,20 +33,41 @@
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="维修负责人单位" size="default">
-						<el-tree-select v-model="form.repairPersonDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
+					<el-form-item label="维修负责人单位" size="default" prop="repairPersonDepartmentId">
+						<el-tree-select
+							v-model="form.repairPersonDepartmentId"
+							:data="data"
+							check-strictly="true"
+							class="w100"
+							:props="propse"
+							placeholder="请选择"
+						/>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="维修开始日期" size="default">
-						<el-date-picker v-model="form.repairStartDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+					<el-form-item label="维修开始日期" size="default" prop="repairStartDate">
+						<el-date-picker
+							v-model="form.repairStartDate"
+							format="YYYY-MM-DD HH:mm:ss"
+							value-format="YYYY-MM-DD HH:mm:ss"
+							type="datetime"
+							placeholder="选择日期时间"
+							style="width: 100%"
+						/>
 					</el-form-item>
 				</el-col>
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="维修结束日期" size="default">
-						<el-date-picker v-model="form.repairEndDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
+					<el-form-item label="维修结束日期" size="default" prop="repairEndDate">
+						<el-date-picker
+							v-model="form.repairEndDate"
+							format="YYYY-MM-DD HH:mm:ss"
+							value-format="YYYY-MM-DD HH:mm:ss"
+							type="datetime"
+							placeholder="选择日期时间"
+							style="width: 100%"
+						/>
 					</el-form-item>
 				</el-col>
 			</el-row>
@@ -54,8 +75,8 @@
 		<template #footer>
 			<span class="dialog-footer">
 				<!-- <el-button type="primary" @click="dialogVisible = false" size="default">继续添加</el-button> -->
-				<el-button @click="resetForm" size="default">关闭</el-button>
-				<el-button type="primary" @click="submitForm" size="default">确定</el-button>
+				<el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
+				<el-button type="primary"  @click="submitForm(ruleFormRef)" :disabled="disabled" size="default">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
@@ -63,20 +84,22 @@
 </template>
 <script lang="ts">
 import { defineComponent, ref, reactive } from 'vue';
-import { ElMessage, ElMessageBox} from 'element-plus';
+import { ElMessage, ElMessageBox } from 'element-plus';
+import type { FormInstance, FormRules } from 'element-plus';
 import { Search, FullScreen } from '@element-plus/icons-vue';
 import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
 import { goalManagementApi } from '/@/api/goalManagement';
 export default defineComponent({
 	components: { DailogSearchUser },
 	setup(props, { emit }) {
+		const ruleFormRef = ref<FormInstance>();
 		const form = ref({
 			exceptionInfo: '',
 			repairStatus: '',
 			repairMemo: '',
 			repairPersonId: '',
-			repairPersonName:'',
-			repairPersonDepartmentId: "",
+			repairPersonName: '',
+			repairPersonDepartmentId: '',
 			repairStartDate: '',
 			repairEndDate: '',
 		});
@@ -85,13 +108,13 @@
 		const disabled = ref(false);
 		const dialogVisible = ref(false);
 		const openDailog = (title: string, data: any) => {
-			department()
+			department();
 			dialogVisible.value = true;
 			titles.value = `${title}设备维修`;
 			if (title == '查看') {
 				disabled.value = true;
 				form.value = data;
-			} else if(title == '修改') {
+			} else if (title == '修改') {
 				disabled.value = false;
 				form.value = data;
 			}
@@ -105,36 +128,35 @@
 			form.value.repairPersonId = val.uid;
 			form.value.repairPersonName = val.realName;
 		};
+		const rules = reactive<FormRules>({
+			exceptionInfo: [{ required: true, message: '设施异常项不能为空', trigger: 'blur' }],
+			repairStatus: [{ required: true, message: '维修状态不能为空', trigger: 'blur' }],
+			repairMemo: [{ required: true, message: '维修情况不能为空', trigger: 'blur' }],
+			// repairPersonName: [{ required: true, message: '维修负责人不能为空', trigger: 'blur' }],
+			repairPersonDepartmentId: [{ required: true, message: '维修负责人单位不能为空', trigger: 'blur' }],
+			repairStartDate: [{ required: true, message: '维修开始日期不能为空', trigger: 'blur' }],
+			repairEndDate: [{ required: true, message: '维修结束日期不能为空', trigger: 'blur' }],
+		});
 		// 提交
-		const submitForm = () => {
-			dialogVisible.value = false;
-			emit('onRepair', form.value);
-			form.value = {
-				exceptionInfo: '',
-				repairStatus: '',
-				repairMemo: '',
-				repairPersonId: '',
-				repairPersonName:'',
-				repairPersonDepartmentId: "",
-				repairStartDate: '',
-				repairEndDate: '',
-			};
+		const submitForm = async (formEl: FormInstance | undefined) => {
+			if (!formEl) return;
+			await formEl.validate((valid, fields) => {
+				if (valid) {
+					emit('onRepair', form.value);
+					dialogVisible.value = false;
+				} else {
+					console.log('error submit!', fields);
+				}
+			});
 			disabled.value = false;
 		};
 		//  取消
-		const resetForm = () => {
-			dialogVisible.value = false;
-			form.value = {
-				exceptionInfo: '',
-				repairStatus: '',
-				repairMemo: '',
-				repairPersonId: '',
-				repairPersonName:"",
-				repairPersonDepartmentId: "",
-				repairStartDate: '',
-				repairEndDate: '',
-			};
+		const resetForm = (formEl: FormInstance | undefined) => {
+			if (!formEl) return;
+			formEl.clearValidate();
 			disabled.value = false;
+			dialogVisible.value = false;
+			form.value = {};
 		};
 		//全屏
 		const full = ref(false);
@@ -145,7 +167,7 @@
 				full.value = false;
 			}
 		};
-				//部门树
+		//部门树
 		const department = () => {
 			goalManagementApi()
 				.getTreedepartment()
@@ -164,6 +186,8 @@
 		};
 		const data = ref();
 		return {
+			rules,
+			ruleFormRef,
 			department,
 			propse,
 			data,
diff --git a/src/components/equipmentDailog/standardDailog.vue b/src/components/equipmentDailog/standardDailog.vue
index a1f901e..7964ba0 100644
--- a/src/components/equipmentDailog/standardDailog.vue
+++ b/src/components/equipmentDailog/standardDailog.vue
@@ -1,14 +1,14 @@
 <template>
-	<el-dialog v-model="dialogVisible" :fullscreen="full" :before-close="resetForm" :title="titles" width="50%" draggable>
-		<el-button @click="toggleFullscreen" size="small"  class="pot" :icon="FullScreen"></el-button>
-		<el-form :model="form" label-width="120px" :disabled="disabled">
+	<el-dialog v-model="dialogVisible" :fullscreen="full" @close="resetForm(ruleFormRef)" :title="titles" width="50%" draggable>
+		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
+		<el-form :model="form" ref="ruleFormRef" :rules="rules" label-width="120px" :disabled="disabled">
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="序号" size="default">
+					<el-form-item label="序号" size="default" prop="indexNum">
 						<el-input v-model="form.indexNum" placeholder="请填写序号" />
 					</el-form-item>
 				</el-col>
-				<el-col :span="11" :offset="2" size="default">
+				<el-col :span="11" :offset="2" size="default" prop="checkContent">
 					<el-form-item label="检查内容">
 						<el-input v-model="form.checkContent" placeholder="请填写检查内容" />
 					</el-form-item>
@@ -16,24 +16,24 @@
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="检查指标" size="default">
+					<el-form-item label="检查指标" size="default" prop="checkTarget">
 						<el-input v-model="form.checkTarget" placeholder="请填写检查指标" />
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="单位" size="default">
+					<el-form-item label="单位" size="default" prop="unit">
 						<el-input v-model="form.unit" placeholder="请填写单位" />
 					</el-form-item>
 				</el-col>
 			</el-row>
 			<el-row>
 				<el-col :span="11">
-					<el-form-item label="巡检部位" size="default">
+					<el-form-item label="巡检部位" size="default" prop="checkPart">
 						<el-input v-model="form.checkPart" placeholder="请填写巡检部位" />
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
-					<el-form-item label="频次" size="default">
+					<el-form-item label="频次" size="default" prop="rate">
 						<el-input v-model="form.rate" placeholder="请填写频次" />
 					</el-form-item>
 				</el-col>
@@ -42,8 +42,8 @@
 		<template #footer>
 			<span class="dialog-footer">
 				<!-- <el-button type="primary" @click="dialogVisible = false" size="default">继续添加</el-button> -->
-				<el-button @click="resetForm" size="default">关闭</el-button>
-				<el-button type="primary" @click="submitForm" size="default">确定</el-button>
+				<el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
+				<el-button type="primary" @click="submitForm(ruleFormRef)" size="default">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
@@ -51,17 +51,19 @@
 </template>
 <script lang="ts">
 import { defineComponent, ref, reactive } from 'vue';
+import type { FormInstance, FormRules } from 'element-plus';
 import { Search, FullScreen } from '@element-plus/icons-vue';
 import DailogSearchUser from '/@/components/DailogSearchUser/index.vue';
 export default defineComponent({
 	components: { DailogSearchUser },
 	setup(props, { emit }) {
+		const ruleFormRef = ref<FormInstance>();
 		const form = ref({
 			indexNum: '',
 			checkContent: '',
 			checkTarget: '',
 			unit: '',
-			checkPart: "",
+			checkPart: '',
 			rate: '',
 		});
 		// 开启弹窗
@@ -74,7 +76,7 @@
 			if (title == '查看') {
 				disabled.value = true;
 				form.value = data;
-			} else if(title=='修改'){
+			} else if (title == '修改') {
 				disabled.value = false;
 				form.value = data;
 			}
@@ -84,32 +86,34 @@
 		const openUser = () => {
 			Show.value.openDailog();
 		};
+		const rules = reactive<FormRules>({
+			indexNum: [{ required: true, message: '序号不能为空', trigger: 'blur' }],
+			checkContent: [{ required: true, message: '检查内容不能为空', trigger: 'blur' }],
+			checkTarget: [{ required: true, message: '检查指标不能为空', trigger: 'blur' }],
+			unit: [{ required: true, message: '单位不能为空', trigger: 'blur' }],
+			checkPart: [{ required: true, message: '巡检部位不能为空', trigger: 'blur' }],
+			rate: [{ required: true, message: '频次不能为空', trigger: 'blur' }],
+		});
 		// 提交
-		const submitForm = () => {
-			dialogVisible.value = false;
-			emit('onStand', form.value);
-			form.value = {
-				indexNum: '',
-				checkContent: '',
-				checkTarget: '',
-				unit: '',
-				checkPart: "",
-				rate: '',
-			};
+		const submitForm = async (formEl: FormInstance | undefined) => {
+			if (!formEl) return;
+			await formEl.validate((valid, fields) => {
+				if (valid) {
+					emit('onStand', form.value);
+					dialogVisible.value = false;
+				} else {
+					console.log('error submit!', fields);
+				}
+			});
 			disabled.value = false;
 		};
 		//   取消
-		const resetForm = () => {
+		const resetForm = (formEl: FormInstance | undefined) => {
+			if (!formEl) return;
+			formEl.clearValidate();
 			dialogVisible.value = false;
-			form.value = {
-				indexNum: '',
-				checkContent: '',
-				checkTarget: '',
-				unit: '',
-				checkPart: "",
-				rate: '',
-			};
 			disabled.value = false;
+			form.value = {};
 		};
 		//全屏
 		const full = ref(false);
@@ -121,6 +125,8 @@
 			}
 		};
 		return {
+			rules,
+			ruleFormRef,
 			form,
 			titles,
 			disabled,
diff --git a/src/components/iconSelector/index.vue b/src/components/iconSelector/index.vue
index db142ba..07de786 100644
--- a/src/components/iconSelector/index.vue
+++ b/src/components/iconSelector/index.vue
@@ -1,44 +1,65 @@
 <template>
-    <div class="icon-selector w100 h100">
-        <el-popover placement="bottom" :width="fontIconWidth" trigger="click" transition="el-zoom-in-top" popper-class="icon-selector-popper" @show="onPopoverShow">
-            <template #reference>
-                <el-input v-model="fontIconSearch" :placeholder="fontIconPlaceholder" :clearable="clearable" :disabled="disabled" :size="size" ref="inputWidthRef" @clear="onClearFontIcon" @focus="onIconFocus" @blur="onIconBlur">
-                    <template #prepend>
-                        <SvgIcon :name="fontIconPrefix === '' ? prepend : fontIconPrefix" class="font14" v-if="fontIconPrefix === '' ? prepend?.indexOf('ele-') > -1 : fontIconPrefix?.indexOf('ele-') > -1" />
-                        <i v-else :class="fontIconPrefix === '' ? prepend : fontIconPrefix" class="font14"></i>
-                    </template>
-                </el-input>
-            </template>
-            <template #default>
-                <div class="icon-selector-warp">
-                    <div class="icon-selector-warp-title flex">
-                        <div class="flex-auto">{{ title }}</div>
-                        <div class="icon-selector-warp-title-tab" v-if="type === 'all'">
-                            <span :class="{ 'span-active': fontIconType === 'ali' }" @click="onIconChange('ali')" class="ml10" title="iconfont 图标">ali</span>
-                            <span :class="{ 'span-active': fontIconType === 'ele' }" @click="onIconChange('ele')" class="ml10" title="elementPlus 图标">ele</span>
-                            <span :class="{ 'span-active': fontIconType === 'awe' }" @click="onIconChange('awe')" class="ml10" title="fontawesome 图标">awe</span>
-                        </div>
-                    </div>
-                    <div class="icon-selector-warp-row">
-                        <el-scrollbar ref="selectorScrollbarRef">
-                            <el-row :gutter="10" v-if="fontIconSheetsFilterList.length > 0">
-                                <el-col :xs="6" :sm="4" :md="4" :lg="4" :xl="4" @click="onColClick(v)" v-for="(v, k) in fontIconSheetsFilterList" :key="k">
-                                    <div class="icon-selector-warp-item" :class="{ 'icon-selector-active': fontIconPrefix === v }">
-                                        <div class="flex-margin">
-                                            <div class="icon-selector-warp-item-value">
-                                                <SvgIcon :name="v" />
-                                            </div>
-                                        </div>
-                                    </div>
-                                </el-col>
-                            </el-row>
-                            <el-empty :image-size="100" v-if="fontIconSheetsFilterList.length <= 0" :description="emptyDescription"></el-empty>
-                        </el-scrollbar>
-                    </div>
-                </div>
-            </template>
-        </el-popover>
-    </div>
+	<div class="icon-selector w100 h100">
+		<el-popover
+			placement="bottom"
+			:width="fontIconWidth"
+			trigger="click"
+			transition="el-zoom-in-top"
+			popper-class="icon-selector-popper"
+			@show="onPopoverShow"
+		>
+			<template #reference>
+				<el-input
+					v-model="fontIconSearch"
+					:placeholder="fontIconPlaceholder"
+					:clearable="clearable"
+					:disabled="disabled"
+					:size="size"
+					ref="inputWidthRef"
+					@clear="onClearFontIcon"
+					@focus="onIconFocus"
+					@blur="onIconBlur"
+				>
+					<template #prepend>
+						<SvgIcon
+							:name="fontIconPrefix === '' ? prepend : fontIconPrefix"
+							class="font14"
+							v-if="fontIconPrefix === '' ? prepend?.indexOf('ele-') > -1 : fontIconPrefix?.indexOf('ele-') > -1"
+						/>
+						<i v-else :class="fontIconPrefix === '' ? prepend : fontIconPrefix" class="font14"></i>
+					</template>
+				</el-input>
+			</template>
+			<template #default>
+				<div class="icon-selector-warp">
+					<div class="icon-selector-warp-title flex">
+						<div class="flex-auto">{{ title }}</div>
+						<div class="icon-selector-warp-title-tab" v-if="type === 'all'">
+							<span :class="{ 'span-active': fontIconType === 'ali' }" @click="onIconChange('ali')" class="ml10" title="iconfont 图标">ali</span>
+							<span :class="{ 'span-active': fontIconType === 'ele' }" @click="onIconChange('ele')" class="ml10" title="elementPlus 图标">ele</span>
+							<span :class="{ 'span-active': fontIconType === 'awe' }" @click="onIconChange('awe')" class="ml10" title="fontawesome 图标">awe</span>
+						</div>
+					</div>
+					<div class="icon-selector-warp-row">
+						<el-scrollbar ref="selectorScrollbarRef">
+							<el-row :gutter="10" v-if="fontIconSheetsFilterList.length > 0">
+								<el-col :xs="6" :sm="4" :md="4" :lg="4" :xl="4" @click="onColClick(v)" v-for="(v, k) in fontIconSheetsFilterList" :key="k">
+									<div class="icon-selector-warp-item" :class="{ 'icon-selector-active': fontIconPrefix === v }">
+										<div class="flex-margin">
+											<div class="icon-selector-warp-item-value">
+												<SvgIcon :name="v" />
+											</div>
+										</div>
+									</div>
+								</el-col>
+							</el-row>
+							<el-empty :image-size="100" v-if="fontIconSheetsFilterList.length <= 0" :description="emptyDescription"></el-empty>
+						</el-scrollbar>
+					</div>
+				</div>
+			</template>
+		</el-popover>
+	</div>
 </template>
 
 <script lang="ts">
@@ -46,186 +67,186 @@
 import initIconfont from '/@/utils/getStyleSheets';
 
 export default defineComponent({
-    name: 'iconSelector',
-    emits: ['update:modelValue', 'get', 'clear'],
-    props: {
-        // 输入框前置内容
-        prepend: {
-            type: String,
-            default: () => 'ele-Pointer'
-        },
-        // 输入框占位文本
-        placeholder: {
-            type: String,
-            default: () => '请输入内容搜索图标或者选择图标'
-        },
-        // 输入框占位文本
-        size: {
-            type: String,
-            default: () => 'default'
-        },
-        // 弹窗标题
-        title: {
-            type: String,
-            default: () => '请选择图标'
-        },
-        // icon 图标类型
-        type: {
-            type: String,
-            default: () => 'ele'
-        },
-        // 禁用
-        disabled: {
-            type: Boolean,
-            default: () => false
-        },
-        // 是否可清空
-        clearable: {
-            type: Boolean,
-            default: () => true
-        },
-        // 自定义空状态描述文字
-        emptyDescription: {
-            type: String,
-            default: () => '无相关图标'
-        },
-        // 双向绑定值,默认为 modelValue,
-        // 参考:https://v3.cn.vuejs.org/guide/migration/v-model.html#%E8%BF%81%E7%A7%BB%E7%AD%96%E7%95%A5
-        // 参考:https://v3.cn.vuejs.org/guide/component-custom-events.html#%E5%A4%9A%E4%B8%AA-v-model-%E7%BB%91%E5%AE%9A
-        modelValue: String
-    },
-    setup(props, { emit }) {
-        const inputWidthRef = ref();
-        const selectorScrollbarRef = ref();
-        const state = reactive({
-            fontIconPrefix: '',
-            fontIconWidth: 0,
-            fontIconSearch: '',
-            fontIconTabsIndex: 0,
-            fontIconSheetsList: [],
-            fontIconPlaceholder: '',
-            fontIconType: 'ali',
-            fontIconShow: true
-        });
-        // 处理 input 获取焦点时,modelValue 有值时,改变 input 的 placeholder 值
-        const onIconFocus = () => {
-            if (!props.modelValue) return false;
-            state.fontIconSearch = '';
-            state.fontIconPlaceholder = props.modelValue;
-        };
-        // 处理 input 失去焦点时,为空将清空 input 值,为点击选中图标时,将取原先值
-        const onIconBlur = () => {
-            setTimeout(() => {
-                const icon = state.fontIconSheetsList.filter((icon: string) => icon === state.fontIconSearch);
-                if (icon.length <= 0) state.fontIconSearch = '';
-            }, 300);
-        };
-        // 处理 icon 双向绑定数值回显
-        const initModeValueEcho = () => {
-            if (props.modelValue === '') return ((<string | undefined>state.fontIconPlaceholder) = props.placeholder);
-            (<string | undefined>state.fontIconPlaceholder) = props.modelValue;
-            (<string | undefined>state.fontIconPrefix) = props.modelValue;
-        };
-        // 处理 icon type 类型为 all 时,类型 ali、ele、awe 回显问题
-        const initFontIconTypeEcho = () => {
-            if ((<any>props.modelValue)?.indexOf('iconfont') > -1) onIconChange('ali');
-            else if ((<any>props.modelValue)?.indexOf('ele-') > -1) onIconChange('ele');
-            else if ((<any>props.modelValue)?.indexOf('fa') > -1) onIconChange('awe');
-            else onIconChange('ali');
-        };
-        // 图标搜索及图标数据显示
-        const fontIconSheetsFilterList = computed(() => {
-            if (!state.fontIconSearch) return state.fontIconSheetsList;
-            let search = state.fontIconSearch.trim().toLowerCase();
-            return state.fontIconSheetsList.filter((item: any) => {
-                if (item.toLowerCase().indexOf(search) !== -1) return item;
-            });
-        });
-        // 获取 input 的宽度
-        const getInputWidth = () => {
-            nextTick(() => {
-                state.fontIconWidth = inputWidthRef.value.$el.offsetWidth;
-            });
-        };
-        // 监听页面宽度改变
-        const initResize = () => {
-            window.addEventListener('resize', () => {
-                getInputWidth();
-            });
-        };
-        // 初始化数据
-        const initFontIconData = async (type: string) => {
-            state.fontIconSheetsList = [];
-            if (type === 'ali') {
-                await initIconfont.ali().then((res: any) => {
-                    // 阿里字体图标使用 `iconfont xxx`
-                    state.fontIconSheetsList = res.map((i: string) => `iconfont ${i}`);
-                });
-            } else if (type === 'ele') {
-                await initIconfont.ele().then((res: any) => {
-                    state.fontIconSheetsList = res;
-                });
-            } else if (type === 'awe') {
-                await initIconfont.awe().then((res: any) => {
-                    // fontawesome字体图标使用 `fa xxx`
-                    state.fontIconSheetsList = res.map((i: string) => `fa ${i}`);
-                });
-            }
-            // 初始化 input 的 placeholder
-            // 参考(单项数据流):https://cn.vuejs.org/v2/guide/components-props.html?#%E5%8D%95%E5%90%91%E6%95%B0%E6%8D%AE%E6%B5%81
-            state.fontIconPlaceholder = props.placeholder;
-            // 初始化双向绑定回显
-            initModeValueEcho();
-        };
-        // 图标点击切换
-        const onIconChange = (type: string) => {
-            state.fontIconType = type;
-            initFontIconData(type);
-        };
-        // 获取当前点击的 icon 图标
-        const onColClick = (v: any) => {
-            state.fontIconPlaceholder = v;
-            state.fontIconPrefix = v;
-            emit('get', state.fontIconPrefix);
-            emit('update:modelValue', state.fontIconPrefix);
-        };
-        // 清空当前点击的 icon 图标
-        const onClearFontIcon = () => {
-            state.fontIconPrefix = '';
-            emit('clear', state.fontIconPrefix);
-            emit('update:modelValue', state.fontIconPrefix);
-        };
-        // 监听 Popover 打开,用于双向绑定值回显
-        const onPopoverShow = () => {
-            initModeValueEcho();
-            initFontIconTypeEcho();
-        };
-        // 页面加载时
-        onMounted(() => {
-            initModeValueEcho();
-            initResize();
-            getInputWidth();
-        });
+	name: 'iconSelector',
+	emits: ['update:modelValue', 'get', 'clear'],
+	props: {
+		// 输入框前置内容
+		prepend: {
+			type: String,
+			default: () => 'ele-Pointer',
+		},
+		// 输入框占位文本
+		placeholder: {
+			type: String,
+			default: () => '请输入内容搜索图标或者选择图标',
+		},
+		// 输入框占位文本
+		size: {
+			type: String,
+			default: () => 'default',
+		},
+		// 弹窗标题
+		title: {
+			type: String,
+			default: () => '请选择图标',
+		},
+		// icon 图标类型
+		type: {
+			type: String,
+			default: () => 'ele',
+		},
+		// 禁用
+		disabled: {
+			type: Boolean,
+			default: () => false,
+		},
+		// 是否可清空
+		clearable: {
+			type: Boolean,
+			default: () => true,
+		},
+		// 自定义空状态描述文字
+		emptyDescription: {
+			type: String,
+			default: () => '无相关图标',
+		},
+		// 双向绑定值,默认为 modelValue,
+		// 参考:https://v3.cn.vuejs.org/guide/migration/v-model.html#%E8%BF%81%E7%A7%BB%E7%AD%96%E7%95%A5
+		// 参考:https://v3.cn.vuejs.org/guide/component-custom-events.html#%E5%A4%9A%E4%B8%AA-v-model-%E7%BB%91%E5%AE%9A
+		modelValue: String,
+	},
+	setup(props, { emit }) {
+		const inputWidthRef = ref();
+		const selectorScrollbarRef = ref();
+		const state = reactive({
+			fontIconPrefix: '',
+			fontIconWidth: 0,
+			fontIconSearch: '',
+			fontIconTabsIndex: 0,
+			fontIconSheetsList: [],
+			fontIconPlaceholder: '',
+			fontIconType: 'ali',
+			fontIconShow: true,
+		});
+		// 处理 input 获取焦点时,modelValue 有值时,改变 input 的 placeholder 值
+		const onIconFocus = () => {
+			if (!props.modelValue) return false;
+			state.fontIconSearch = '';
+			state.fontIconPlaceholder = props.modelValue;
+		};
+		// 处理 input 失去焦点时,为空将清空 input 值,为点击选中图标时,将取原先值
+		const onIconBlur = () => {
+			setTimeout(() => {
+				const icon = state.fontIconSheetsList.filter((icon: string) => icon === state.fontIconSearch);
+				if (icon.length <= 0) state.fontIconSearch = '';
+			}, 300);
+		};
+		// 处理 icon 双向绑定数值回显
+		const initModeValueEcho = () => {
+			if (props.modelValue === '') return ((<string | undefined>state.fontIconPlaceholder) = props.placeholder);
+			(<string | undefined>state.fontIconPlaceholder) = props.modelValue;
+			(<string | undefined>state.fontIconPrefix) = props.modelValue;
+		};
+		// 处理 icon type 类型为 all 时,类型 ali、ele、awe 回显问题
+		const initFontIconTypeEcho = () => {
+			if ((<any>props.modelValue)?.indexOf('iconfont') > -1) onIconChange('ali');
+			else if ((<any>props.modelValue)?.indexOf('ele-') > -1) onIconChange('ele');
+			else if ((<any>props.modelValue)?.indexOf('fa') > -1) onIconChange('awe');
+			else onIconChange('ali');
+		};
+		// 图标搜索及图标数据显示
+		const fontIconSheetsFilterList = computed(() => {
+			if (!state.fontIconSearch) return state.fontIconSheetsList;
+			let search = state.fontIconSearch.trim().toLowerCase();
+			return state.fontIconSheetsList.filter((item: any) => {
+				if (item.toLowerCase().indexOf(search) !== -1) return item;
+			});
+		});
+		// 获取 input 的宽度
+		const getInputWidth = () => {
+			nextTick(() => {
+				state.fontIconWidth = inputWidthRef.value.$el.offsetWidth;
+			});
+		};
+		// 监听页面宽度改变
+		const initResize = () => {
+			window.addEventListener('resize', () => {
+				getInputWidth();
+			});
+		};
+		// 初始化数据
+		const initFontIconData = async (type: string) => {
+			state.fontIconSheetsList = [];
+			if (type === 'ali') {
+				await initIconfont.ali().then((res: any) => {
+					// 阿里字体图标使用 `iconfont xxx`
+					state.fontIconSheetsList = res.map((i: string) => `iconfont ${i}`);
+				});
+			} else if (type === 'ele') {
+				await initIconfont.ele().then((res: any) => {
+					state.fontIconSheetsList = res;
+				});
+			} else if (type === 'awe') {
+				await initIconfont.awe().then((res: any) => {
+					// fontawesome字体图标使用 `fa xxx`
+					state.fontIconSheetsList = res.map((i: string) => `fa ${i}`);
+				});
+			}
+			// 初始化 input 的 placeholder
+			// 参考(单项数据流):https://cn.vuejs.org/v2/guide/components-props.html?#%E5%8D%95%E5%90%91%E6%95%B0%E6%8D%AE%E6%B5%81
+			state.fontIconPlaceholder = props.placeholder;
+			// 初始化双向绑定回显
+			initModeValueEcho();
+		};
+		// 图标点击切换
+		const onIconChange = (type: string) => {
+			state.fontIconType = type;
+			initFontIconData(type);
+		};
+		// 获取当前点击的 icon 图标
+		const onColClick = (v: any) => {
+			state.fontIconPlaceholder = v;
+			state.fontIconPrefix = v;
+			emit('get', state.fontIconPrefix);
+			emit('update:modelValue', state.fontIconPrefix);
+		};
+		// 清空当前点击的 icon 图标
+		const onClearFontIcon = () => {
+			state.fontIconPrefix = '';
+			emit('clear', state.fontIconPrefix);
+			emit('update:modelValue', state.fontIconPrefix);
+		};
+		// 监听 Popover 打开,用于双向绑定值回显
+		const onPopoverShow = () => {
+			initModeValueEcho();
+			initFontIconTypeEcho();
+		};
+		// 页面加载时
+		onMounted(() => {
+			initModeValueEcho();
+			initResize();
+			getInputWidth();
+		});
 
-        // 监听双向绑定 modelValue 的变化
-        watch(
-            () => props.modelValue,
-            () => {
-                initModeValueEcho();
-            }
-        );
-        return {
-            inputWidthRef,
-            selectorScrollbarRef,
-            fontIconSheetsFilterList,
-            onColClick,
-            onIconChange,
-            onClearFontIcon,
-            onIconFocus,
-            onIconBlur,
-            onPopoverShow,
-            ...toRefs(state)
-        };
-    }
+		// 监听双向绑定 modelValue 的变化
+		watch(
+			() => props.modelValue,
+			() => {
+				initModeValueEcho();
+			}
+		);
+		return {
+			inputWidthRef,
+			selectorScrollbarRef,
+			fontIconSheetsFilterList,
+			onColClick,
+			onIconChange,
+			onClearFontIcon,
+			onIconFocus,
+			onIconBlur,
+			onPopoverShow,
+			...toRefs(state),
+		};
+	},
 });
 </script>
diff --git a/src/layout/navBars/breadcrumb/user.vue b/src/layout/navBars/breadcrumb/user.vue
index bad2b59..7601048 100644
--- a/src/layout/navBars/breadcrumb/user.vue
+++ b/src/layout/navBars/breadcrumb/user.vue
@@ -1,79 +1,79 @@
 <template>
     <div class="layout-navbars-breadcrumb-user pr15" :style="{ flex: layoutUserFlexNum }">
         <div class="logo">
-            <img src="src/assets/menu/companyLogo.jpg">
-            <span style="font-size: 16px;color: #333;font-weight: bolder"> | {{systemName}}</span>
+            <img src="../../../assets/menu/companyLogo.jpg" />
+            <span style="font-size: 16px; color: #333; font-weight: bolder"> | {{ systemName }}</span>
         </div>
-        <div style="display: flex;padding-right: 5px">
-        <el-dropdown :show-timeout="70" :hide-timeout="50" trigger="click" @command="onComponentSizeChange">
-            <div class="layout-navbars-breadcrumb-user-icon">
-                <i class="iconfont icon-ziti" :title="$t('message.user.title0')"></i>
+        <div style="display: flex; padding-right: 5px">
+            <el-dropdown :show-timeout="70" :hide-timeout="50" trigger="click" @command="onComponentSizeChange">
+                <div class="layout-navbars-breadcrumb-user-icon">
+                    <i class="iconfont icon-ziti" :title="$t('message.user.title0')"></i>
+                </div>
+                <template #dropdown>
+                    <el-dropdown-menu>
+                        <el-dropdown-item command="large" :disabled="disabledSize === 'large'">{{ $t('message.user.dropdownLarge') }}</el-dropdown-item>
+                        <el-dropdown-item command="default" :disabled="disabledSize === 'default'">{{ $t('message.user.dropdownDefault') }}</el-dropdown-item>
+                        <el-dropdown-item command="small" :disabled="disabledSize === 'small'">{{ $t('message.user.dropdownSmall') }}</el-dropdown-item>
+                    </el-dropdown-menu>
+                </template>
+            </el-dropdown>
+            <!--        <el-dropdown :show-timeout="70" :hide-timeout="50" trigger="click" @command="onLanguageChange">-->
+            <!--            <div class="layout-navbars-breadcrumb-user-icon">-->
+            <!--                <i class="iconfont" :class="disabledI18n === 'en' ? 'icon-fuhao-yingwen' : 'icon-fuhao-zhongwen'" :title="$t('message.user.title1')"></i>-->
+            <!--            </div>-->
+            <!--            <template #dropdown>-->
+            <!--                <el-dropdown-menu>-->
+            <!--                    <el-dropdown-item command="zh-cn" :disabled="disabledI18n === 'zh-cn'">简体中文</el-dropdown-item>-->
+            <!--                    <el-dropdown-item command="en" :disabled="disabledI18n === 'en'">English</el-dropdown-item>-->
+            <!--                    <el-dropdown-item command="zh-tw" :disabled="disabledI18n === 'zh-tw'">繁體中文</el-dropdown-item>-->
+            <!--                </el-dropdown-menu>-->
+            <!--            </template>-->
+            <!--        </el-dropdown>-->
+            <!--        <div class="layout-navbars-breadcrumb-user-icon" @click="onSearchClick">-->
+            <!--            <el-icon :title="$t('message.user.title2')">-->
+            <!--                <ele-Search />-->
+            <!--            </el-icon>-->
+            <!--        </div>-->
+            <!--        <div class="layout-navbars-breadcrumb-user-icon" @click="onLayoutSetingClick">-->
+            <!--            <i class="icon-skin iconfont" :title="$t('message.user.title3')"></i>-->
+            <!--        </div>-->
+            <!--        <div class="layout-navbars-breadcrumb-user-icon">-->
+            <!--            <el-popover placement="bottom" trigger="click" transition="el-zoom-in-top" :width="300" :persistent="false">-->
+            <!--                <template #reference>-->
+            <!--                    <el-badge :is-dot="true">-->
+            <!--                        <el-icon :title="$t('message.user.title4')">-->
+            <!--                            <ele-Bell />-->
+            <!--                        </el-icon>-->
+            <!--                    </el-badge>-->
+            <!--                </template>-->
+            <!--                <template #default>-->
+            <!--                    <UserNews />-->
+            <!--                </template>-->
+            <!--            </el-popover>-->
+            <!--        </div>-->
+            <div class="layout-navbars-breadcrumb-user-icon mr10" @click="onScreenfullClick">
+                <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')" :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i>
             </div>
-            <template #dropdown>
-                <el-dropdown-menu>
-                    <el-dropdown-item command="large" :disabled="disabledSize === 'large'">{{ $t('message.user.dropdownLarge') }}</el-dropdown-item>
-                    <el-dropdown-item command="default" :disabled="disabledSize === 'default'">{{ $t('message.user.dropdownDefault') }}</el-dropdown-item>
-                    <el-dropdown-item command="small" :disabled="disabledSize === 'small'">{{ $t('message.user.dropdownSmall') }}</el-dropdown-item>
-                </el-dropdown-menu>
-            </template>
-        </el-dropdown>
-<!--        <el-dropdown :show-timeout="70" :hide-timeout="50" trigger="click" @command="onLanguageChange">-->
-<!--            <div class="layout-navbars-breadcrumb-user-icon">-->
-<!--                <i class="iconfont" :class="disabledI18n === 'en' ? 'icon-fuhao-yingwen' : 'icon-fuhao-zhongwen'" :title="$t('message.user.title1')"></i>-->
-<!--            </div>-->
-<!--            <template #dropdown>-->
-<!--                <el-dropdown-menu>-->
-<!--                    <el-dropdown-item command="zh-cn" :disabled="disabledI18n === 'zh-cn'">简体中文</el-dropdown-item>-->
-<!--                    <el-dropdown-item command="en" :disabled="disabledI18n === 'en'">English</el-dropdown-item>-->
-<!--                    <el-dropdown-item command="zh-tw" :disabled="disabledI18n === 'zh-tw'">繁體中文</el-dropdown-item>-->
-<!--                </el-dropdown-menu>-->
-<!--            </template>-->
-<!--        </el-dropdown>-->
-<!--        <div class="layout-navbars-breadcrumb-user-icon" @click="onSearchClick">-->
-<!--            <el-icon :title="$t('message.user.title2')">-->
-<!--                <ele-Search />-->
-<!--            </el-icon>-->
-<!--        </div>-->
-        <!--        <div class="layout-navbars-breadcrumb-user-icon" @click="onLayoutSetingClick">-->
-        <!--            <i class="icon-skin iconfont" :title="$t('message.user.title3')"></i>-->
-        <!--        </div>-->
-        <!--        <div class="layout-navbars-breadcrumb-user-icon">-->
-        <!--            <el-popover placement="bottom" trigger="click" transition="el-zoom-in-top" :width="300" :persistent="false">-->
-        <!--                <template #reference>-->
-        <!--                    <el-badge :is-dot="true">-->
-        <!--                        <el-icon :title="$t('message.user.title4')">-->
-        <!--                            <ele-Bell />-->
-        <!--                        </el-icon>-->
-        <!--                    </el-badge>-->
-        <!--                </template>-->
-        <!--                <template #default>-->
-        <!--                    <UserNews />-->
-        <!--                </template>-->
-        <!--            </el-popover>-->
-        <!--        </div>-->
-        <div class="layout-navbars-breadcrumb-user-icon mr10" @click="onScreenfullClick">
-            <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')" :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i>
-        </div>
-        <el-dropdown :show-timeout="70" :hide-timeout="50" @command="onHandleCommandClick">
-            <span class="layout-navbars-breadcrumb-user-link">
-                <img :src="userInfos.photo" class="layout-navbars-breadcrumb-user-link-photo mr5" />
-                {{ userInfos.userName }}
-                <el-icon class="el-icon--right">
-                    <ele-ArrowDown />
-                </el-icon>
-            </span>
-            <template #dropdown>
-                <el-dropdown-menu>
-                    <el-dropdown-item command="/homeMenu">{{ $t('message.user.dropdown1') }}</el-dropdown-item>
-                    <!--                    <el-dropdown-item command="wareHouse">{{ $t('message.user.dropdown6') }}</el-dropdown-item>-->
-<!--                    <el-dropdown-item command="/personal">{{ $t('message.user.dropdown2') }}</el-dropdown-item>-->
-                    <!--					<el-dropdown-item command="/404">{{ $t('message.user.dropdown3') }}</el-dropdown-item>-->
-                    <!--					<el-dropdown-item command="/401">{{ $t('message.user.dropdown4') }}</el-dropdown-item>-->
-                    <el-dropdown-item divided command="logOut">{{ $t('message.user.dropdown5') }}</el-dropdown-item>
-                </el-dropdown-menu>
-            </template>
-        </el-dropdown>
-        <Search ref="searchRef" />
+            <el-dropdown :show-timeout="70" :hide-timeout="50" @command="onHandleCommandClick">
+                <span class="layout-navbars-breadcrumb-user-link">
+                    <img :src="userInfos.photo" class="layout-navbars-breadcrumb-user-link-photo mr5" />
+                    {{ userInfos.userName }}
+                    <el-icon class="el-icon--right">
+                        <ele-ArrowDown />
+                    </el-icon>
+                </span>
+                <template #dropdown>
+                    <el-dropdown-menu>
+                        <el-dropdown-item command="/homeMenu">{{ $t('message.user.dropdown1') }}</el-dropdown-item>
+                        <!--                    <el-dropdown-item command="wareHouse">{{ $t('message.user.dropdown6') }}</el-dropdown-item>-->
+                        <!--                    <el-dropdown-item command="/personal">{{ $t('message.user.dropdown2') }}</el-dropdown-item>-->
+                        <!--					<el-dropdown-item command="/404">{{ $t('message.user.dropdown3') }}</el-dropdown-item>-->
+                        <!--					<el-dropdown-item command="/401">{{ $t('message.user.dropdown4') }}</el-dropdown-item>-->
+                        <el-dropdown-item divided command="logOut">{{ $t('message.user.dropdown5') }}</el-dropdown-item>
+                    </el-dropdown-menu>
+                </template>
+            </el-dropdown>
+            <Search ref="searchRef" />
         </div>
     </div>
 </template>
@@ -97,15 +97,10 @@
 import { ElMessage } from 'element-plus';
 
 const menuApi = useMenuApi();
-import {
-    backEndComponent,
-    getBackEndControlRoutes,
-    initBackEndControlRoutes,
-    setAddRoute, setFilterMenuAndCacheTagsViewRoutes
-} from '../../../router/backEnd';
-import {NextLoading} from "/@/utils/loading";
-import {useRequestOldRoutes} from "/@/stores/requestOldRoutes";
-import {dynamicRoutes} from "/@/router/route";
+import { backEndComponent, getBackEndControlRoutes, initBackEndControlRoutes, setAddRoute, setFilterMenuAndCacheTagsViewRoutes } from '../../../router/backEnd';
+import { NextLoading } from '/@/utils/loading';
+import { useRequestOldRoutes } from '/@/stores/requestOldRoutes';
+import { dynamicRoutes } from '/@/router/route';
 
 export default defineComponent({
     name: 'layoutBreadcrumbUser',
@@ -254,24 +249,24 @@
             }
         };
 
-        const getSysName = async()=>{
+        const getSysName = async () => {
             if (window.nextLoading === undefined) NextLoading.start();
             if (!Session.get('token')) return false;
             const res = await menuApi.getMenuAdmin(Session.get('projectId') === null ? '' : Session.get('projectId'));
-            if(res.data.code === '200'){
+            if (res.data.code === '200') {
                 state.systemName = res.data.data[1].project.projectName;
-                console.log(state.systemName)
-            }else{
-                console.log('有问题')
+                console.log(state.systemName);
+            } else {
+                console.log('有问题');
             }
-        }
+        };
         // 页面加载时
         onMounted(() => {
             if (Local.get('themeConfig')) {
                 initI18n();
                 initComponentSize();
             }
-            getSysName()
+            getSysName();
         });
         return {
             userInfos,
@@ -295,14 +290,14 @@
     align-items: center;
     justify-content: space-between;
 
-    .logo{
+    .logo {
         height: 50px;
         padding: 5px 10px;
         display: flex;
         align-items: center;
         overflow: hidden;
         box-sizing: border-box;
-        img{
+        img {
             height: 100%;
         }
     }
diff --git a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue
index 50a59d7..430d136 100644
--- a/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue
+++ b/src/views/accidentManagementSystem/accidentExpress/component/openAdd.vue
@@ -53,7 +53,8 @@
 								<el-radio :label="true">是</el-radio>
 								<el-radio :label="false">否</el-radio>
 							</el-radio-group>
-							<el-button v-if="ruleForm.casualties" type="primary" style="margin-left: 20px" :icon="Edit" @click="openDai" round plain />
+							<el-button v-if="ruleForm.casualties" type="primary" style="margin-left: 20px"
+									   :icon="Edit" @click="openDai" round plain />
 						</el-form-item>
 					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
@@ -101,7 +102,8 @@
 			<template #footer>
 				<span class="dialog-footer">
 					<el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
-					<el-button size="default" v-if="disabled == true ? false : true" type="primary" @click="submitForm(titles, ruleFormRef)">确定</el-button>
+					<el-button size="default" v-if="disabled == true ? false : true" type="primary"
+                               @click="submitForm(titles, ruleFormRef)">确定</el-button>
 				</span>
 			</template>
 		</el-dialog>
@@ -387,7 +389,16 @@
 		};
 		const ShowUser = ref();
 		const openDai = () => {
-			ShowUser.value.openDialog(ruleForm.value.id, disabled.value);
+            if(ruleForm.value.id==null||ruleForm.value.id==''){
+                ElMessage({
+                    showClose: true,
+                    message: '请先添加事故快报',
+                    type: 'info',
+                });
+            }else {
+                ShowUser.value.openDialog(ruleForm.value.id, disabled.value);
+            }
+
 		};
 		// 应急队伍弹窗
 		const Shows = ref();
diff --git a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue
index de8cecb..a17ed5e 100644
--- a/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue
+++ b/src/views/accidentManagementSystem/accidentReport/component/openAdd.vue
@@ -1,12 +1,12 @@
 <template>
 	<div class="system-edit-user-container">
-		<el-dialog :title="titles" v-model="isShowDialog" width="800px" draggable :fullscreen="full" @close="closeDialog(ruleFormRef)">
+		<el-dialog :title="titles" v-model="isShowDialog" width="800px" draggable :fullscreen="full" @close="resetForm(ruleFormRef)">
 			<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
 			<el-form ref="ruleFormRef" :model="ruleForm" size="default" :rules="rules" label-width="140px">
 				<el-row :gutter="35">
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-						<el-form-item label="事故快报" prop="accidentName">
-							<el-input v-model="ruleForm.accidentName" :disabled="true" placeholder="请选择" class="input-with-select">
+						<el-form-item label="事故快报" prop="accidentExpressId">
+							<el-input v-model="accidentName" :disabled="true" placeholder="请选择" class="input-with-select">
 								<template #append>
 									<el-button :icon="Search" @click="daiInpt" />
 								</template>
@@ -16,19 +16,19 @@
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="事故部门" placeholder="请选择" prop="accidentDepartmentId">
 							<!--<el-input v-model="ruleForm.accidentDepartmentName" class="input-with-select" />-->
-							<el-tree-select v-model="ruleForm.accidentDepartmentId" :disabled="true" :data="newTreeList"
+							<el-tree-select v-model="accidentDepartmentId" :disabled="true" :data="newTreeList"
 											:props="propse" class="w100" placeholder="请选择" />
 						</el-form-item>
 					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="事故发生地点" prop="occurrencePlace">
-							<el-input v-model="ruleForm.occurrencePlace" :disabled="true" placeholder="请填写发生地点"></el-input>
+							<el-input v-model="occurrencePlace" :disabled="true" placeholder="请填写发生地点"></el-input>
 						</el-form-item>
 					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="发生时间" prop="occurrenceTime">
 							<el-date-picker
-								v-model="ruleForm.occurrenceTime"
+								v-model="occurrenceTime"
 								:disabled="true"
 								value-format="YYYY-MM-DD HH:mm:ss"
 								type="datetime"
@@ -240,13 +240,6 @@
 		//定义表单
 		const ruleForm = ref({
 			accidentExpressId:'',
-			accidentExpressName:'',
-			accidentDepartmentId:'',
-			accidentDepartmentName:'',
-			occurrencePlace:'',
-			occurrenceTime:'',
-
-
 
 			accidentType: '',
 			accidentGrade: '',
@@ -294,19 +287,17 @@
 					.then((res) => {
 						if (res.data.code == 200) {
 							ruleForm.value = res.data.data;
+							accidentName.value = res.data.data.accidentName
+							accidentDepartmentId.value = res.data.data.accidentDepartmentId
+							occurrencePlace.value = res.data.data.occurrencePlace
+							occurrenceTime.value = res.data.data.occurrenceTime
 						}
 					});
 			}
 		};
-		// 关闭弹窗
-		const closeDialog = (formEl: FormInstance | undefined) => {
-			formEl.resetFields();
-			console.log(ruleForm)
-			isShowDialog.value = false;
-		};
 		// 取消
 		const onCancel = (formEl: FormInstance | undefined) => {
-			closeDialog(formEl);
+			resetForm(formEl);
 		};
 		//日期选择器
 		const value1 = ref('');
@@ -320,18 +311,11 @@
 		];
 		// 必填项提示
 		const rules = reactive<FormRules>({
-			accidentDepartmentId: [
+			accidentExpressId: [
 				{
 					required: true,
-					message: '事故部门不能为空',
+					message: '快报不能为空',
 					trigger: 'change',
-				},
-			],
-			occurrenceTime: [
-				{
-					required: true,
-					message: '发生时间不能为空',
-					trigger: 'blur',
 				},
 			],
 			accidentType: [
@@ -420,18 +404,26 @@
 				},
 			],
 		});
+		const accidentDepartmentId = ref()
+		const occurrencePlace = ref()
+		const occurrenceTime = ref()
+		const accidentName = ref()
 		//事故快报回填
 		const onSelectItem = (item: any) => {
 			console.log('item', item[0]);
 			ruleForm.value.accidentExpressId = item[0].id
-			ruleForm.value.accidentName = item[0].accidentName
-			ruleForm.value.accidentDepartmentId = item[0].accidentDepartmentId
-			ruleForm.value.accidentDepartmentName = item[0].deptName
-			ruleForm.value.occurrencePlace = item[0].occurrencePlace
-			ruleForm.value.occurrenceTime = item[0].occurrenceTime
+			accidentName.value = item[0].accidentName
+			accidentDepartmentId.value = item[0].accidentDepartmentId
+			occurrencePlace.value = item[0].occurrencePlace
+			occurrenceTime.value = item[0].occurrenceTime
 		};
 		// 表单提交验证必填项
 		const submitForm = async (title: string, formEl: FormInstance | undefined) => {
+			delete ruleForm.value.accidentName
+			delete ruleForm.value.accidentDepartmentId
+			delete ruleForm.value.occurrencePlace
+			delete ruleForm.value.occurrenceTime
+
 			if (title == '新建事故报告') {
 				if (!formEl) return;
 				await formEl.validate((valid, fields) => {
@@ -495,13 +487,6 @@
 				formEl.resetFields();
 				ruleForm.value = {
 					accidentExpressId:'',
-					accidentExpressName:'',
-					accidentDepartmentId:'',
-					accidentDepartmentName:'',
-					occurrencePlace:'',
-					occurrenceTime:'',
-
-
 
 					accidentType: '',
 					accidentGrade: '',
@@ -531,6 +516,12 @@
 			isShowDialog.value = false;
 			if (!formEl) return;
 			formEl.resetFields();
+			// ruleForm.value.accidentExpressId = item[0].id
+			ruleForm.value = {}
+			accidentName.value = ''
+			accidentDepartmentId.value = ''
+			occurrencePlace.value = ''
+			occurrenceTime.value = ''
 		};
 		const handleChange = (val: number) => {
 			console.log(val);
@@ -602,7 +593,6 @@
 		};
 		return {
 			openDialog,
-			closeDialog,
 			isShowDialog,
 			onCancel,
 			fileList,
@@ -635,7 +625,11 @@
 			department,
 			getTreeList,
 			propse,
-			statusDisabled
+			statusDisabled,
+			accidentDepartmentId,
+			occurrencePlace,
+			occurrenceTime,
+			accidentName
 		};
 	},
 });
diff --git a/src/views/accidentManagementSystem/accidentReport/index.vue b/src/views/accidentManagementSystem/accidentReport/index.vue
index 6694d4b..b007a48 100644
--- a/src/views/accidentManagementSystem/accidentReport/index.vue
+++ b/src/views/accidentManagementSystem/accidentReport/index.vue
@@ -74,14 +74,15 @@
           </el-table>
           <div class="pages">
             <el-pagination
-                v-model:currentPage="pageIndex"
-                v-model:page-size="pageSize"
-                :page-sizes="[10, 20, 30]"
-                :pager-count="5"
-                layout="total, sizes, prev, pager, next, jumper"
-                :total="40"
-                @size-change="handleSizeChange"
-                @current-change="handleCurrentChange"
+                    v-if="tableData.length == 0 ? false : true"
+                    v-model:currentPage="pageIndex"
+                    v-model:page-size="pageSize"
+                    :page-sizes="[10, 20, 30]"
+                    :pager-count="5"
+                    layout="total, sizes, prev, pager, next, jumper"
+                    :total="total"
+                    @size-change="handleSizeChange"
+                    @current-change="handleCurrentChange"
             />
           </div>
         </el-tab-pane>
diff --git a/src/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue b/src/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue
index d349645..86cd9a6 100644
--- a/src/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue
+++ b/src/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue
@@ -1,6 +1,6 @@
 <template>
 	<div>
-		<el-dialog v-model="dialogVisible" title="选择事故名称" width="900px" draggable :fullscreen="full">
+		<el-dialog v-model="dialogVisible" title="选择事故名称" width="900px" draggable :fullscreen="full" @close="handleClose">
 			<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
 			<el-row>
 				<el-col :span="18">
@@ -85,7 +85,7 @@
 			</el-row>
 			<template #footer>
 				<span class="dialog-footer">
-					<el-button @click="dialogVisible = false" size="default">关闭</el-button>
+					<el-button @click="closeDialog()" size="default">关闭</el-button>
 					<el-button type="primary" @click="submitForm" size="default">确定</el-button>
 				</span>
 			</template>
@@ -146,6 +146,7 @@
 		const submitForm = () => {
 			emit('selectItem', dynamicTags.value);
 			dialogVisible.value = false;
+			radio1.value=''
 		};
 		//查询list数据
 		const listApi = async () => {
@@ -161,6 +162,10 @@
 		};
 		// 右方点击添加后显示标签
 		const dynamicTags = ref([]);
+		const closeDialog=()=>{
+			dialogVisible.value = false
+			handleClose()
+		};
 		const handleClose = () => {
 			dynamicTags.value = [];
 			radio1.value = '';
@@ -196,6 +201,7 @@
 			checkedItem,
 			submitReset,
 			submitForm,
+			closeDialog
 		};
 	},
 });
diff --git a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue
index 581cd61..9cad19d 100644
--- a/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue
+++ b/src/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue
@@ -351,6 +351,10 @@
 				await formEl.validate((valid, fields) => {
 					if (valid) {
 						isShowDialog.value = false;
+						ruleForm.value.fileList=[]
+						delete ruleForm.value.accidentName
+						delete ruleForm.value.occurrenceTime
+						delete ruleForm.value.id
 						accidentManagementSystemApi()
 							.workAdd(ruleForm.value)
 							.then((res) => {
@@ -380,6 +384,9 @@
 				await formEl.validate((valid, fields) => {
 					if (valid) {
 						isShowDialog.value = false;
+						ruleForm.value.fileList=[]
+						delete ruleForm.value.accidentName
+						delete ruleForm.value.occurrenceTime
 						accidentManagementSystemApi()
 							.workView(ruleForm.value)
 							.then((res) => {
diff --git a/src/views/accidentManagementSystem/workInjuryDeclaration/index.vue b/src/views/accidentManagementSystem/workInjuryDeclaration/index.vue
index 503246d..2f59a97 100644
--- a/src/views/accidentManagementSystem/workInjuryDeclaration/index.vue
+++ b/src/views/accidentManagementSystem/workInjuryDeclaration/index.vue
@@ -1,406 +1,391 @@
 <template>
-    <div class="system-user-container">
-        <el-card shadow="hover">
-            <div class="system-user-search mb15">
-                <el-form ref="ruleFormRef" size="default" label-width="80px" :inline="true">
-                    <el-form-item prop="telephone">
-                        <el-input v-model="listQuery.searchParams.accidentName" placeholder="请选择事故快报" :disabled="true"
-                                  class="input-with-select">
-                            <template #append>
-                                <el-button :icon="Search" @click="daiInpt"/>
-                            </template>
-                        </el-input>
-                    </el-form-item>
-                    <el-button size="default" type="primary" class="ml10" @click="listApi"> 查询</el-button>
-                    <el-button size="default" class="ml10" @click="submitReset"> 重置</el-button>
-                </el-form>
-            </div>
-            <div class="button_Line">
-                <div class="button_Left">
-                    <el-button size="default" type="primary" @click="onOpenAdd">
-                        <el-icon>
-                            <Plus/>
-                        </el-icon>
-                        新建
-                    </el-button>
-                    <el-button size="default" type="warning" plain :disabled="warning">
-                        <el-icon>
-                            <Edit/>
-                        </el-icon>
-                        修改
-                    </el-button>
-                    <el-button size="default" type="danger" plain @click="onDeleteAll" :disabled="danger">
-                        <el-icon>
-                            <Delete/>
-                        </el-icon>
-                        删除
-                    </el-button>
-                </div>
-                <div class="button_Right">
-                    <el-button @click="upButton">
-                        <el-icon>
-                            <Upload/>
-                        </el-icon>
-                    </el-button>
-                    <el-button>
-                        <el-icon>
-                            <Download/>
-                        </el-icon>
-                    </el-button>
-                    <el-button>
-                        <el-icon>
-                            <Refresh/>
-                        </el-icon>
-                    </el-button>
-                </div>
-            </div>
-            <el-table :data="tableData" style="width: 100%" ref="multipleTableRef"
-                      @selection-change="handleSelectionChange">
-                <el-table-column type="selection" width="55"/>
-                <el-table-column prop="declareUserName" label="申报人名称" show-overflow-tooltip sortable></el-table-column>
-                <el-table-column prop="deptName" label="申报人部门" show-overflow-tooltip sortable></el-table-column>
-                <el-table-column prop="accidentName" label="事故名称" show-overflow-tooltip sortable></el-table-column>
-                <el-table-column prop="workInjuryType" label="工商类型" show-overflow-tooltip sortable></el-table-column>
-                <el-table-column prop="declareDate" label="申报日期" show-overflow-tooltip sortable></el-table-column>
-                <el-table-column prop="visitHospital" label="就诊医院" show-overflow-tooltip sortable></el-table-column>
-                <el-table-column label="操作" width="260" align="center" fixed="right">
-                    <template #default="scope">
-                        <!--<el-button size="small" text disabled>-->
-                        <!--<el-icon style="margin-right: 5px"> <Upload /> </el-icon>上报-->
-                        <!--</el-button>-->
-                        <el-button size="small" text type="primary" @click="onEdit('详情',scope.row.id)">
-                            <el-icon style="margin-right: 5px">
-                                <View/>
-                            </el-icon>
-                            查看
-                        </el-button>
-                        <el-button size="small" text type="primary" @click="onEdit('修改',scope.row.id)">
-                            <el-icon style="margin-right: 5px">
-                                <EditPen/>
-                            </el-icon>
-                            修改
-                        </el-button>
-                        <el-button size="small" text type="primary" @click="onRowDel(scope.row.id)"> 删除</el-button>
-                    </template>
-                </el-table-column>
-            </el-table>
-            <div class="pages">
-                <el-pagination
-                        v-if="tableData.length == 0 ? false : true"
-                        v-model:currentPage="pageIndex"
-                        v-model:page-size="pageSize"
-                        :page-sizes="[10, 20, 30]"
-                        :pager-count="5"
-                        layout="total, sizes, prev, pager, next, jumper"
-                        :total="total"
-                        @size-change="handleSizeChange"
-                        @current-change="handleCurrentChange"
-                />
-            </div>
-        </el-card>
-        <AccidentName ref="showRef" @selectItem="onSelectItem"/>
-        <OpenAdd ref="addRef" @myAdd="onMyAdd"/>
-        <!--		<OpenEdit ref="editRef" />-->
-        <upData ref="upShow"></upData>
-    </div>
+	<div class="system-user-container">
+		<el-card shadow="hover">
+			<div class="system-user-search mb15">
+				<el-form ref="ruleFormRef" size="default" label-width="80px" :inline="true">
+					<el-form-item prop="telephone">
+						<el-input v-model="accidentName" placeholder="请选择事故快报" :disabled="true" class="input-with-select">
+							<template #append>
+								<el-button :icon="Search" @click="daiInpt" />
+							</template>
+						</el-input>
+					</el-form-item>
+					<el-button size="default" type="primary" class="ml10" @click="listApi"> 查询</el-button>
+					<el-button size="default" class="ml10" @click="submitReset"> 重置</el-button>
+				</el-form>
+			</div>
+			<div class="button_Line">
+				<div class="button_Left">
+					<el-button size="default" type="primary" @click="onOpenAdd">
+						<el-icon>
+							<Plus />
+						</el-icon>
+						新建
+					</el-button>
+					<el-button size="default" type="warning" plain :disabled="warning">
+						<el-icon>
+							<Edit />
+						</el-icon>
+						修改
+					</el-button>
+					<el-button size="default" type="danger" plain @click="onDeleteAll" :disabled="danger">
+						<el-icon>
+							<Delete />
+						</el-icon>
+						删除
+					</el-button>
+				</div>
+				<div class="button_Right">
+					<el-button @click="upButton">
+						<el-icon>
+							<Upload />
+						</el-icon>
+					</el-button>
+					<el-button>
+						<el-icon>
+							<Download />
+						</el-icon>
+					</el-button>
+					<el-button>
+						<el-icon>
+							<Refresh />
+						</el-icon>
+					</el-button>
+				</div>
+			</div>
+			<el-table :data="tableData" style="width: 100%" ref="multipleTableRef" @selection-change="handleSelectionChange">
+				<el-table-column type="selection" width="55" />
+				<el-table-column prop="declareUserName" label="申报人名称" show-overflow-tooltip sortable></el-table-column>
+				<el-table-column prop="deptName" label="申报人部门" show-overflow-tooltip sortable></el-table-column>
+				<el-table-column prop="accidentName" label="事故名称" show-overflow-tooltip sortable></el-table-column>
+				<el-table-column prop="workInjuryType" label="工商类型" show-overflow-tooltip sortable></el-table-column>
+				<el-table-column prop="declareDate" label="申报日期" show-overflow-tooltip sortable></el-table-column>
+				<el-table-column prop="visitHospital" label="就诊医院" show-overflow-tooltip sortable></el-table-column>
+				<el-table-column label="操作" width="260" align="center" fixed="right">
+					<template #default="scope">
+						<!--<el-button size="small" text disabled>-->
+						<!--<el-icon style="margin-right: 5px"> <Upload /> </el-icon>上报-->
+						<!--</el-button>-->
+						<el-button size="small" text type="primary" @click="onEdit('详情', scope.row.id)">
+							<el-icon style="margin-right: 5px">
+								<View />
+							</el-icon>
+							查看
+						</el-button>
+						<el-button size="small" text type="primary" @click="onEdit('修改', scope.row.id)">
+							<el-icon style="margin-right: 5px">
+								<EditPen />
+							</el-icon>
+							修改
+						</el-button>
+						<el-button size="small" text type="primary" @click="onRowDel(scope.row.id)"> 删除</el-button>
+					</template>
+				</el-table-column>
+			</el-table>
+			<div class="pages">
+				<el-pagination
+					v-if="tableData.length == 0 ? false : true"
+					v-model:currentPage="pageIndex"
+					v-model:page-size="pageSize"
+					:page-sizes="[10, 20, 30]"
+					:pager-count="5"
+					layout="total, sizes, prev, pager, next, jumper"
+					:total="total"
+					@size-change="handleSizeChange"
+					@current-change="handleCurrentChange"
+				/>
+			</div>
+		</el-card>
+		<AccidentName ref="showRef" @selectItem="onSelectItem" />
+		<OpenAdd ref="addRef" @myAdd="onMyAdd" />
+		<!--		<OpenEdit ref="editRef" />-->
+		<upData ref="upShow"></upData>
+	</div>
 </template>
 
 <script lang="ts">
-    import {
-        // toRefs,
-        reactive,
-        // onMounted,
-        ref,
-        defineComponent,
-        onMounted,
-    } from 'vue';
-    import {
-        ElMessageBox,
-        ElMessage
-    } from 'element-plus';
-    import {
-        Plus,
-        Download,
-        Refresh,
-        View,
-        EditPen,
-        Edit,
-        Delete,
-        Search,
-        Upload
-    } from '@element-plus/icons-vue';
-    import AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';
-    import OpenAdd from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue';
-    import OpenEdit from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/openEdit.vue';
-    import UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';
-    import {accidentManagementSystemApi} from '/@/api/accidentManagementSystem';
+import {
+	// toRefs,
+	reactive,
+	// onMounted,
+	ref,
+	defineComponent,
+	onMounted,
+} from 'vue';
+import { ElMessageBox, ElMessage } from 'element-plus';
+import { Plus, Download, Refresh, View, EditPen, Edit, Delete, Search, Upload } from '@element-plus/icons-vue';
+import AccidentName from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/accidentName.vue';
+import OpenAdd from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/openAdd.vue';
+import OpenEdit from '/@/views/accidentManagementSystem/workInjuryDeclaration/component/openEdit.vue';
+import UpData from '/@/views/contingencyManagement/panManagement/component/upData.vue';
+import { accidentManagementSystemApi } from '/@/api/accidentManagementSystem';
 
-    export default defineComponent({
-        name: 'index',
-        components: {
-            OpenEdit,
-            EditPen,
-            Plus,
-            Upload,
-            Download,
-            Refresh,
-            Edit,
-            View,
-            Delete,
-            UpData,
-            OpenAdd,
-            AccidentName,
-        },
-        setup() {
-            //列表参数
-            const listQuery = reactive({
-                pageIndex: 1,
-                pageSize: 10,
-                searchParams: {
-                    accidentExpressId: "",
-                },
-            });
-            //搜索条件回填
-            const onSelectItem = (item: any) => {
-                console.log('item', item[0].accidentName);
-                listQuery.searchParams.accidentExpressId = item[0].id
-                listQuery.searchParams.accidentName = item[0].accidentName
-            };
-            // 定义表格数据
-            const tableData = ref([]);
-            // 请求列表数据
-            const listApi = async () => {
-                let res = await accidentManagementSystemApi().workList(listQuery);
-                if (res.data.code == 200) {
-                    tableData.value = res.data.data;
-                    pageIndex.value = res.data.pageIndex;
-                    pageSize.value = res.data.pageSize;
-                    total.value = res.data.total;
-                } else {
-                    ElMessage.error(res.data.msg);
-                }
-            };
-            onMounted(() => {
-                listApi();
-            });
-            // 重置
-            const submitReset = () => {
-                listQuery.searchParams.accidentExpressId = ''
-                listQuery.searchParams.accidentName = ''
-                listApi();
-            }
-            const warning = ref(true);
-            const danger = ref(true);
-            const deletAll = ref();
-            const handleSelectionChange = (val: any) => {
-                let valId = JSON.parse(JSON.stringify(val));
-                let arr = [];
-                for (let i = 0; i < valId.length; i++) {
-                    arr.push(valId[i].id);
-                }
-                deletAll.value = arr;
-                if (val.length == 1) {
-                    warning.value = false;
-                    danger.value = false;
-                } else if (val.length == 0) {
-                    warning.value = true;
-                    danger.value = true;
-                } else {
-                    warning.value = true;
-                    danger.value = false;
-                }
-            };
-            // 事故名称弹窗
-            const showRef = ref();
-            const daiInpt = () => {
-                showRef.value.openDailog();
-            };
-            // 打开新增弹窗
-            const addRef = ref();
-            const onOpenAdd = () => {
-                addRef.value.openDialog('新建工伤申报', false);
-            };
-            // 新增后刷新
-            const onMyAdd = (e: boolean) => {
-                if (e) {
-                    listApi();
-                } else {
-                    listApi();
-                }
-            };
-            // 上传
-            const upShow = ref();
-            const upButton = () => {
-                upShow.value.openDialog();
-            };
+export default defineComponent({
+	name: 'index',
+	components: {
+		OpenEdit,
+		EditPen,
+		Plus,
+		Upload,
+		Download,
+		Refresh,
+		Edit,
+		View,
+		Delete,
+		UpData,
+		OpenAdd,
+		AccidentName,
+	},
+	setup() {
+		//列表参数
+		const listQuery = reactive({
+			pageIndex: 1,
+			pageSize: 10,
+			searchParams: {
+				accidentExpressId: '',
+			},
+		});
+		//搜索条件回填
+		const onSelectItem = (item: any) => {
+			console.log('item', item[0].accidentName);
+			listQuery.searchParams.accidentExpressId = item[0].id;
+			accidentName.value = item[0].accidentName;
+		};
+		// 定义表格数据
+		const tableData = ref([]);
+		// 请求列表数据
+		const listApi = async () => {
+			let res = await accidentManagementSystemApi().workList(listQuery);
+			if (res.data.code == 200) {
+				tableData.value = res.data.data;
+				pageIndex.value = res.data.pageIndex;
+				pageSize.value = res.data.pageSize;
+				total.value = res.data.total;
+			} else {
+				ElMessage.error(res.data.msg);
+			}
+		};
+		onMounted(() => {
+			listApi();
+		});
+		const accidentName = ref();
+		// 重置
+		const submitReset = () => {
+			listQuery.searchParams.accidentExpressId = '';
+			accidentName.value = '';
+			listApi();
+		};
+		const warning = ref(true);
+		const danger = ref(true);
+		const deletAll = ref();
+		const handleSelectionChange = (val: any) => {
+			let valId = JSON.parse(JSON.stringify(val));
+			let arr = [];
+			for (let i = 0; i < valId.length; i++) {
+				arr.push(valId[i].id);
+			}
+			deletAll.value = arr;
+			if (val.length == 1) {
+				warning.value = false;
+				danger.value = false;
+			} else if (val.length == 0) {
+				warning.value = true;
+				danger.value = true;
+			} else {
+				warning.value = true;
+				danger.value = false;
+			}
+		};
+		// 事故名称弹窗
+		const showRef = ref();
+		const daiInpt = () => {
+			showRef.value.openDailog();
+		};
+		// 打开新增弹窗
+		const addRef = ref();
+		const onOpenAdd = () => {
+			addRef.value.openDialog('新建工伤申报', false);
+		};
+		// 新增后刷新
+		const onMyAdd = (e: boolean) => {
+			if (e) {
+				listApi();
+			} else {
+				listApi();
+			}
+		};
+		// 上传
+		const upShow = ref();
+		const upButton = () => {
+			upShow.value.openDialog();
+		};
 
-            // 打开修改用户弹窗
-            // const editRef = ref();
-            const onEdit = (val: string, row: object) => {
-                if (val == '详情') {
-                    addRef.value.openDialog('查看工伤申报', row, true);
-                } else {
-                    addRef.value.openDialog('修改工伤申报', row, false);
-                }
-            };
-            // 删除用户
-            const onRowDel = (data: any) => {
-                ElMessageBox.confirm('确定删除所选项吗?', '提示', {
-                    confirmButtonText: '确认',
-                    cancelButtonText: '取消',
-                    type: 'warning',
-                })
-                    .then(() => {
-                        accidentManagementSystemApi()
-                            .workDelete([data])
-                            .then((res) => {
-                                if (res.data.code == 200) {
-                                    ElMessage({
-                                        showClose: true,
-                                        message: res.data.msg,
-                                        type: 'success',
-                                    });
-                                    listApi();
-                                } else {
-                                    ElMessage({
-                                        showClose: true,
-                                        message: res.data.msg,
-                                        type: 'error',
-                                    });
-                                    listApi();
-                                }
-                            });
-                    })
-                    .catch(() => {
-                    });
-            };
-            // 多选删除
-            const onDeleteAll = () => {
-                ElMessageBox.confirm('确定删除所选项吗?', '提示', {
-                    confirmButtonText: '确定',
-                    cancelButtonText: '取消',
-                    type: 'warning',
-                })
-                    .then(() => {
-                        accidentManagementSystemApi()
-                            .workDelete(deletAll.value)
-                            .then((res) => {
-                                if (res.data.code == 200) {
-                                    ElMessage({
-                                        showClose: true,
-                                        message: res.data.msg,
-                                        type: 'success',
-                                    });
-                                    listApi();
-                                } else {
-                                    ElMessage({
-                                        showClose: true,
-                                        message: res.data.msg,
-                                        type: 'error',
-                                    });
-                                    listApi();
-                                }
-                            });
-                    })
-                    .catch(() => {
-                    });
-            };
-            // 分页
-            const pageIndex = ref();
-            const pageSize = ref();
-            const total = ref();
-            // 分页改变
-            const handleSizeChange = (val: number) => {
-                listQuery.pageSize = val;
-            };
-            // 分页未改变
-            const handleCurrentChange = (val: number) => {
-                listQuery.pageIndex = val;
-            };
-            return {
-                daiInpt,
-                showRef,
-                upButton,
-                upShow,
-                tableData,
-                pageIndex,
-                pageSize,
-                handleSizeChange,
-                handleCurrentChange,
-                onEdit,
-                onOpenAdd,
-                addRef,
-                // editRef,
-                listApi,
-                Search,
-                submitReset,
-                onDeleteAll,
-                handleSelectionChange,
-                warning,
-                danger,
-                listQuery,
-                onRowDel,
-                total,
-                onMyAdd,
-                onSelectItem
-            };
-        },
-    });
+		// 打开修改用户弹窗
+		// const editRef = ref();
+		const onEdit = (val: string, row: object) => {
+			if (val == '详情') {
+				addRef.value.openDialog('查看工伤申报', row, true);
+			} else {
+				addRef.value.openDialog('修改工伤申报', row, false);
+			}
+		};
+		// 删除用户
+		const onRowDel = (data: any) => {
+			ElMessageBox.confirm('确定删除所选项吗?', '提示', {
+				confirmButtonText: '确认',
+				cancelButtonText: '取消',
+				type: 'warning',
+			})
+				.then(() => {
+					accidentManagementSystemApi()
+						.workDelete([data])
+						.then((res) => {
+							if (res.data.code == 200) {
+								ElMessage({
+									showClose: true,
+									message: res.data.msg,
+									type: 'success',
+								});
+								listApi();
+							} else {
+								ElMessage({
+									showClose: true,
+									message: res.data.msg,
+									type: 'error',
+								});
+								listApi();
+							}
+						});
+				})
+				.catch(() => {});
+		};
+		// 多选删除
+		const onDeleteAll = () => {
+			ElMessageBox.confirm('确定删除所选项吗?', '提示', {
+				confirmButtonText: '确定',
+				cancelButtonText: '取消',
+				type: 'warning',
+			})
+				.then(() => {
+					accidentManagementSystemApi()
+						.workDelete(deletAll.value)
+						.then((res) => {
+							if (res.data.code == 200) {
+								ElMessage({
+									showClose: true,
+									message: res.data.msg,
+									type: 'success',
+								});
+								listApi();
+							} else {
+								ElMessage({
+									showClose: true,
+									message: res.data.msg,
+									type: 'error',
+								});
+								listApi();
+							}
+						});
+				})
+				.catch(() => {});
+		};
+		// 分页
+		const pageIndex = ref();
+		const pageSize = ref();
+		const total = ref();
+		// 分页改变
+		const handleSizeChange = (val: number) => {
+			listQuery.pageSize = val;
+		};
+		// 分页未改变
+		const handleCurrentChange = (val: number) => {
+			listQuery.pageIndex = val;
+		};
+		return {
+			accidentName,
+			daiInpt,
+			showRef,
+			upButton,
+			upShow,
+			tableData,
+			pageIndex,
+			pageSize,
+			handleSizeChange,
+			handleCurrentChange,
+			onEdit,
+			onOpenAdd,
+			addRef,
+			// editRef,
+			listApi,
+			Search,
+			submitReset,
+			onDeleteAll,
+			handleSelectionChange,
+			warning,
+			danger,
+			listQuery,
+			onRowDel,
+			total,
+			onMyAdd,
+			onSelectItem,
+		};
+	},
+});
 </script>
 <style scoped lang="scss">
-    .table_Box {
-        padding: 20px;
-        background-color: #fff;
-    }
+.table_Box {
+	padding: 20px;
+	background-color: #fff;
+}
 
-    .tableForm {
-        margin-top: 10px;
-    }
+.tableForm {
+	margin-top: 10px;
+}
 
-    /*按钮行*/
-    .button_Line {
-        display: flex;
-        flex-direction: row;
-        justify-content: space-between;
-    }
+/*按钮行*/
+.button_Line {
+	display: flex;
+	flex-direction: row;
+	justify-content: space-between;
+}
 
-    //分页
-    .pages {
-        display: flex;
-        justify-content: flex-end;
-        margin-top: 15px;
-    }
+//分页
+.pages {
+	display: flex;
+	justify-content: flex-end;
+	margin-top: 15px;
+}
 
-    ::v-deep .el-pagination .el-pager li {
-        margin: 0 5px;
-        background-color: #f4f4f5;
-        color: #606266;
-        min-width: 30px;
-        border-radius: 2px;
-    }
+::v-deep .el-pagination .el-pager li {
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
+}
 
-    ::v-deep .el-pagination .el-pager li.is-active {
-        background-color: #409eff;
-        color: #fff;
-    }
+::v-deep .el-pagination .el-pager li.is-active {
+	background-color: #409eff;
+	color: #fff;
+}
 
-    ::v-deep .el-pagination .btn-prev {
-        margin: 0 5px;
-        background-color: #f4f4f5;
-        color: #606266;
-        min-width: 30px;
-        border-radius: 2px;
-    }
+::v-deep .el-pagination .btn-prev {
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
+}
 
-    ::v-deep .el-pagination button:disabled {
-        color: #c0c4cc;
-    }
+::v-deep .el-pagination button:disabled {
+	color: #c0c4cc;
+}
 
-    ::v-deep .el-pagination .btn-next {
-        margin: 0 5px;
-        background-color: #f4f4f5;
-        color: #606266;
-        min-width: 30px;
-        border-radius: 2px;
-    }
+::v-deep .el-pagination .btn-next {
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
+}
 </style>
\ No newline at end of file
diff --git a/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue b/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue
index de19c3f..cafe13e 100644
--- a/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue
+++ b/src/views/contingencyManagement/contingency/component/addEmergencyPersonnel.vue
@@ -20,7 +20,7 @@
           <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
             <el-form-item label="选择人员" prop="name">
               <el-input
-                  v-model="ruleForm.userName"
+                  v-model="ruleForm.name"
                   placeholder="请选择"
                   class="input-with-select"
               >
@@ -62,7 +62,7 @@
       </el-form>
       <template #footer>
 				<span class="dialog-footer">
-          <el-button size="default" type="primary" @click="addForm(ruleFormRef)">继续添加</el-button>
+<!--          <el-button size="default" type="primary" @click="addForm(ruleFormRef)">继续添加</el-button>-->
 					<el-button size="default" @click="resetForm(ruleFormRef)">关闭</el-button>
           <el-button size="default" type="primary" v-if="disabled == true ? false : true" @click="submitForm(titles, ruleFormRef)" >确定</el-button>
 				</span>
@@ -103,7 +103,6 @@
     const ruleForm = ref ({
       teamId: '',
       userUid: '',
-      userName:'',
       gender: '',
       jobNumber: '', // 人员工号
       name: '', // 人员名称
@@ -149,11 +148,6 @@
     })
     const titles = ref();
     const disabled = ref();
-    //继续添加
-    const addForm = (formEl: FormInstance | undefined) => {
-      emit('myAdd', ruleForm.value);
-      formEl.resetFields();
-    }
     const submitForm = async (title: string, formEl: FormInstance | undefined) => {
       if (title == '新建应急队伍人员') {
         if (!formEl) return;
@@ -220,7 +214,6 @@
         ruleForm.value = {
           teamId: '',
           userUid: '',
-          userName:'',
           gender: '',
           jobNumber: '', // 人员工号
           name: '', // 人员名称
@@ -259,9 +252,8 @@
     };
     const onUser = (e:any) => {
       ruleForm.value.userUid=e[0].uid
-      ruleForm.value.userName=e[0].realName
       ruleForm.value.gender=e[0].sex
-      ruleForm.value.name=e[0].username
+      ruleForm.value.name=e[0].realName
       ruleForm.value.jobNumber=e[0].jobNumber
       ruleForm.value.phone=e[0].phone
       ruleForm.value.position=e[0].position
@@ -295,7 +287,6 @@
       openUser,
       userRef,
       onUser,
-      addForm,
       submitForm,
     };
   },
diff --git a/src/views/contingencyManagement/contingency/component/openAdd.vue b/src/views/contingencyManagement/contingency/component/openAdd.vue
index e853358..d5495f2 100644
--- a/src/views/contingencyManagement/contingency/component/openAdd.vue
+++ b/src/views/contingencyManagement/contingency/component/openAdd.vue
@@ -30,7 +30,7 @@
                     </el-col>
                     <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
                         <el-form-item label="负责人部门" prop="principalDepartmentId">
-                            <el-tree-select v-model="ruleForm.principalDepartmentId" :data="data" class="w100"
+                            <el-tree-select v-model="ruleForm.principalDepartmentId" :data="newTreeList" class="w100"
                                             :props="propse" clearable placeholder="请选择"/>
                         </el-form-item>
                     </el-col>
@@ -163,12 +163,7 @@
                 principalPhone: '', // 负责人手机
                 telephoneNumber: '', // 固定电话
                 teamDesc: '',  //队伍描述
-                fileList: [
-                    {
-                        fileUrl: 'url',
-                        fileName: 'name',
-                    }
-                ],
+                fileList: [],
                 memberList: []
             });
             const titles = ref();
@@ -201,29 +196,53 @@
             // 上传附件
             const fileList = ref<UploadUserFile[]>([])
 
-            //部门树
-            const department = () => {
-                goalManagementApi()
+            //定义树形下拉框
+            const principalDepartmentId = ref()
+            const data = ref()
+
+
+
+            //el-tree-select回显
+            const propse = {
+                label: 'depName',
+                children: 'children',
+            };
+            const newTreeList = [];
+            //得到部门树
+            const department = async () => {
+                await goalManagementApi()
                     .getTreedepartment()
                     .then((res) => {
                         if (res.data.code == 200) {
                             data.value = res.data.data;
+                            getTreeList(res.data.data, newTreeList);
                         } else {
                             ElMessage.error(res.data.msg);
                         }
                     });
             };
-            //定义树形下拉框
-            const principalDepartmentId = ref()
-            const propse = {
-                label: 'depName',
-                children: 'children',
-                value: 'depId',
+            // 递归树状数据且修改字段名
+            const getTreeList = (treeList, newTreeList) => {
+                treeList.map((c) => {
+                    let tempData = {
+                        depName: c.depName,
+                        value: c.depId,
+                        children: [],
+                    };
+                    if (c.children && c.children.length > 0) {
+                        tempData.children = [];
+                        getTreeList(c.children, tempData.children);
+                    }
+                    newTreeList.push(tempData);
+                });
             };
-            const data = ref()
             onMounted(() => {
                 department();
             });
+
+
+
+
             // 打开用户选择弹窗
             const userRef = ref();
             const openUser = () => {
@@ -327,6 +346,7 @@
                     if (!formEl) return;
                     await formEl.validate((valid, fields) => {
                         if (valid) {
+                          ruleForm.value.fileList=[]
                             isShowDialog.value = false;
                             contingencyApi()
                                 .editEmergencyTeam(ruleForm.value)
@@ -361,12 +381,7 @@
                         principalPhone: '', // 负责人手机
                         telephoneNumber: '', // 固定电话
                         teamDesc: '',  //队伍描述
-                        fileList: [
-                            {
-                                fileUrl: 'url',
-                                fileName: 'name',
-                            }
-                        ],
+                        fileList: [],
                         memberList: []
                     };
                 }
@@ -376,6 +391,7 @@
                 if (!formEl) return;
                 formEl.resetFields();
                 tableData.value=[]
+                ruleForm.value = {}
             };
             // 定义表格数据
             const tableData = ref([]);
@@ -392,7 +408,6 @@
                 }else {
                     addRef.value.openDialog('新建应急队伍人员','',teamId.value);
                 }
-
             };
             // 请求列表数据
             const listApi = async () => {
@@ -406,10 +421,6 @@
             // 新增后刷新
             const onMyAdd = (e: object) => {
                 listApi();
-                // console.log(e)
-                // item.value = e
-                // tableData.value.push(item.value)
-                // console.log(tableData)
             };
             // 打开修改弹窗
             const onEdit = (val: string, row: object) => {
@@ -482,7 +493,8 @@
                 onRowDel,
                 department,
                 peopleInsertBtn,
-                teamId
+                teamId,
+                newTreeList
             };
         },
     });
diff --git a/src/views/contingencyManagement/contingency/index.vue b/src/views/contingencyManagement/contingency/index.vue
index 2196936..69ae1a4 100644
--- a/src/views/contingencyManagement/contingency/index.vue
+++ b/src/views/contingencyManagement/contingency/index.vue
@@ -7,7 +7,7 @@
             <el-input size="default" v-model="listQuery.searchParams.teamName" placeholder="队伍名称"> </el-input>
           </el-form-item>
           <el-form-item>
-            <el-select size="default" v-model="listQuery.searchParams.teamType" placeholder="请选择队伍级别">
+            <el-select size="default" v-model="listQuery.searchParams.teamLevel" placeholder="请选择队伍级别">
               <el-option label="公司" value="1"></el-option>
               <el-option label="分厂-车间" value="2"></el-option>
               <el-option label="工序-班组等" value="3"></el-option>
@@ -30,11 +30,11 @@
               <Plus />
             </el-icon>新建
           </el-button>
-          <el-button size="default" type="warning" plain :disabled="warning">
-            <el-icon>
-              <Edit />
-            </el-icon>修改
-          </el-button>
+<!--          <el-button size="default" type="warning" plain :disabled="warning">-->
+<!--            <el-icon>-->
+<!--              <Edit />-->
+<!--            </el-icon>修改-->
+<!--          </el-button>-->
           <el-button size="default" type="danger" plain :disabled="danger" @click="onDeleteAll">
             <el-icon>
               <Delete />
@@ -134,8 +134,8 @@
   ElMessageBox,
   ElMessage,
 } from 'element-plus';
-import { Plus,
-  Edit,
+import {
+  Plus,
   Delete,
   // Upload,
   // Download,
@@ -155,7 +155,6 @@
     View,
     EditPen,
     Plus,
-    Edit,
     Delete,
     // Upload,
     // Download,
@@ -170,7 +169,7 @@
       pageSize: 10,
       searchParams: {
         teamName: "",
-        teamType: "",
+        teamLevel: "",
       }
     })
     // 定义表格数据
@@ -194,10 +193,10 @@
     // 重置
     const submitReset = () => {
       listQuery.searchParams.teamName = '';
-      listQuery.searchParams.teamType = '';
+      listQuery.searchParams.teamLevel = '';
       onSubmit();
     };
-    const warning = ref(true);
+    // const warning = ref(true);
     const danger = ref(true);
     const deleteAll = ref();
     const handleSelectionChange = (val: any) => {
@@ -208,13 +207,13 @@
       }
       deleteAll.value = arr;
       if (val.length == 1) {
-        warning.value = false;
+        // warning.value = false;
         danger.value = false;
       } else if (val.length == 0) {
-        warning.value = true;
+        // warning.value = true;
         danger.value = true;
       } else {
-        warning.value = true;
+        // warning.value = true;
         danger.value = false;
       }
     };
@@ -340,7 +339,7 @@
       onHandleSizeChange,
       onHandleCurrentChange,
       deleteAll,
-      warning,
+      // warning,
       danger,
     };
   },
diff --git a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue
index 07f4e5f..81b4674 100644
--- a/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue
+++ b/src/views/contingencyManagement/emergencyDrill/drillImplementationEvaluation/component/approvalProgress.vue
@@ -6,6 +6,7 @@
         width="900px"
         draggable
         :fullscreen="full"
+        @close="resetForm(ruleFormRef)"
     >
       <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
       <el-form
@@ -433,7 +434,7 @@
     const ruleFormRef = ref<FormInstance>()
     //定义表单
     const ruleForm = ref ({
-      drillPlanId: '',
+      drillExecuteId: '',
       suitable: '',
       sufficient: '',
       arrival: '',
@@ -450,10 +451,29 @@
       questionAndImprove: '',
       modifyContent: '',
       fileList: [
-        {
-          fileName: 'name',
-          fileUrl: 'url',
-        }
+      ],
+      userList: [
+      ]
+    });
+    //定义表单
+    const realRuleForm = ref ({
+      drillExecuteId: '',
+      suitable: '',
+      sufficient: '',
+      arrival: '',
+      supplies: '',
+      protection: '',
+      whole: '',
+      division: '',
+      effect: '',
+      report: '',
+      safety: '',
+      rescue: '',
+      evacuate: '',
+      needModify: '',
+      questionAndImprove: '',
+      modifyContent: '',
+      fileList: [
       ],
       userList: [
       ]
@@ -504,18 +524,28 @@
                     ruleForm.value.chargeUserListString=''
                     ruleForm.value.executeUserListString=''
                     ruleForm.value.evaluationUserListString=''
-                    for(var a = 0;a<res.data.data.planUserList.length;a++){
-                      ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'
+                    if(res.data.data.planUserList){
+                      for(var a = 0;a<res.data.data.planUserList.length;a++){
+                        ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'
+                      }
                     }
-                    for(var a = 0;a<res.data.data.planChargeUserList.length;a++){
-                      ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'
+
+                    if(res.data.data.planChargeUserList){
+                      for(var a = 0;a<res.data.data.planChargeUserList.length;a++){
+                        ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'
+                      }
                     }
-                    for(var a = 0;a<res.data.data.executeUserList.length;a++){
-                      ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'
+
+                    if(res.data.data.executeUserList){
+                      for(var a = 0;a<res.data.data.executeUserList.length;a++){
+                        ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'
+                      }
                     }
                     //演练负责人(评价)
-                    for(var a = 0;a<res.data.data.evaluationUserList.length;a++){
-                      ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'
+                    if(res.data.data.evaluationUserList){
+                      for(var a = 0;a<res.data.data.evaluationUserList.length;a++){
+                        ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'
+                      }
                     }
                   }
                 });
@@ -530,19 +560,31 @@
                     ruleForm.value.chargeUserListString=''
                     ruleForm.value.executeUserListString=''
                     ruleForm.value.evaluationUserListString=''
-                    for(var a = 0;a<res.data.data.planUserList.length;a++){
-                      ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'
+
+                    if(res.data.data.planUserList){
+                      for(var a = 0;a<res.data.data.planUserList.length;a++){
+                        ruleForm.value.planUserListString += res.data.data.planUserList[a].userName+';'
+                      }
                     }
-                    for(var a = 0;a<res.data.data.planChargeUserList.length;a++){
-                      ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'
+
+                    if(res.data.data.planChargeUserList){
+                      for(var a = 0;a<res.data.data.planChargeUserList.length;a++){
+                        ruleForm.value.chargeUserListString += res.data.data.planChargeUserList[a].userName+';'
+                      }
                     }
-                    for(var a = 0;a<res.data.data.executeUserList.length;a++){
-                      ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'
+
+                    if(res.data.data.executeUserList){
+                      for(var a = 0;a<res.data.data.executeUserList.length;a++){
+                        ruleForm.value.executeUserListString += res.data.data.executeUserList[a].userName+';'
+                      }
                     }
                     //演练负责人(评价)
-                    for(var a = 0;a<res.data.data.evaluationUserList.length;a++){
-                      ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'
+                    if(res.data.data.evaluationUserList){
+                      for(var a = 0;a<res.data.data.evaluationUserList.length;a++){
+                        ruleForm.value.evaluationUserListString += res.data.data.evaluationUserList[a].userName+';'
+                      }
                     }
+
                   }
                 });
       }
@@ -623,6 +665,34 @@
     const submitForm = async (title: string, formEl: FormInstance | undefined) => {
       //演练负责人(评价)
       ruleForm.value.userList = ruleForm.value.evaluationUserList
+
+
+
+      realRuleForm.value.drillExecuteId=ruleForm.value.drillExecuteId
+      realRuleForm.value.suitable=ruleForm.value.suitable
+      realRuleForm.value.sufficient=ruleForm.value.sufficient
+      realRuleForm.value.arrival=ruleForm.value.arrival
+      realRuleForm.value.supplies=ruleForm.value.supplies
+      realRuleForm.value.protection=ruleForm.value.protection
+      realRuleForm.value.whole=ruleForm.value.whole
+      realRuleForm.value.division=ruleForm.value.division
+      realRuleForm.value.effect=ruleForm.value.effect
+      realRuleForm.value.report=ruleForm.value.report
+      realRuleForm.value.safety=ruleForm.value.safety
+      realRuleForm.value.rescue=ruleForm.value.rescue
+      realRuleForm.value.evacuate=ruleForm.value.evacuate
+      realRuleForm.value.needModify=ruleForm.value.needModify
+      realRuleForm.value.questionAndImprove=ruleForm.value.questionAndImprove
+      realRuleForm.value.modifyContent=ruleForm.value.modifyContent
+      realRuleForm.value.fileList=ruleForm.value.fileList
+      if(ruleForm.value.userList){
+        for(var a = 0;a<ruleForm.value.userList.length;a++){
+          realRuleForm.value.userList.push({
+            userUid:ruleForm.value.userList[a].userUid,
+            userName:ruleForm.value.userList[a].userName
+          })
+        }
+      }
       // console.log(ruleForm.value.evaluationUserList)
       // ruleForm.value.userList=[]
       // for(var a = 0;a<ruleForm.value.evaluationUserList.length;a++){
@@ -634,7 +704,7 @@
           if (valid) {
             // console.log(ruleForm.value)
             emergencyDrillEvaluationApi()
-                    .editEmergencyDrillEvaluation(ruleForm.value)
+                    .editEmergencyDrillEvaluation(realRuleForm.value)
             // emergencyDrillExecuteApi()
             //         .editEmergencyDrillExecute(ruleForm.value)
                     .then((res) => {
@@ -709,6 +779,7 @@
         )
         ruleForm.value.evaluationUserListString+=e[a].realName+';'
       }
+      console.log(ruleForm.value.evaluationUserList)
     }
     //el-tree-select回显
     const propse = {
@@ -789,7 +860,8 @@
       department,
       newTreeList,
       selectUser,
-      submitForm
+      submitForm,
+      realRuleForm
     };
   },
 });
diff --git a/src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue b/src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue
index 15f3892..3b85b4a 100644
--- a/src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue
+++ b/src/views/contingencyManagement/emergencyDrill/implementationOfEmergencyDrill/component/openAdd.vue
@@ -205,7 +205,7 @@
             <el-form-item label="演练过程描述" prop="processDesc">
               <el-input
                   v-model="ruleForm.processDesc"
-                  placeholder="请填写演练目的"
+                  placeholder="请填写演练过程描述"
                   class="textarea"
                   type="textarea"
               />
@@ -412,6 +412,8 @@
     const drillRecordDate = ref('')
     // 表单提交验证必填项
     const submitForm = async (title: string, formEl: FormInstance | undefined) => {
+      delete ruleForm.value.drillName
+      delete ruleForm.value.autualUserListString
       if (title == '新建应急演练实施') {
         if (!formEl) return;
         await formEl.validate((valid, fields) => {
diff --git a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue
index a1a8412..8325c4b 100644
--- a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue
+++ b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/openAdd.vue
@@ -80,11 +80,11 @@
               <el-date-picker v-model="ruleForm.drillPlanDate" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
             </el-form-item>
           </el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="修改时间" prop="gmtModitify">
-              <el-date-picker v-model="ruleForm.gmtModitify" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />
-            </el-form-item>
-          </el-col>
+          <!--<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">-->
+            <!--<el-form-item label="修改时间" prop="gmtModitify">-->
+              <!--<el-date-picker v-model="ruleForm.gmtModitify" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="选择日期时间" style="width: 100%" />-->
+            <!--</el-form-item>-->
+          <!--</el-col>-->
           <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
             <el-form-item label="计划定制人" prop="makingUserName">
               <el-input v-model="ruleForm.makingUserName" placeholder="请填写计划定制人" disabled></el-input>
@@ -319,6 +319,11 @@
     // 表单提交验证必填项
     const submitForm = async (title: string, formEl: FormInstance | undefined) => {
       ruleForm.value.userList = ruleForm.value.userList.concat(ruleForm.value.chargeUserList)
+      delete ruleForm.value.planName
+      delete ruleForm.value.chargeUserListString
+      delete ruleForm.value.userListString
+      delete ruleForm.value.chargeUserList
+      delete ruleForm.value.gmtModitify
       if (title == '新建应急演练计划发布') {
         if (!formEl) return;
         await formEl.validate((valid, fields) => {
diff --git a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue
index ba15f44..07a7b7b 100644
--- a/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue
+++ b/src/views/contingencyManagement/emergencyDrill/releaseOfDrillPlan/component/regionsDialog.vue
@@ -1,5 +1,5 @@
 <template>
-  <el-dialog v-model="dialogVisible" title="选择应急预案" width="900px" draggable :fullscreen="full">
+  <el-dialog v-model="dialogVisible" title="选择应急预案" width="900px" draggable :fullscreen="full" @close="closeDialog">
     <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
     <el-row>
       <el-col :span="18">
@@ -132,6 +132,9 @@
       dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
       radio1.value = '';
     };
+    const closeDialog = () =>{
+      handleClose('')
+    }
     const radio1 = ref('');
     const radio = (event: any) => {
       dynamicTags.value[0] = event;
@@ -175,6 +178,7 @@
       listQuery,
       onSubmit,
       submitForm,
+      closeDialog
     };
   },
 });
diff --git a/src/views/contingencyManagement/emergencyPlanStartRecord/component/selectEmergencyPlan.vue b/src/views/contingencyManagement/emergencyPlanStartRecord/component/selectEmergencyPlan.vue
index da6b207..9fe5f86 100644
--- a/src/views/contingencyManagement/emergencyPlanStartRecord/component/selectEmergencyPlan.vue
+++ b/src/views/contingencyManagement/emergencyPlanStartRecord/component/selectEmergencyPlan.vue
@@ -1,5 +1,5 @@
 <template>
-	<el-dialog v-model="dialogVisible" title="选择应急预案" width="900px" draggable :fullscreen="full">
+	<el-dialog v-model="dialogVisible" title="选择应急预案" width="900px" draggable :fullscreen="full" @close="closeDialog">
 		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
 		<el-row>
 			<el-col :span="18">
@@ -154,6 +154,9 @@
 			dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
 			radio1.value = '';
 		};
+		const closeDialog = () => {
+			handleClose('')
+		}
 		const radio1 = ref('');
 		const radio = (event: any) => {
 			dynamicTags.value[0] = event;
@@ -198,6 +201,7 @@
 			onSubmit,
 			submitForm,
 			total,
+			closeDialog
 		};
 	},
 });
diff --git a/src/views/contingencyManagement/emergencyPlanStartRecord/index.vue b/src/views/contingencyManagement/emergencyPlanStartRecord/index.vue
index 29f589c..7c1587d 100644
--- a/src/views/contingencyManagement/emergencyPlanStartRecord/index.vue
+++ b/src/views/contingencyManagement/emergencyPlanStartRecord/index.vue
@@ -157,12 +157,15 @@
 
     // 请求列表数据
     const onSubmit = async () => {
+      var planName = listQuery.searchParams.planName
+      delete listQuery.searchParams.planName
       let res = await emergencyPlanLogApi().getEmergencyPlanLogList(listQuery);
       if (res.data.code == 200) {
         tableData.value = res.data.data;
         pageIndex.value = res.data.pageIndex;
         pageSize.value = res.data.pageSize;
         total.value = res.data.total;
+        listQuery.searchParams.planName = planName
       } else {
         ElMessage.error(res.data.msg);
       }
diff --git a/src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/component/openAdd.vue b/src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/component/openAdd.vue
index 3137291..a241308 100644
--- a/src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/component/openAdd.vue
+++ b/src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/component/openAdd.vue
@@ -138,6 +138,8 @@
 				await formEl.validate((valid, fields) => {
 					if (valid) {
 						isShowDialog.value = false;
+						delete ruleForm.value.suppliesName
+						delete ruleForm.value.userName
 						emergencyMaterialsInspectionApi()
 							.addEmergencyMaterialsInspection(ruleForm.value)
 							.then((res) => {
@@ -167,6 +169,8 @@
 				await formEl.validate((valid, fields) => {
 					if (valid) {
 						isShowDialog.value = false;
+						delete ruleForm.value.suppliesName
+						delete ruleForm.value.userName
 						emergencyMaterialsInspectionApi()
 							.editEmergencyMaterialsInspection(ruleForm.value)
 							.then((res) => {
diff --git a/src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/index.vue b/src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/index.vue
index 5e14343..2e31c2e 100644
--- a/src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/index.vue
+++ b/src/views/contingencyManagement/emergencyResources/emergencyMaterialsInspection/index.vue
@@ -4,7 +4,7 @@
 			<div class="system-user-search mb15">
 				<el-form size="default" label-width="80px" :inline="true">
 					<el-form-item prop="telephone">
-						<el-input v-model="listQuery.searchParams.suppliesName" placeholder="请选择应急物资" class="input-with-select">
+						<el-input v-model="suppliesName" placeholder="请选择应急物资" class="input-with-select">
 							<template #append>
 								<el-button :icon="Search" @click="daiInpt" />
 							</template>
@@ -143,10 +143,11 @@
 				});
 			}
 		};
+		const suppliesName=ref()
 		// 重置
 		const submitReset = () => {
 			listQuery.searchParams.suppliesId = '';
-			listQuery.searchParams.suppliesName=""
+			suppliesName.value=""
 			onSubmit();
 		};
 		const warning = ref(true);
@@ -266,7 +267,7 @@
 		};
 		const onUser = (e: any) => {
 			listQuery.searchParams.suppliesId = e.id;
-			listQuery.searchParams.suppliesName=e.name
+			suppliesName.value=e.name
 		};
 		// 分页
 		const pageIndex = ref();
@@ -287,6 +288,7 @@
 			onSubmit();
 		});
 		return {
+			suppliesName,
 			upButton,
 			upShow,
 			Edit,
diff --git a/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/inspect.vue b/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/inspect.vue
index 0953d51..d67642c 100644
--- a/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/inspect.vue
+++ b/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/inspect.vue
@@ -121,6 +121,7 @@
 			await formEl.validate((valid, fields) => {
 				if (valid) {
 					isShowDialog.value = false;
+					delete ruleForm.value.userName
 					emergencyMaterialsInspectionApi()
 						.addEmergencyMaterialsInspection(ruleForm.value)
 						.then((res) => {
diff --git a/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/maintain.vue b/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/maintain.vue
index b30bcc2..fb8b0a1 100644
--- a/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/maintain.vue
+++ b/src/views/contingencyManagement/emergencyResources/emergencySupplies/component/maintain.vue
@@ -120,6 +120,7 @@
 			await formEl.validate((valid, fields) => {
 				if (valid) {
 					isShowDialog.value = false;
+					delete ruleForm.value.userName
 					maintenanceEmergencyMaterialsApi()
 						.addMaintenanceEmergencyMaterials(ruleForm.value)
 						.then((res) => {
diff --git a/src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/component/openAdd.vue b/src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/component/openAdd.vue
index 7bcfdce..fd30fbe 100644
--- a/src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/component/openAdd.vue
+++ b/src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/component/openAdd.vue
@@ -113,6 +113,8 @@
 				if (valid) {
 					if (titles.value == '新建应急物资保养') {
 						isShowDialog.value = false;
+						delete ruleForm.value.suppliesName
+						delete ruleForm.value.userName
 						maintenanceEmergencyMaterialsApi()
 							.addMaintenanceEmergencyMaterials(ruleForm.value)
 							.then((res) => {
@@ -134,6 +136,8 @@
 							});
 					} else if (titles.value == '修改应急物资保养') {
 						isShowDialog.value = false;
+						delete ruleForm.value.suppliesName
+						delete ruleForm.value.userName
 						maintenanceEmergencyMaterialsApi()
 							.editMaintenanceEmergencyMaterials(ruleForm.value)
 							.then((res) => {
diff --git a/src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/index.vue b/src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/index.vue
index 3544d06..f45019b 100644
--- a/src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/index.vue
+++ b/src/views/contingencyManagement/emergencyResources/maintenanceOfEmergencyMaterials/index.vue
@@ -4,7 +4,7 @@
 			<div class="system-user-search mb15">
 				<el-form size="default" label-width="80px" :inline="true">
 					<el-form-item prop="telephone">
-						<el-input v-model="listQuery.searchParams.suppliesName" placeholder="请选择应急物资" class="input-with-select">
+						<el-input v-model="suppliesName" placeholder="请选择应急物资" class="input-with-select">
 							<template #append>
 								<el-button :icon="Search" @click="daiInpt" />
 							</template>
@@ -148,10 +148,11 @@
 				});
 			}
 		};
+		const suppliesName = ref('');
 		// 重置
 		const submitReset = () => {
 			listQuery.searchParams.suppliesId = '';
-			listQuery.searchParams.suppliesName="";
+			suppliesName.value = '';
 			onSubmit();
 		};
 		const warning = ref(true);
@@ -163,7 +164,7 @@
 			for (let i = 0; i < valId.length; i++) {
 				arr.push(valId[i].id);
 			}
-			deletAll.value = arr
+			deletAll.value = arr;
 			if (val.length == 1) {
 				warning.value = false;
 				danger.value = false;
@@ -178,7 +179,7 @@
 
 		// 打开新建用户弹窗
 		const addRef = ref();
-		const onOpenAdd = (data:any) => {
+		const onOpenAdd = (data: any) => {
 			addRef.value.openDialog(data);
 		};
 		// 新增后刷新
@@ -199,8 +200,8 @@
 		};
 		// 删除
 		const onRowDel = (data: any) => {
-			let arr=[]
-			arr.push(data)
+			let arr = [];
+			arr.push(data);
 			ElMessageBox.confirm('确定删除所选项吗?', '提示', {
 				confirmButtonText: '确定',
 				cancelButtonText: '取消',
@@ -271,7 +272,7 @@
 		};
 		const onUser = (e: any) => {
 			listQuery.searchParams.suppliesId = e.id;
-			listQuery.searchParams.suppliesName=e.name
+			suppliesName.value = e.name;
 		};
 		// 分页
 		const pageIndex = ref();
@@ -292,6 +293,7 @@
 			onSubmit();
 		});
 		return {
+			suppliesName,
 			upButton,
 			upShow,
 			Edit,
diff --git a/src/views/contingencyManagement/panManagement/component/abolishLibrary.vue b/src/views/contingencyManagement/panManagement/component/abolishLibrary.vue
index f13523f..c36b1e3 100644
--- a/src/views/contingencyManagement/panManagement/component/abolishLibrary.vue
+++ b/src/views/contingencyManagement/panManagement/component/abolishLibrary.vue
@@ -12,8 +12,15 @@
 						:header-cell-style="{ background: '#f6f7fa', color: '#909399' }"
 					>
 						<el-table-column prop="name" label="预案名称" show-overflow-tooltip sortable></el-table-column>
-						<el-table-column prop="type" label="预案类型" show-overflow-tooltip sortable></el-table-column>
-						<el-table-column prop="authorUid" label="编写人" show-overflow-tooltip sortable></el-table-column>
+						<el-table-column prop="type" label="预案类型" show-overflow-tooltip sortable>
+							<template #default="scope">
+								<div v-if="scope.row.type==1">综合应急预案</div>
+								<div v-if="scope.row.type==2">现场处置方案</div>
+								<div v-if="scope.row.type==3">专项应急预案</div>
+								<div v-if="scope.row.type==4">其他预案</div>
+							</template>
+						</el-table-column>
+						<el-table-column prop="authorName" label="编写人" show-overflow-tooltip sortable></el-table-column>
 						<el-table-column prop="releaseDate" label="发布实施日期" show-overflow-tooltip sortable></el-table-column>
 						<el-table-column label="操作" width="200" align="center">
 							<template #default="scope">
diff --git a/src/views/contingencyManagement/panManagement/component/approval.vue b/src/views/contingencyManagement/panManagement/component/approval.vue
index b6db937..aed57e8 100644
--- a/src/views/contingencyManagement/panManagement/component/approval.vue
+++ b/src/views/contingencyManagement/panManagement/component/approval.vue
@@ -6,19 +6,19 @@
 				<el-row :gutter="35">
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="审批名称" prop="workName">
-							<el-input v-model="ruleForm.workName" placeholder="请填写队伍名称"></el-input>
+							<el-input v-model="ruleForm.workName" placeholder="请填写队伍名称" disabled></el-input>
 						</el-form-item>
 					</el-col>
-          <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="审批标题" prop="title">
-              <el-input v-model="ruleForm.title" placeholder="请填写审批名称"></el-input>
-            </el-form-item>
-          </el-col>
+					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="审批标题" prop="title">
+							<el-input v-model="ruleForm.title" placeholder="请填写审批名称" disabled></el-input>
+						</el-form-item>
+					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="审批人" prop="approvePersonId">
-							<el-input v-model="ruleForm.approvePersonName" placeholder="请选择" class="input-with-select">
+							<el-input v-model="ruleForm.approvePersonName" placeholder="请选择" class="input-with-select" disabled>
 								<template #append>
-									<el-button :icon="Search" @click="openUser" />
+									<el-button :icon="Search" @click="openUser" :disabled="disabled"/>
 								</template>
 							</el-input>
 						</el-form-item>
@@ -26,8 +26,8 @@
 					<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
 						<el-form-item label="审批结果" prop="authorUid">
 							<el-radio-group v-model="ruleForm.approveResult">
-                <el-radio :label="false">不通过</el-radio>
-                <el-radio :label="true">通过</el-radio>
+								<el-radio :label="false">不通过</el-radio>
+								<el-radio :label="true">通过</el-radio>
 							</el-radio-group>
 						</el-form-item>
 					</el-col>
@@ -37,25 +37,25 @@
 						</el-form-item>
 					</el-col>
 					<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-						<el-form-item label="是否完成" prop="authorUid" @change="typeChang">
+						<el-form-item label="是否完成" prop="complete" @change="typeChang">
 							<el-radio-group v-model="ruleForm.complete">
 								<el-radio :label="false">是</el-radio>
 								<el-radio :label="true">否</el-radio>
 							</el-radio-group>
 						</el-form-item>
 					</el-col>
-          <el-col v-if="ruleForm.complete" :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="审批名称" prop="workName">
-              <el-input v-model="ruleForm.twoWorkName" placeholder="请填写队伍名称"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col v-if="ruleForm.complete" :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-            <el-form-item label="审批标题" prop="title">
-              <el-input v-model="ruleForm.twoTitle" placeholder="请填写审批名称"></el-input>
-            </el-form-item>
-          </el-col>
 					<el-col v-if="ruleForm.complete" :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-						<el-form-item label="审批人" prop="authorUid">
+						<el-form-item label="审批名称" prop="twoWorkName">
+							<el-input v-model="ruleForm.twoWorkName" placeholder="请填写队伍名称"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col v-if="ruleForm.complete" :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="审批标题" prop="twoTitle">
+							<el-input v-model="ruleForm.twoTitle" placeholder="请填写审批名称"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col v-if="ruleForm.complete" :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
+						<el-form-item label="审批人" prop="twoApprovePersonName">
 							<el-input v-model="ruleForm.twoApprovePersonName" placeholder="请选择" class="input-with-select">
 								<template #append>
 									<el-button :icon="Search" @click="openUser" />
@@ -88,72 +88,87 @@
 export default defineComponent({
 	name: 'openAdd',
 	components: {
-    DailogSearchUserManger,
+		DailogSearchUserManger,
 	},
 	setup(prop, { emit }) {
 		const isShowDialog = ref(false);
 		const ruleFormRef = ref<FormInstance>();
 		const ruleForm = ref({
-      approveId: '',
-      workName: '', // 审批名称
-      title: '', //审批标题
-      approvePersonId: '', //
-      approvePersonName: '', // 审批人
-      approveStatus: 2, //审批状态
-      relateType: 1, //业务类型
-      approveResult: false, //审批结果
-      approveMemo: '', //审批意见
-      relateId: '',
-      twoWorkName:'',
-      twoTitle:'',
-      twoApprovePersonId:'',
-      twoApprovePersonName:''
+			approveId: '',
+			workName: '', // 审批名称
+			title: '', //审批标题
+			approvePersonId: '', //
+			approvePersonName: '', // 审批人
+			approveStatus: 2, //审批状态
+			relateType: 1, //业务类型
+			approveResult: false, //审批结果
+			approveMemo: '', //审批意见
+			relateId: '',
+			twoWorkName: '',
+			twoTitle: '',
+			twoApprovePersonId: '',
+			twoApprovePersonName: '',
 		});
 		const titles = ref();
 		const disabled = ref();
-    const uid = ref();
+		const uid = ref();
 		// 打开弹窗
-		const openDialog = (title: string, id: number, type: boolean) => {
+		const openDialog = (title: string, approveId: number, type: boolean, id: number) => {
 			isShowDialog.value = true;
 			titles.value = title;
 			disabled.value = type;
-      ruleForm.value.relateId = id;
-      uid.value = id;
-      if(title == '查看审批' || title == '修改审批') {
-        emergencyPlanApi()
-            .approvalProcessEmergencyPlan(id)
-            .then((res) => {
-              if (res.data.code == 200) {
-                ruleForm.value = res.data.data;
-              }
-            });
-      }
+
+			uid.value = approveId;
+			if (title == '查看审批' || title == '审批') {
+				emergencyPlanApi()
+					.approvalProcessEmergencyPlan(approveId)
+					.then((res) => {
+						if (res.data.code == 200) {
+							ruleForm.value = res.data.data;
+							ruleForm.value.relateId = id;
+						}
+					});
+			}
 		};
 		const submitForm = async () => {
-      ruleForm.value.workName = ruleForm.value.twoWorkName
-      ruleForm.value.title = ruleForm.value.twoTitle
-      ruleForm.value.approvePersonId = ruleForm.value.twoApprovePersonId
-      ruleForm.value.approvePersonName = ruleForm.value.twoApprovePersonName
-      isShowDialog.value = false;
-      emergencyPlanApi()
-          .editApprovalEmergencyPlan(ruleForm.value)
-          .then((res) => {
-            if (res.data.code == 200) {
-              ElMessage({
-                showClose: true,
-                message: '修改成功',
-                type: 'success',
-              });
-              emit('myAdd', true);
-            } else {
-              ElMessage({
-                showClose: true,
-                message: res.data.msg,
-                type: 'error',
-              });
-              emit('myAdd', true);
-            }
-          });
+			console.log(ruleForm.value);
+
+			ruleForm.value.workName = ruleForm.value.twoWorkName;
+			ruleForm.value.title = ruleForm.value.twoTitle;
+			ruleForm.value.approvePersonId = ruleForm.value.twoApprovePersonId;
+			ruleForm.value.approvePersonName = ruleForm.value.twoApprovePersonName;
+			ruleForm.value.relateType = 1;
+			isShowDialog.value = false;
+		  if(ruleForm.value.complete == false)  {
+			ruleForm.value.approveStatus=3
+		  }
+			delete ruleForm.value.gmtCreate
+			delete ruleForm.value.complete
+			delete ruleForm.value.submitPersonName
+
+			delete ruleForm.value.twoApprovePersonId
+			delete ruleForm.value.twoApprovePersonName
+			delete ruleForm.value.twoTitle
+			delete ruleForm.value.twoWorkName
+			emergencyPlanApi()
+				.editApprovalEmergencyPlan(ruleForm.value)
+				.then((res) => {
+					if (res.data.code == 200) {
+						ElMessage({
+							showClose: true,
+							message: '修改成功',
+							type: 'success',
+						});
+						emit('myAdd', true);
+					} else {
+						ElMessage({
+							showClose: true,
+							message: res.data.msg,
+							type: 'error',
+						});
+						emit('myAdd', true);
+					}
+				});
 		};
 		const resetForm = () => {
 			isShowDialog.value = false;
@@ -165,8 +180,8 @@
 		};
 		//回显
 		const onUser = (e: any) => {
-      ruleForm.value.twoApprovePersonId = e[0].uid;
-      ruleForm.value.twoApprovePersonName = e[0].realName;
+			ruleForm.value.twoApprovePersonId = e[0].uid;
+			ruleForm.value.twoApprovePersonName = e[0].realName;
 		};
 		const typeChang = () => {
 			console.log('tag', ruleForm);
@@ -198,7 +213,7 @@
 			resetForm,
 			onUser,
 			typeChang,
-      uid,
+			uid,
 		};
 	},
 });
diff --git a/src/views/contingencyManagement/panManagement/component/approvalProcess.vue b/src/views/contingencyManagement/panManagement/component/approvalProcess.vue
index 2356a0b..209c51a 100644
--- a/src/views/contingencyManagement/panManagement/component/approvalProcess.vue
+++ b/src/views/contingencyManagement/panManagement/component/approvalProcess.vue
@@ -1,50 +1,45 @@
 <template>
-  <div class="system-edit-user-container">
-    <el-dialog title="查看审批流程" v-model="isShowDialog" width="60%" draggable :fullscreen="full">
-      <el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
-      <el-row :gutter="35">
-        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-          <el-table
-              :data="tableData"
-              style="width: 100%; margin-top: 15px"
-              ref="multipleTableRef"
-              :model="formInline"
-              :header-cell-style="{ background: '#f6f7fa', color: '#909399' }"
-          >
-            <el-table-column prop="workName" label="审批人" show-overflow-tooltip sortable></el-table-column>
-            <el-table-column prop="title" label="审批标题" show-overflow-tooltip sortable></el-table-column>
-            <el-table-column prop="approvePersonName" label="编写人" show-overflow-tooltip sortable></el-table-column>
-            <el-table-column prop="approveMemo" label="审批意见" show-overflow-tooltip sortable></el-table-column>
-            <el-table-column label="操作" width="200" align="center">
-              <template #default="scope">
-                <el-button size="small" text type="primary" @click="onReduction(scope.row.id)">还原</el-button>
-              </template>
-            </el-table-column>
-          </el-table>
-        </el-col>
-      </el-row>
-      <div class="pages">
-        <el-pagination
-            v-if="tableData.length == 0 ? false : true"
-            v-model:currentPage="pageIndex"
-            v-model:page-size="pageSize"
-            :page-sizes="[10, 20, 30]"
-            :pager-count="5"
-            class="mt15"
-            background
-            layout="total, sizes, prev, pager, next, jumper"
-            :total="total"
-            @size-change="onHandleSizeChange"
-            @current-change="onHandleCurrentChange"
-        />
-      </div>
-      <template #footer>
+	<div class="system-edit-user-container">
+		<el-dialog title="查看审批流程" v-model="isShowDialog" width="60%" draggable :fullscreen="full">
+			<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
+			<el-row :gutter="35">
+				<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+					<el-table
+						:data="tableData"
+						style="width: 100%; margin-top: 15px"
+						ref="multipleTableRef"
+						:model="formInline"
+						:header-cell-style="{ background: '#f6f7fa', color: '#909399' }"
+					>
+						<el-table-column prop="workName" label="审批人" show-overflow-tooltip sortable></el-table-column>
+						<el-table-column prop="title" label="审批标题" show-overflow-tooltip sortable></el-table-column>
+						<el-table-column prop="approvePersonName" label="编写人" show-overflow-tooltip sortable></el-table-column>
+						<el-table-column prop="approveMemo" label="审批意见" show-overflow-tooltip sortable></el-table-column>
+					</el-table>
+				</el-col>
+			</el-row>
+			<div class="pages">
+				<el-pagination
+					v-if="tableData.length == 0 ? false : true"
+					v-model:currentPage="pageIndex"
+					v-model:page-size="pageSize"
+					:page-sizes="[10, 20, 30]"
+					:pager-count="5"
+					class="mt15"
+					background
+					layout="total, sizes, prev, pager, next, jumper"
+					:total="total"
+					@size-change="onHandleSizeChange"
+					@current-change="onHandleCurrentChange"
+				/>
+			</div>
+			<template #footer>
 				<span class="dialog-footer">
 					<el-button @click="onCancel">取消</el-button>
 				</span>
-      </template>
-    </el-dialog>
-  </div>
+			</template>
+		</el-dialog>
+	</div>
 </template>
 
 <script lang="ts">
@@ -52,151 +47,150 @@
 
 import type { FormInstance } from 'element-plus';
 import {
-  // ElMessageBox,
-  ElMessage,
+	// ElMessageBox,
+	ElMessage,
 } from 'element-plus';
 import { Search, FullScreen } from '@element-plus/icons-vue';
 import { emergencyPlanApi } from '../../../../api/contingencyManagement/emergencyPlan';
 export default defineComponent({
-  name: 'abolishLibrary',
-  components: {},
-  setup(prop, { emit }) {
-    // 列表参数
-    const listQuery = reactive({
-      pageIndex: 1,
-      pageSize: 10,
-      searchParams: {
-        relateType: 1,
-        relateId: '',
-        startTime: '',
-        endTime: '',
-      },
-    });
-    // 定义表格数据
-    const tableData = ref([]);
+	name: 'abolishLibrary',
+	components: {},
+	setup(prop, { emit }) {
+		// 列表参数
+		const listQuery = reactive({
+			pageIndex: 1,
+			pageSize: 10,
+			searchParams: {
+				relateType: 1,
+				relateId: '',
+				startTime: '',
+				endTime: '',
+			},
+		});
+		// 定义表格数据
+		const tableData = ref([]);
 
-    // 列表数据请求
-    const openDialog = async () => {
-      isShowDialog.value = true;
-      let res = await emergencyPlanApi().processEmergencyPlan(listQuery);
-      if (res.data.code === '200') {
-        tableData.value = res.data.data;
-        pageIndex.value = res.data.pageIndex;
-        pageSize.value = res.data.pageSize;
-        total.value = res.data.total;
-      } else {
-        ElMessage({
-          showClose: true,
-          type: 'error',
-          message: res.data.msg,
-        });
-      }
-    };
+		// 列表数据请求
+		const uid = ref();
+		const openDialog = async (id: number) => {
+			isShowDialog.value = true;
+      listQuery.searchParams.relateId=id
+			uid.value = id;
+			let res = await emergencyPlanApi().processEmergencyPlan(listQuery);
+			if (res.data.code === '200') {
+				tableData.value = res.data.data;
+				pageIndex.value = res.data.pageIndex;
+				pageSize.value = res.data.pageSize;
+				total.value = res.data.total;
+			} else {
+				ElMessage({
+					showClose: true,
+					type: 'error',
+					message: res.data.msg,
+				});
+			}
+		};
 
-    const isShowDialog = ref(false);
+		const isShowDialog = ref(false);
 
-    const ruleFormRef = ref<FormInstance>();
-    // 打开弹窗
-    // const openDialog = () => {
-    //   isShowDialog.value = true;
-    // };
-    // 关闭弹窗
-    const closeDialog = () => {
-      isShowDialog.value = false;
-    };
-    // 取消
-    const onCancel = () => {
-      closeDialog();
-    };
-    const onReduction = async () => {
-      isShowDialog.value = false;
-    };
-    // 分页
-    const pageIndex = ref();
-    const pageSize = ref();
-    const total = ref();
-    // 分页改变
-    const handleSizeChange = (val: number) => {
-      listQuery.pageSize = val;
-    };
-    // 分页未改变
-    const handleCurrentChange = (val: number) => {
-      listQuery.pageIndex = val;
-    };
-    //全屏
-    const full = ref(false);
-    const toggleFullscreen = () => {
-      if (full.value == false) {
-        full.value = true;
-      } else {
-        full.value = false;
-      }
-    };
-    return {
-      openDialog,
-      closeDialog,
-      isShowDialog,
-      onCancel,
-      tableData,
-      Search,
-      ruleFormRef,
-      pageIndex,
-      pageSize,
-      handleSizeChange,
-      handleCurrentChange,
-      toggleFullscreen,
-      FullScreen,
-      full,
-      listQuery,
-      // onSubmit,
-      total,
-      emit,
-      onReduction,
-    };
-  },
+		const ruleFormRef = ref<FormInstance>();
+		// 打开弹窗
+		// const openDialog = () => {
+		//   isShowDialog.value = true;
+		// };
+		// 关闭弹窗
+		const closeDialog = () => {
+			isShowDialog.value = false;
+		};
+		// 取消
+		const onCancel = () => {
+			closeDialog();
+		};
+		// 分页
+		const pageIndex = ref();
+		const pageSize = ref();
+		const total = ref();
+		// 分页改变
+		const handleSizeChange = (val: number) => {
+			listQuery.pageSize = val;
+		};
+		// 分页未改变
+		const handleCurrentChange = (val: number) => {
+			listQuery.pageIndex = val;
+		};
+		//全屏
+		const full = ref(false);
+		const toggleFullscreen = () => {
+			if (full.value == false) {
+				full.value = true;
+			} else {
+				full.value = false;
+			}
+		};
+		return {
+			openDialog,
+			closeDialog,
+			isShowDialog,
+			onCancel,
+			tableData,
+			Search,
+			ruleFormRef,
+			pageIndex,
+			pageSize,
+			handleSizeChange,
+			handleCurrentChange,
+			toggleFullscreen,
+			FullScreen,
+			full,
+			listQuery,
+			total,
+			emit,
+			uid,
+		};
+	},
 });
 </script>
 <style scoped lang="scss">
 .textarea {
-  height: 168px !important;
+	height: 168px !important;
 }
 .textarea ::v-deep .el-textarea__inner {
-  height: 168px !important;
+	height: 168px !important;
 }
 ::v-deep .el-table__cell {
-  font-weight: 400;
+	font-weight: 400;
 }
 //分页
 .pages {
-  display: flex;
-  justify-content: flex-end;
+	display: flex;
+	justify-content: flex-end;
 }
 ::v-deep .el-pagination .el-pager li {
-  margin: 0 5px;
-  background-color: #f4f4f5;
-  color: #606266;
-  min-width: 30px;
-  border-radius: 2px;
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
 }
 ::v-deep .el-pagination .el-pager li.is-active {
-  background-color: #409eff;
-  color: #fff;
+	background-color: #409eff;
+	color: #fff;
 }
 ::v-deep .el-pagination .btn-prev {
-  margin: 0 5px;
-  background-color: #f4f4f5;
-  color: #606266;
-  min-width: 30px;
-  border-radius: 2px;
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
 }
 ::v-deep .el-pagination button:disabled {
-  color: #c0c4cc;
+	color: #c0c4cc;
 }
 ::v-deep .el-pagination .btn-next {
-  margin: 0 5px;
-  background-color: #f4f4f5;
-  color: #606266;
-  min-width: 30px;
-  border-radius: 2px;
+	margin: 0 5px;
+	background-color: #f4f4f5;
+	color: #606266;
+	min-width: 30px;
+	border-radius: 2px;
 }
 </style>
\ No newline at end of file
diff --git a/src/views/contingencyManagement/panManagement/component/openAdd.vue b/src/views/contingencyManagement/panManagement/component/openAdd.vue
index 02c44c0..6a6bd50 100644
--- a/src/views/contingencyManagement/panManagement/component/openAdd.vue
+++ b/src/views/contingencyManagement/panManagement/component/openAdd.vue
@@ -1,6 +1,14 @@
 <template>
 	<div class="system-edit-user-container">
-		<el-dialog :title="titles" v-model="isShowDialog" width="50%" draggable :fullscreen="full" :close-on-click-modal="false">
+		<el-dialog
+			:title="titles"
+			v-model="isShowDialog"
+			width="50%"
+			draggable
+			:fullscreen="full"
+			:close-on-click-modal="false"
+			@close="resetForm(ruleFormRef)"
+		>
 			<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
 			<el-form ref="ruleFormRef" :model="ruleForm" size="default" label-width="120px" :disabled="disabled">
 				<el-row :gutter="35">
@@ -12,16 +20,17 @@
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="适用部门" prop="responsibleDepartment">
 							<el-tree-select
-								v-model="ruleForm.responsibleDepartment"
-								:data="data"
+								v-model="responsibleDepartment"
+								:data="newTreeList"
+								class="w100"
+								clearable
+								:props="propse"
 								multiple
 								:render-after-expand="false"
-								:props="propse"
-								clearable
-                show-checkbox
-                check-strictly
-                check-on-click-node
-                placeholder="请选择"
+								check-strictly
+								check-on-click-node
+								placeholder="请选择"
+								@change="changeDepartment"
 							/>
 							<el-divider />
 						</el-form-item>
@@ -66,8 +75,7 @@
 						<el-form-item label="编写部门" prop="authorDeptId">
 							<el-tree-select
 								v-model="ruleForm.authorDeptId"
-								check-strictly
-								:data="data"
+								:data="newTreeList"
 								class="w100"
 								:props="propse"
 								clearable
@@ -89,7 +97,7 @@
 					</el-col>
 					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
 						<el-form-item label="应急队伍" prop="emergencyTeam">
-							<el-input v-model="ruleForm.emergencyTeam" placeholder="请选择" class="input-with-select">
+							<el-input v-model="ruleForm.teamName" placeholder="请选择" class="input-with-select">
 								<template #append>
 									<el-button :icon="Search" @click="daiInpt(0)" />
 								</template>
@@ -133,7 +141,7 @@
 				</span>
 			</template>
 		</el-dialog>
-		<CheckTemplate ref="Shows"  @SearchUser="SearchUser" />
+		<CheckTemplate ref="Shows" @SearchUser="SearchUser" />
 		<DailogSearchUserManger ref="userRef" @SearchUser="onUser" />
 		<RegionsDialog ref="openRef" />
 	</div>
@@ -170,17 +178,11 @@
 			authorName: '',
 			authorDeptId: '', // 编写部门
 			releaseDate: '', // 发布实施日期
-			fileList: [
-				// {
-				// 	fileUrl: 'url',
-				// 	fileName: 'name',
-				// },
-			],
-			emergencyTeam: '', //应急队伍
+			fileList: [],
 			areaList: [], //区域列表
 			teamList: [],
+			// teamId: '', //应急队伍
 			deptList: [],
-			abolishStatus: false,
 		});
 		const titles = ref();
 		const disabled = ref();
@@ -195,12 +197,21 @@
 					.seeEmergencyTeam(id)
 					.then((res) => {
 						if (res.data.code == 200) {
-              ruleForm.value = res.data.data;
-              let arr = [];
-              for (let i = 0; i < ruleForm.value.teamList.length; i++) {
-                arr.push(ruleForm.value.teamList[i].emergencyTeam);
-              }
-              ruleForm.value.emergencyTeam = arr.toString();
+							ruleForm.value = res.data.data;
+							ruleForm.value.teamName = ''
+							responsibleDepartment.value = []
+							if(res.data.data.teamList){
+								for(var a = 0;a<res.data.data.teamList.length;a++){
+									ruleForm.value.teamName+=res.data.data.teamList[a].teamName+';'
+								}
+							}
+							if(res.data.data.deptList){
+								for(var a = 0;a<res.data.data.deptList.length;a++){
+
+									responsibleDepartment.value.push(res.data.data.deptList[a].departmentId)
+								}
+							}
+
 						}
 					});
 			}
@@ -209,30 +220,55 @@
 		const releaseDate = ref('');
 		// 上传附件
 		const fileList = ref<UploadUserFile[]>([]);
-		//部门树
-		const department = () => {
-			goalManagementApi()
+		//el-tree-select回显
+		const propse = {
+			label: 'depName',
+			children: 'children',
+		};
+		const newTreeList = [];
+		//得到部门树
+		const department = async () => {
+			await goalManagementApi()
 				.getTreedepartment()
 				.then((res) => {
 					if (res.data.code == 200) {
-            data.value = res.data.data;
+						data.value = res.data.data;
+						getTreeList(res.data.data, newTreeList);
 					} else {
 						ElMessage.error(res.data.msg);
 					}
 				});
 		};
-		const treeSelect = ref();
-		// const trees = ref();
-		const propse = {
-			label: 'depName',
-			children: 'children',
-			value: 'depId',
+		// 递归树状数据且修改字段名
+		const getTreeList = (treeList, newTreeList) => {
+			treeList.map((c) => {
+				let tempData = {
+					depName: c.depName,
+					value: c.depId,
+					children: [],
+				};
+				if (c.children && c.children.length > 0) {
+					tempData.children = [];
+					getTreeList(c.children, tempData.children);
+				}
+				newTreeList.push(tempData);
+			});
 		};
 		onMounted(() => {
 			department();
 		});
+		const changeDepartment = (e) => {
+			var temList = [];
+			for (var a = 0; a < e.length; a++) {
+				temList.push({
+          departmentId: e[a],
+				});
+			}
+			ruleForm.value.deptList = temList;
+			console.log(ruleForm);
+		};
 		//定义树形下拉框
-		const responsibleDepartment = ref();
+		const responsibleDepartment = ref([]);
 		const data = ref();
 
 		const submitForm = async (title: string, formEl: FormInstance | undefined) => {
@@ -241,6 +277,7 @@
 				await formEl.validate((valid, fields) => {
 					if (valid) {
 						isShowDialog.value = false;
+						delete ruleForm.value.teamName
 						emergencyPlanApi()
 							.addEmergencyPlan(ruleForm.value)
 							.then((res) => {
@@ -269,8 +306,10 @@
 				if (!formEl) return;
 				await formEl.validate((valid, fields) => {
 					if (valid) {
-						isShowDialog.value = false;
-						emergencyPlanApi()
+            ruleForm.value.fileList=[]
+            isShowDialog.value = false;
+            delete ruleForm.value.teamName
+            emergencyPlanApi()
 							.editEmergencyTeam(ruleForm.value)
 							.then((res) => {
 								if (res.data.code == 200) {
@@ -304,18 +343,11 @@
 					authorName: '',
 					authorDeptId: '', // 编写部门
 					releaseDate: '', // 发布实施日期
-					fileList: [
-						// {
-						// 	fileUrl: 'url',
-						// 	fileName: 'name',
-						// },
-					],
-					emergencyTeam: '', //应急队伍
+					fileList: [],
+					// teamId: '', //应急队伍ID
 					areaList: [], //区域列表
-					teamList: [
-          ],
+					teamList: [],
 					deptList: [],
-					abolishStatus: false,
 				};
 			}
 		};
@@ -323,23 +355,24 @@
 			isShowDialog.value = false;
 			if (!formEl) return;
 			formEl.resetFields();
+			ruleForm.value = {};
 		};
 		// 应急队伍弹窗
 		const Shows = ref();
 		const daiInpt = (data: any) => {
-      Shows.value.openDailog(data);
+			Shows.value.openDailog(data);
 		};
-    const SearchUser = (val: any) => {
-      let arr = [];
-      for (let i = 0; i < val.length; i++) {
-        arr.push(val[i].teamName);
-        ruleForm.value.teamList.push({
-          userUid: val[i].uid,
-          emergencyTeam: val[i].teamName,
-        });
-      }
-      ruleForm.value.emergencyTeam = arr.toString();
-    };
+		const SearchUser = (val: any) => {
+			let arr = [];
+			ruleForm.value.teamList = [];
+			for (let i = 0; i < val.length; i++) {
+				arr.push(val[i].teamName);
+				ruleForm.value.teamList.push({
+					teamId: val[i].id,
+				});
+			}
+			ruleForm.value.teamName = arr.toString();
+		};
 		// 选择区域弹窗
 		const openRef = ref();
 		const regionsDialog = () => {
@@ -371,13 +404,13 @@
 			data,
 			Search,
 			releaseDate,
-			treeSelect,
+			// treeSelect,
 			// trees,
 			propse,
 			department,
 			daiInpt,
 			Shows,
-      SearchUser,
+			SearchUser,
 			submitForm,
 			openUser,
 			userRef,
@@ -394,6 +427,8 @@
 			ruleForm,
 			resetForm,
 			onUser,
+			newTreeList,
+			changeDepartment,
 		};
 	},
 });
diff --git a/src/views/contingencyManagement/panManagement/index.vue b/src/views/contingencyManagement/panManagement/index.vue
index cc2ec1b..58f1164 100644
--- a/src/views/contingencyManagement/panManagement/index.vue
+++ b/src/views/contingencyManagement/panManagement/index.vue
@@ -8,10 +8,10 @@
 					</el-form-item>
 					<el-form-item>
 						<el-select size="default" v-model="listQuery.searchParams.type" placeholder="请选择预案类型" class="ml10" style="max-width: 215px">
-							<el-option label="综合应急预案" value="admin"></el-option>
-							<el-option label="现场处置方案" value="common"></el-option>
-							<el-option label="专项应急预案" value="common"></el-option>
-							<el-option label="其他预案" value="common"></el-option>
+							<el-option label="综合应急预案" value="1"></el-option>
+							<el-option label="现场处置方案" value="2"></el-option>
+							<el-option label="专项应急预案" value="3"></el-option>
+							<el-option label="其他预案" value="4"></el-option>
 						</el-select>
 					</el-form-item>
 					<el-form-item>
@@ -107,7 +107,7 @@
 							text
 							type="primary"
 							v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === true"
-							@click="onApproval('修改',scope.row.approveId)"
+							@click="onApproval('修改',scope.row.approveId,scope.row.id)"
 						>
 							审批
 						</el-button>
@@ -116,7 +116,7 @@
 							text
 							type="primary"
 							v-if="scope.row.approveStatus === 2 && scope.row.checkApprove === false"
-							@click="onApproval('详情',scope.row.id)"
+							@click="onApproval('详情',scope.row.approveId,scope.row.id)"
 						>
               查看审批
 						</el-button>
@@ -439,10 +439,12 @@
 		// 分页改变
 		const onHandleSizeChange = (val: number) => {
 			listQuery.pageSize = val;
+			onSubmit();
 		};
 		// 分页未改变
 		const onHandleCurrentChange = (val: number) => {
 			listQuery.pageIndex = val;
+			onSubmit();
 		};
 
 		// const router=useRouter()
@@ -471,17 +473,17 @@
 		};
 		// 审批
 		const approvalRef = ref();
-		const onApproval = (val: string,row: object) => {
+		const onApproval = (val: string,row: object,id) => {
       if(val=='详情'){
         approvalRef.value.openDialog('查看审批', row, true);
       } else {
-        approvalRef.value.openDialog('修改审批', row, false);
+        approvalRef.value.openDialog('审批', row, false,id);
       }
 		};
     // 审批流程
     const processRef = ref();
-    const onApprovalProcess = () => {
-      processRef.value.openDialog();
+    const onApprovalProcess = (row:object,id) => {
+      processRef.value.openDialog(row,id);
     };
 
 		//全屏
diff --git a/src/views/doublePrevent/riskCheckManage/checkTaskManage/checkTask/components/recordDialog.vue b/src/views/doublePrevent/riskCheckManage/checkTaskManage/checkTask/components/recordDialog.vue
index 90cfdaa..769959b 100644
--- a/src/views/doublePrevent/riskCheckManage/checkTaskManage/checkTask/components/recordDialog.vue
+++ b/src/views/doublePrevent/riskCheckManage/checkTaskManage/checkTask/components/recordDialog.vue
@@ -6,7 +6,7 @@
                     <el-row :gutter="35">
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                             <el-form-item label="检查内容" prop="checkContent">
-                                <el-input class="input-length" type="textarea" :rows="3" v-model.trim="recordForm.checkContent" placeholder="检查内容"> </el-input>
+                                <el-input class="input-length" :disabled="true" type="textarea" :rows="3" v-model.trim="recordForm.checkContent" placeholder="检查内容"> </el-input>
                             </el-form-item>
                         </el-col>
                     </el-row>
diff --git a/src/views/doublePrevent/riskCheckManage/checkTaskManage/checkWork/components/workDialog.vue b/src/views/doublePrevent/riskCheckManage/checkTaskManage/checkWork/components/workDialog.vue
index e187100..ca71159 100644
--- a/src/views/doublePrevent/riskCheckManage/checkTaskManage/checkWork/components/workDialog.vue
+++ b/src/views/doublePrevent/riskCheckManage/checkTaskManage/checkWork/components/workDialog.vue
@@ -6,66 +6,66 @@
                     <el-row :gutter="35">
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="排查类型" prop="checkWorkType">
-                                <el-select class="input-add" v-model="workForm.checkWorkType" placeholder="请输入排查类型" clearable> <el-option v-for="item in checkWorkTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option></el-select>
+                                <el-select class="input-add" :disabled="!disabled" v-model="workForm.checkWorkType" placeholder="请输入排查类型" clearable> <el-option v-for="item in checkWorkTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option></el-select>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="排查名称" prop="checkWorkName">
-                                <el-input class="input-add" v-model.trim="workForm.checkWorkName" placeholder="请输入排查名称" clearable></el-input>
+                                <el-input class="input-add" :disabled="!disabled" v-model.trim="workForm.checkWorkName" placeholder="请输入排查名称" clearable></el-input>
                             </el-form-item>
                         </el-col>
 
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="排查周期" prop="checkCycle">
-                                <el-input class="input-add" type="number" v-model.trim="workForm.checkCycle" placeholder="请输入排查周期" clearable></el-input>
+                                <el-input class="input-add" :disabled="!disabled" type="number" v-model.trim="workForm.checkCycle" placeholder="请输入排查周期" clearable></el-input>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="时间单位" prop="checkCycleUnit">
-                                <el-select class="input-add" v-model="workForm.checkCycleUnit" placeholder="请输入时间单位" clearable>
+                                <el-select class="input-add" :disabled="!disabled" v-model="workForm.checkCycleUnit" placeholder="请输入时间单位" clearable>
                                     <el-option v-for="item in timeType" :key="item.id" :label="item.name" :value="item.id"></el-option>
                                 </el-select>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="有效时间" prop="validTime">
-                                <el-input class="input-add" type="number" v-model.trim="workForm.validTime" placeholder="请输入有效时间" clearable></el-input>
+                                <el-input class="input-add" :disabled="!disabled" type="number" v-model.trim="workForm.validTime" placeholder="请输入有效时间" clearable></el-input>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="时间单位" prop="validTimeUnit">
-                                <el-select class="input-add" v-model="workForm.validTimeUnit" placeholder="请输入时间单位" clearable>
+                                <el-select class="input-add" :disabled="!disabled" v-model="workForm.validTimeUnit" placeholder="请输入时间单位" clearable>
                                     <el-option v-for="item in timeType" :key="item.id" :label="item.name" :value="item.id"></el-option>
                                 </el-select>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="提醒时间" prop="noticeTime">
-                                <el-input class="input-add" type="number" v-model.trim="workForm.noticeTime" placeholder="请输入提醒时间" clearable></el-input>
+                                <el-input class="input-add" :disabled="!disabled" type="number" v-model.trim="workForm.noticeTime" placeholder="请输入提醒时间" clearable></el-input>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="时间单位" prop="noticeTimeUnit">
-                                <el-select class="input-add" v-model="workForm.noticeTimeUnit" placeholder="请输入时间单位" clearable>
+                                <el-select class="input-add" :disabled="!disabled" v-model="workForm.noticeTimeUnit" placeholder="请输入时间单位" clearable>
                                     <el-option v-for="item in timeType" :key="item.id" :label="item.name" :value="item.id"></el-option>
                                 </el-select>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="执行部门" prop="execDepId">
-                                <el-cascader @change="achieveUserList" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="workForm.execDepId"> </el-cascader>
+                                <el-cascader :disabled="!disabled" @change="achieveUserList" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="workForm.execDepId"> </el-cascader>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="任务单元" prop="taskUnitId">
-                                <el-select class="input-add" v-model="workForm.taskUnitId" placeholder="请输入任务单元" clearable filterable>
+                                <el-select class="input-add" :disabled="!disabled" v-model="workForm.taskUnitId" placeholder="请输入任务单元" clearable filterable>
                                     <el-option v-for="item in taskUnitList" :key="item.id" :label="item.taskUnitName" :value="item.id"></el-option>
                                 </el-select>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="首次任务开始时间" prop="firstStartTime">
-                                <el-date-picker class="input-add" type="datetime" value-format="YYYY-MM-DD HH:mm:ss" v-model="workForm.firstStartTime" placeholder="请选择首次任务开始时间" clearable></el-date-picker>
+                                <el-date-picker :disabled="!disabled" class="input-add" type="datetime" value-format="YYYY-MM-DD HH:mm:ss" v-model="workForm.firstStartTime" placeholder="请选择首次任务开始时间" clearable></el-date-picker>
                             </el-form-item>
                         </el-col>
                     </el-row>
diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/components/checkDialog.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/components/checkDialog.vue
index fd981ae..cae63b9 100644
--- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/components/checkDialog.vue
+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/components/checkDialog.vue
@@ -22,24 +22,24 @@
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="验收意见" prop="rectifyDesc">
-                            <el-input class="input-add" type="textarea" :rows="2" v-model.trim="checkInfoForm.rectifyDesc" readonly></el-input>
+                            <el-input class="input-add" :disabled="true" type="textarea" :rows="2" v-model.trim="checkInfoForm.rectifyDesc" readonly></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改类型" prop="rectifyType">
-                            <el-select class="input-add" v-model="checkInfoForm.rectifyType" readonly>
+                            <el-select class="input-add" :disabled="true" v-model="checkInfoForm.rectifyType" readonly>
                                 <el-option v-for="item in rectifyTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改部门" prop="rectifyDepId">
-                            <el-cascader @change="achieveUserList" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="checkInfoForm.rectifyDepId" readonly> </el-cascader>
+                            <el-cascader :disabled="true" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="checkInfoForm.rectifyDepId" readonly> </el-cascader>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改责任人" prop="liablePersonId">
-                            <el-select class="input-add" v-model="checkInfoForm.liablePersonId" clearable filterable readonly>
+                            <el-select class="input-add" :disabled="true" v-model="checkInfoForm.liablePersonId" clearable filterable readonly>
                                 <el-option v-for="item in userList" :key="item.uid" :label="item.username" :value="item.uid"></el-option>
                             </el-select>
                         </el-form-item>
@@ -47,7 +47,7 @@
 
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改资金" prop="dangerResult">
-                            <el-input class="input-add" type="number" v-model="checkInfoForm.cost" readonly> </el-input>
+                            <el-input class="input-add" :disabled="true" type="number" v-model="checkInfoForm.cost" readonly> </el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -182,4 +182,15 @@
 };
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue
index 9e2e195..a471d01 100644
--- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue
+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenCheck/index.vue
@@ -204,4 +204,15 @@
 });
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue
index afb11d9..9403e25 100644
--- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue
+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/components/rectifyDialog.vue
@@ -49,25 +49,25 @@
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改内容说明" prop="rectifyDesc">
-                            <el-input class="input-add" type="textarea" :rows="2" v-model.trim="checkInfoForm.rectifyDesc" readonly></el-input>
+                            <el-input class="input-add" :disabled="!disabled" type="textarea" :rows="2" v-model.trim="checkInfoForm.rectifyDesc" readonly></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改类型" prop="rectifyType">
-                            <el-select class="input-add" v-model="checkInfoForm.rectifyType" readonly>
+                            <el-select class="input-add" :disabled="!disabled" v-model="checkInfoForm.rectifyType" readonly>
                                 <el-option v-for="item in rectifyTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改部门" prop="rectifyDepId">
-                            <el-cascader @change="achieveUserList" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="checkInfoForm.rectifyDepId" readonly> </el-cascader>
+                            <el-cascader @change="achieveUserList" :disabled="!disabled" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="checkInfoForm.rectifyDepId" readonly> </el-cascader>
                         </el-form-item>
                     </el-col>
 
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改责任人" prop="liablePersonId">
-                            <el-select class="input-add" v-model="checkInfoForm.liablePersonId" clearable filterable readonly>
+                            <el-select class="input-add" :disabled="!disabled" v-model="checkInfoForm.liablePersonId" clearable filterable readonly>
                                 <el-option v-for="item in userList" :key="item.uid" :label="item.username" :value="item.uid"></el-option>
                             </el-select>
                         </el-form-item>
@@ -75,7 +75,7 @@
 
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="整改资金" prop="dangerResult">
-                            <el-input class="input-add" type="number" v-model="checkInfoForm.cost" readonly> </el-input>
+                            <el-input class="input-add" :disabled="!disabled" type="number" v-model="checkInfoForm.cost" readonly> </el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue
index 093ec04..abb1fef 100644
--- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue
+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenRectify/index.vue
@@ -22,32 +22,32 @@
             </div>
             <el-table :data="rectifyData.data" style="width: 100%" fit highlight-current-row>
                 <el-table-column type="index" label="序号" width="60" />
-                <el-table-column prop="rectifyDesc" label="整改内容说明" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="rectifyTime" label="整改期限" show-overflow-tooltip min-width="200px">
+                <el-table-column prop="rectifyDesc" label="整改内容说明" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="rectifyTime" label="整改期限" min-width="130px" show-overflow-tooltip>
                     <template #default="scope">
                         <span>{{ scope.row.rectifyTime }}</span>
                         <span v-if="scope.row.dangerStatus === 2" class="overdue-img">逾期</span>
                         <span v-if="scope.row.dangerStatus === 9" class="overdue-img">逾期</span>
                     </template>
                 </el-table-column>
-                <el-table-column prop="rectifyType" label=" 整改类型" show-overflow-tooltip min-width="150px">
+                <el-table-column prop="rectifyType" label=" 整改类型" show-overflow-tooltip>
                     <template #default="scope">
                         {{ parseNumber(scope.row.rectifyType, '整改类型') }}
                     </template>
                 </el-table-column>
-                <el-table-column prop="liablePerson" label="整改责任人" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="cost" label="整改资金" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="dangerStatus" label="隐患整改状态" show-overflow-tooltip min-width="150px" align="center">
+                <el-table-column prop="liablePerson" label="整改责任人" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="cost" label="整改资金" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="dangerStatus" label="隐患整改状态" show-overflow-tooltip align="center">
                     <template #default="scope">
                         <el-tag :type="scope.row.dangerStatus === 0 ? 'info' : scope.row.dangerStatus === 1 ? 'primary' : scope.row.dangerStatus === 2 ? 'warning' : scope.row.dangerStatus === 4 ? 'danger' : 'success'">
                             {{ parseNumber(scope.row.dangerStatus, '隐患整改状态') }}
                         </el-tag>
                     </template>
                 </el-table-column>
-                <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="gmtCreate" label="创建时间" show-overflow-tooltip min-width="200px"></el-table-column>
-                <el-table-column prop="lastEditUserName" label="最后修改人" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="gmtModitify" label="最后修改时间" show-overflow-tooltip min-width="200px"></el-table-column>
+                <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="gmtCreate" label="创建时间" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="lastEditUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="gmtModitify" label="最后修改时间" show-overflow-tooltip></el-table-column>
                 <el-table-column label="操作" width="250" fixed="right" align="center">
                     <template #default="scope">
                         <el-button size="small" text type="primary" :icon="View" @click="onOpenDialogRef('查看', scope.row)">查看</el-button>
@@ -259,4 +259,14 @@
     transform: scale(0.8);
     padding: 1px 3px 0 3px;
 }
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
 </style>
diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/components/reportDialog.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/components/reportDialog.vue
index f822e15..40b0a60 100644
--- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/components/reportDialog.vue
+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/components/reportDialog.vue
@@ -7,36 +7,36 @@
                         <el-row :gutter="25">
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="隐患描述" prop="dangerDesc">
-                                    <el-input class="input-add" v-model.trim="reportForm.dangerDesc" placeholder="请输入隐患情况描述" clearable></el-input>
+                                    <el-input class="input-add" :disabled="!disabled" v-model.trim="reportForm.dangerDesc" placeholder="请输入隐患情况描述" clearable></el-input>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="隐患名称" prop="dangerCode">
-                                    <el-input class="input-add" v-model.trim="reportForm.dangerCode" placeholder="请输入隐患名称" clearable></el-input>
+                                    <el-input class="input-add" :disabled="!disabled" v-model.trim="reportForm.dangerCode" placeholder="请输入隐患名称" clearable></el-input>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="隐患所属部门" prop="depId">
-                                    <el-cascader :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="reportForm.depId"> </el-cascader>
+                                    <el-cascader :disabled="!disabled" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="reportForm.depId"> </el-cascader>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="生产装置" prop="produceDeviceId">
-                                    <el-select class="input-add" v-model="reportForm.produceDeviceId" placeholder="请输入生产装置" clearable filterable @change="changeUnit">
+                                    <el-select class="input-add" :disabled="!disabled" v-model="reportForm.produceDeviceId" placeholder="请输入生产装置" clearable filterable @change="changeUnit">
                                         <el-option v-for="item in allProduceDeviceData" :key="item.id" :label="item.produceDeviceName" :value="item.id"></el-option>
                                     </el-select>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="风险分析单元" prop="riskUnitId">
-                                    <el-select class="input-add" v-model.trim="reportForm.riskUnitId" placeholder="请输入风险分析单元" clearable filterable>
+                                    <el-select class="input-add" :disabled="!disabled" v-model.trim="reportForm.riskUnitId" placeholder="请输入风险分析单元" clearable filterable>
                                         <el-option v-for="item in safetyRiskUnitData" :key="item.id" :label="item.riskUnitName" :value="item.id"></el-option>
                                     </el-select>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="隐患来源" prop="dangerSource">
-                                    <el-select class="input-add" v-model="reportForm.dangerSource" placeholder="请选择隐患来源" clearable filterable>
+                                    <el-select class="input-add" :disabled="!disabled" v-model="reportForm.dangerSource" placeholder="请选择隐患来源" clearable filterable>
                                         <el-option v-for="item in dangerSourceList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                                     </el-select>
                                 </el-form-item>
@@ -44,28 +44,28 @@
 
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="隐患等级" prop="dangerLevel">
-                                    <el-select class="input-add" v-model="reportForm.dangerLevel" placeholder="请选择隐患等级" clearable filterable>
+                                    <el-select class="input-add" :disabled="!disabled" v-model="reportForm.dangerLevel" placeholder="请选择隐患等级" clearable filterable>
                                         <el-option v-for="item in dangerLevelList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                                     </el-select>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="隐患类型" prop="dangerType">
-                                    <el-select class="input-add" v-model="reportForm.dangerType" placeholder="请选择隐患类型" clearable filterable>
+                                    <el-select class="input-add" :disabled="!disabled" v-model="reportForm.dangerType" placeholder="请选择隐患类型" clearable filterable>
                                         <el-option v-for="item in dangerTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                                     </el-select>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="隐患可能后果" prop="dangerResult">
-                                    <el-select class="input-add" v-model="reportForm.dangerResult" placeholder="请选择隐患可能后果" clearable filterable>
+                                    <el-select class="input-add" :disabled="!disabled" v-model="reportForm.dangerResult" placeholder="请选择隐患可能后果" clearable filterable>
                                         <el-option v-for="item in dangerResultList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                                     </el-select>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12">
                                 <el-form-item label="隐患产生原因" prop="dangerReason">
-                                    <el-input class="input-add" type="textarea" :rows="2" style="padding-bottom: 10px" v-model.trim="reportForm.dangerReason" placeholder="请输入隐患产生原因"></el-input>
+                                    <el-input class="input-add" :disabled="!disabled" type="textarea" :rows="2" style="padding-bottom: 10px" v-model.trim="reportForm.dangerReason" placeholder="请输入隐患产生原因"></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
@@ -79,24 +79,24 @@
                         <el-row>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="整改类型" prop="rectifyType">
-                                    <el-select class="input-add" v-model="reportForm.rectifyType" placeholder="请选择整改类型" clearable filterable>
+                                    <el-select class="input-add" :disabled="!disabled" v-model="reportForm.rectifyType" placeholder="请选择整改类型" clearable filterable>
                                         <el-option v-for="item in rectifyTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                                     </el-select>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="整改期限" prop="rectifyTime">
-                                    <el-date-picker type="datetime" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="reportForm.rectifyTime" placeholder="请选择整改期限" clearable> </el-date-picker>
+                                    <el-date-picker type="datetime" :disabled="!disabled" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" v-model="reportForm.rectifyTime" placeholder="请选择整改期限" clearable> </el-date-picker>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="整改部门" prop="rectifyDepId">
-                                    <el-cascader @change="achieveUserList" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="reportForm.rectifyDepId"> </el-cascader>
+                                    <el-cascader :disabled="!disabled" @change="achieveUserList" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable class="input-add" v-model="reportForm.rectifyDepId"> </el-cascader>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="整改责任人" prop="liablePersonId">
-                                    <el-select class="input-add" v-model="reportForm.liablePersonId" placeholder="请选择整改责任人" clearable filterable>
+                                    <el-select class="input-add" :disabled="!disabled" v-model="reportForm.liablePersonId" placeholder="请选择整改责任人" clearable filterable>
                                         <el-option v-for="item in userList" :key="item.uid" :label="item.username" :value="item.uid"></el-option>
                                     </el-select>
                                 </el-form-item>
@@ -104,12 +104,12 @@
 
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                                 <el-form-item label="整改资金" prop="dangerResult">
-                                    <el-input class="input-add" type="number" v-model="reportForm.cost" placeholder="请选择整改资金"> </el-input>
+                                    <el-input class="input-add" :disabled="!disabled" type="number" v-model="reportForm.cost" placeholder="请选择整改资金"> </el-input>
                                 </el-form-item>
                             </el-col>
                             <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12">
                                 <el-form-item label="整改措施" prop="rectifyDesc">
-                                    <el-input class="input-add" type="textarea" :rows="2" style="padding-bottom: 10px" v-model.trim="reportForm.rectifyDesc" placeholder="请输入整改措施"></el-input>
+                                    <el-input class="input-add" :disabled="!disabled" type="textarea" :rows="2" style="padding-bottom: 10px" v-model.trim="reportForm.rectifyDesc" placeholder="请输入整改措施"></el-input>
                                 </el-form-item>
                             </el-col>
                         </el-row>
diff --git a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/index.vue b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/index.vue
index 6dba9f5..37cb2c1 100644
--- a/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/index.vue
+++ b/src/views/doublePrevent/riskCheckManage/hiddenManagement/hiddenReport/index.vue
@@ -42,36 +42,36 @@
             </div>
             <el-table :data="reportData.data" style="width: 100%">
                 <el-table-column type="index" label="序号" width="60" />
-                <el-table-column prop="dangerDesc" label="隐患情况描述" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="produceDeviceName" label="生产装置名称" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="riskUnitName" label="风险分析单元名称" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="dangerSource" label="隐患来源" show-overflow-tooltip min-width="150px">
+                <el-table-column prop="dangerDesc" label="隐患情况描述" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="produceDeviceName" label="生产装置名称" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="riskUnitName" label="风险分析单元名称" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="dangerSource" label="隐患来源" show-overflow-tooltip>
                     <template #default="scope">
                         {{ parseNumber(scope.row.dangerSource, '隐患来源') }}
                     </template>
                 </el-table-column>
-                <el-table-column prop="dangerLevel" label="隐患等级" show-overflow-tooltip min-width="150px" align="center">
+                <el-table-column prop="dangerLevel" label="隐患等级" show-overflow-tooltip align="center">
                     <template #default="scope">
                         <el-tag :type="scope.row.dangerLevel === 1 ? 'warning' : 'danger'">
                             {{ parseNumber(scope.row.dangerLevel, '隐患等级') }}
                         </el-tag>
                     </template>
                 </el-table-column>
-                <el-table-column prop="dangerType" label="隐患类型" show-overflow-tooltip min-width="150px">
+                <el-table-column prop="dangerType" label="隐患类型" show-overflow-tooltip>
                     <template #default="scope">
                         {{ parseNumber(scope.row.dangerType, '隐患类型') }}
                     </template>
                 </el-table-column>
-                <el-table-column prop="dangerReason" label="隐患产生原因分析" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="dangerResult" label="隐患可能导致后果" show-overflow-tooltip min-width="150px" align="center">
+                <el-table-column prop="dangerReason" label="隐患产生原因分析" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="dangerResult" label="隐患可能导致后果" show-overflow-tooltip align="center">
                     <template #default="scope">
                         <el-tag :type="scope.row.dangerResult === 1 ? 'success' : scope.row.dangerResult === 2 ? 'info' : scope.row.dangerResult === 3 ? 'warning' : 'danger'"> {{ parseNumber(scope.row.dangerResult, '隐患可能导致后果') }}</el-tag>
                     </template>
                 </el-table-column>
-                <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="gmtCreate" label="创建时间" show-overflow-tooltip min-width="200px"></el-table-column>
-                <el-table-column prop="lastEditUserName" label="最后修改人" show-overflow-tooltip min-width="150px"></el-table-column>
-                <el-table-column prop="gmtModitify" label="最后修改时间" show-overflow-tooltip min-width="200px"></el-table-column>
+                <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="gmtCreate" label="创建时间" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="lastEditUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
+                <el-table-column prop="gmtModitify" label="最后修改时间" show-overflow-tooltip></el-table-column>
                 <el-table-column label="操作" width="250" fixed="right" align="center">
                     <template #default="scope">
                         <el-button size="small" text type="primary" :icon="View" @click="onOpenDialogRef('查看', scope.row)">查看</el-button>
@@ -336,4 +336,15 @@
 });
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/doublePrevent/riskLevel/action/components/riskControlMeasureDialog.vue b/src/views/doublePrevent/riskLevel/action/components/riskControlMeasureDialog.vue
index 77ca4ba..ac7d844 100644
--- a/src/views/doublePrevent/riskLevel/action/components/riskControlMeasureDialog.vue
+++ b/src/views/doublePrevent/riskLevel/action/components/riskControlMeasureDialog.vue
@@ -5,50 +5,50 @@
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="风险事件名称" prop="riskEventId">
-                            <el-select class="input-length" v-model="riskControlMeasureForm.riskEventId" placeholder="请选择风险事件" clearable>
+                            <el-select class="input-length" :disabled="!disabled" v-model="riskControlMeasureForm.riskEventId" placeholder="请选择风险事件" clearable>
                                 <el-option v-for="item in allSafetyRiskEventData" :key="item.id" :label="item.riskEventName" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="风险措施编码" prop="controlMeasureCode">
-                            <el-input class="input-length" v-model.trim="riskControlMeasureForm.controlMeasureCode" placeholder="请输入风险措施编码"></el-input>
+                            <el-input class="input-length" :disabled="!disabled" v-model.trim="riskControlMeasureForm.controlMeasureCode" placeholder="请输入风险措施编码"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="管控方式" prop="controlType">
-                            <el-select class="input-length" v-model="riskControlMeasureForm.controlType" placeholder="请选择管控方式" clearable>
+                            <el-select class="input-length" :disabled="!disabled" v-model="riskControlMeasureForm.controlType" placeholder="请选择管控方式" clearable>
                                 <el-option v-for="item in controlTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="管控内容" prop="checkContent">
-                            <el-input class="input-length" type="textarea" :rows="3" v-model.trim="riskControlMeasureForm.checkContent" placeholder="请输入管控内容" clearable> </el-input>
+                            <el-input class="input-length" :disabled="!disabled" type="textarea" :rows="3" v-model.trim="riskControlMeasureForm.checkContent" placeholder="请输入管控内容" clearable> </el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="管控措施分类1" prop="classify1">
-                            <el-select class="input-length" v-model="riskControlMeasureForm.classify1" @change="changeClassifyTwoList" placeholder="请选择管控方式" clearable>
+                            <el-select class="input-length" :disabled="!disabled" v-model="riskControlMeasureForm.classify1" @change="changeClassifyTwoList" placeholder="请选择管控方式" clearable>
                                 <el-option v-for="item in classifyOneList" :key="item.id" :label="item.riskMeasureName" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="管控措施分类2" prop="classify2">
-                            <el-select class="input-length" v-model="riskControlMeasureForm.classify2" placeholder="请选择管控方式" clearable>
+                            <el-select class="input-length" :disabled="!disabled" v-model="riskControlMeasureForm.classify2" placeholder="请选择管控方式" clearable>
                                 <el-option v-for="item in classifyTwoList" :key="item.id" :label="item.riskMeasureName" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="管控措施分类3" prop="classify3">
-                            <el-input class="input-length" v-model.trim="riskControlMeasureForm.classify3" placeholder="请选择管控方式" clearable> </el-input>
+                            <el-input class="input-length" :disabled="!disabled" v-model.trim="riskControlMeasureForm.classify3" placeholder="请选择管控方式" clearable> </el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="措施说明" prop="measureDesc">
-                            <el-input class="input-length" type="textarea" :rows="3" v-model.trim="riskControlMeasureForm.measureDesc" placeholder="请输入措施说明" clearable> </el-input>
+                            <el-input class="input-length" :disabled="!disabled" type="textarea" :rows="3" v-model.trim="riskControlMeasureForm.measureDesc" placeholder="请输入措施说明" clearable> </el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -158,10 +158,14 @@
             } else if (type === '查看') {
                 state.disabled = false;
                 state.title = '修改风险管控措施';
+                state.riskControlMeasureForm.classify1 = JSON.parse(JSON.stringify(value)).classify1;
+                state.classifyTwoList = state.classifyTwoListAll.filter((item: any) => item.parentId === state.riskControlMeasureForm.classify1);
                 state.riskControlMeasureForm = JSON.parse(JSON.stringify(value));
             } else {
                 state.disabled = true;
                 state.title = '修改风险管控措施';
+                state.riskControlMeasureForm.classify1 = JSON.parse(JSON.stringify(value)).classify1;
+                state.classifyTwoList = state.classifyTwoListAll.filter((item: any) => item.parentId === state.riskControlMeasureForm.classify1);
                 state.riskControlMeasureForm = JSON.parse(JSON.stringify(value));
             }
         };
diff --git a/src/views/doublePrevent/riskLevel/action/index.vue b/src/views/doublePrevent/riskLevel/action/index.vue
index b5827cb..0629615 100644
--- a/src/views/doublePrevent/riskLevel/action/index.vue
+++ b/src/views/doublePrevent/riskLevel/action/index.vue
@@ -232,7 +232,7 @@
 
         // 删除角色
         const onDelRiskControlMeasure = (row: any) => {
-            ElMessageBox.confirm(`此操作将永久删除该条风险管控措施:“${row.produceDeviceName}”,是否继续?`, '提示', {
+            ElMessageBox.confirm(`此操作将永久删除该条风险管控措施:“${row.checkContent}”,是否继续?`, '提示', {
                 confirmButtonText: '确认',
                 cancelButtonText: '取消',
                 type: 'warning'
@@ -309,4 +309,15 @@
 };
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/doublePrevent/riskLevel/device/components/productionDeviceDialog.vue b/src/views/doublePrevent/riskLevel/device/components/productionDeviceDialog.vue
index 5ad24bd..cb1c0a9 100644
--- a/src/views/doublePrevent/riskLevel/device/components/productionDeviceDialog.vue
+++ b/src/views/doublePrevent/riskLevel/device/components/productionDeviceDialog.vue
@@ -5,25 +5,25 @@
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="生产装置名称" prop="produceDeviceName">
-                            <el-input class="input-length" v-model.trim="productionDeviceForm.produceDeviceName" placeholder="请输入生产装置名称" clearable></el-input>
+                            <el-input class="input-length" :disabled="!disabled" v-model.trim="productionDeviceForm.produceDeviceName" placeholder="请输入生产装置名称" clearable></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="所属部门" prop="depId">
-                            <el-cascader :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable style="width: 85%" v-model="productionDeviceForm.depId"> </el-cascader>
+                            <el-cascader :options="departmentList" :disabled="!disabled" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable style="width: 85%" v-model="productionDeviceForm.depId"> </el-cascader>
                             <!--                            <el-select class="input-length" v-model="productionDeviceForm.depName" placeholder="请选择所属部门" clearable filterable></el-select>-->
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="风险等级" prop="riskLevel">
-                            <el-select class="input-length" v-model="productionDeviceForm.riskLevel" placeholder="请选择风险等级" clearable filterable>
+                            <el-select class="input-length" :disabled="!disabled" v-model="productionDeviceForm.riskLevel" placeholder="请选择风险等级" clearable filterable>
                                 <el-option v-for="item in levelList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="区域位置" prop="location">
-                            <el-input class="input-length" v-model.trim="productionDeviceForm.location" type="textarea" placeholder="请输入区域位置" maxlength="150"></el-input>
+                            <el-input class="input-length" :disabled="!disabled" v-model.trim="productionDeviceForm.location" type="textarea" placeholder="请输入区域位置" maxlength="150"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
diff --git a/src/views/doublePrevent/riskLevel/device/index.vue b/src/views/doublePrevent/riskLevel/device/index.vue
index a8208fe..00ef584 100644
--- a/src/views/doublePrevent/riskLevel/device/index.vue
+++ b/src/views/doublePrevent/riskLevel/device/index.vue
@@ -247,4 +247,15 @@
 };
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/doublePrevent/riskLevel/event/components/safetyRiskEventDialog.vue b/src/views/doublePrevent/riskLevel/event/components/safetyRiskEventDialog.vue
index 88b9e1b..2eea0e1 100644
--- a/src/views/doublePrevent/riskLevel/event/components/safetyRiskEventDialog.vue
+++ b/src/views/doublePrevent/riskLevel/event/components/safetyRiskEventDialog.vue
@@ -5,14 +5,14 @@
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="安全风险分析单元名称" prop="riskUnitId">
-                            <el-select class="input-length" v-model="safetyRiskEventForm.riskUnitId" placeholder="请输入安全风险分析单元名称">
+                            <el-select class="input-length" :disabled="!disabled" v-model="safetyRiskEventForm.riskUnitId" placeholder="请输入安全风险分析单元名称">
                                 <el-option v-for="item in allSafetyRiskEventData" :key="item.id" :label="item.riskUnitName" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="安全风险事件名称" prop="riskEventName">
-                            <el-input class="input-length" v-model.trim="safetyRiskEventForm.riskEventName" placeholder="请输入请输入安全风险事件名称" clearable></el-input>
+                            <el-input class="input-length" :disabled="!disabled" v-model.trim="safetyRiskEventForm.riskEventName" placeholder="请输入请输入安全风险事件名称" clearable></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
diff --git a/src/views/doublePrevent/riskLevel/event/index.vue b/src/views/doublePrevent/riskLevel/event/index.vue
index c3210a3..cf18a4f 100644
--- a/src/views/doublePrevent/riskLevel/event/index.vue
+++ b/src/views/doublePrevent/riskLevel/event/index.vue
@@ -197,4 +197,15 @@
 };
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/doublePrevent/riskLevel/riskCheckUnit/components/checkUnitDialog.vue b/src/views/doublePrevent/riskLevel/riskCheckUnit/components/checkUnitDialog.vue
index 903bfc2..b1e6ca0 100644
--- a/src/views/doublePrevent/riskLevel/riskCheckUnit/components/checkUnitDialog.vue
+++ b/src/views/doublePrevent/riskLevel/riskCheckUnit/components/checkUnitDialog.vue
@@ -7,12 +7,12 @@
                     <el-row :gutter="35">
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="任务单元名称" prop="taskUnitName">
-                                <el-input class="input-length" v-model.trim="checkUnitForm.taskUnitName" placeholder="请输入任务单元名称" clearable></el-input>
+                                <el-input class="input-length" :disabled="!disabled" v-model.trim="checkUnitForm.taskUnitName" placeholder="请输入任务单元名称" clearable></el-input>
                             </el-form-item>
                         </el-col>
                         <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="12" class="mb20">
                             <el-form-item label="任务单元说明" prop="note">
-                                <el-input class="input-length" v-model.trim="checkUnitForm.note" placeholder="请输入任务单元说明" clearable></el-input>
+                                <el-input class="input-length" :disabled="!disabled" v-model.trim="checkUnitForm.note" placeholder="请输入任务单元说明" clearable></el-input>
                             </el-form-item>
                         </el-col>
                     </el-row>
@@ -23,7 +23,7 @@
                 <el-tabs class="active" v-model="activeName">
                     <el-tab-pane label="检查项信息" name="checkUnit">
                         <div class="filter-container">
-                            <el-button size="default" type="success" @click="onOpenDialogRef('新增', '')">
+                            <el-button size="default" :disabled="!disabled" type="success" @click="onOpenDialogRef('新增', '')">
                                 <el-icon>
                                     <ele-FolderAdd />
                                 </el-icon>
@@ -36,7 +36,7 @@
                             <el-table-column prop="checkContent" label="管控内容" show-overflow-tooltip align="center"></el-table-column>
                             <el-table-column label="操作" width="150" align="center">
                                 <template #default="scope">
-                                    <el-button size="small" text type="danger" @click="onDelCheckUnit(scope.$index, scope.row)">删除</el-button>
+                                    <el-button size="small" text :disabled="!disabled" type="danger" @click="onDelCheckUnit(scope.$index, scope.row)">删除</el-button>
                                 </template>
                             </el-table-column>
                         </el-table>
@@ -104,7 +104,7 @@
         });
 
         //打开模态框
-        const openCheckUnitDialog = (type: string, value: object, department: []) => {
+        const openCheckUnitDialog = (type: string, value: object) => {
             state.isShowCheckUnitDialog = true;
             setTimeout(() => {
                 checkUnitFormRef.value.clearValidate();
@@ -222,4 +222,14 @@
 .filter-container {
     padding: 10px 0px;
 }
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
 </style>
diff --git a/src/views/doublePrevent/riskLevel/riskCheckUnit/index.vue b/src/views/doublePrevent/riskLevel/riskCheckUnit/index.vue
index 5957cd3..385a1da 100644
--- a/src/views/doublePrevent/riskLevel/riskCheckUnit/index.vue
+++ b/src/views/doublePrevent/riskLevel/riskCheckUnit/index.vue
@@ -22,7 +22,7 @@
                     <el-icon>
                         <ele-FolderAdd />
                     </el-icon>
-                    新增排查任务
+                    新增排查单元
                 </el-button>
             </div>
             <el-table :data="checkUnitData.data" style="width: 100%">
@@ -112,7 +112,7 @@
 
         // 打开生产装置弹窗
         const onOpenDialogRef = (type: string, value: any) => {
-            checkUnitDialogRef.value.openCheckUnitDialog(type, value, state.departmentList);
+            checkUnitDialogRef.value.openCheckUnitDialog(type, value);
         };
         // 删除角色
         const onDelCheckUnit = (row: any) => {
@@ -176,4 +176,15 @@
 });
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/doublePrevent/riskLevel/unit/components/safetyRiskAnalyseUnitDialog.vue b/src/views/doublePrevent/riskLevel/unit/components/safetyRiskAnalyseUnitDialog.vue
index d1e6f10..28bf661 100644
--- a/src/views/doublePrevent/riskLevel/unit/components/safetyRiskAnalyseUnitDialog.vue
+++ b/src/views/doublePrevent/riskLevel/unit/components/safetyRiskAnalyseUnitDialog.vue
@@ -5,29 +5,29 @@
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="安全风险分析对象编码" prop="riskCode">
-                            <el-input class="input-length" v-model.trim="safetyRiskAnalyseUnitForm.riskCode" placeholder="请输入安全风险分析对象编码"></el-input>
+                            <el-input class="input-length" :disabled="!disabled" v-model.trim="safetyRiskAnalyseUnitForm.riskCode" placeholder="请输入安全风险分析对象编码"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="安全风险分析单元名称" prop="riskUnitName">
-                            <el-input class="input-length" v-model.trim="safetyRiskAnalyseUnitForm.riskUnitName" placeholder="请输入安全风险分析单元名称"></el-input>
+                            <el-input class="input-length" :disabled="!disabled" v-model.trim="safetyRiskAnalyseUnitForm.riskUnitName" placeholder="请输入安全风险分析单元名称"></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="生产装置名称" prop="produceDeviceId">
-                            <el-select class="input-length" v-model="safetyRiskAnalyseUnitForm.produceDeviceId" placeholder="请输入生产装置名称" clearable>
+                            <el-select class="input-length" :disabled="!disabled" v-model="safetyRiskAnalyseUnitForm.produceDeviceId" placeholder="请输入生产装置名称" clearable>
                                 <el-option v-for="item in allProduceDeviceData" :key="item.id" :label="item.produceDeviceName" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="责任部门" prop="liableDepId">
-                            <el-cascader @change="achieveUserList" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable style="width: 85%" v-model="safetyRiskAnalyseUnitForm.liableDepId"> </el-cascader>
+                            <el-cascader @change="achieveUserList" :disabled="!disabled" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" placeholder="请选择部门" clearable filterable style="width: 85%" v-model="safetyRiskAnalyseUnitForm.liableDepId"> </el-cascader>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="责任人" prop="liablePersonId">
-                            <el-select class="input-length" v-model="safetyRiskAnalyseUnitForm.liablePersonId" placeholder="请选择责任人" clearable filterable>
+                            <el-select class="input-length" :disabled="!disabled" v-model="safetyRiskAnalyseUnitForm.liablePersonId" placeholder="请选择责任人" clearable filterable>
                                 <el-option v-for="item in userList" :key="item.uid" :label="item.realName" :value="item.uid"></el-option>
                             </el-select>
                         </el-form-item>
diff --git a/src/views/doublePrevent/riskLevel/unit/index.vue b/src/views/doublePrevent/riskLevel/unit/index.vue
index 93c4751..ec369c6 100644
--- a/src/views/doublePrevent/riskLevel/unit/index.vue
+++ b/src/views/doublePrevent/riskLevel/unit/index.vue
@@ -251,4 +251,15 @@
 };
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/facilityManagement/InstrumentationInformation/index.vue b/src/views/facilityManagement/InstrumentationInformation/index.vue
index d4e4308..ee2b75e 100644
--- a/src/views/facilityManagement/InstrumentationInformation/index.vue
+++ b/src/views/facilityManagement/InstrumentationInformation/index.vue
@@ -27,7 +27,7 @@
 				<div class="btns">
 					<div>
 						<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
-						<el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button>
+						<!-- <el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button> -->
 						<el-button size="default" :disabled="danger" type="danger" :icon="Delete" @click="onDeleteAll" plain>删除</el-button>
 					</div>
 					<div>
@@ -37,7 +37,7 @@
 					</div>
 				</div>
 				<div style="padding-left: 10px">
-					<el-table ref="multipleTableRef" :data="tableData" style="width: 100%"  @selection-change="handleSelectionChange">
+					<el-table ref="multipleTableRef" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
 						<el-table-column type="selection" align="center" width="55" />
 						<el-table-column type="expand">
 							<template #default="scope">
@@ -45,14 +45,14 @@
 									<el-tab-pane label="设备保养" name="first">
 										<el-table ref="multipleTableRef" :data="scope.row.takecareDetailList" style="width: 100%">
 											<el-table-column property="takecareMemo" align="center" label="保养情况" sortable />
-											<el-table-column property="leadingPersonId" align="center" label="保养负责人" sortable />
+											<el-table-column property="leadingPersonName" align="center" label="保养负责人" sortable />
 											<el-table-column property="takecareDate" align="center" :formatter="timeDate" label="保养日期" sortable />
-											<el-table-column property="leadingPersonDepartmentId" align="center" label="保养负责人单位" sortable />
+											<el-table-column property="leadingPersonDepartmentName" align="center" label="保养负责人单位" sortable />
 										</el-table>
 									</el-tab-pane>
 									<el-tab-pane label="设备检查" name="second"
 										><el-table ref="multipleTableRef" :data="scope.row.checkDetailList" style="width: 100%">
-											<el-table-column property="leadingPersonId" align="center" label="检查人" sortable />
+											<el-table-column property="leadingPersonName" align="center" label="检查人" sortable />
 											<el-table-column property="createTime" align="center" :formatter="timeDate" label="检查日期" sortable />
 											<el-table-column property="name" align="center" label="检查人部门" sortable />
 											<el-table-column property="takecareMemo" align="center" label="检查结果" sortable />
@@ -60,21 +60,31 @@
 									></el-tab-pane>
 									<el-tab-pane label="设备检测" name="third">
 										<el-table ref="multipleTableRef" :data="scope.row.testDetailList" style="width: 100%">
-											<el-table-column property="testPersonId" align="center" label="检测人" sortable />
+											<el-table-column property="testPersonName" align="center" label="检测人" sortable />
 											<el-table-column property="testDate" align="center" :formatter="timeDate" label="检测日期" sortable />
-											<el-table-column property="testPersonDepartmentId" align="center" label="检测人单位" sortable />
+											<el-table-column property="testPersonDepartmentName" align="center" label="检测人单位" sortable />
 											<el-table-column property="testMemo" align="center" label="检测内容" sortable />
-											<el-table-column property="testResult" align="center" label="检测结果" sortable />
+											<el-table-column align="center" label="检测结果">
+												<template #default="scope">
+													<span v-if="scope.row.testResult == 1">成功</span>
+													<span v-if="scope.row.testResult == 2">失败</span>
+												</template>
+											</el-table-column>
 											<el-table-column property="testStatus" align="center" label="检测状态" sortable />
 										</el-table>
 									</el-tab-pane>
 									<el-tab-pane label="设备维修" name="fourth">
 										<el-table ref="multipleTableRef" :data="scope.row.repaireDetailList" style="width: 100%">
 											<el-table-column property="exceptionInfo" align="center" label="设施异常项" sortable />
-											<el-table-column property="repairStatus" align="center" label="维修状态" sortable />
+											<el-table-column align="center" label="维修状态">
+												<template #default="scope">
+													<span v-if="scope.row.repairStatus == 1">维修中</span>
+													<span v-if="scope.row.repairStatus == 2">已修好</span>
+												</template>
+											</el-table-column>
 											<el-table-column property="repairMemo" align="center" label="维修情况" sortable />
-											<el-table-column property="repairPersonId" align="center" label="维修负责人" sortable />
-											<el-table-column property="repairPersonDepartmentId" align="center" label="维修负责人单位" sortable />
+											<el-table-column property="repairPersonName" align="center" label="维修负责人" sortable />
+											<el-table-column property="repairPersonDepartmentName" align="center" label="维修负责人单位" sortable />
 											<el-table-column property="repairStartDate" align="center" :formatter="timeDate" label="维修开始日期" sortable />
 											<el-table-column property="repairEndDate" align="center" :formatter="timeDate" label="维修结束日期" sortable />
 										</el-table>
@@ -136,6 +146,7 @@
 			searchParams: {
 				qName: '', ////名称
 				positionNum: '', ////位号
+				equipmentTypeId: '',
 				infoType: 0, ////具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施
 			},
 		});
@@ -188,8 +199,8 @@
 		};
 		// 删除
 		const onDelete = (id: number) => {
-			let arr=[]
-			arr.push(id)
+			let arr = [];
+			arr.push(id);
 			ElMessageBox.confirm('确定删除所选项吗?', 'Warning', {
 				confirmButtonText: '确定',
 				cancelButtonText: '取消',
@@ -227,7 +238,7 @@
 			for (let i = 0; i < valId.length; i++) {
 				arr.push(valId[i].id);
 			}
-			deletAll.value = arr
+			deletAll.value = arr;
 			if (val.length == 1) {
 				warning.value = false;
 				danger.value = false;
@@ -299,7 +310,8 @@
 			return data.typeName.includes(value);
 		};
 		const handleNodeClick = (data: Tree) => {
-			ruleForm.searchParams.positionNum = data.id;
+			ruleForm.searchParams.positionNum = data.sortNum;
+			ruleForm.searchParams.equipmentTypeId = data.id;
 			listApi();
 		};
 		const data = ref([]);
diff --git a/src/views/facilityManagement/ProductionEquipment/index.vue b/src/views/facilityManagement/ProductionEquipment/index.vue
index ab8551e..bb4f4f9 100644
--- a/src/views/facilityManagement/ProductionEquipment/index.vue
+++ b/src/views/facilityManagement/ProductionEquipment/index.vue
@@ -28,7 +28,7 @@
 				<div class="btns">
 					<div>
 						<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
-						<el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button>
+						<!-- <el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button> -->
 						<el-button size="default" :disabled="danger" type="danger" :icon="Delete" @click="onDeleteAll" plain>删除</el-button>
 					</div>
 					<div>
@@ -46,14 +46,14 @@
 									<el-tab-pane label="设备保养" name="first">
 										<el-table ref="multipleTableRef" :data="scope.row.takecareDetailList" style="width: 100%">
 											<el-table-column property="takecareMemo" align="center" label="保养情况" sortable />
-											<el-table-column property="leadingPersonId" align="center" label="保养负责人" sortable />
+											<el-table-column property="leadingPersonName" align="center" label="保养负责人" sortable />
 											<el-table-column property="takecareDate" align="center" label="保养日期" sortable />
-											<el-table-column property="leadingPersonDepartmentId" align="center" label="保养负责人单位" sortable />
+											<el-table-column property="leadingPersonDepartmentName" align="center" label="保养负责人单位" sortable />
 										</el-table>
 									</el-tab-pane>
 									<el-tab-pane label="设备检查" name="second"
 										><el-table ref="multipleTableRef" :data="scope.row.checkDetailList" style="width: 100%">
-											<el-table-column property="leadingPersonId" align="center" label="检查人" sortable />
+											<el-table-column property="leadingPersonName" align="center" label="检查人" sortable />
 											<el-table-column property="createTime" align="center" label="检查日期" sortable />
 											<el-table-column property="name" align="center" label="检查人部门" sortable />
 											<el-table-column property="takecareMemo" align="center" label="检查结果" sortable />
@@ -61,21 +61,31 @@
 									></el-tab-pane>
 									<el-tab-pane label="设备检测" name="third">
 										<el-table ref="multipleTableRef" :data="scope.row.testDetailList" style="width: 100%">
-											<el-table-column property="testPersonId" align="center" label="检测人" sortable />
+											<el-table-column property="testPersonName" align="center" label="检测人" sortable />
 											<el-table-column property="testDate" align="center" label="检测日期" sortable />
-											<el-table-column property="testPersonDepartmentId" align="center" label="检测人单位" sortable />
+											<el-table-column property="testPersonDepartmentName" align="center" label="检测人单位" sortable />
 											<el-table-column property="testMemo" align="center" label="检测内容" sortable />
-											<el-table-column property="testResult" align="center" label="检测结果" sortable />
+											<el-table-column align="center" label="检测结果">
+												<template #default="scope">
+													<span v-if="scope.row.testResult == 1">成功</span>
+													<span v-if="scope.row.testResult == 2">失败</span>
+												</template>
+											</el-table-column>
 											<el-table-column property="testStatus" align="center" label="检测状态" sortable />
 										</el-table>
 									</el-tab-pane>
 									<el-tab-pane label="设备维修" name="fourth">
 										<el-table ref="multipleTableRef" :data="scope.row.repaireDetailList" style="width: 100%">
 											<el-table-column property="exceptionInfo" align="center" label="设施异常项" sortable />
-											<el-table-column property="repairStatus" align="center" label="维修状态" sortable />
+											<el-table-column align="center" label="维修状态">
+												<template #default="scope">
+													<span v-if="scope.row.repairStatus == 1">维修中</span>
+													<span v-if="scope.row.repairStatus == 2">已修好</span>
+												</template>
+											</el-table-column>
 											<el-table-column property="repairMemo" align="center" label="维修情况" sortable />
-											<el-table-column property="repairPersonId" align="center" label="维修负责人" sortable />
-											<el-table-column property="repairPersonDepartmentId" align="center" label="维修负责人单位" sortable />
+											<el-table-column property="repairPersonName" align="center" label="维修负责人" sortable />
+											<el-table-column property="repairPersonDepartmentName" align="center" label="维修负责人单位" sortable />
 											<el-table-column property="repairStartDate" align="center" label="维修开始日期" sortable />
 											<el-table-column property="repairEndDate" align="center" label="维修结束日期" sortable />
 										</el-table>
@@ -136,7 +146,8 @@
 			searchParams: {
 				qName: '', ////名称
 				positionNum: '', ////位号
-				infoType: 0, ////具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施
+				equipmentTypeId:"",
+				infoType: 1, ////具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施
 			},
 		});
 		// 重置
@@ -299,7 +310,8 @@
 			return data.typeName.includes(value);
 		};
        const handleNodeClick=(data: Tree)=>{
-			ruleForm.searchParams.positionNum=data.id
+			ruleForm.searchParams.equipmentTypeId=data.id
+			ruleForm.searchParams.equipmentTypeId = data.id;
 			listApi();
 	   }
 		const data=ref([])
diff --git a/src/views/facilityManagement/deviceType/component/Dailog.vue b/src/views/facilityManagement/deviceType/component/Dailog.vue
index 576135f..ce4d7af 100644
--- a/src/views/facilityManagement/deviceType/component/Dailog.vue
+++ b/src/views/facilityManagement/deviceType/component/Dailog.vue
@@ -6,14 +6,14 @@
 				<el-col :span="11">
 					<el-form-item label="是否为设备内容" size="default" prop="isContent">
 						<el-select v-model="form.isContent" placeholder="请选择" style="width: 100%">
-							<el-option label="是" value="1" />
-							<el-option label="否" value="2" />
+							<el-option label="是" :value="1" />
+							<el-option label="否" :value="2" />
 						</el-select>
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="父级编号" size="default" prop="parentId">
-						<el-tree-select clearable check-strictly="true" v-model="form.parentId"  :data="data" :props="propst" class="w100" placeholder="请选择" />
+						<el-tree-select clearable check-strictly="true" v-model="form.parentId" :data="data" :props="propst" class="w100" placeholder="请选择" />
 					</el-form-item>
 				</el-col>
 			</el-row>
@@ -51,16 +51,18 @@
 		const form = ref({
 			isContent: '', ////是否为设备内容  1:是 2:否
 			typeName: '', ////类别名称
-			parentId: "", ////父级ID,如果没有父级,为0
+			parentId: '', ////父级ID,如果没有父级,为0
 			isCheck: 0, ////是否检测  1:是 2:否
 			isVisit: 0, ////是否巡检 1:是 2:否
 			sortNum: '', //排列序列
-			id: '', //设备类型ID ,更新时必填
+			// id: '', //设备类型ID ,更新时必填
 		});
 		const titles = ref();
+		const titleT = ref();
 		const disabled = ref(false);
 		const openDailog = (title: string, id: number) => {
 			listApi();
+			titleT.value = title;
 			dialogVisible.value = true;
 			titles.value = `${title}设备设施类型管理`;
 			if (title == '查看') {
@@ -69,7 +71,7 @@
 			} else if (title == '修改') {
 				detail(id);
 			} else if (title == '添加') {
-				 form.value.parentId=id
+				form.value.parentId = id;
 			}
 		};
 		const detail = (id: number) => {
@@ -123,6 +125,9 @@
 			if (!formEl) return;
 			await formEl.validate((valid, fields) => {
 				if (valid) {
+					if (titleT.value == '新建') {
+						delete form.value.id;
+					}
 					facilityManagementApi()
 						.getequipmentTypeMngAddOrUpdate(form.value)
 						.then((res) => {
@@ -147,11 +152,13 @@
 					console.log('error submit!', fields);
 				}
 			});
+			disabled.value=false
 		};
 		const resetForm = (formEl: FormInstance | undefined) => {
 			if (!formEl) return;
 			formEl.resetFields();
 			dialogVisible.value = false;
+			disabled.value=false
 		};
 		//全屏
 		const full = ref(false);
@@ -163,6 +170,7 @@
 			}
 		};
 		return {
+			titleT,
 			detail,
 			rules,
 			ruleFormRef,
diff --git a/src/views/facilityManagement/keyEquipment/index.vue b/src/views/facilityManagement/keyEquipment/index.vue
index 7e987d6..78b54f1 100644
--- a/src/views/facilityManagement/keyEquipment/index.vue
+++ b/src/views/facilityManagement/keyEquipment/index.vue
@@ -1,384 +1,447 @@
 <template>
-	<div>
-		<el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
-			<el-row>
-				<el-col :span="4">
-					<el-form-item size="default">
-						<el-input v-model="ruleForm.searchParams.qName" placeholder="装置/部位名称" />
-					</el-form-item>
-				</el-col>
-				<el-col :span="4">
-					<el-form-item>
-						<el-button size="default" type="primary" @click="listApi">查询</el-button>
-						<el-button size="default" @click="resetForm">重置</el-button>
-					</el-form-item>
-				</el-col>
-			</el-row>
-		</el-form>
-		<el-row>
-			<el-col :span="4">
-				<el-input v-model="filterText" style="height: 30px" placeholder="请输入关键字" />
-				<div class="tree">
-					<!--					<el-input v-model="filterText" style="height: 30px" placeholder="Filter keyword" />-->
-          <el-tree ref="treeRef" :data="data" :props="props" @node-click="handleNodeClick" :filter-node-method="filterNode" />
-				</div>
-			</el-col>
-			<el-col :span="20">
-				<div class="btns">
-					<div>
-						<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
-						<el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button>
-						<el-button size="default" :disabled="danger" type="danger" :icon="Delete" @click="onDeleteAll" plain>删除</el-button>
-					</div>
-					<div>
-						<!-- <el-button size="default" :icon="Upload" @click="openUp"></el-button>
-						<el-button size="default" :icon="Download"></el-button>
-						<el-button size="default" :icon="Refresh"></el-button> -->
-					</div>
-				</div>
-				<div style="padding-left: 10px">
-					<el-table ref="multipleTableRef" :data="tableData" @selection-change="handleSelectionChange" style="width: 100%">
-						<el-table-column type="selection" align="center" width="55" />
-						<el-table-column type="expand">
-							<template #default="scope">
-								<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick" style="margin: 0 5%">
-									<el-tab-pane label="设备保养" name="first">
-										<el-table ref="multipleTableRef" :data="scope.row.takecareDetailList" style="width: 100%">
-											<el-table-column property="takecareMemo" align="center" label="保养情况" sortable />
-											<el-table-column property="leadingPersonId" align="center" label="保养负责人" sortable />
-											<el-table-column property="takecareDate" align="center" :formatter="timeDate" label="保养日期" sortable />
-											<el-table-column property="leadingPersonDepartmentId" align="center" label="保养负责人单位" sortable />
-										</el-table>
-									</el-tab-pane>
-									<el-tab-pane label="设备检查" name="second"
-										><el-table ref="multipleTableRef" :data="scope.row.checkDetailList" style="width: 100%">
-											<el-table-column property="leadingPersonId" align="center" label="检查人" sortable />
-											<el-table-column property="createTime" align="center" :formatter="timeDate" label="检查日期" sortable />
-											<el-table-column property="name" align="center" label="检查人部门" sortable />
-											<el-table-column property="takecareMemo" align="center" label="检查结果" sortable />
-											<el-table-column property="name" align="center" label="检查状态" sortable /> </el-table
-									></el-tab-pane>
-									<el-tab-pane label="设备检测" name="third">
-										<el-table ref="multipleTableRef" :data="scope.row.testDetailList" style="width: 100%">
-											<el-table-column property="testPersonId" align="center" label="检测人" sortable />
-											<el-table-column property="testDate" align="center" :formatter="timeDate" label="检测日期" sortable />
-											<el-table-column property="testPersonDepartmentId" align="center" label="检测人单位" sortable />
-											<el-table-column property="testMemo" align="center" label="检测内容" sortable />
-											<el-table-column property="testResult" align="center" label="检测结果" sortable />
-											<el-table-column property="testStatus" align="center" label="检测状态" sortable />
-										</el-table>
-									</el-tab-pane>
-									<el-tab-pane label="设备维修" name="fourth">
-										<el-table ref="multipleTableRef" :data="scope.row.repaireDetailList" style="width: 100%">
-											<el-table-column property="exceptionInfo" align="center" label="设施异常项" sortable />
-											<el-table-column property="repairStatus" align="center" label="维修状态" sortable />
-											<el-table-column property="repairMemo" align="center" label="维修情况" sortable />
-											<el-table-column property="repairPersonId" align="center" label="维修负责人" sortable />
-											<el-table-column property="repairPersonDepartmentId" align="center" label="维修负责人单位" sortable />
-											<el-table-column property="repairStartDate" align="center" :formatter="timeDate" label="维修开始日期" sortable />
-											<el-table-column property="repairEndDate" align="center" :formatter="timeDate" label="维修结束日期" sortable />
-										</el-table>
-									</el-tab-pane>
-								</el-tabs>
-							</template>
-						</el-table-column>
-						<el-table-column property="equipmentTypeId" align="center" label="类型/类别外键" sortable />
-						<el-table-column property="qName" align="center" label="装置/部位名称" sortable />
-						<el-table-column property="departmentId" label="所属部门" align="center" sortable show-overflow-tooltip />
-						<el-table-column property="position" label="具体位置" align="center" sortable show-overflow-tooltip />
-						<el-table-column property="leadingPersonName" label="负责人姓名" align="center" sortable show-overflow-tooltip />
-						<el-table-column property="connectPersonId" label="装置部位分类" align="center" sortable show-overflow-tooltip />
-						<el-table-column label="操作" align="center" width="250">
-							<template #default="scope">
-								<el-button link type="primary" size="default" :icon="View" @click="openD('查看', scope.row.id)">查看</el-button>
-								<el-button link type="primary" size="default" :icon="EditPen" @click="openD('修改', scope.row.id)">修改</el-button>
-								<el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除</el-button>
-							</template>
-						</el-table-column>
-					</el-table>
-					<div class="pages">
-						<el-pagination
-							v-model:currentPage="currentPage4"
-							v-model:page-size="pageSize4"
-							:page-sizes="[10, 20, 30, 40]"
-							layout="total, sizes, prev, pager, next, jumper"
-							:total="total"
-							@size-change="handleSizeChange"
-							@current-change="handleCurrentChange"
-						/>
-					</div>
-				</div>
-			</el-col>
-		</el-row>
-		<!--		<updata ref="Show"></updata>-->
-		<DailogS ref="ShowD" @navAddorUpdata="onAddorUpdata"></DailogS>
-	</div>
+    <div>
+        <el-form ref="ruleFormRef" :model="ruleForm" status-icon label-width="20px" class="topTitle">
+            <el-row>
+                <el-col :span="4">
+                    <el-form-item size="default">
+                        <el-input v-model="ruleForm.searchParams.name" placeholder="装置/部位名称"/>
+                    </el-form-item>
+                </el-col>
+                <el-col :span="4">
+                    <el-form-item>
+                        <el-button size="default" type="primary" @click="listApi">查询</el-button>
+                        <el-button size="default" @click="resetForm">重置</el-button>
+                    </el-form-item>
+                </el-col>
+            </el-row>
+        </el-form>
+        <el-row>
+            <el-col :span="4">
+                <el-input v-model="filterText" style="height: 30px" placeholder="请输入关键字"/>
+                <div class="tree">
+                    <!--					<el-input v-model="filterText" style="height: 30px" placeholder="Filter keyword" />-->
+                    <el-tree ref="treeRef" :data="data" :props="props" @node-click="handleNodeClick"
+                             :filter-node-method="filterNode"/>
+                </div>
+            </el-col>
+            <el-col :span="20">
+                <div class="btns">
+                    <div>
+                        <el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
+                        <!--						<el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button>-->
+                        <el-button size="default" :disabled="danger" type="danger" :icon="Delete" @click="onDeleteAll"
+                                   plain>删除
+                        </el-button>
+                    </div>
+                    <div>
+                        <!-- <el-button size="default" :icon="Upload" @click="openUp"></el-button>
+                        <el-button size="default" :icon="Download"></el-button>
+                        <el-button size="default" :icon="Refresh"></el-button> -->
+                    </div>
+                </div>
+                <div style="padding-left: 10px">
+                    <el-table ref="multipleTableRef" :data="tableData" @selection-change="handleSelectionChange"
+                              style="width: 100%">
+                        <el-table-column type="selection" align="center" width="55"/>
+                        <el-table-column type="expand">
+                            <template #default="scope">
+                                <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"
+                                         style="margin: 0 5%">
+                                    <el-tab-pane label="设备保养" name="first">
+                                        <el-table ref="multipleTableRef" :data="scope.row.takecareDetailList"
+                                                  style="width: 100%">
+                                            <el-table-column property="takecareMemo" align="center" label="保养情况"
+                                                             sortable/>
+                                            <el-table-column property="leadingPersonName" align="center" label="保养负责人"
+                                                             sortable/>
+                                            <el-table-column property="takecareDate" align="center"
+                                                             :formatter="timeDate" label="保养日期" sortable/>
+                                            <el-table-column property="leadingPersonDepartmentName" align="center"
+                                                             label="保养负责人单位" sortable/>
+                                        </el-table>
+                                    </el-tab-pane>
+                                    <el-tab-pane label="设备检查" name="second"
+                                    >
+                                        <el-table ref="multipleTableRef" :data="scope.row.checkDetailList"
+                                                  style="width: 100%">
+                                            <el-table-column property="testPersonName" align="center" label="检查人"
+                                                             sortable/>
+                                            <el-table-column property="testDate" align="center" :formatter="timeDate"
+                                                             label="检查日期" sortable/>
+                                            <el-table-column property="testPersonDepartmentName" align="center" label="检查人部门" sortable/>
+                                            <el-table-column property="testResult" align="center" label="检查结果"
+                                                             sortable>
+                                                <template #default="scope">
+                                                    <span v-if="scope.row.testResult == 1">成功</span>
+                                                    <span v-if="scope.row.testResult == 2">失败</span>
+                                                </template>
+                                            </el-table-column>
+                                            <el-table-column property="testStatus" align="center" label="检查状态" sortable/>
+                                        </el-table
+                                        >
+                                    </el-tab-pane>
+                                    <el-tab-pane label="设备检测" name="third">
+                                        <el-table ref="multipleTableRef" :data="scope.row.testDetailList"
+                                                  style="width: 100%">
+                                            <el-table-column property="repairPersonName" align="center" label="检测人"
+                                                             sortable/>
+                                            <el-table-column property="repairStarDate" align="center" :formatter="timeDate"
+                                                             label="检测日期" sortable/>
+                                            <el-table-column property="repairPersonDepartmentName" align="center"
+                                                             label="检测人单位" sortable/>
+                                            <el-table-column property="testMemo" align="center" label="检测内容" sortable/>
+                                            <el-table-column property="testResult" align="center" label="检测结果"
+                                                             sortable/>
+                                            <el-table-column property="testStatus" align="center" label="检测状态"
+                                                             sortable/>
+                                        </el-table>
+                                    </el-tab-pane>
+                                    <el-tab-pane label="设备维修" name="fourth">
+                                        <el-table ref="multipleTableRef" :data="scope.row.repaireDetailList"
+                                                  style="width: 100%">
+                                            <el-table-column property="exceptionInfo" align="center" label="设施异常项"
+                                                             sortable/>
+                                            <el-table-column property="repairStatus" align="center" label="维修状态"
+                                                             sortable>
+                                                <template #default="scope">
+                                                    <span v-if="scope.row.repairStatus == 1">维修中</span>
+                                                    <span v-if="scope.row.repairStatus == 2">已维修</span>
+                                                </template>
+
+                                            </el-table-column>
+                                            <el-table-column property="repairMemo" align="center" label="维修情况"
+                                                             sortable/>
+                                            <el-table-column property="repairPersonName" align="center" label="维修负责人"
+                                                             sortable/>
+                                            <el-table-column property="repairPersonDepartmentName" align="center"
+                                                             label="维修负责人单位" sortable/>
+                                            <el-table-column property="repairStartDate" align="center"
+                                                             :formatter="timeDate" label="维修开始日期" sortable/>
+                                            <el-table-column property="repairEndDate" align="center"
+                                                             :formatter="timeDate" label="维修结束日期" sortable/>
+                                        </el-table>
+                                    </el-tab-pane>
+                                </el-tabs>
+                            </template>
+                        </el-table-column>
+                        <el-table-column property="equipmentTypeName" align="center" label="类型/类别外键" sortable/>
+                        <el-table-column property="name" align="center" label="装置/部位名称" sortable/>
+                        <el-table-column property="departmentName" label="所属部门" align="center" sortable
+                                         show-overflow-tooltip/>
+                        <el-table-column property="position" label="具体位置" align="center" sortable
+                                         show-overflow-tooltip/>
+                        <el-table-column property="leadingPersonName" label="负责人姓名" align="center" sortable
+                                         show-overflow-tooltip/>
+                        <el-table-column property="partType" label="装置部位分类" align="center" sortable
+                                         show-overflow-tooltip>
+                            <template #default="scope">
+                                <span v-if="scope.row.partType == 1">关键装置</span>
+                                <span v-if="scope.row.partType == 2">重点部位</span>
+                            </template>
+                        </el-table-column>
+                        <el-table-column label="操作" align="center" width="250">
+                            <template #default="scope">
+                                <el-button link type="primary" size="default" :icon="View"
+                                           @click="openD('查看', scope.row.id)">查看
+                                </el-button>
+                                <el-button link type="primary" size="default" :icon="EditPen"
+                                           @click="openD('修改', scope.row.id)">修改
+                                </el-button>
+                                <el-button link type="primary" size="default" :icon="Delete"
+                                           @click="onDelete(scope.row.id)">删除
+                                </el-button>
+                            </template>
+                        </el-table-column>
+                    </el-table>
+                    <div class="pages">
+                        <el-pagination
+                                v-model:currentPage="currentPage4"
+                                v-model:page-size="pageSize4"
+                                :page-sizes="[10, 20, 30, 40]"
+                                layout="total, sizes, prev, pager, next, jumper"
+                                :total="total"
+                                @size-change="handleSizeChange"
+                                @current-change="handleCurrentChange"
+                        />
+                    </div>
+                </div>
+            </el-col>
+        </el-row>
+        <!--		<updata ref="Show"></updata>-->
+        <DailogS ref="ShowD" @navAddorUpdata="onAddorUpdata"></DailogS>
+    </div>
 </template>
 <script lang="ts">
-import { defineComponent, ref, reactive, watch, onMounted } from 'vue';
-// import updata from '/@/components/updata/updata.vue'
-import DailogS from '/@/components/equipmentDailog/DailogS.vue';
-import { ElTree, TabsPaneContext, ElMessage, ElMessageBox } from 'element-plus';
-import { EditPen, Plus, Delete, Download, Refresh, Upload, View } from '@element-plus/icons-vue';
-import { facilityManagementApi } from '/@/api/facilityManagement';
-import {timeDate} from '/@/assets/index.ts'
-interface Tree {
-	label: string;
-	children?: Tree[];
-}
-export default defineComponent({
-	components: {
-		// updata,
-		DailogS,
-	},
-	setup() {
-		const ruleForm = reactive({
-			pageSize: 10,
-			pageIndex: 1,
-			searchParams: {
-				equipmentTypeId: '', ////类型/类别外键
-        qName: '', ////装置/部位名称
-				// departmentId: '',////所属部门
-				// position: '', ////具体位置
-				// leadingPersonName: '', ////负责人姓名
-				// connectPersonId: '',////装置部位分类
-				infoTpe: 0, ////具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施  3:重点监管装置/设备
-			},
-		});
-		// 重置
-		const resetForm = () => {
-			ruleForm.searchParams.qName = '';
-			listApi();
-		};
-		const listApi = () => {
-			facilityManagementApi()
-				.getkeypointEquipmentInfoAddOrList(ruleForm)
-				.then((res) => {
-					if (res.data.code == 200) {
-						tableData.value = res.data.data;
-						currentPage4.value = res.data.pageIndex;
-						pageSize4.value = res.data.pageSize;
-						total.value = res.data.total;
-					} else {
-						ElMessage.error(res.data.msg);
-					}
-				});
-		};
-		onMounted(() => {
-			listApi();
-		});
-		const onAddorUpdata = () => {
-			listApi();
-		};
-		const tableData = ref();
-		const currentPage4 = ref();
-		const pageSize4 = ref();
-		const total = ref();
-		const handleSizeChange = (val: number) => {
-			// console.log(`${val} items per page`);
-			ruleForm.pageSize = val;
-			listApi();
-		};
-		const handleCurrentChange = (val: number) => {
-			// console.log(`current page: ${val}`);
-			ruleForm.pageIndex = val;
-			listApi();
-		};
-		const filterText = ref('');
-		const treeRef = ref<InstanceType<typeof ElTree>>();
-		// 树形
-		const listApiTree = () => {
-			facilityManagementApi()
-				.getequipmentTypeMngTreeData()
-				.then((res) => {
-					if (res.data.code == 200) {
-						console.log(res.data.data);
-						data.value = res.data.data;
-					} else {
-						ElMessage({
-							showClose: true,
-							message: res.data.msg,
-							type: 'error',
-						});
-					}
-				});
-		};
-    const props = {
-      label: 'typeName',
-      children: 'childList',
-      value: 'id',
+    import {defineComponent, ref, reactive, watch, onMounted} from 'vue';
+    // import updata from '/@/components/updata/updata.vue'
+    import DailogS from '/@/components/equipmentDailog/DailogS.vue';
+    import {ElTree, TabsPaneContext, ElMessage, ElMessageBox} from 'element-plus';
+    import {EditPen, Plus, Delete, Download, Refresh, Upload, View} from '@element-plus/icons-vue';
+    import {facilityManagementApi} from '/@/api/facilityManagement';
+    import {timeDate} from '/@/assets/index.ts'
+
+    interface Tree {
+        label: string;
+        children?: Tree[];
     }
-		watch(filterText, (val) => {
-			treeRef.value!.filter(val);
-		});
-		const filterNode = (value: string, data: Tree) => {
-			if (!value) return true;
-			return data.typeName.includes(value);
-		};
-		const handleNodeClick = (data: Tree) => {
-      console.log(data)
-			ruleForm.searchParams.qName = data.typeName;
 
-			listApi();
-		};
-		const data = ref([]);
-		onMounted(() => {
-			listApiTree();
-		});
-		// 删除
-		const onDelete = (id: number) => {
-      let arr=[]
-      arr.push(id)
-			ElMessageBox.confirm('确定删除所选项吗?', 'Warning', {
-				confirmButtonText: '确定',
-				cancelButtonText: '取消',
-				type: 'warning',
-			})
-				.then(() => {
-					facilityManagementApi()
-						.getkeypointEquipmentInfoDetele(arr)
-						.then((res) => {
-							if (res.data.code == 200) {
-								ElMessage({
-									message: res.data.msg,
-									type: 'success',
-								});
-								listApi();
-							} else {
-								ElMessage.error(res.data.msg);
-							}
-						});
-				})
-				.catch(() => {
-					ElMessage({
-						type: 'info',
-						message: 'Delete canceled',
-					});
-				});
-		};
-		// 批量删除
-		const warning = ref(true);
-		const danger = ref(true);
-		const deletAll = ref();
-		const handleSelectionChange = (val: any) => {
-			let valId = JSON.parse(JSON.stringify(val));
-			let arr = [];
-			for (let i = 0; i < valId.length; i++) {
-				arr.push(valId[i].id);
-			}
-			deletAll.value = arr;
-			if (val.length == 1) {
-				warning.value = false;
-				danger.value = false;
-			} else if (val.length == 0) {
-				warning.value = true;
-				danger.value = true;
-			} else {
-				warning.value = true;
-				danger.value = false;
-			}
-		};
-		const onDeleteAll = () => {
-			ElMessageBox.confirm('确定删除所选项吗?', 'Warning', {
-				confirmButtonText: '确定',
-				cancelButtonText: '取消',
-				type: 'warning',
-			})
-				.then(() => {
-					facilityManagementApi()
-						.getkeypointEquipmentInfoDetele(deletAll.value)
-						.then((res) => {
-							if (res.data.code == 200) {
-								ElMessage({
-									message: res.data.msg,
-									type: 'success',
-								});
-								listApi();
-							} else {
-								ElMessage.error(res.data.msg);
-							}
-						});
-				})
-				.catch(() => {
-					// ElMessage({
-					// 	type: 'info',
-					// 	message: 'Delete canceled',
-					// });
-				});
-		};
+    export default defineComponent({
+        components: {
+            // updata,
+            DailogS,
+        },
+        setup() {
+            const ruleForm = reactive({
+                pageSize: 10,
+                pageIndex: 1,
+                searchParams: {
+                    // equipmentTypeId: '', ////类型/类别外键
+                    name: '', ////装置/部位名称
+                    // departmentId: '',////所属部门
+                    // position: '', ////具体位置
+                    // leadingPersonName: '', ////负责人姓名
+                    // connectPersonId: '',////装置部位分类
+                    // infoTpe: 0, ////具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施  3:重点监管装置/设备
+                    equipmentTypeId: ''
+                },
+            });
+            // 重置
+            const resetForm = () => {
+                ruleForm.searchParams.equipmentTypeId = '';
+                listApi();
+            };
+            const listApi = () => {
+                // delete ruleForm.qName
+                facilityManagementApi()
+                    .getkeypointEquipmentInfoAddOrList(ruleForm)
+                    .then((res) => {
+                        if (res.data.code == 200) {
+                            tableData.value = res.data.data;
+                            currentPage4.value = res.data.pageIndex;
+                            pageSize4.value = res.data.pageSize;
+                            total.value = res.data.total;
+                        } else {
+                            ElMessage.error(res.data.msg);
+                        }
+                    });
+            };
+            onMounted(() => {
+                listApi();
+            });
+            const onAddorUpdata = () => {
+                listApi();
+            };
+            const tableData = ref();
+            const currentPage4 = ref();
+            const pageSize4 = ref();
+            const total = ref();
+            const handleSizeChange = (val: number) => {
+                // console.log(`${val} items per page`);
+                ruleForm.pageSize = val;
+                listApi();
+            };
+            const handleCurrentChange = (val: number) => {
+                // console.log(`current page: ${val}`);
+                ruleForm.pageIndex = val;
+                listApi();
+            };
+            const filterText = ref('');
+            const treeRef = ref<InstanceType<typeof ElTree>>();
+            // 树形
+            const listApiTree = () => {
+                facilityManagementApi()
+                    .getequipmentTypeMngTreeData()
+                    .then((res) => {
+                        if (res.data.code == 200) {
+                            console.log(res.data.data);
+                            data.value = res.data.data;
+                        } else {
+                            ElMessage({
+                                showClose: true,
+                                message: res.data.msg,
+                                type: 'error',
+                            });
+                        }
+                    });
+            };
+            const props = {
+                label: 'typeName',
+                children: 'childList',
+                value: 'id',
+            }
+            watch(filterText, (val) => {
+                treeRef.value!.filter(val);
+            });
+            const filterNode = (value: string, data: Tree) => {
+                if (!value) return true;
+                return data.typeName.includes(value);
+            };
+            const handleNodeClick = (data: Tree) => {
+                console.log(data)
+                ruleForm.searchParams.equipmentTypeId = data.id;
 
-		const activeName = ref('first');
+                listApi();
+            };
+            const data = ref([]);
+            onMounted(() => {
+                listApiTree();
+            });
+            // 删除
+            const onDelete = (id: number) => {
+                let arr = []
+                arr.push(id)
+                ElMessageBox.confirm('确定删除所选项吗?', 'Warning', {
+                    confirmButtonText: '确定',
+                    cancelButtonText: '取消',
+                    type: 'warning',
+                })
+                    .then(() => {
+                        facilityManagementApi()
+                            .getkeypointEquipmentInfoDetele(arr)
+                            .then((res) => {
+                                if (res.data.code == 200) {
+                                    ElMessage({
+                                        message: res.data.msg,
+                                        type: 'success',
+                                    });
+                                    listApi();
+                                } else {
+                                    ElMessage.error(res.data.msg);
+                                }
+                            });
+                    })
+                    .catch(() => {
+                        ElMessage({
+                            type: 'info',
+                            message: 'Delete canceled',
+                        });
+                    });
+            };
+            // 批量删除
+            // const warning = ref(true);
+            const danger = ref(true);
+            const deletAll = ref();
+            const handleSelectionChange = (val: any) => {
+                let valId = JSON.parse(JSON.stringify(val));
+                let arr = [];
+                for (let i = 0; i < valId.length; i++) {
+                    arr.push(valId[i].id);
+                }
+                deletAll.value = arr;
+                if (val.length == 1) {
+                    // warning.value = false;
+                    danger.value = false;
+                } else if (val.length == 0) {
+                    // warning.value = true;
+                    danger.value = true;
+                } else {
+                    // warning.value = true;
+                    danger.value = false;
+                }
+            };
+            const onDeleteAll = () => {
+                ElMessageBox.confirm('确定删除所选项吗?', 'Warning', {
+                    confirmButtonText: '确定',
+                    cancelButtonText: '取消',
+                    type: 'warning',
+                })
+                    .then(() => {
+                        facilityManagementApi()
+                            .getkeypointEquipmentInfoDetele(deletAll.value)
+                            .then((res) => {
+                                if (res.data.code == 200) {
+                                    ElMessage({
+                                        message: res.data.msg,
+                                        type: 'success',
+                                    });
+                                    listApi();
+                                } else {
+                                    ElMessage.error(res.data.msg);
+                                }
+                            });
+                    })
+                    .catch(() => {
+                        // ElMessage({
+                        // 	type: 'info',
+                        // 	message: 'Delete canceled',
+                        // });
+                    });
+            };
 
-		const handleClick = (tab: TabsPaneContext, event: Event) => {
-			console.log(tab, event);
-		};
-		// const Show=ref()
-		// const openUp=()=>{
-		// 	Show.value.openDialog()
-		// }
-		// 新增弹窗
-		const ShowD = ref();
-		const openD = (title: String, id: number) => {
-			ShowD.value.openDailog(title, false, id, 2);
-		};
-		return {
-			activeName,
-			handleClick,
-			ruleForm,
-			filterText,
-			treeRef,
-			props,
-			filterNode,
-			data,
-			tableData,
-			// Show,
-			// openUp,
-			ShowD,
-			danger,
-			openD,
-			// openEdit,
-			Plus,
-			EditPen,
-			listApiTree,
-			Delete,
-			View,
-			Download,
-			Refresh,
-			Upload,
-			resetForm,
-			listApi,
-			handleCurrentChange,
-			handleSizeChange,
-			onAddorUpdata,
-			total,
-			currentPage4,
-			pageSize4,
-			onDelete,
-			warning,
-			handleSelectionChange,
-			onDeleteAll,
-			handleNodeClick,
-      timeDate,
-		};
-	},
-});
+            const activeName = ref('first');
+
+            const handleClick = (tab: TabsPaneContext, event: Event) => {
+                console.log(tab, event);
+            };
+            // const Show=ref()
+            // const openUp=()=>{
+            // 	Show.value.openDialog()
+            // }
+            // 新增弹窗
+            const ShowD = ref();
+            const openD = (title: String, id: number) => {
+                ShowD.value.openDailog(title, false, id, 2);
+            };
+            return {
+                activeName,
+                handleClick,
+                ruleForm,
+                filterText,
+                treeRef,
+                props,
+                filterNode,
+                data,
+                tableData,
+                // Show,
+                // openUp,
+                ShowD,
+                danger,
+                openD,
+                // openEdit,
+                Plus,
+                EditPen,
+                listApiTree,
+                Delete,
+                View,
+                Download,
+                Refresh,
+                Upload,
+                resetForm,
+                listApi,
+                handleCurrentChange,
+                handleSizeChange,
+                onAddorUpdata,
+                total,
+                currentPage4,
+                pageSize4,
+                onDelete,
+                // warning,
+                handleSelectionChange,
+                onDeleteAll,
+                handleNodeClick,
+                timeDate,
+            };
+        },
+    });
 </script>
 <style scoped>
-.topTitle {
-	background-color: #fff;
-	padding: 20px 0px 20px 0px;
-	margin-bottom: 10px;
-}
-.tree {
-	height: 750px;
-	background-color: #fff;
-	overflow: hidden;
-	overflow-y: auto;
-}
-.btns {
-	padding: 10px 0px 10px 10px;
-	display: flex;
-	justify-content: space-between;
-	background-color: #fff;
-}
+    .topTitle {
+        background-color: #fff;
+        padding: 20px 0px 20px 0px;
+        margin-bottom: 10px;
+    }
+
+    .tree {
+        height: 750px;
+        background-color: #fff;
+        overflow: hidden;
+        overflow-y: auto;
+    }
+
+    .btns {
+        padding: 10px 0px 10px 10px;
+        display: flex;
+        justify-content: space-between;
+        background-color: #fff;
+    }
 </style>
diff --git a/src/views/facilityManagement/safetyEquipment/index.vue b/src/views/facilityManagement/safetyEquipment/index.vue
index 576cfb7..98b78a0 100644
--- a/src/views/facilityManagement/safetyEquipment/index.vue
+++ b/src/views/facilityManagement/safetyEquipment/index.vue
@@ -17,9 +17,8 @@
 		</el-form>
 		<el-row>
 			<el-col :span="4">
-			<el-input v-model="filterText" style="height: 30px" placeholder="请输入关键字" />
+				<el-input v-model="filterText" style="height: 30px" placeholder="请输入关键字" />
 				<div class="tree">
-					
 					<!-- <el-tree ref="treeRef" class="filter-tree" :data="data" :props="props" :filter-node-method="filterNode" /> -->
 					<el-tree ref="treeRef" :data="data" :props="props" @node-click="handleNodeClick" :filter-node-method="filterNode" />
 				</div>
@@ -28,7 +27,7 @@
 				<div class="btns">
 					<div>
 						<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
-						<el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button>
+						<!-- <el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button> -->
 						<el-button size="default" :disabled="danger" type="danger" :icon="Delete" @click="onDeleteAll" plain>删除</el-button>
 					</div>
 					<div>
@@ -38,7 +37,7 @@
 					</div>
 				</div>
 				<div style="padding-left: 10px">
-					<el-table ref="multipleTableRef" :data="tableData"  @selection-change="handleSelectionChange" style="width: 100%">
+					<el-table ref="multipleTableRef" :data="tableData" @selection-change="handleSelectionChange" style="width: 100%">
 						<el-table-column type="selection" align="center" width="55" />
 						<el-table-column type="expand">
 							<template #default="scope">
@@ -46,14 +45,14 @@
 									<el-tab-pane label="设备保养" name="first">
 										<el-table ref="multipleTableRef" :data="scope.row.takecareDetailList" style="width: 100%">
 											<el-table-column property="takecareMemo" align="center" label="保养情况" sortable />
-											<el-table-column property="leadingPersonId" align="center" label="保养负责人" sortable />
+											<el-table-column property="leadingPersonName" align="center" label="保养负责人" sortable />
 											<el-table-column property="takecareDate" align="center" :formatter="timeDate" label="保养日期" sortable />
-											<el-table-column property="leadingPersonDepartmentId" align="center" label="保养负责人单位" sortable />
+											<el-table-column property="leadingPersonDepartmentName" align="center" label="保养负责人单位" sortable />
 										</el-table>
 									</el-tab-pane>
 									<el-tab-pane label="设备检查" name="second"
 										><el-table ref="multipleTableRef" :data="scope.row.checkDetailList" style="width: 100%">
-											<el-table-column property="leadingPersonId" align="center" label="检查人" sortable />
+											<el-table-column property="leadingPersonName" align="center" label="检查人" sortable />
 											<el-table-column property="createTime" align="center" :formatter="timeDate" label="检查日期" sortable />
 											<el-table-column property="name" align="center" label="检查人部门" sortable />
 											<el-table-column property="takecareMemo" align="center" label="检查结果" sortable />
@@ -61,21 +60,31 @@
 									></el-tab-pane>
 									<el-tab-pane label="设备检测" name="third">
 										<el-table ref="multipleTableRef" :data="scope.row.testDetailList" style="width: 100%">
-											<el-table-column property="testPersonId" align="center" label="检测人" sortable />
+											<el-table-column property="testPersonName" align="center" label="检测人" sortable />
 											<el-table-column property="testDate" align="center" :formatter="timeDate" label="检测日期" sortable />
-											<el-table-column property="testPersonDepartmentId" align="center" label="检测人单位" sortable />
+											<el-table-column property="testPersonDepartmentName" align="center" label="检测人单位" sortable />
 											<el-table-column property="testMemo" align="center" label="检测内容" sortable />
-											<el-table-column property="testResult" align="center" label="检测结果" sortable />
+											<el-table-column align="center" label="检测结果">
+												<template #default="scope">
+													<span v-if="scope.row.testResult == 1">成功</span>
+													<span v-if="scope.row.testResult == 2">失败</span>
+												</template>
+											</el-table-column>
 											<el-table-column property="testStatus" align="center" label="检测状态" sortable />
 										</el-table>
 									</el-tab-pane>
 									<el-tab-pane label="设备维修" name="fourth">
 										<el-table ref="multipleTableRef" :data="scope.row.repaireDetailList" style="width: 100%">
 											<el-table-column property="exceptionInfo" align="center" label="设施异常项" sortable />
-											<el-table-column property="repairStatus" align="center" label="维修状态" sortable />
+											<el-table-column align="center" label="维修状态">
+												<template #default="scope">
+													<span v-if="scope.row.repairStatus == 1">维修中</span>
+													<span v-if="scope.row.repairStatus == 2">已修好</span>
+												</template>
+											</el-table-column>
 											<el-table-column property="repairMemo" align="center" label="维修情况" sortable />
-											<el-table-column property="repairPersonId" align="center" label="维修负责人" sortable />
-											<el-table-column property="repairPersonDepartmentId" align="center" label="维修负责人单位" sortable />
+											<el-table-column property="repairPersonName" align="center" label="维修负责人" sortable />
+											<el-table-column property="repairPersonDepartmentName" align="center" label="维修负责人单位" sortable />
 											<el-table-column property="repairStartDate" align="center" :formatter="timeDate" label="维修开始日期" sortable />
 											<el-table-column property="repairEndDate" align="center" :formatter="timeDate" label="维修结束日期" sortable />
 										</el-table>
@@ -121,7 +130,7 @@
 import Dailog from '/@/components/equipmentDailog/Dailog.vue';
 import { ElTree, TabsPaneContext, ElMessage, ElMessageBox } from 'element-plus';
 import { facilityManagementApi } from '/@/api/facilityManagement';
-import {timeDate} from '/@/assets/index.ts'
+import { timeDate } from '/@/assets/index.ts';
 import { EditPen, View, Plus, Delete, Download, Refresh, Upload } from '@element-plus/icons-vue';
 interface Tree {
 	label: string;
@@ -137,7 +146,8 @@
 			searchParams: {
 				qName: '', ////名称
 				positionNum: '', ////位号
-				infoType: 0, ////具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施
+				equipmentTypeId: '',
+				infoType: 2, ////具体类型(页面左侧的导航栏使用) 0:仪器仪表信息 1:生产设备设施 2:安全设备设施
 			},
 		});
 		// 重置
@@ -185,12 +195,12 @@
 		// 弹窗
 		const openAdd = ref();
 		const openD = (title: String, id: number) => {
-			openAdd.value.openDailog(title,false,id,2);
+			openAdd.value.openDailog(title, false, id, 2);
 		};
 		// 删除
 		const onDelete = (id: number) => {
-			let arr=[]
-			arr.push(id)
+			let arr = [];
+			arr.push(id);
 			ElMessageBox.confirm('确定删除所选项吗?', 'Warning', {
 				confirmButtonText: '确定',
 				cancelButtonText: '取消',
@@ -228,7 +238,7 @@
 			for (let i = 0; i < valId.length; i++) {
 				arr.push(valId[i].id);
 			}
-			deletAll.value = arr
+			deletAll.value = arr;
 			if (val.length == 1) {
 				warning.value = false;
 				danger.value = false;
@@ -276,7 +286,7 @@
 				.getequipmentTypeMngTreeData()
 				.then((res) => {
 					if (res.data.code == 200) {
-						data.value= res.data.data;
+						data.value = res.data.data;
 					} else {
 						ElMessage({
 							showClose: true,
@@ -290,7 +300,7 @@
 			label: 'typeName',
 			children: 'childList',
 			value: 'id',
-		}
+		};
 		watch(filterText, (val) => {
 			treeRef.value!.filter(val);
 		});
@@ -299,18 +309,19 @@
 			if (!value) return true;
 			return data.typeName.includes(value);
 		};
-       const handleNodeClick=(data: Tree)=>{
-			ruleForm.searchParams.positionNum=data.id
+		const handleNodeClick = (data: Tree) => {
+			ruleForm.searchParams.equipmentTypeId = data.id;
+			ruleForm.searchParams.equipmentTypeId = data.id;
 			listApi();
-	   }
-		const data=ref([])
+		};
+		const data = ref([]);
 		onMounted(() => {
 			listApiTree();
 		});
 		const handleClicks = (tab: TabsPaneContext, event: Event) => {
 			console.log(tab, event);
 		};
-		
+
 		const activeName = ref('first');
 		// const Show=ref()
 		// const openUp=()=>{
@@ -351,7 +362,7 @@
 			Refresh,
 			View,
 			Upload,
-      timeDate,
+			timeDate,
 		};
 	},
 });
diff --git a/src/views/goalManagement/Goalsummary/index.vue b/src/views/goalManagement/Goalsummary/index.vue
index 4d241e4..4947ed0 100644
--- a/src/views/goalManagement/Goalsummary/index.vue
+++ b/src/views/goalManagement/Goalsummary/index.vue
@@ -24,10 +24,10 @@
 			<div class="btns">
 				<p>汇总日期:2022-07-04 23:00:07</p>
 				<div>
-					<el-button type="primary" size="default" :icon="Download">导出</el-button>
+					<el-button type="primary" size="default" :icon="Download" @click="exportExcel('tab1', '会员明细.xlsx')">导出</el-button>
 				</div>
 			</div>
-			<el-table :data="tableData" style="width: 100%">
+			<el-table :data="tableData" style="width: 100%" id="tab1">
 				<el-table-column label="责任部门" align="center">
 					<template #default="scope">{{ scope.row.departmentId }}</template>
 				</el-table-column>
@@ -68,6 +68,9 @@
 import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';
 import { Plus, Delete, Upload, Download, Refresh, View } from '@element-plus/icons-vue';
 import { goalManagementApi } from '/@/api/goalManagement';
+
+// import * as XLSX from 'xlsx';
+
 export default defineComponent({
 	components: { ElButton, ElInput },
 	setup() {
@@ -162,6 +165,16 @@
 				],
 			},
 		];
+
+		const exportExcel = (id:string,name:string) => {
+			let workbook = XLSX.utils.table_to_book(document.getElementById(id)); //需要在table上定义一个id
+			try {
+				XLSX.writeFile(workbook, name);
+				console.log('导出成功!');
+			} catch (e) {
+				console.log('导出失败!');
+			}
+		}
 		return {
 			ruleForm,
 			tableData,
@@ -179,6 +192,7 @@
 			Download,
 			Refresh,
 			View,
+			exportExcel
 		};
 	},
 });
@@ -210,4 +224,4 @@
 	display: flex;
 	justify-content: right;
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue b/src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue
index ec8fdd2..c0a5906 100644
--- a/src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue
+++ b/src/views/goalManagement/IncentiveRecording/component/DailogAdd.vue
@@ -5,8 +5,8 @@
 			<el-row>
 				<el-col :span="24">
 					<el-form-item label="员工姓名" size="default">
-						<el-input v-model="form.personId" placeholder="请选择">
-							<template #append> <el-button :icon="Search" @click="daiInpts" /> </template
+						<el-input v-model="form.personName" placeholder="请选择">
+							<template #append> <el-button :icon="Search" @click="daiInpts(0)" /> </template
 						></el-input>
 					</el-form-item>
 				</el-col>
@@ -14,31 +14,34 @@
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="奖惩名称" size="default">
-						<el-input v-model="form.rewardPunishmentStandardId" placeholder="请选择">
+						<el-input v-model="form.rewardPunishmentStandardName" placeholder="请选择">
 							<template #append> <el-button :icon="Search" @click="daiInpt" /> </template
 						></el-input>
 					</el-form-item>
 				</el-col>
-				<!-- <el-col :span="11" :offset="2">
+				<el-col :span="11" :offset="2">
 					<el-form-item label="奖惩类型" size="default">
-						<el-input disabled v-model="form.personId" />
+						<el-select v-model="form.standardType" disabled size="default" style="width: 100%" placeholder="请选择">
+							<el-option label="奖励" :value="1" />
+							<el-option label="惩罚" :value="2" />
+						</el-select>
 					</el-form-item>
-				</el-col> -->
+				</el-col>
 			</el-row>
-			<!-- <el-row>
+			<el-row>
 				<el-col :span="24">
 					<el-form-item label="奖惩内容" size="default">
-						<el-input disabled v-model="form.personId" placeholder="请填写奖惩内容" />
+						<el-input disabled v-model="form.content" placeholder="请填写奖惩内容" />
 					</el-form-item>
 				</el-col>
 			</el-row>
 			<el-row>
 				<el-col :span="24">
 					<el-form-item label="依据" size="default">
-						<el-input disabled v-model="form.personId" placeholder="请填写奖惩依据" />
+						<el-input disabled v-model="form.reason" placeholder="请填写奖惩依据" />
 					</el-form-item>
 				</el-col>
-			</el-row> -->
+			</el-row>
 			<el-row>
 				<el-col :span="24">
 					<el-form-item label="备注信息">
@@ -50,7 +53,7 @@
 		<template #footer>
 			<span class="dialog-footer">
 				<el-button @click="resetForm" size="default">关闭</el-button>
-				<el-button type="primary" @click="submitForm" size="default">确定</el-button>
+				<el-button type="primary" @click="submitForm" size="default" :disabled="disabled">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
@@ -70,22 +73,27 @@
 		const dialogVisible = ref<boolean>(false);
 		const form = ref({
 			rewardPunishmentStandardId: '', //奖惩标准/外键
+			rewardPunishmentStandardName: '',
 			memo: '', ////备注信息
-			personId: "", ////员工(多个用逗号隔开)
+			personId: '', ////员工(多个用逗号隔开)
+			personName: '',
 		});
 		const titles = ref();
 		const disabled = ref(false);
 		// 打开弹窗
-		const openDailog = (title: string, value: any, id: number) => {
+		const openDailog = (title: string, value: any, data: any) => {
 			dialogVisible.value = true;
 			titles.value = `${title}奖惩标准设定`;
 			disabled.value = title == '查看' ? true : false;
 			if (title == '查看' || title == '修改')
 				goalManagementApi()
-					.getrewardPunishmentDetail(id)
+					.getrewardPunishmentDetail(data.id)
 					.then((res) => {
 						if (res.data.code == 200) {
 							form.value = res.data.data;
+							form.value.standardType = data.standardType;
+							form.value.content = data.content;
+							form.value.reason = data.reason;
 						} else {
 							ElMessage.error(res.data.msg);
 						}
@@ -94,6 +102,10 @@
 		// 提交
 		const submitForm = () => {
 			dialogVisible.value = false;
+			delete form.value.standardType;
+			delete form.value.content;
+			delete form.value.reason;
+			delete form.value.rewardPunishmentStandardName
 			goalManagementApi()
 				.getrewardPunishmentAddOrUpdate(form.value)
 				.then((res) => {
@@ -109,8 +121,10 @@
 				});
 			form.value = {
 				rewardPunishmentStandardId: '', //奖惩标准/外键
+				rewardPunishmentStandardName: '',
 				memo: '', ////备注信息
-				personId: "", ////员工(多个用逗号隔开)
+				personId: '', ////员工(多个用逗号隔开)
+				personName: '',
 			};
 		};
 		//   取消
@@ -118,8 +132,10 @@
 			dialogVisible.value = false;
 			form.value = {
 				rewardPunishmentStandardId: '', //奖惩标准/外键
+				rewardPunishmentStandardName: '',
 				memo: '', ////备注信息
-				personId: "", ////员工(多个用逗号隔开)
+				personId: '', ////员工(多个用逗号隔开)
+				personName: '',
 			};
 		};
 
@@ -129,16 +145,27 @@
 			Shows.value.openDailog();
 		};
 		const Show = ref();
-		const daiInpts = () => {
-			Show.value.openDailog();
+		const daiInpts = (type: any) => {
+			Show.value.openDailog(type);
 		};
-		const numberId=(val:any)=>{
-			console.log(val)
-			form.value.rewardPunishmentStandardId=val.id
-		}
-		const UserId=(val:any)=>{
-			form.value.personId=val.id
-		}
+		const numberId = (val: any) => {
+			console.log(val);
+			form.value.rewardPunishmentStandardId = val.id;
+			form.value.rewardPunishmentStandardName = val.qname;
+			form.value.standardType = val.standardType;
+			form.value.content = val.content;
+			form.value.reason = val.reason;
+		};
+		const UserId = (val: any) => {
+			let arr = [];
+			let arrId = [];
+			for (let i = 0; i < val.length; i++) {
+				arr.push(val[i].realName);
+				arrId.push(val[i].uid);
+			}
+			form.value.personName = arr.toString();
+			form.value.personId = arrId.toString();
+		};
 		//全屏
 		const full = ref(false);
 		const toggleFullscreen = () => {
diff --git a/src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue b/src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue
index 3cdcb66..aabfa03 100644
--- a/src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue
+++ b/src/views/goalManagement/IncentiveRecording/component/DailogSearch.vue
@@ -24,22 +24,22 @@
 					</el-row>
 				</el-form>
 				<el-button size="default" :icon="Delete" @click="clear">清除选择</el-button>
-				<el-table :data="tableData" style="width: 100%; margin-top: 20px" @cell-click="radio">
-						<el-table-column align="center">
+				<el-table :data="tableData" style="width: 100%; margin-top: 20px">
+					<el-table-column align="center">
 						<template #default="scope">
 							<el-radio-group v-model="radio1">
-								<el-radio :label="scope.row.id" size="large">{{ null }}</el-radio>
+								<el-radio :label="scope.row.id" @click="radio(scope.row)" size="large">{{ null }}</el-radio>
 							</el-radio-group>
 						</template>
 					</el-table-column>
 					<el-table-column align="center" prop="qname" label="奖惩名称" width="180" />
 					<el-table-column align="center" label="奖惩类型" width="180">
 						<template #default="scope">
-              <span v-if="scope.row.standardType==1">奖励</span>
-              <span v-if="scope.row.standardType==2">惩罚</span>
-              <span></span>
+							<span v-if="scope.row.standardType == 1">奖励</span>
+							<span v-if="scope.row.standardType == 2">惩罚</span>
+							<span></span>
 						</template>
-					</el-table-column>	
+					</el-table-column>
 					<el-table-column align="center" prop="content" label="奖惩内容" />
 				</el-table>
 				<el-pagination
@@ -54,18 +54,18 @@
 				/>
 			</el-col>
 			<el-col :span="7">
-			<div v-if="dynamicTags[0]==''?false:true">
-				<el-tag
-					v-for="tag in dynamicTags"
-					:key="tag"
-					class="mx-1"
-					style="margin: 5px"
-					closable
-					:disable-transitions="false"
-					@close="handleClose(tag)"
-				>
-					{{ tag.qname }}
-				</el-tag>
+				<div v-if="dynamicTags[0] == '' ? false : true">
+					<el-tag
+						v-for="tag in dynamicTags"
+						:key="tag"
+						class="mx-1"
+						style="margin: 5px"
+						closable
+						:disable-transitions="false"
+						@close="handleClose(tag)"
+					>
+						{{ tag.qname }}
+					</el-tag>
 				</div>
 			</el-col>
 		</el-row>
@@ -78,12 +78,12 @@
 	</el-dialog>
 </template>
 <script lang="ts">
-import { defineComponent, reactive, ref,onMounted } from 'vue';
+import { defineComponent, reactive, ref, onMounted } from 'vue';
 import { Delete, FullScreen } from '@element-plus/icons-vue';
 import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext, FormInstance } from 'element-plus';
 import { goalManagementApi } from '/@/api/goalManagement';
 export default defineComponent({
-	setup(props,{emit}) {
+	setup(props, { emit }) {
 		// 搜索条件
 		const ruleForm = reactive({
 			pageSize: 10,
@@ -117,9 +117,7 @@
 			ruleForm.searchParams.standardType = targetType.paneName;
 			listApi();
 		};
-		onMounted(() => {
-			
-		});
+		onMounted(() => {});
 		// const onAddorUpdata = () => {
 		// 	listApi();
 		// };
@@ -139,12 +137,12 @@
 			listApi();
 		};
 		// 打开弹窗
-		const dialogVisible=ref(false)
-		const openDailog=()=>{
-			dialogVisible.value=true
+		const dialogVisible = ref(false);
+		const openDailog = () => {
+			dialogVisible.value = true;
 			listApi();
-		}
-			// 右方点击添加后显示标签
+		};
+		// 右方点击添加后显示标签
 		const dynamicTags = ref(['']);
 		const handleClose = (tag: string) => {
 			dynamicTags.value.splice(dynamicTags.value.indexOf(tag), 1);
@@ -154,15 +152,15 @@
 		const radio = (event: any) => {
 			dynamicTags.value[0] = event;
 		};
-		const clear=()=>{
-			dynamicTags.value=['']
-			radio1.value=""
-		}
-			const submitForm=()=>{
-			let obj=JSON.parse(JSON.stringify(dynamicTags.value))
-			emit("backNum",obj[0])
-			dialogVisible.value = false
-		}
+		const clear = () => {
+			dynamicTags.value = [''];
+			radio1.value = '';
+		};
+		const submitForm = () => {
+			let obj = JSON.parse(JSON.stringify(dynamicTags.value));
+			emit('backNum', obj[0]);
+			dialogVisible.value = false;
+		};
 		//全屏
 		const full = ref(false);
 		const toggleFullscreen = () => {
diff --git a/src/views/goalManagement/IncentiveRecording/index.vue b/src/views/goalManagement/IncentiveRecording/index.vue
index b9a9fa9..e1dd080 100644
--- a/src/views/goalManagement/IncentiveRecording/index.vue
+++ b/src/views/goalManagement/IncentiveRecording/index.vue
@@ -4,7 +4,7 @@
 			<el-row>
 				<el-col :span="4">
 					<el-form-item size="default">
-						<el-input v-model="ruleForm.searchParams.personId" placeholder="请选择被奖惩者">
+						<el-input v-model="ruleForm.searchParams.personName" placeholder="请选择被奖惩者">
 							<template #append>
 								<el-button :icon="Search" @click="openSearch" />
 							</template>
@@ -28,8 +28,8 @@
 			<div class="btns">
 				<div>
 					<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
-					<el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button>
-					<el-button size="default" :disabled="danger" type="danger" :icon="Delete" plain @click="handleSelectionChange">删除 </el-button>
+					<!-- <el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button> -->
+					<el-button size="default" :disabled="danger" type="danger" :icon="Delete" plain @click="onDeleteAll">删除 </el-button>
 				</div>
 				<div>
 					<!-- <el-button size="default" :icon="Download"></el-button>
@@ -45,13 +45,13 @@
 						<span v-if="scope.row.standardType == 2">惩罚</span>
 					</template>
 				</el-table-column>
-				<el-table-column property="personId" align="center" label="被奖惩者" sortable />
+				<el-table-column property="personName" align="center" label="被奖惩者" sortable />
 				<el-table-column property="content" label="奖惩内容" align="center" sortable show-overflow-tooltip />
 				<el-table-column property="reason" label="奖惩依据" align="center" sortable show-overflow-tooltip />
 				<el-table-column label="操作" align="center" sortable show-overflow-tooltip>
 					<template #default="scope">
-						<el-button link type="primary" size="default" :icon="View" @click="openD('查看', scope.row.id)">查看 </el-button>
-						<el-button link type="primary" size="default" :icon="EditPen" @click="openD('修改', scope.row.id)">修改</el-button>
+						<el-button link type="primary" size="default" :icon="View" @click="openD('查看', scope.row)">查看 </el-button>
+						<el-button link type="primary" size="default" :icon="EditPen" @click="openD('修改', scope.row)">修改</el-button>
 						<el-button link type="primary" size="default" :icon="Delete" @click="onDelete(scope.row.id)">删除 </el-button>
 					</template>
 				</el-table-column>
@@ -229,6 +229,7 @@
 		};
 		const userId = (val: any) => {
 			ruleForm.searchParams.personId = val.uid;
+			ruleForm.searchParams.personName = val.realName;
 		};
 		return {
 			timeDate,
diff --git a/src/views/goalManagement/Incentivestandard/component/DailogAdd.vue b/src/views/goalManagement/Incentivestandard/component/DailogAdd.vue
index 3d5abeb..e910cb5 100644
--- a/src/views/goalManagement/Incentivestandard/component/DailogAdd.vue
+++ b/src/views/goalManagement/Incentivestandard/component/DailogAdd.vue
@@ -6,8 +6,8 @@
 				<el-col :span="11">
 					<el-form-item label="奖惩类型" size="default">
 						<el-select v-model="form.standardType" style="width: 100%" placeholder="请选择">
-							<el-option label="奖励" value="1" />
-							<el-option label="惩罚" value="2" />
+							<el-option label="奖励" :value="1" />
+							<el-option label="惩罚" :value="2" />
 						</el-select>
 					</el-form-item>
 				</el-col>
@@ -40,7 +40,7 @@
 		<template #footer>
 			<span class="dialog-footer">
 				<el-button @click="resetForm" size="default">关闭</el-button>
-				<el-button type="primary" @click="submitForm" size="default">确定</el-button>
+				<el-button type="primary" @click="submitForm" size="default" :disabled="disabled">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue
index af27844..cc51dcd 100644
--- a/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue
+++ b/src/views/goalManagement/performanceAppraisal/component/DailogAq.vue
@@ -115,7 +115,11 @@
 		<el-table :data="tableData" style="width: 100%">
 			<el-table-column align="center" prop="date" label="考核项目" />
 			<el-table-column align="center" prop="name" label="考核内容" />
-			<el-table-column align="center" prop="address" label="考核分数" />
+			<el-table-column align="center" label="考核分数">
+				<template #default="scope">
+				<el-input v-model="scope.row.address" type="textarea"> </el-input>
+				</template>
+			</el-table-column>
 			<!-- <el-table-column align="center" prop="address" label="制定日期" />
 			<el-table-column align="center" prop="address" label="上报人" />
 			<el-table-column align="center" label="操作">
@@ -279,7 +283,7 @@
 			if (type == 1) {
 				form.value.examinePersonId = val.uid;
 				form.value.examinePersonName = val.realName;
-			} else if (type == 2) {
+			} else if (type == 0) {
 				let uid=[]
 				let realName=[]
 				for(let i=0;i<val.length;i++){
diff --git a/src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue b/src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue
index 98b6f83..f186ab3 100644
--- a/src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue
+++ b/src/views/goalManagement/performanceAppraisal/component/DailogKhS.vue
@@ -40,7 +40,7 @@
 		</el-form>
 		<template #footer>
 			<span class="dialog-footer">
-				<el-button type="primary" @click="dialogVisible = false" size="default">继续添加</el-button>
+<!--				<el-button type="primary" @click="dialogVisible = false" size="default">继续添加</el-button>-->
 				<el-button @click="resetForm" size="default">关闭</el-button>
 				<el-button type="primary" @click="submitForm" size="default">确定</el-button>
 			</span>
diff --git a/src/views/goalManagement/performanceAppraisal/index.vue b/src/views/goalManagement/performanceAppraisal/index.vue
index a1c9637..0f3e9de 100644
--- a/src/views/goalManagement/performanceAppraisal/index.vue
+++ b/src/views/goalManagement/performanceAppraisal/index.vue
@@ -21,7 +21,7 @@
 					<div class="btns">
 						<div>
 							<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
-							<el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button>
+							<!-- <el-button size="default" :disabled="warning" type="warning" plain :icon="EditPen">修改</el-button> -->
 							<el-button size="default" :disabled="danger" type="danger" plain :icon="Delete" @click="onDeleteAll">删除</el-button>
 						</div>
 					</div>
@@ -40,7 +40,7 @@
 						</el-table-column>
 						<el-table-column property="examineDate" align="center" :formatter="timeDate" label="考核日期" sortable />
 						<el-table-column property="examineDepartmentName" align="center" label="考核部门" sortable />
-						<el-table-column property="examinePersonId" label="考核人" align="center" sortable show-overflow-tooltip />
+						<el-table-column property="examinePersonName" label="考核人" align="center" sortable show-overflow-tooltip />
 						<el-table-column property="beExaminedDepartmentName" label="被考核部门" align="center" sortable show-overflow-tooltip />
 						<el-table-column property="examineTotalNumber" label="总分" align="center" sortable show-overflow-tooltip />
 						<el-table-column property="numberDetailJson.number" label="考核结果" align="center" sortable show-overflow-tooltip />
@@ -84,7 +84,7 @@
 					<div class="btns">
 						<div>
 							<el-button size="default" type="primary" :icon="Plus" @click="openDs('新建')">新建</el-button>
-							<el-button size="default" :disabled="warnings" type="warning" plain :icon="EditPen">修改</el-button>
+							<!-- <el-button size="default" :disabled="warnings" type="warning" plain :icon="EditPen">修改</el-button> -->
 							<el-button size="default" :disabled="dangers" type="danger" plain :icon="Delete"  @click="onDeleteAlls">删除</el-button>
 						</div>
 					</div>
@@ -105,8 +105,8 @@
 						</el-table-column>
 						<el-table-column label="标准标题" property="title" align="center" sortable />
 						<el-table-column property="applyRange" align="center" label="适用范围" sortable />
-						<el-table-column property="setPersonId" label="设定人" align="center" sortable show-overflow-tooltip />
-						<el-table-column property="setPersonDepartmentId" label="设定人部门" align="center" sortable show-overflow-tooltip />
+						<el-table-column property="setPersonName" label="设定人" align="center" sortable show-overflow-tooltip />
+						<el-table-column property="setPersonDepartmentName" label="设定人部门" align="center" sortable show-overflow-tooltip />
 						<el-table-column property="setTimem" label="设定日期" align="center" :formatter="timeDate" sortable show-overflow-tooltip />
 						<el-table-column property="templateCode" label="模板分类编码" align="center" sortable show-overflow-tooltip />
 						<el-table-column property="acceptanceNumber" label="合格分数" align="center" sortable show-overflow-tooltip />
diff --git a/src/views/goalManagement/safetyAssessment/component/Dailog.vue b/src/views/goalManagement/safetyAssessment/component/Dailog.vue
index 7639890..3032820 100644
--- a/src/views/goalManagement/safetyAssessment/component/Dailog.vue
+++ b/src/views/goalManagement/safetyAssessment/component/Dailog.vue
@@ -1,5 +1,5 @@
 <template>
-	<el-dialog v-model="dialogVisible" :fullscreen="full" title="目标分解" width="70%" draggable>
+	<el-dialog v-model="dialogVisible" :fullscreen="full" title="目标考核" width="70%" draggable>
 		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
 		<el-form :model="form" label-width="120px">
 			<el-row>
@@ -30,7 +30,9 @@
 			</el-row>
 		</el-form>
 		<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
-			<el-tab-pane label="目标指标分解" name="1"> </el-tab-pane>
+			<el-tab-pane label="目标指标分解" name="1">
+        <el-button type="primary" size="default" @click="daiAdd('新增')" :disabled="disabled">新增</el-button>
+      </el-tab-pane>
 		</el-tabs>
 		<el-table :data="tableData" style="width: 100%">
 			<el-table-column align="center" type="index" label="序号" width="70" />
@@ -44,8 +46,8 @@
 			<el-table-column align="center" prop="address" label="考核人" />
 			<el-table-column align="center" prop="address" label="考核时间" />
 			<el-table-column align="center" label="操作">
-				<template #default>
-					<el-button link type="primary">查看</el-button>
+				<template #default="scope">
+					<el-button link type="primary" @click="daiAdd('修改', scope.row)">查看</el-button>
 				</template>
 			</el-table-column>
 		</el-table>
@@ -57,15 +59,18 @@
 		</template>
 	</el-dialog>
 	<DailogSearch ref="Shows" @backNum="onNumber"></DailogSearch>
+  <DailogAdd ref="Show" @onAdd="add"></DailogAdd>
 </template>
 <script lang="ts">
 import { defineComponent, ref, reactive } from 'vue';
 import { Search, FullScreen } from '@element-plus/icons-vue';
 import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';
 import DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';
+import DailogAdd from './DailogAdd.vue';
 import { goalManagementApi } from '/@/api/goalManagement';
+import {deepClone} from "/@/utils/other";
 export default defineComponent({
-	components: { DailogSearch },
+	components: { DailogSearch ,DailogAdd},
 	setup() {
 		const dialogVisible = ref<boolean>(false);
 		const form = ref({});
@@ -101,6 +106,31 @@
 		const daiInpt = () => {
 			Shows.value.openDailog(targetType.value);
 		};
+
+    // 新增弹窗
+    const index=ref<any>()
+    const Show = ref();
+    const daiAdd = (title: string, data: any) => {
+      // index.value = formUp.targetDivideDetailList.indexOf(data);
+      Show.value.openDailog(title, data);
+    };
+    const formUp = reactive({
+      targetId: '', //关联的目标指标/外键
+      delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开
+      // targetDivideDetailList: [], //目标指标分解列表
+    });
+
+    const add = (val: any) => {
+      const item = deepClone(val)
+      if(index.value==-1){
+        formUp.targetDivideDetailList.push(item);
+      }else{
+        formUp.targetDivideDetailList[index.value] = item;
+      }
+
+      // let obj=JSON.parse(JSON.stringify(form.value))
+    };
+
 		//全屏
 		const full = ref(false);
 		const toggleFullscreen = () => {
@@ -126,6 +156,11 @@
 			full,
 			toggleFullscreen,
 			FullScreen,
+      daiAdd,
+      index,
+      Show,
+      formUp,
+      add,
 		};
 	},
 });
diff --git a/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue
new file mode 100644
index 0000000..0eddb52
--- /dev/null
+++ b/src/views/goalManagement/safetyAssessment/component/DailogAdd.vue
@@ -0,0 +1,249 @@
+<template>
+	<el-dialog v-model="dialogVisible" :fullscreen="full" :title="titles" width="50%" draggable @close="resetForm(ruleFormRef)">
+		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
+		<el-form :model="form" :disabled="disabled" label-width="120px" ref="ruleFormRef" :rules="rules">
+			<el-row>
+				<el-col :span="11">
+					<el-form-item label="责任部门" prop="dutyDepartmentId" size="default">
+						<el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" :data="data" class="w100" :props="propse" placeholder="请选择" />
+					</el-form-item>
+				</el-col>
+				<el-col :span="11" :offset="2">
+					<el-form-item label="考核指标" prop="value" size="default">
+						<el-input v-model.number="form.value" />
+					</el-form-item>
+				</el-col>
+			</el-row>
+			<el-row>
+				<el-col :span="11">
+					<el-form-item label="制定人部门" prop="makerDepartmentId" size="default">
+						<el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
+					</el-form-item>
+				</el-col>
+				<el-col :span="11" :offset="2">
+					<el-form-item label="制定日期" prop="makeDate" size="default">
+						<el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
+					</el-form-item>
+				</el-col>
+			</el-row>
+			<el-row>
+				<el-col :span="11">
+					<el-form-item label="上报值" prop="commitPersonName" size="default">
+						<el-input v-model="form.commitPersonName">
+<!--							<template #append> <el-button :icon="Search" @click="openUser" /> </template>-->
+            </el-input>
+					</el-form-item>
+				</el-col>
+        <el-col :span="11" :offset="2">
+          <el-form-item label="上报时间" prop="makeDate" size="default">
+            <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
+          </el-form-item>
+        </el-col>
+			</el-row>
+      <el-row>
+        <el-col :span="11">
+          <el-form-item label="考核结果" prop="commitPersonName" size="default">
+            <el-input v-model="form.commitPersonName">
+              <!--							<template #append> <el-button :icon="Search" @click="openUser" /> </template>-->
+            </el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="11" :offset="2">
+          <el-form-item label="考核人" prop="commitPersonName" size="default">
+            <el-input v-model="form.commitPersonName">
+              <template #append> <el-button :icon="Search" @click="openUser" /> </template>
+            </el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="11">
+          <el-form-item label="考核时间" prop="commitPersonName" size="default">
+            <el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
+          </el-form-item>
+        </el-col>
+        <el-col :span="11" :offset="2"></el-col>
+      </el-row>
+		</el-form>
+		<template #footer>
+			<span class="dialog-footer">
+				
+				<el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
+				<el-button type="primary" @click="submitForm(ruleFormRef)" size="default">确定</el-button>
+			</span>
+		</template>
+	</el-dialog>
+	<DailogSearchUser ref="Show" @SearchUser="onUser"></DailogSearchUser>
+</template>
+<script lang="ts">
+import { defineComponent, ref, reactive, onMounted } from 'vue';
+import { Search, FullScreen } from '@element-plus/icons-vue';
+import type { FormInstance, FormRules } from 'element-plus';
+import DailogSearchUser from '../../../../components/DailogSearchUser/index.vue';
+import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';
+import { goalManagementApi } from '/@/api/goalManagement';
+export default defineComponent({
+	components: { DailogSearchUser },
+	setup(props, { emit }) {
+		const ruleFormRef = ref<FormInstance>()
+		const form = ref({
+			dutyDepartmentId: '', ////责任部门/外键
+			makerDepartmentId: '', ////制定人部门/外键
+			commitPersonId: '', ////上报人/外键
+			commitPersonName: '',
+			value: '', ////考核指标值
+			makeDate: '', ////制定日期
+		});
+		//部门
+		const department = () => {
+			goalManagementApi()
+				.getTreedepartment()
+				.then((res) => {
+					if (res.data.code == 200) {
+						data.value = res.data.data;
+					} else {
+						ElMessage.error(res.data.msg);
+					}
+				});
+		};
+		const propse = {
+			label: 'depName',
+			children: 'children',
+			value: 'depId',
+		};
+		onMounted(() => {
+			department();
+		});
+		const disabled = ref(false);
+		// 开启弹窗
+		const titles = ref();
+		const dialogVisible = ref(false);
+		const openDailog = (title: string, data: any) => {
+			titles.value = `${title}目标考核`;
+			if (title == '查看') {
+				disabled.value = true;
+				form.value = data;
+			} else if (title == '修改') {
+				disabled.value = false;
+				form.value = data;
+			} else {
+				disabled.value = false;
+			}
+			dialogVisible.value = true;
+		};
+		// 开启用户弹窗
+		const Show = ref();
+		const openUser = () => {
+			Show.value.openDailog();
+		};
+		const rules = reactive<FormRules>({
+			dutyDepartmentId: [
+				{
+					required: true,
+					message: '责任部门不能为空',
+					trigger: 'blur',
+				},
+			],
+			makerDepartmentId: [
+				{
+					required: true,
+					message: '制定人部门不能为空',
+					trigger: 'blur',
+				},
+			],
+			commitPersonId: [
+				{
+					required: true,
+					message: '上报人不能为空',
+					trigger: 'blur',
+				},
+			],
+			value: [
+				{
+					required: true,
+					message: '考核指标值不能为空',
+					trigger: 'blur',
+				},
+				{
+					type: 'number',
+					message: '考核指标值只能为数字类型',
+					trigger: 'blur',
+				},
+			],
+			makeDate: [
+				{
+					required: true,
+					message: '制定日期不能为空',
+					trigger: 'blur',
+				},
+			],
+			commitPersonName: [],
+		});
+		const submitForm = async (formEl: FormInstance | undefined) => {
+			if (!formEl) return;
+			await formEl.validate((valid, fields) => {
+				if (valid) {
+					emit('onAdd', form.value);
+					dialogVisible.value = false;
+					// handleClose(formEl)
+				} else {
+					console.log('error submit!', fields);
+				}
+			});
+		};
+
+		const resetForm = (formEl: FormInstance | undefined) => {
+			// console.log(formEl);
+			if (!formEl) return
+			formEl.resetFields();
+			dialogVisible.value = false;
+			form.value={}
+		};
+		// const handleClose = (formEl: any) => {
+		// 	formEl.resetFields();
+		// };
+		//全屏
+		const full = ref(false);
+		const toggleFullscreen = () => {
+			if (full.value == false) {
+				full.value = true;
+			} else {
+				full.value = false;
+			}
+		};
+		const data = ref();
+		const onUser = (e: any) => {
+			console.log(e)
+			form.value.commitPersonId = e.uid;
+			form.value.commitPersonName = e.realName;
+		};
+		return {
+			disabled,
+			titles,
+			// handleClose,
+			form,
+			propse,
+			department,
+			dialogVisible,
+			openDailog,
+			Show,
+			openUser,
+			Search,
+			full,
+			toggleFullscreen,
+			FullScreen,
+			data,
+			onUser,
+			ruleFormRef,
+			rules,
+			submitForm,
+			resetForm,
+		};
+	},
+});
+</script>
+<style scoped>
+.el-row {
+	padding: 0 0 20px 0;
+}
+</style>
diff --git a/src/views/goalManagement/targetDecompositionMonth/index.vue b/src/views/goalManagement/targetDecompositionMonth/index.vue
index 09e743f..ea96184 100644
--- a/src/views/goalManagement/targetDecompositionMonth/index.vue
+++ b/src/views/goalManagement/targetDecompositionMonth/index.vue
@@ -24,7 +24,7 @@
 			<div class="btns">
 				<div>
 					<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
-					<el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button>
+					<!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> -->
 					<el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button>
 				</div>
 			</div>
diff --git a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue
index 8960533..1157f13 100644
--- a/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue
+++ b/src/views/goalManagement/targetDecompositionYear/component/Dailog.vue
@@ -37,10 +37,10 @@
 			</el-tab-pane>
 		</el-tabs>
 		<el-table :data="formUp.targetDivideDetailList" style="width: 100%">
-			<el-table-column align="center" property="dutyDepartmentId" label="责任部门" width="180" />
+			<el-table-column align="center" property="dutyDepartmentName" label="责任部门" width="180" />
 			<el-table-column align="center" property="value" label="考核指标" width="180" />
-			<el-table-column align="center" property="makerDepartmentId" label="制定人部门" />
-			<el-table-column align="center" property="makeDate" label="制定日期" :formatter="timeDate"/>
+			<el-table-column align="center" property="makerDepartmentName" label="制定人部门" />
+			<el-table-column align="center" property="makeDate" label="制定日期" />
 			<el-table-column align="center" property="commitPersonName" label="上报人" />
 			<el-table-column align="center" property="操作">
 				<template #default="scope">
@@ -62,23 +62,24 @@
 </template>
 <script lang="ts">
 import { defineComponent, ref, reactive } from 'vue';
-import {timeDate} from '/@/assets/index.ts'
+import { timeDate } from '/@/assets/index.ts';
 import { Search, FullScreen } from '@element-plus/icons-vue';
 import DailogAdd from './DailogAdd.vue';
 import { ElMessageBox, ElMessage, ElButton, ElInput, TabsPaneContext } from 'element-plus';
 import DailogSearch from '../../../../components/DailogSearch/DailogSearch.vue';
 import { goalManagementApi } from '/@/api/goalManagement';
 import { emit } from 'process';
+import { deepClone } from '/@/utils/other';
 export default defineComponent({
-	components: { DailogAdd, DailogSearch},
-	setup(props,{emit}) {
+	components: { DailogAdd, DailogSearch },
+	setup(props, { emit }) {
 		const dialogVisible = ref<boolean>(false);
 		const form = ref({
 			qName: '',
 			indexNum: '',
 			year: '',
 			value: '',
-			targetDivideDetailList:[]
+			targetDivideDetailList: [],
 		});
 		const targetType = ref();
 		const disabled = ref(false);
@@ -94,7 +95,7 @@
 					.then((res) => {
 						if (res.data.code == 200) {
 							form.value = res.data.data;
-							formUp.targetDivideDetailList=form.value.targetDivideDetailList
+							formUp.targetDivideDetailList = form.value.targetDivideDetailList;
 						} else {
 							ElMessage.error(res.data.msg);
 						}
@@ -109,7 +110,7 @@
 		// 表格
 		const tableData = ref([]);
 		// 新增弹窗
-		const index=ref<any>()
+		const index = ref<any>();
 		const Show = ref();
 		const daiAdd = (title: string, data: any) => {
 			index.value = formUp.targetDivideDetailList.indexOf(data);
@@ -120,19 +121,27 @@
 			delTargetDivideDetails: '', //要删除的目标指标分解ID,多个用逗号隔开
 			targetDivideDetailList: [], //目标指标分解列表
 		});
+
 		const add = (val: any) => {
-            if(index.value==-1){
-				formUp.targetDivideDetailList.push(val);
-			}else{
-				formUp.targetDivideDetailList[index.value] = val;
+			const item = deepClone(val);
+			console.log(item)
+			if (index.value == -1) {
+				formUp.targetDivideDetailList.push(item);
+			} else {
+				formUp.targetDivideDetailList[index.value] = item;
 			}
-			
+
 			// let obj=JSON.parse(JSON.stringify(form.value))
 		};
 		// 新增
 		const submitForm = () => {
-			formUp.delTargetDivideDetails=arr.value.toString()
+			formUp.delTargetDivideDetails = arr.value.toString();
 			formUp.targetId = form.value.id;
+			dialogVisible.value = false;
+			for(let i=0;i<formUp.targetDivideDetailList.length;i++){
+				delete formUp.targetDivideDetailList[i].dutyDepartmentName
+				delete formUp.targetDivideDetailList[i].makerDepartmentName
+			}
 			goalManagementApi()
 				.gettargetDivideDetail(formUp)
 				.then((res) => {
@@ -141,30 +150,29 @@
 							message: res.data.msg,
 							type: 'success',
 						});
-						dialogVisible.value = false;
-						emit("addList")
+						emit('addList');
 					} else {
 						ElMessage.error(res.data.msg);
 					}
 				});
-				form.value = {
+			form.value = {
 				qName: '',
 				indexNum: '',
 				year: '',
 				value: '',
-				targetDivideDetailList:[]
+				targetDivideDetailList: [],
 			};
 			tableData.value = [];
 			formUp.targetId = '';
 			formUp.delTargetDivideDetails = '';
 			formUp.targetDivideDetailList = [];
 		};
-		const arr=ref([])
+		const arr = ref([]);
 		// 删除
 		const Delete = (data: any) => {
 			formUp.targetDivideDetailList.splice(form.value.targetDivideDetailList.indexOf(data), 1);
 			formUp.targetId = data.targetId;
-			arr.value.push(data.id)
+			arr.value.push(data.id);
 		};
 		// 安全目标指标弹窗
 		const Shows = ref();
@@ -179,7 +187,7 @@
 				indexNum: '',
 				year: '',
 				value: '',
-				targetDivideDetailList:[]
+				targetDivideDetailList: [],
 			};
 			tableData.value = [];
 			formUp.targetId = '';
diff --git a/src/views/goalManagement/targetDecompositionYear/component/DailogAdd.vue b/src/views/goalManagement/targetDecompositionYear/component/DailogAdd.vue
index 9786b4e..a06417d 100644
--- a/src/views/goalManagement/targetDecompositionYear/component/DailogAdd.vue
+++ b/src/views/goalManagement/targetDecompositionYear/component/DailogAdd.vue
@@ -1,11 +1,11 @@
 <template>
-	<el-dialog v-model="dialogVisible" :fullscreen="full" :title="titles" width="50%" draggable>
+	<el-dialog v-model="dialogVisible" :fullscreen="full" :title="titles" width="50%" draggable @close="resetForm(ruleFormRef)">
 		<el-button @click="toggleFullscreen" size="small" class="pot" :icon="FullScreen"></el-button>
 		<el-form :model="form" :disabled="disabled" label-width="120px" ref="ruleFormRef" :rules="rules">
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="责任部门" prop="dutyDepartmentId" size="default">
-						<el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" :data="data" class="w100" :props="propse" placeholder="请选择" />
+						<el-tree-select v-model="form.dutyDepartmentId" check-strictly="true" @current-change="dutyName" :data="data" class="w100" :props="propse" placeholder="请选择" />
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
@@ -17,12 +17,12 @@
 			<el-row>
 				<el-col :span="11">
 					<el-form-item label="制定人部门" prop="makerDepartmentId" size="default">
-						<el-tree-select v-model="form.makerDepartmentId" :data="data" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
+						<el-tree-select v-model="form.makerDepartmentId" :data="data" @current-change="makerName" check-strictly="true" class="w100" :props="propse" placeholder="请选择" />
 					</el-form-item>
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="制定日期" prop="makeDate" size="default">
-						<el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
+						<el-date-picker v-model="form.makeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
 					</el-form-item>
 				</el-col>
 			</el-row>
@@ -41,7 +41,7 @@
 			<span class="dialog-footer">
 				
 				<el-button @click="resetForm(ruleFormRef)" size="default">关闭</el-button>
-				<el-button type="primary" @click="submitForm(ruleFormRef)" size="default">确定</el-button>
+				<el-button type="primary" @click="submitForm(ruleFormRef)" :disabled="disabled" size="default">确定</el-button>
 			</span>
 		</template>
 	</el-dialog>
@@ -113,14 +113,14 @@
 				{
 					required: true,
 					message: '责任部门不能为空',
-					trigger: 'change',
+					trigger: 'blur',
 				},
 			],
 			makerDepartmentId: [
 				{
 					required: true,
 					message: '制定人部门不能为空',
-					trigger: 'change',
+					trigger: 'blur',
 				},
 			],
 			commitPersonId: [
@@ -167,8 +167,9 @@
 		const resetForm = (formEl: FormInstance | undefined) => {
 			// console.log(formEl);
 			if (!formEl) return
-			formEl.resetFields();
-			// dialogVisible.value = false;
+			formEl.clearValidate();
+			dialogVisible.value = false;
+			form.value={}
 		};
 		// const handleClose = (formEl: any) => {
 		// 	formEl.resetFields();
@@ -188,8 +189,16 @@
 			form.value.commitPersonId = e.uid;
 			form.value.commitPersonName = e.realName;
 		};
+		const makerName=(data:any)=>{
+			form.value.makerDepartmentName=data.depName
+		}
+		const dutyName=(data:any)=>{
+			form.value.dutyDepartmentName=data.depName
+		}
 		return {
 			disabled,
+			makerName,
+			dutyName,
 			titles,
 			// handleClose,
 			form,
diff --git a/src/views/goalManagement/targetDecompositionYear/index.vue b/src/views/goalManagement/targetDecompositionYear/index.vue
index b4d29b8..8782bc2 100644
--- a/src/views/goalManagement/targetDecompositionYear/index.vue
+++ b/src/views/goalManagement/targetDecompositionYear/index.vue
@@ -24,7 +24,7 @@
 			<div class="btns">
 				<div>
 					<el-button size="default" type="primary" :icon="Plus" @click="openD('新建')">新建</el-button>
-					<el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button>
+					<!-- <el-button size="default" type="warning" :disabled="warning" :icon="EditPen" plain>修改</el-button> -->
 					<el-button size="default" type="danger" :disabled="danger" :icon="Delete" plain @click="onDeleteAll">删除</el-button>
 				</div>
 			</div>
diff --git a/src/views/goalManagement/targetSettings/component/dailogAdd.vue b/src/views/goalManagement/targetSettings/component/dailogAdd.vue
index f0fdef8..721fe7e 100644
--- a/src/views/goalManagement/targetSettings/component/dailogAdd.vue
+++ b/src/views/goalManagement/targetSettings/component/dailogAdd.vue
@@ -38,7 +38,7 @@
 				</el-col>
 				<el-col :span="11" :offset="2">
 					<el-form-item label="完成期限" size="default" prop="completeDate">
-						<el-date-picker v-model="form.completeDate" format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
+						<el-date-picker v-model="form.completeDate" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" type="datetime" placeholder="请选择" style="width: 100%" />
 					</el-form-item>
 				</el-col>
 			</el-row>
diff --git a/src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue b/src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue
index 1d2e3d8..6316678 100644
--- a/src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue
+++ b/src/views/intellectInspect/inspectBasic/discriminate/components/RFIDDialog.vue
@@ -5,12 +5,12 @@
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="RFID名称" prop="rfidName">
-                            <el-input class="input-length" v-model.trim="RFIDForm.rfidName" placeholder="请输入RFID名称" clearable></el-input>
+                            <el-input class="input-add" v-model.trim="RFIDForm.rfidName" placeholder="请输入RFID名称" clearable></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="RFID编码" prop="rfid">
-                            <el-input class="input-length" v-model.trim="RFIDForm.rfid" placeholder="请输入RFID编码" clearable></el-input>
+                            <el-input class="input-add" v-model.trim="RFIDForm.rfid" placeholder="请输入RFID编码" clearable></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -65,13 +65,13 @@
                 RFIDFormRef.value.clearValidate();
             });
             if (type === '新增') {
-                state.title = '新增巡检指标';
+                state.title = '新增RFID';
                 state.RFIDForm = {
                     rfid: '',
                     rfidName: ''
                 };
             } else {
-                state.title = '修改巡检指标';
+                state.title = '修改RFID';
                 state.RFIDForm = JSON.parse(JSON.stringify(value));
             }
         };
@@ -132,8 +132,4 @@
 };
 </script>
 
-<style scoped>
-.input-length {
-    width: 85%;
-}
-</style>
+<style scoped></style>
diff --git a/src/views/intellectInspect/inspectBasic/discriminate/index.vue b/src/views/intellectInspect/inspectBasic/discriminate/index.vue
index 1ddaf5b..79a7053 100644
--- a/src/views/intellectInspect/inspectBasic/discriminate/index.vue
+++ b/src/views/intellectInspect/inspectBasic/discriminate/index.vue
@@ -20,7 +20,7 @@
                     <el-icon>
                         <ele-FolderAdd />
                     </el-icon>
-                    新增巡检指标
+                    新增RFID
                 </el-button>
             </div>
             <el-table :data="RFIDData.data" style="width: 100%">
@@ -39,19 +39,7 @@
                 </el-table-column>
             </el-table>
             <br />
-            <el-pagination
-                @size-change="onHandleSizeChange"
-                @current-change="onHandleCurrentChange"
-                :pager-count="5"
-                :page-sizes="[10, 20, 30]"
-                v-model:current-page="RFIDData.params.pageIndex"
-                background
-                v-model:page-size="RFIDData.params.pageSize"
-                layout="total, sizes, prev, pager, next, jumper"
-                :total="RFIDData.total"
-                class="page-position"
-            >
-            </el-pagination>
+            <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="RFIDData.params.pageIndex" background v-model:page-size="RFIDData.params.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="RFIDData.total" class="page-position"> </el-pagination>
             <br />
             <br />
         </el-card>
@@ -187,4 +175,15 @@
 });
 </script>
 
-<style scoped></style>
+<style scoped>
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
+</style>
diff --git a/src/views/intellectInspect/inspectBasic/facility/index.vue b/src/views/intellectInspect/inspectBasic/facility/index.vue
index d4502f3..76c6efc 100644
--- a/src/views/intellectInspect/inspectBasic/facility/index.vue
+++ b/src/views/intellectInspect/inspectBasic/facility/index.vue
@@ -22,7 +22,7 @@
                     <el-icon>
                         <ele-FolderAdd />
                     </el-icon>
-                    新增巡检指标
+                    新增设备区域
                 </el-button>
             </div>
             <el-table :data="facilityAreaData.data" style="width: 100%">
@@ -41,19 +41,7 @@
                 </el-table-column>
             </el-table>
             <br />
-            <el-pagination
-                @size-change="onHandleSizeChange"
-                @current-change="onHandleCurrentChange"
-                :pager-count="5"
-                :page-sizes="[10, 20, 30]"
-                v-model:current-page="facilityAreaData.params.pageIndex"
-                background
-                v-model:page-size="facilityAreaData.params.pageSize"
-                layout="total, sizes, prev, pager, next, jumper"
-                :total="facilityAreaData.total"
-                class="page-position"
-            >
-            </el-pagination>
+            <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="facilityAreaData.params.pageIndex" background v-model:page-size="facilityAreaData.params.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="facilityAreaData.total" class="page-position"> </el-pagination>
             <br />
             <br />
         </el-card>
diff --git a/src/views/intellectInspect/inspectBasic/inspectPoint/index.vue b/src/views/intellectInspect/inspectBasic/inspectPoint/index.vue
index 635b1be..62064e6 100644
--- a/src/views/intellectInspect/inspectBasic/inspectPoint/index.vue
+++ b/src/views/intellectInspect/inspectBasic/inspectPoint/index.vue
@@ -22,7 +22,7 @@
                     <el-icon>
                         <ele-FolderAdd />
                     </el-icon>
-                    新增巡检指标
+                    新增巡检点
                 </el-button>
             </div>
             <el-table :data="inspectPointData.data" style="width: 100%">
@@ -42,19 +42,7 @@
                 </el-table-column>
             </el-table>
             <br />
-            <el-pagination
-                @size-change="onHandleSizeChange"
-                @current-change="onHandleCurrentChange"
-                :pager-count="5"
-                :page-sizes="[10, 20, 30]"
-                v-model:current-page="inspectPointData.params.pageIndex"
-                background
-                v-model:page-size="inspectPointData.params.pageSize"
-                layout="total, sizes, prev, pager, next, jumper"
-                :total="inspectPointData.total"
-                class="page-position"
-            >
-            </el-pagination>
+            <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="inspectPointData.params.pageIndex" background v-model:page-size="inspectPointData.params.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="inspectPointData.total" class="page-position"> </el-pagination>
             <br />
             <br />
         </el-card>
diff --git a/src/views/intellectInspect/inspectBasic/inspectTarget/components/inspectTargetDialog.vue b/src/views/intellectInspect/inspectBasic/inspectTarget/components/inspectTargetDialog.vue
index b7a96b1..a15475d 100644
--- a/src/views/intellectInspect/inspectBasic/inspectTarget/components/inspectTargetDialog.vue
+++ b/src/views/intellectInspect/inspectBasic/inspectTarget/components/inspectTargetDialog.vue
@@ -5,19 +5,19 @@
                 <el-row :gutter="35">
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="指标名称" prop="quota">
-                            <el-input class="input-length" v-model.trim="inspectTargetForm.quota" placeholder="请输入指标名称" clearable></el-input>
+                            <el-input class="input-add" v-model.trim="inspectTargetForm.quota" placeholder="请输入指标名称" clearable></el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="指标类型" prop="quotaTypeId">
-                            <el-select class="input-length" v-model="inspectTargetForm.quotaTypeId" @change="changeQuotaUnit" placeholder="请选择指标类型" clearable filterable>
+                            <el-select class="input-add" v-model="inspectTargetForm.quotaTypeId" @change="changeQuotaUnit" placeholder="请选择指标类型" clearable filterable>
                                 <el-option v-for="item in quotaTypeList" :key="item.id" :label="item.type" :value="item.id"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
                         <el-form-item label="指标单位" prop="quotaUnit">
-                            <el-input class="input-length" v-model.trim="inspectTargetForm.quotaUnit" type="textarea" placeholder="请输入指标单位" maxlength="150"></el-input>
+                            <el-input class="input-add" v-model.trim="inspectTargetForm.quotaUnit" type="textarea" placeholder="请输入指标单位" maxlength="150"></el-input>
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -33,8 +33,6 @@
 </template>
 
 <script lang="ts">
-import { inspectPointApi } from '/@/api/intellectInspectSystem/inspectPointManage';
-
 interface stateType {
     isShowInspectTargetDialog: Boolean;
     inspectTargetForm: {
@@ -163,8 +161,4 @@
 };
 </script>
 
-<style scoped>
-.input-length {
-    width: 85%;
-}
-</style>
+<style scoped></style>
diff --git a/src/views/intellectInspect/inspectBasic/inspectTarget/index.vue b/src/views/intellectInspect/inspectBasic/inspectTarget/index.vue
index cae2d06..4308c50 100644
--- a/src/views/intellectInspect/inspectBasic/inspectTarget/index.vue
+++ b/src/views/intellectInspect/inspectBasic/inspectTarget/index.vue
@@ -36,19 +36,7 @@
                 </el-table-column>
             </el-table>
             <br />
-            <el-pagination
-                @size-change="onHandleSizeChange"
-                @current-change="onHandleCurrentChange"
-                :pager-count="5"
-                :page-sizes="[10, 20, 30]"
-                v-model:current-page="inspectTargetData.params.pageIndex"
-                background
-                v-model:page-size="inspectTargetData.params.pageSize"
-                layout="total, sizes, prev, pager, next, jumper"
-                :total="inspectTargetData.total"
-                class="page-position"
-            >
-            </el-pagination>
+            <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="inspectTargetData.params.pageIndex" background v-model:page-size="inspectTargetData.params.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="inspectTargetData.total" class="page-position"> </el-pagination>
             <br />
             <br />
         </el-card>
diff --git a/src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue b/src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue
index f07d72e..e61d78d 100644
--- a/src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue
+++ b/src/views/intellectInspect/inspectRecordManage/inspectRecord/components/inspectRecordDialog.vue
@@ -5,31 +5,31 @@
                 <el-row>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="任务名称" prop="unitName">
-                            <el-input v-model="inspectTaskForm.taskName" class="input-add" placeholder="请填写任务名称"> </el-input>
+                            <el-input v-model="inspectTaskForm.taskName" :disabled="!inspectPointConfirm" class="input-add" placeholder="请填写任务名称"> </el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="任务类型" prop="taskType">
-                            <el-select v-model="inspectTaskForm.taskType" class="input-add" placeholder="请选择任务类型">
+                            <el-select v-model="inspectTaskForm.taskType" :disabled="!inspectPointConfirm" class="input-add" placeholder="请选择任务类型">
                                 <el-option v-for="item in workTypeList" :key="item.id" :value="item.id" :label="item.name"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="巡检部门" prop="execDepId">
-                            <el-cascader @change="giveClassGroup" placeholder="请选择巡检部门" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" clearable filterable class="input-add" v-model="inspectTaskForm.execDepId"> </el-cascader>
+                            <el-cascader @change="giveClassGroup" :disabled="!inspectPointConfirm" placeholder="请选择巡检部门" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" clearable filterable class="input-add" v-model="inspectTaskForm.execDepId"> </el-cascader>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="巡检班组" prop="execClassgroupId">
-                            <el-select v-model="inspectTaskForm.execClassgroupId" placeholder="请选择巡检班组" class="input-add">
+                            <el-select v-model="inspectTaskForm.execClassgroupId" :disabled="!inspectPointConfirm" placeholder="请选择巡检班组" class="input-add">
                                 <el-option v-for="item in classGroup" :key="item.id" :value="item.id" :label="item.groupName"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="任务开始时间" prop="startTime">
-                            <el-date-picker v-model="inspectTaskForm.startTime" placeholder="请选择任务开始时间" type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" />
+                            <el-date-picker v-model="inspectTaskForm.startTime" :disabled="!inspectPointConfirm" placeholder="请选择任务开始时间" type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" />
                         </el-form-item>
                     </el-col>
                 </el-row>
@@ -243,7 +243,6 @@
                 .getInspectRecordById({ id: value.id, uuid: value.uuid })
                 .then((res) => {
                     if (res.data.code === '200') {
-                        debugger;
                         data.inspectTaskForm.execDepId = res.data.data.execDepId;
                         giveClassGroup();
                         data.inspectTaskForm = JSON.parse(JSON.stringify(res.data.data));
@@ -334,7 +333,6 @@
         };
 
         const giveClassGroup = () => {
-            debugger;
             data.inspectTaskForm.execClassgroupId = null;
             data.classGroup = data.classGroupList.filter((item) => item.depId === data.inspectTaskForm.execDepId);
         };
diff --git a/src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue b/src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue
index 10bf5c8..008e90c 100644
--- a/src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue
+++ b/src/views/intellectInspect/inspectRecordManage/inspectRecord/index.vue
@@ -4,7 +4,7 @@
             <el-row class="homeCard">
                 <div class="basic-line">
                     <span>任务类型:</span>
-                    <el-select v-model="tableData.params.workType" clearable filterable class="input-box" placeholder="任务类型">
+                    <el-select v-model="tableData.params.taskType" clearable filterable class="input-box" placeholder="任务类型">
                         <el-option v-for="item in workTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                     </el-select>
                 </div>
@@ -12,6 +12,12 @@
                     <span>执行班组:</span>
                     <el-select v-model="tableData.params.execClassgroupId" clearable filterable class="input-box" placeholder="执行班组">
                         <el-option v-for="item in classGroupList" :key="item.id" :label="item.groupName" :value="item.id"></el-option>
+                    </el-select>
+                </div>
+                <div class="basic-line">
+                    <span>任务状态:</span>
+                    <el-select v-model="tableData.params.taskStatus" clearable filterable class="input-box" placeholder="执行班组">
+                        <el-option v-for="item in taskStatusList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                     </el-select>
                 </div>
                 <div style="padding-bottom: 10px">
@@ -50,29 +56,18 @@
                                 </span>
                             </template>
                         </el-table-column>
-                        <!--                        <el-table-column prop="validTime" label="有效时间" show-overflow-tooltip>-->
-                        <!--                            <template #default="scope">-->
-                        <!--                                <span>-->
-                        <!--                                    {{ scope.row.validTime }}-->
-                        <!--                                </span>-->
-                        <!--                                <span>-->
-                        <!--                                    {{ parseNumber(scope.row.validTimeUnit, '检查频次') }}-->
-                        <!--                                </span>-->
-                        <!--                            </template>-->
-                        <!--                        </el-table-column>-->
-                        <!--                        <el-table-column prop="validTime" label="提醒时间" show-overflow-tooltip>-->
-                        <!--                            <template #default="scope">-->
-                        <!--                                <span>-->
-                        <!--                                    {{ scope.row.noticeTime }}-->
-                        <!--                                </span>-->
-                        <!--                                <span>-->
-                        <!--                                    {{ parseNumber(scope.row.noticeTimeUnit, '检查频次') }}-->
-                        <!--                                </span>-->
-                        <!--                            </template>-->
-                        <!--                        </el-table-column>-->
                         <el-table-column property="startTime" label="任务开始时间" />
                         <el-table-column prop="execUserName" label="执行人" show-overflow-tooltip></el-table-column>
-                        <el-table-column property="resultStatus" label="状态">
+                        <el-table-column property="taskStatus" label="任务状态">
+                            <template #default="scope">
+                                <el-tag :type="scope.row.taskStatus === 1 ? 'info' : scope.row.taskStatus === 2 ? 'primary' : scope.row.taskStatus === 3 ? 'success' : 'danger'">
+                                    <span>
+                                        {{ parseNumber(scope.row.taskStatus, '任务状态') }}
+                                    </span>
+                                </el-tag>
+                            </template>
+                        </el-table-column>
+                        <el-table-column property="resultStatus" label="巡检结果">
                             <template #default="scope">
                                 <span>
                                     {{ parseNumber(scope.row.resultStatus, '巡检状态') }}
@@ -133,6 +128,7 @@
         };
     };
     workTypeList: Array<type>;
+    taskStatusList: Array<type>;
     quotaList: [];
     departmentList: [];
     classGroupList: Array<classGroup>;
@@ -163,7 +159,7 @@
                     pageSize: 10,
                     taskName: null,
                     taskType: null,
-                    taskStatus: null,
+                    taskStatus: 2,
                     execUserId: null,
                     execClassgroupId: null,
                     execDepId: null,
@@ -180,6 +176,12 @@
             resultStatusList: [
                 { id: 0, name: '正常' },
                 { id: 1, name: '异常' }
+            ],
+            taskStatusList: [
+                { id: 1, name: '待巡检' },
+                { id: 2, name: '巡检中' },
+                { id: 3, name: '已巡检' },
+                { id: 4, name: '超时未巡检' }
             ],
             quotaList: [],
             departmentList: [],
@@ -271,6 +273,8 @@
                 return state.timeType.find((item) => item.id == value)?.name;
             } else if (type === '巡检状态') {
                 return state.resultStatusList.find((item) => item.id == value)?.name;
+            } else if (type === '任务状态') {
+                return state.taskStatusList.find((item) => item.id == value)?.name;
             } else {
                 return state.classGroupList.find((item) => item.id == value)?.groupName;
             }
@@ -291,12 +295,16 @@
             state.tableData.params = {
                 pageIndex: 1,
                 pageSize: 10,
-                unitName: null,
-                workType: null,
-                createUserId: null,
+                taskName: null,
+                taskType: null,
+                taskStatus: null,
+                execUserId: null,
                 execClassgroupId: null,
-                checkCycle: null,
-                checkCycleUnit: null
+                execDepId: null,
+                startTime: null,
+                validTime: null,
+                createUserId: null,
+                reportTime: null
             };
         };
 
@@ -463,4 +471,14 @@
 .el-select {
     width: 100%;
 }
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
 </style>
diff --git a/src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue b/src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue
index 79a10c7..fcbddcf 100644
--- a/src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue
+++ b/src/views/intellectInspect/inspectTaskManage/inspectTask/components/inspectTaskDialog.vue
@@ -5,33 +5,33 @@
                 <el-row>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="任务名称" prop="unitName">
-                            <el-input v-model="inspectTaskForm.unitName" class="input-add" placeholder="请填写任务名称"> </el-input>
+                            <el-input v-model="inspectTaskForm.unitName" :disabled="!inspectPointConfirm" class="input-add" placeholder="请填写任务名称"> </el-input>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="任务类型" prop="workType">
-                            <el-select v-model="inspectTaskForm.workType" class="input-add" placeholder="请选择任务类型">
+                            <el-select v-model="inspectTaskForm.workType" :disabled="!inspectPointConfirm" class="input-add" placeholder="请选择任务类型">
                                 <el-option v-for="item in workTypeList" :key="item.id" :value="item.id" :label="item.name"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="巡检部门" prop="execDepId">
-                            <el-cascader @change="giveClassGroup" placeholder="请选择巡检部门" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" clearable filterable class="input-add" v-model="inspectTaskForm.execDepId"> </el-cascader>
+                            <el-cascader @change="giveClassGroup" :disabled="!inspectPointConfirm" v placeholder="请选择巡检部门" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" clearable filterable class="input-add" v-model="inspectTaskForm.execDepId"> </el-cascader>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="巡检班组" prop="execClassgroupId">
-                            <el-select v-model="inspectTaskForm.execClassgroupId" placeholder="请选择巡检班组" class="input-add">
+                            <el-select v-model="inspectTaskForm.execClassgroupId" :disabled="!inspectPointConfirm" placeholder="请选择巡检班组" class="input-add">
                                 <el-option v-for="item in classGroup" :key="item.id" :value="item.id" :label="item.groupName"></el-option>
                             </el-select>
                         </el-form-item>
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="巡检周期" prop="checkCycle">
-                            <el-input v-model="inspectTaskForm.checkCycle" placeholder="请输入巡检周期" class="input-add">
+                            <el-input v-model="inspectTaskForm.checkCycle" :disabled="!inspectPointConfirm" placeholder="请输入巡检周期" class="input-add">
                                 <template #append>
-                                    <el-select v-model="inspectTaskForm.checkCycleUnit" placeholder="选择单位">
+                                    <el-select v-model="inspectTaskForm.checkCycleUnit" :disabled="!inspectPointConfirm" placeholder="选择单位">
                                         <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option>
                                     </el-select>
                                 </template>
@@ -40,9 +40,9 @@
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="提前通知时间" prop="noticeTime">
-                            <el-input v-model="inspectTaskForm.noticeTime" placeholder="请输入提前通知时间" class="input-add">
+                            <el-input v-model="inspectTaskForm.noticeTime" :disabled="!inspectPointConfirm" placeholder="请输入提前通知时间" class="input-add">
                                 <template #append>
-                                    <el-select v-model="inspectTaskForm.noticeTimeUnit" placeholder="选择单位">
+                                    <el-select v-model="inspectTaskForm.noticeTimeUnit" :disabled="!inspectPointConfirm" placeholder="选择单位">
                                         <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option>
                                     </el-select>
                                 </template>
@@ -51,9 +51,9 @@
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="有效时间" prop="validTime">
-                            <el-input v-model="inspectTaskForm.validTime" placeholder="请输入有效时间" class="input-add">
+                            <el-input v-model="inspectTaskForm.validTime" :disabled="!inspectPointConfirm" placeholder="请输入有效时间" class="input-add">
                                 <template #append>
-                                    <el-select v-model="inspectTaskForm.validTimeUnit" placeholder="选择单位">
+                                    <el-select v-model="inspectTaskForm.validTimeUnit" :disabled="!inspectPointConfirm" placeholder="选择单位">
                                         <el-option v-for="item in timeList" :key="item.id" :value="item.id" :label="item.name"></el-option>
                                     </el-select>
                                 </template>
@@ -62,7 +62,7 @@
                     </el-col>
                     <el-col :span="12" style="margin-bottom: 20px">
                         <el-form-item label="周期开始时间" prop="firstStartTime">
-                            <el-date-picker v-model="inspectTaskForm.firstStartTime" placeholder="请选择周期开始时间" type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" />
+                            <el-date-picker v-model="inspectTaskForm.firstStartTime" :disabled="!inspectPointConfirm" placeholder="请选择周期开始时间" type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" class="input-add" />
                         </el-form-item>
                     </el-col>
 
diff --git a/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue b/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue
index b2ab549..2158c0c 100644
--- a/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue
+++ b/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue
@@ -452,4 +452,14 @@
 .el-select {
     width: 100%;
 }
+:deep(.el-textarea.is-disabled .el-textarea__inner) {
+    background-color: var(--el-card-bg-color);
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__inner) {
+    color: var(--el-input-text-color, var(--el-text-color-regular));
+}
+:deep(.el-input.is-disabled .el-input__wrapper) {
+    background-color: var(--el-card-bg-color);
+}
 </style>
diff --git a/src/views/loginPage/loginPage.vue b/src/views/loginPage/loginPage.vue
index 9b976a0..b285c23 100644
--- a/src/views/loginPage/loginPage.vue
+++ b/src/views/loginPage/loginPage.vue
@@ -1,33 +1,33 @@
 <template>
-	<div class="login-container">
-		<div id="particles-js" style="display: flex;align-items: center;justify-content: center">
-			<canvas class="particles-js-canvas-el" style="width: 100%; height: 100%;" width="472" height="625"></canvas>
-		</div>
-		<el-row class="loginContent">
-			<el-col :md="12">
-			<div class="loginContL">
-				<div class="apTitleT">新疆国泰新华</div>
-				<div class="apTitleB">安全风险预警监测系统</div>
-				<span></span>
-			</div>
-			</el-col>
-			<el-col :md="12" style="display: flex;justify-content: flex-end">
-			<div class="loginPanel">
-				<div class="welc">WELCOME!</div>
-				<div class="welcc">欢迎登录</div>
-<!--				<div class="loginInfo">-->
-<!--					<el-input v-model="input" placeholder="Please input" />-->
-<!--				</div>-->
-				<div>
-					<el-tabs v-model="tabsActiveName">
-						<AccountLogin />
-					</el-tabs>
-				</div>
-			</div>
-			</el-col>
-		</el-row>
-		<div class="rights">技术支持:苏州国科鸿宇智能科技有限公司</div>
-	</div>
+    <div class="login-container">
+        <div id="particles-js" style="display: flex; align-items: center; justify-content: center">
+            <canvas class="particles-js-canvas-el" style="width: 100%; height: 100%" width="472" height="625"></canvas>
+        </div>
+        <el-row class="loginContent">
+            <el-col :md="12">
+                <div class="loginContL">
+                    <div class="apTitleT">新疆国泰新华</div>
+                    <div class="apTitleB">安全风险预警监测系统</div>
+                    <span></span>
+                </div>
+            </el-col>
+            <el-col :md="12" style="display: flex; justify-content: flex-end">
+                <div class="loginPanel">
+                    <div class="welc">WELCOME!</div>
+                    <div class="welcc">欢迎登录</div>
+                    <!--				<div class="loginInfo">-->
+                    <!--					<el-input v-model="input" placeholder="Please input" />-->
+                    <!--				</div>-->
+                    <div>
+                        <el-tabs v-model="tabsActiveName">
+                            <AccountLogin />
+                        </el-tabs>
+                    </div>
+                </div>
+            </el-col>
+        </el-row>
+        <div class="rights">技术支持:苏州国科鸿宇智能科技有限公司</div>
+    </div>
 </template>
 
 <script lang="ts">
@@ -38,133 +38,133 @@
 import loginIconTwo from '/@/assets/login-icon-two.svg';
 import { NextLoading } from '/@/utils/loading';
 import AccountLogin from '/@/views/loginPage/component/accountLogin.vue';
-import { loginBg } from '../../../static/loginPage.js/login.js'
-import { loginApp } from '../../../static/loginPage.js/loginApp.js'
+import { loginBg } from '../../../static/loginPage.js/login.js';
+import { loginApp } from '../../../static/loginPage.js/loginApp.js';
 
 // 定义接口来定义对象的类型
 interface LoginState {
-	tabsActiveName: string;
-	isScan: boolean;
+    tabsActiveName: string;
+    isScan: boolean;
 }
 
 export default defineComponent({
-	name: 'loginIndex',
-	components: { AccountLogin },
-	setup() {
-		const storesThemeConfig = useThemeConfig();
-		const { themeConfig } = storeToRefs(storesThemeConfig);
-		const state = reactive<LoginState>({
-			tabsActiveName: 'account',
-			isScan: false,
-		});
-		// 获取布局配置信息
-		const getThemeConfig = computed(() => {
-			return themeConfig.value;
-		});
-		// 页面加载时
-		onMounted(() => {
-			NextLoading.done();
-			loginBg();
-			loginApp()
-		});
-		return {
-			logoMini,
-			loginIconTwo,
-			getThemeConfig,
-			...toRefs(state),
-		};
-	},
+    name: 'loginIndex',
+    components: { AccountLogin },
+    setup() {
+        const storesThemeConfig = useThemeConfig();
+        const { themeConfig } = storeToRefs(storesThemeConfig);
+        const state = reactive<LoginState>({
+            tabsActiveName: 'account',
+            isScan: false
+        });
+        // 获取布局配置信息
+        const getThemeConfig = computed(() => {
+            return themeConfig.value;
+        });
+        // 页面加载时
+        onMounted(() => {
+            NextLoading.done();
+            loginBg();
+            loginApp();
+        });
+        return {
+            logoMini,
+            loginIconTwo,
+            getThemeConfig,
+            ...toRefs(state)
+        };
+    }
 });
 </script>
 
 <style scoped lang="scss">
 .login-container {
-	width: 100%;
-	height: 100%;
-	position: relative;
-	z-index: 999;
-	display: flex;
-	flex-direction: column;
-	align-items: center;
-	justify-content: center;
-	background: url("../../assets/loginPage/login-bg.jpg") no-repeat center;
-	/*background-image: radial-gradient(at center, #0075c3, #000b61);*/
+    width: 100%;
+    height: 100%;
+    position: relative;
+    z-index: 999;
+    display: flex;
+    flex-direction: column;
+    align-items: center;
+    justify-content: center;
+    background: url('../../assets/loginPage/login-bg.jpg') no-repeat center;
+    /*background-image: radial-gradient(at center, #0075c3, #000b61);*/
 
-	canvas {
-		display: block;
-		vertical-align: bottom;
-	}
+    canvas {
+        display: block;
+        vertical-align: bottom;
+    }
 
-	#particles-js {
-		width: 100%;
-		height: 100%;
-		background-size: cover;
-		background-position: 50% 50%;
-		background-repeat: no-repeat;
-		position: absolute;
-		top: 0;
-		left: 0;
-	}
-	.rights{
-		font-size: 14px;
-		color: #fff;
-	}
-	.loginContent{
-		width: 100%;
-		padding: 0 200px;
-		display: flex;
-		flex-wrap: wrap;
-		align-items: center;
-		justify-content: space-around;
-		margin-bottom: 40px;
+    #particles-js {
+        width: 100%;
+        height: 100%;
+        background-size: cover;
+        background-position: 50% 50%;
+        background-repeat: no-repeat;
+        position: absolute;
+        top: 0;
+        left: 0;
+    }
+    .rights {
+        font-size: 16px;
+        color: #fff;
+    }
+    .loginContent {
+        width: 100%;
+        padding: 0 200px;
+        display: flex;
+        flex-wrap: wrap;
+        align-items: center;
+        justify-content: space-around;
+        margin-bottom: 60px;
 
-		.loginContL{
-			width: 100%;
-			font-size: 60px;
-			font-weight: bold;
-			margin-bottom: 100px;
+        .loginContL {
+            width: 100%;
+            font-size: 60px;
+            font-weight: bold;
+            margin-bottom: 100px;
 
-			.apTitleT{
-				color: #fff;
-				margin-bottom: 20px;
-				letter-spacing: 4px;
-			}
-			.apTitleB{
-				color: #01d0ff;
-				margin-bottom: 40px;
-				letter-spacing: 4px;
-			}
-			&>span{
-				display: block;
-				width: 120px;
-				height: 8px;
-				background: #01d0ff;
-			}
-		}
-		.loginPanel{
-			width: 65%;
-			padding: 85px 70px;
-			background: #fff;
-			min-width: 450px;
-			border-radius: 15px;
-			box-shadow: 0 8px 40px rgba(0,0,0,.15);
+            .apTitleT {
+                color: #fff;
+                margin-bottom: 20px;
+                letter-spacing: 4px;
+            }
+            .apTitleB {
+                color: #01d0ff;
+                margin-bottom: 40px;
+                letter-spacing: 4px;
+            }
+            & > span {
+                display: block;
+                width: 120px;
+                height: 8px;
+                background: #01d0ff;
+            }
+        }
+        .loginPanel {
+            width: 65%;
+            padding: 85px 70px;
+            background: #fff;
+            min-width: 450px;
+            border-radius: 15px;
+            box-shadow: 0 8px 40px rgba(0, 0, 0, 0.15);
 
-			.welc{
-				font-size: 36px;
-				font-family: "PingFang SC";
-				font-weight: normal;
-				color: #999999;
-				letter-spacing: 2px;
-				margin-bottom: 15px;
-			}
-			.welcc{
-				font-size: 32px;
-				font-family: "PingFang SC";
-				font-weight: lighter;
-				color: #333;
-				letter-spacing: 2px;
-			}
-		}
-	}
+            .welc {
+                font-size: 36px;
+                font-family: 'PingFang SC';
+                font-weight: normal;
+                color: #999999;
+                letter-spacing: 2px;
+                margin-bottom: 15px;
+            }
+            .welcc {
+                font-size: 32px;
+                font-family: 'PingFang SC';
+                font-weight: lighter;
+                color: #333;
+                letter-spacing: 2px;
+            }
+        }
+    }
 }
 </style>
diff --git a/src/views/safeKnowledgeSys/index.vue b/src/views/safeKnowledge/index.vue
similarity index 100%
rename from src/views/safeKnowledgeSys/index.vue
rename to src/views/safeKnowledge/index.vue
diff --git a/src/views/safeKnowledgeSys/bmgz/index.vue b/src/views/safeKnowledgeSys/bmgz/index.vue
deleted file mode 100644
index f74c241..0000000
--- a/src/views/safeKnowledgeSys/bmgz/index.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-<template>
-  <div class="home-container">
-    <iframe src="http://39.104.85.193/bmgz"></iframe>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'safeKnowledgeSys',
-  props: {
-
-  },
-  data(){
-    return{
-
-    }
-  },
-  created() {
-
-  },
-  methods:{
-
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped lang="scss">
-  .home-container{
-    height: calc(100vh - 114px);
-    box-sizing: border-box;
-    overflow: hidden;
-
-    iframe{
-      width: 100%;
-      height: 100%;
-      border: none;
-    }
-  }
-</style>
diff --git a/src/views/safeKnowledgeSys/df/index.vue b/src/views/safeKnowledgeSys/df/index.vue
deleted file mode 100644
index 38e4824..0000000
--- a/src/views/safeKnowledgeSys/df/index.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-<template>
-  <div class="home-container">
-    <iframe src="http://39.104.85.193/df"></iframe>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'safeKnowledgeSys',
-  props: {
-
-  },
-  data(){
-    return{
-
-    }
-  },
-  created() {
-
-  },
-  methods:{
-
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped lang="scss">
-  .home-container{
-    height: calc(100vh - 114px);
-    box-sizing: border-box;
-    overflow: hidden;
-
-    iframe{
-      width: 100%;
-      height: 100%;
-      border: none;
-    }
-  }
-</style>
diff --git a/src/views/safeKnowledgeSys/inner/index.vue b/src/views/safeKnowledgeSys/inner/index.vue
deleted file mode 100644
index 97b9588..0000000
--- a/src/views/safeKnowledgeSys/inner/index.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-<template>
-  <div class="home-container">
-    <iframe src="http://39.104.85.193/inner"></iframe>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'safeKnowledgeSys',
-  props: {
-
-  },
-  data(){
-    return{
-
-    }
-  },
-  created() {
-
-  },
-  methods:{
-
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped lang="scss">
-  .home-container{
-    height: calc(100vh - 114px);
-    box-sizing: border-box;
-    overflow: hidden;
-
-    iframe{
-      width: 100%;
-      height: 100%;
-      border: none;
-    }
-  }
-</style>
diff --git a/src/views/safeKnowledgeSys/internationalRules/index.vue b/src/views/safeKnowledgeSys/internationalRules/index.vue
deleted file mode 100644
index 2c88f1e..0000000
--- a/src/views/safeKnowledgeSys/internationalRules/index.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-<template>
-  <div class="home-container">
-    <iframe src="http://39.104.85.193/law"></iframe>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'safeKnowledgeSys',
-  props: {
-
-  },
-  data(){
-    return{
-
-    }
-  },
-  created() {
-
-  },
-  methods:{
-
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped lang="scss">
-  .home-container{
-    height: calc(100vh - 114px);
-    box-sizing: border-box;
-    overflow: hidden;
-
-    iframe{
-      width: 100%;
-      height: 100%;
-      border: none;
-    }
-  }
-</style>
diff --git a/src/views/safeKnowledgeSys/law/index.vue b/src/views/safeKnowledgeSys/law/index.vue
deleted file mode 100644
index 8f4fa8f..0000000
--- a/src/views/safeKnowledgeSys/law/index.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-<template>
-  <div class="home-container">
-    <iframe src="http://39.104.85.193/gong"></iframe>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'safeKnowledgeSys',
-  props: {
-
-  },
-  data(){
-    return{
-
-    }
-  },
-  created() {
-
-  },
-  methods:{
-
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped lang="scss">
-  .home-container{
-    height: calc(100vh - 114px);
-    box-sizing: border-box;
-    overflow: hidden;
-
-    iframe{
-      width: 100%;
-      height: 100%;
-      border: none;
-    }
-  }
-</style>
diff --git a/src/views/safeKnowledgeSys/sfjs/index.vue b/src/views/safeKnowledgeSys/sfjs/index.vue
deleted file mode 100644
index 3682dcc..0000000
--- a/src/views/safeKnowledgeSys/sfjs/index.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-<template>
-  <div class="home-container">
-    <iframe src="http://39.104.85.193/laws"></iframe>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'safeKnowledgeSys',
-  props: {
-
-  },
-  data(){
-    return{
-
-    }
-  },
-  created() {
-
-  },
-  methods:{
-
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped lang="scss">
-  .home-container{
-    height: calc(100vh - 114px);
-    box-sizing: border-box;
-    overflow: hidden;
-
-    iframe{
-      width: 100%;
-      height: 100%;
-      border: none;
-    }
-  }
-</style>
diff --git a/src/views/safeKnowledgeSys/xzfg/index.vue b/src/views/safeKnowledgeSys/xzfg/index.vue
deleted file mode 100644
index a50d44c..0000000
--- a/src/views/safeKnowledgeSys/xzfg/index.vue
+++ /dev/null
@@ -1,39 +0,0 @@
-<template>
-  <div class="home-container">
-    <iframe src="http://39.104.85.193/xzfg"></iframe>
-  </div>
-</template>
-
-<script>
-export default {
-  name: 'safeKnowledgeSys',
-  props: {
-
-  },
-  data(){
-    return{
-
-    }
-  },
-  created() {
-
-  },
-  methods:{
-
-  }
-}
-</script>
-
-<!-- Add "scoped" attribute to limit CSS to this component only -->
-<style scoped lang="scss">
-  .home-container{
-    height: calc(100vh - 114px);
-    box-sizing: border-box;
-    overflow: hidden;
-
-    iframe{
-      width: 100%;
-      height: 100%;
-    }
-  }
-</style>
diff --git a/src/views/specialWorkSystem/approveProcessManage/examineTemplate/index.vue b/src/views/specialWorkSystem/approveProcessManage/examineTemplate/index.vue
new file mode 100644
index 0000000..1591de7
--- /dev/null
+++ b/src/views/specialWorkSystem/approveProcessManage/examineTemplate/index.vue
@@ -0,0 +1,367 @@
+<template>
+    <div class="home-container">
+        <div style="height: 100%">
+            <el-row class="homeCard">
+                <el-col :span="8">
+                    <div class="grid-content topInfo">
+                        <el-input v-model="searchWord" placeholder="流程名称"></el-input>
+                        <el-button type="primary">查询</el-button>
+                        <el-button plain>重置</el-button>
+                    </div>
+                </el-col>
+            </el-row>
+            <div class="homeCard">
+                <div class="main-card">
+                    <el-row class="cardTop">
+                        <el-col :span="12" class="mainCardBtn">
+                            <el-button type="primary" :icon="Plus" size="default" @click="dialogAddRecord = true" v-throttle>新建</el-button>
+                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>
+                            <el-button type="success" size="default" plain>设置分类</el-button>
+                        </el-col>
+                        <el-button type="primary" :icon="Refresh" size="default" />
+                    </el-row>
+                    <el-table ref="multipleTableRef" :data="tableData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }" @selection-change="handleSelectionChange">
+                        <el-table-column type="selection" width="55" />
+                        <el-table-column property="name" label="流程名称" width="200" />
+                        <el-table-column property="flowKey" label="流程key" width="180" />
+                        <el-table-column property="sort" label="分类" />
+                        <el-table-column label="版本" width="180">
+                            <template #default="scope">
+                                <el-tag>{{ scope.row.version }}</el-tag>
+                            </template>
+                        </el-table-column>
+                        <el-table-column label="流程状态" width="180">
+                            <template #default="scope">
+                                <el-tag type="success">{{ scope.row.status }}</el-tag>
+                            </template>
+                        </el-table-column>
+                        <el-table-column property="updateTime" label="更新时间" />
+                        <el-table-column fixed="right" label="操作" align="center" width="250">
+                            <template #default="scope">
+                                <el-button link type="primary" :icon="Edit" size="small" @click="editRecord(scope.$index, scope.row)" v-throttle>修改</el-button>
+                                <el-button link type="success" size="small">发布</el-button>
+                                <el-button link type="danger" :icon="Delete" size="small" @click="deleteRecord(scope.$index)">删除</el-button>
+                            </template>
+                        </el-table-column>
+                    </el-table>
+                    <div class="pageBtn">
+                        <el-pagination v-model:currentPage="currentPage" v-model:page-size="pageSize" :page-sizes="[10, 15]" small="false" background layout="total, sizes, prev, pager, next, jumper" :total="100" @size-change="handleSizeChange" @current-change="handleCurrentChange" />
+                    </div>
+                </div>
+            </div>
+        </div>
+        <el-dialog v-model="dialogAddRecord" title="审批流程编辑" @close="closeAdd">
+            <el-form :model="addRecord" label-width="120px" ref="addRef" :rules="addRules">
+                <el-form-item label="流程名称" prop="name">
+                    <el-input v-model="addRecord.name" placeholder="流程名称" />
+                </el-form-item>
+                <el-form-item label="流程key" prop="flowKey">
+                    <el-input v-model="addRecord.flowKey" placeholder="流程key"> </el-input>
+                </el-form-item>
+                <el-form-item label="分类" prop="sort">
+                    <el-select v-model="addRecord.sort" placeholder="请选择">
+                        <el-option label="临时用电" value="临时用电" />
+                        <el-option label="设备检修" value="设备检修" />
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="版本" prop="version">
+                    <el-input v-model="addRecord.version" placeholder="请选择工种"> </el-input>
+                </el-form-item>
+                <el-form-item label="状态" prop="status">
+                    <el-select v-model="addRecord.status" placeholder="请选择">
+                        <el-option label="已发布" value="已发布" />
+                        <el-option label="未发布" value="未发布" />
+                    </el-select>
+                </el-form-item>
+                <el-form-item>
+                    <el-button type="warning" @click="dialogAddRecord = false" size="default" plain>取消</el-button>
+                    <el-button type="primary" @click="confirmAddRecord(addRef)" size="default" v-throttle>确认</el-button>
+                </el-form-item>
+            </el-form>
+        </el-dialog>
+        <el-dialog v-model="deleteDialog" title="提示" width="30%" center @close="indexClear">
+            <span>您确定要删除该条记录吗?</span>
+            <template #footer>
+                <span class="dialog-footer">
+                    <el-button @click="deleteDialog = false" size="default">取消</el-button>
+                    <el-button type="primary" @click="conFirmDelete" size="default" v-throttle>确认</el-button>
+                </span>
+            </template>
+        </el-dialog>
+    </div>
+</template>
+
+<script lang="ts" setup>
+import { toRefs, reactive, defineComponent, ref } from 'vue';
+import { storeToRefs } from 'pinia';
+import { initBackEndControlRoutes } from '/@/router/backEnd';
+import { useUserInfo } from '/@/stores/userInfo';
+import { Session } from '/@/utils/storage';
+import { Plus, Delete, Refresh, Edit } from '@element-plus/icons-vue';
+import { ElTable, FormInstance, FormRules } from 'element-plus';
+let global: any = {
+    homeChartOne: null,
+    homeChartTwo: null,
+    homeCharThree: null,
+    dispose: [null, '', undefined]
+};
+
+interface stateType {
+    homeOne: Array<type>;
+}
+interface type {}
+interface User {
+    date: string;
+    name: string;
+    address: string;
+}
+const userInfo = useUserInfo();
+const { userInfos } = storeToRefs(userInfo);
+const state = reactive<stateType>({});
+const multipleTableRef = ref<InstanceType<typeof ElTable>>();
+const multipleSelection = ref<User[]>([]);
+const handleSelectionChange = (val: User[]) => {
+    multipleSelection.value = val;
+};
+const currentPage = ref(1);
+const pageSize = ref(10);
+const chosenIndex = ref(-1);
+const handleSizeChange = (val: number) => {
+    console.log(`${val} items per page`);
+};
+const handleCurrentChange = (val: number) => {
+    console.log(`current page: ${val}`);
+};
+const tableData = reactive([
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    },
+    {
+        name: '风险点复评预警',
+        flowKey: 'process111',
+        sort: '未设置',
+        version: 'V:4',
+        status: '已发布',
+        updateTime: '2021-04-22 15:21:31'
+    }
+]);
+
+// 时间格式化
+const timeForm = {
+    hour12: false,
+    year: 'numeric',
+    month: '2-digit',
+    day: '2-digit',
+    hour: '2-digit',
+    minute: '2-digit',
+    second: '2-digit'
+};
+const addRef = ref<FormInstance>();
+const addRules = reactive<FormRules>({
+    name: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
+    flowKey: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
+    sort: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
+    version: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
+    status: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
+    updateTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }]
+});
+const dialogDetails = ref(false);
+const dialogAddRecord = ref(false);
+const deleteDialog = ref(false);
+const addRecord = ref({});
+const details = ref({});
+
+// 查看记录
+const viewRecord = (row) => {
+    details.value = JSON.parse(JSON.stringify(row));
+    dialogDetails.value = true;
+};
+
+// 删除记录
+const deleteRecord = (index) => {
+    chosenIndex.value = index;
+    deleteDialog.value = true;
+};
+const conFirmDelete = () => {
+    tableData.splice(chosenIndex.value, 1);
+    deleteDialog.value = false;
+};
+
+// 修改记录
+const editRecord = (index, row) => {
+    dialogAddRecord.value = true;
+    chosenIndex.value = index;
+    addRecord.value = JSON.parse(JSON.stringify(row));
+};
+
+// 新增修改记录确认
+const confirmAddRecord = async (formEl: FormInstance | undefined) => {
+    if (!formEl) return;
+    await formEl.validate((valid, fields) => {
+        if (valid) {
+            if (chosenIndex.value == -1) {
+                addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g, '-');
+                tableData.unshift(addRecord.value);
+            } else {
+                addRecord.value.updateTime = new Date().toLocaleString('zh', timeForm).replace(/\//g, '-');
+                tableData[chosenIndex.value] = addRecord.value;
+            }
+            dialogAddRecord.value = false;
+        } else {
+            console.log('error submit!', fields);
+        }
+    });
+};
+const closeAdd = () => {
+    addRecord.value = {};
+    chosenIndex.value = -1;
+};
+const indexClear = () => {
+    chosenIndex.value = -1;
+};
+// 折线图
+const renderMenu = async (value: string) => {
+    Session.set('projectId', value);
+    userInfos.value.projectId = value;
+    await initBackEndControlRoutes();
+};
+</script>
+
+<style scoped lang="scss">
+$homeNavLengh: 8;
+.home-container {
+    height: calc(100vh - 114px);
+    box-sizing: border-box;
+    overflow: hidden;
+    .homeCard {
+        width: 100%;
+        padding: 20px;
+        box-sizing: border-box;
+        background: #fff;
+        border-radius: 4px;
+
+        .main-card {
+            width: 100%;
+            height: 100%;
+            .cardTop {
+                display: flex;
+                align-items: center;
+                justify-content: space-between;
+                margin-bottom: 20px;
+                .mainCardBtn {
+                    margin: 0;
+                }
+            }
+            .pageBtn {
+                height: 60px;
+                display: flex;
+                align-items: center;
+                justify-content: right;
+
+                .demo-pagination-block + .demo-pagination-block {
+                    margin-top: 10px;
+                }
+                .demo-pagination-block .demonstration {
+                    margin-bottom: 16px;
+                }
+            }
+        }
+        &:last-of-type {
+            height: calc(100% - 100px);
+        }
+    }
+    .el-row {
+        display: flex;
+        align-items: center;
+        margin-bottom: 20px;
+        &:last-child {
+            margin-bottom: 0;
+        }
+        .grid-content {
+            align-items: center;
+            min-height: 36px;
+        }
+
+        .topInfo {
+            display: flex;
+            align-items: center;
+            font-size: 16px;
+            font-weight: bold;
+
+            & > div {
+                white-space: nowrap;
+                margin-right: 20px;
+            }
+        }
+    }
+}
+</style>
diff --git a/src/views/specialWorkSystem/approveProcessManage/templateSetting/index.vue b/src/views/specialWorkSystem/approveProcessManage/templateSetting/index.vue
new file mode 100644
index 0000000..a8b85a8
--- /dev/null
+++ b/src/views/specialWorkSystem/approveProcessManage/templateSetting/index.vue
@@ -0,0 +1,293 @@
+<template>
+    <div class="home-container">
+        <el-scrollbar height="100%">
+            <div class="homeCard">
+                <div>
+                    <div v-for="(item, index) in approveSteps" class="stepItem">
+                        <div class="stepNum">{{ index + 1 }}</div>
+                        <div class="stepCard">
+                            <el-card class="box-card" shadow="hover">
+                                <template #header>
+                                    <div class="card-header">
+                                        <div>
+                                            步骤<span>{{ index + 1 }}</span>
+                                        </div>
+                                        <div>
+                                            <el-button type="primary" size="default" @click="addFlow(index)">新增</el-button>
+                                            <el-button type="danger" size="default" @click="deleteFlow(index)">删除</el-button>
+                                        </div>
+                                    </div>
+                                </template>
+                                <div class="text item">
+                                    审批部门:<span>{{ item.department }}</span>
+                                </div>
+                                <div class="text item">
+                                    审批人员:<span>{{ item.manager }}</span>
+                                </div>
+                                <div class="text item">
+                                    其他参数:<span>{{ item.others }}</span>
+                                </div>
+                            </el-card>
+                        </div>
+                    </div>
+                </div>
+                <el-row>
+                    <el-button type="primary" @click="confirmEdit" size="large">确认</el-button>
+                    <el-button @click="cancelEdit" size="large">取消</el-button>
+                </el-row>
+            </div>
+            <el-drawer v-model="showAdd" direction="rtl" @close="colseDrawer">
+                <template #title>
+                    <h4>新增审批流</h4>
+                </template>
+                <template #default>
+                    <el-form :model="addProgress" label-width="120px" ref="ruleFormRef" :rules="ProgressRules">
+                        <el-form-item label="审批部门" prop="department">
+                            <el-select v-model="addProgress.department" placeholder="请选择审批部门">
+                                <el-option label="动土" value="动土" />
+                                <el-option label="动火" value="动火" />
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="审批人员" prop="manager">
+                            <el-select v-model="addProgress.manager" placeholder="请选择审批人员">
+                                <el-option label="人员1" value="人员1" />
+                                <el-option label="人员2" value="人员2" />
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="其他参数" prop="others">
+                            <el-input v-model="addProgress.others" />
+                        </el-form-item>
+                    </el-form>
+                </template>
+                <template #footer>
+                    <div style="flex: auto">
+                        <el-button type="primary" @click="confirmClick(ruleFormRef)" size="default">确认</el-button>
+                        <el-button @click="cancelClick" size="default">取消</el-button>
+                    </div>
+                </template>
+            </el-drawer>
+            <el-dialog v-model="deleteDialog" title="提示" width="30%" center>
+                <span>您确定要删除该审批流吗?</span>
+                <template #footer>
+                    <span class="dialog-footer">
+                        <el-button @click="deleteDialog = false" size="default">取消</el-button>
+                        <el-button type="primary" @click="conFirmDelete" size="default">确认</el-button>
+                    </span>
+                </template>
+            </el-dialog>
+        </el-scrollbar>
+    </div>
+</template>
+
+<script lang="ts">
+import { toRefs, reactive, defineComponent, ref } from 'vue';
+import { storeToRefs } from 'pinia';
+import { initBackEndControlRoutes } from '/@/router/backEnd';
+import { useUserInfo } from '/@/stores/userInfo';
+import { Session } from '/@/utils/storage';
+import { ElMessage } from 'element-plus';
+import type { FormInstance, FormRules } from 'element-plus';
+let global: any = {
+    homeChartOne: null,
+    homeChartTwo: null,
+    homeCharThree: null,
+    dispose: [null, '', undefined]
+};
+
+interface stateType {
+    homeOne: Array<type>;
+}
+interface type {}
+export default defineComponent({
+    name: 'approveProcessSetting',
+    setup() {
+        const userInfo = useUserInfo();
+        const { userInfos } = storeToRefs(userInfo);
+        const approveSteps = [
+            {
+                department: '动土',
+                manager: '',
+                others: ''
+            },
+            {
+                department: '动土',
+                manager: '',
+                others: ''
+            },
+            {
+                department: '动土',
+                manager: '',
+                others: ''
+            }
+        ];
+        const showAdd = ref(false);
+        const deleteDialog = ref(false);
+        const chosenIndex = ref('');
+        const addProgress = ref({
+            department: '',
+            manager: '',
+            others: ''
+        });
+        const ruleFormRef = ref<FormInstance>();
+        const ProgressRules = reactive<FormRules>({
+            department: [{ required: true, message: '该选项不能为空', trigger: 'blur' }],
+            manager: [{ required: true, message: '该选项不能为空', trigger: 'blur' }]
+        });
+
+        // 确认新增
+        const confirmClick = async (formEl: FormInstance | undefined) => {
+            if (!formEl) return;
+            await formEl.validate((valid, fields) => {
+                if (valid) {
+                    approveSteps.splice(chosenIndex.value + 1, 0, addProgress.value);
+                    showAdd.value = false;
+                } else {
+                    console.log('error submit!', fields);
+                }
+            });
+        };
+        const cancelClick = () => {
+            showAdd.value = false;
+        };
+
+        // 新增
+        const addFlow = (index) => {
+            showAdd.value = true;
+            chosenIndex.value = index;
+        };
+
+        // 删除记录
+        const deleteFlow = (index) => {
+            if (approveSteps.length > 1) {
+                deleteDialog.value = true;
+                chosenIndex.value = index;
+            } else {
+                ElMessage({
+                    message: '抱歉最后一条无法删除',
+                    type: 'warning'
+                });
+            }
+        };
+        const conFirmDelete = () => {
+            const i = chosenIndex.value;
+            approveSteps.splice(i, 1);
+            deleteDialog.value = false;
+        };
+        const colseDrawer = () => {
+            addProgress.value = {
+                department: '',
+                manager: '',
+                others: ''
+            };
+        };
+        const cancelEdit = () => {};
+        const confirmEdit = () => {};
+        const state = reactive<stateType>({});
+        // 折线图
+        const renderMenu = async (value: string) => {
+            Session.set('projectId', value);
+            userInfos.value.projectId = value;
+            await initBackEndControlRoutes();
+        };
+        return {
+            renderMenu,
+            showAdd,
+            approveSteps,
+            addProgress,
+            ruleFormRef,
+            ProgressRules,
+            chosenIndex,
+            deleteDialog,
+            colseDrawer,
+            conFirmDelete,
+            cancelClick,
+            deleteFlow,
+            addFlow,
+            confirmClick,
+            cancelEdit,
+            confirmEdit,
+            ...toRefs(state)
+        };
+    }
+});
+</script>
+
+<style scoped lang="scss">
+$homeNavLengh: 8;
+.home-container {
+    height: 100%;
+    overflow: hidden;
+    padding: 20px;
+    .homeCard {
+        width: 100%;
+        padding: 20px;
+        background: #fff;
+        border-radius: 4px;
+    }
+    .stepItem {
+        display: flex;
+        align-items: flex-start;
+        margin-bottom: 30px;
+        margin-left: 30px;
+        padding-bottom: 30px;
+        border-left: 2px solid #ccc;
+        &:first-of-type {
+            margin-top: 30px;
+        }
+        &:last-of-type {
+            margin-bottom: 0;
+            border-left: none;
+        }
+        .stepNum {
+            width: 30px;
+            height: 30px;
+            border-radius: 15px;
+            box-sizing: border-box;
+            color: #333;
+            border: 2px solid #999;
+            line-height: 26px;
+            text-align: center;
+            margin-right: 40px;
+            margin-left: -16px;
+            margin-top: -30px;
+        }
+        .stepCard {
+            margin-top: -30px;
+
+            .box-card {
+                width: 480px;
+
+                .card-header {
+                    display: flex;
+                    justify-content: space-between;
+                    align-items: center;
+
+                    span {
+                        font-weight: bold;
+                        margin-left: 10px;
+                    }
+                }
+
+                .text {
+                    font-size: 14px;
+                }
+
+                .item {
+                    margin-bottom: 18px;
+                }
+            }
+        }
+        &:hover .card-header {
+            color: #0098f5;
+        }
+        &:hover .stepNum {
+            border: 2px solid #0098f5;
+            color: #0098f5;
+        }
+    }
+
+    .el-form {
+        padding: 40px 20px;
+    }
+}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/myJobApply/index.vue b/src/views/specialWorkSystem/workApplyManage/myJobApply/index.vue
new file mode 100644
index 0000000..44f571a
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/myJobApply/index.vue
@@ -0,0 +1,362 @@
+<template>
+	<div class="home-container">
+		<el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">
+			<el-tab-pane label="申请中" name="Applying">
+				<div style="height: 100%">
+					<el-row class="homeCard">
+							<el-col :span="8">
+								<div class="grid-content topInfo">
+									<el-input v-model="searchWord" placeholder="作业证名称"></el-input>
+									<el-button type="primary">查询</el-button>
+									<el-button plain>重置</el-button>
+								</div>
+							</el-col>
+					</el-row>
+					<div class="homeCard">
+						<div class="main-card">
+							<el-row class="cardTop">
+								<el-col :span="12" class="mainCardBtn">
+									<el-button type="primary" :icon="Plus" size="default">申请</el-button>
+<!--									<el-button type="danger" :icon="Delete" size="default">删除</el-button>-->
+<!--									<el-button type="success" size="default">设置分类</el-button>-->
+								</el-col>
+								<el-button type="primary" :icon="Refresh" size="default"/>
+							</el-row>
+							<el-table
+									ref="multipleTableRef"
+									:data="applyData"
+									style="width: 100%"
+									height="calc(100% - 100px)"
+									:header-cell-style="{background: '#fafafa'}"
+									@selection-change="handleSelectionChange"
+							>
+								<el-table-column type="selection" width="55" />
+								<el-table-column type="index" label="作业证编号" width="200"/>
+								<el-table-column property="level" label="作业证等级" width="180" sortable />
+								<el-table-column property="applyDate" label="申请日期" sortable />
+								<el-table-column property="name" label="申请人" width="180"/>
+								<el-table-column property="department" label="申请部门" width="180" />
+								<el-table-column label="申请状态" width="180">
+									<template #default="scope">
+										<el-tag type="success">{{ scope.row.status }}</el-tag>
+									</template>
+								</el-table-column>
+								<el-table-column fixed="right" label="操作" align="center" width="250">
+									<template #default="scope">
+										<el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button>
+										<el-button link type="danger" size="small" :icon="Delete" @click="deleteRecord(scope.$index)">删除</el-button>
+									</template>
+								</el-table-column>
+							</el-table>
+							<div class="pageBtn">
+								<el-pagination
+										v-model:currentPage="currentPage"
+										v-model:page-size="pageSize"
+										:page-sizes="[10, 15]"
+										small=false
+										background
+										layout="total, sizes, prev, pager, next, jumper"
+										:total="100"
+										@size-change="handleSizeChange"
+										@current-change="handleCurrentChange"
+								/>
+							</div>
+						</div>
+					</div>
+				</div>
+				<el-dialog v-model="dialogDetails" title="作业票查看">
+					<el-form :model="details" label-width="120px">
+						<el-form-item label="作业证等级">
+							<el-input
+									v-model="details.level"
+									readonly
+							/>
+						</el-form-item>
+						<el-form-item label="申请日期">
+							<el-input
+									v-model="details.applyDate"
+									readonly
+							/>
+						</el-form-item>
+						<el-form-item label="申请人">
+							<el-input
+									v-model="details.name"
+									readonly
+							/>
+						</el-form-item>
+						<el-form-item label="申请部门">
+							<el-input
+									v-model="details.department"
+									readonly
+							/>
+						</el-form-item>
+						<el-form-item label="状态">
+							<el-input
+									v-model="details.status"
+									readonly
+							/>
+						</el-form-item>
+						<el-form-item>
+							<el-button type="primary" @click="dialogDetails = false" size="default">确认</el-button>
+						</el-form-item>
+					</el-form>
+				</el-dialog>
+				<el-dialog v-model="deleteDialog" title="提示" width="30%" center @close="indexClear">
+					<span>您确定要删除该条记录吗?</span>
+					<template #footer>
+						  <span class="dialog-footer">
+							  <el-button @click="deleteDialog = false" size="default">取消</el-button>
+							<el-button type="primary" @click="conFirmDelete" size="default" v-throttle>确认</el-button>
+						  </span>
+					</template>
+				</el-dialog>
+			</el-tab-pane>
+			<el-tab-pane label="已通过" name="passed">
+				<div style="height: 100%">
+					<el-row class="homeCard">
+						<el-col :span="8">
+							<div class="grid-content topInfo">
+								<el-input v-model="searchWord" placeholder="作业证名称"></el-input>
+								<el-button type="primary">查询</el-button>
+								<el-button plain>重置</el-button>
+							</div>
+						</el-col>
+					</el-row>
+					<div class="homeCard">
+						<div class="main-card">
+<!--							<el-row class="cardTop">-->
+<!--								<el-col :span="12" class="mainCardBtn">-->
+<!--									<el-button type="primary" :icon="Plus" size="default">申请</el-button>-->
+<!--									<el-button type="danger" :icon="Delete" size="default">删除</el-button>-->
+<!--									<el-button type="success" size="default">设置分类</el-button>-->
+<!--								</el-col>-->
+<!--								<el-button type="primary" size="default" :icon="Refresh" />-->
+<!--							</el-row>-->
+							<el-table
+									ref="multipleTableRef"
+									:data="passedData"
+									style="width: 100%"
+									height="calc(100% - 48px)"
+									:header-cell-style="{background: '#fafafa'}"
+									@selection-change="handleSelectionChange"
+							>
+								<el-table-column type="selection" width="55" />
+								<el-table-column type="index" label="编号" width="200"/>
+								<el-table-column property="level" label="作业证等级" width="180" sortable />
+								<el-table-column property="applyDate" label="申请日期" sortable />
+								<el-table-column property="name" label="申请人" width="180"/>
+								<el-table-column property="department" label="申请部门" width="180" />
+								<el-table-column label="申请状态" width="180">
+									<template #default="scope">
+										<el-tag type="success">{{ scope.row.status }}</el-tag>
+									</template>
+								</el-table-column>
+							</el-table>
+							<div class="pageBtn">
+								<el-pagination
+										v-model:currentPage="currentPage"
+										v-model:page-size="pageSize"
+										:page-sizes="[10, 15]"
+										small=false
+										background
+										layout="total, sizes, prev, pager, next, jumper"
+										:total="100"
+										@size-change="handleSizeChange"
+										@current-change="handleCurrentChange"
+								/>
+							</div>
+						</div>
+					</div>
+				</div>
+			</el-tab-pane>
+		</el-tabs>
+	</div>
+</template>
+
+<script lang="ts" setup>
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Plus, Delete, Refresh } from '@element-plus/icons-vue'
+	import { ElTable } from 'element-plus'
+	import type { TabsPaneContext } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	interface User {
+		num: string
+		level: string
+		applyDate: string
+		name: string
+		department: string
+		status: string
+	}
+	const userInfo = useUserInfo()
+	const { userInfos } = storeToRefs(userInfo);
+	const activeName = ref('Applying')
+	const handleClick = (tab: TabsPaneContext, event: Event) => {
+		console.log(tab, event)
+	}
+	const multipleTableRef = ref<InstanceType<typeof ElTable>>()
+	const multipleSelection = ref<User[]>([])
+	const handleSelectionChange = (val: User[]) => {
+		multipleSelection.value = val
+	}
+	const currentPage = ref(1)
+	const pageSize = ref(10)
+	const handleSizeChange = (val: number) => {
+		console.log(`${val} items per page`)
+	}
+	const handleCurrentChange = (val: number) => {
+		console.log(`current page: ${val}`)
+	}
+	const applyData = reactive([
+		{
+			level: '等级一',
+			applyDate: '2022-07-27 14:19:33',
+			name: '张三',
+			department: '部门一',
+			status: '审核中'
+
+		},
+		{
+			level: '等级一',
+			applyDate: '2022-07-27 14:19:33',
+			name: '张三',
+			department: '部门一',
+			status: '审核中'
+
+		},
+		{
+			level: '等级一',
+			applyDate: '2022-07-27 14:19:33',
+			name: '张三',
+			department: '部门一',
+			status: '审核中'
+
+		}
+	])
+	const chosenIndex = ref(-1)
+	const passedData: User[] = []
+	const dialogDetails = ref(false)
+	const details = ref({})
+	const deleteDialog = ref(false)
+
+	// 查看记录
+	const viewRecord = (row) =>{
+		details.value = JSON.parse(JSON.stringify(row))
+		dialogDetails.value = true
+	}
+
+	// 删除记录
+	const deleteRecord = (index) =>{
+		chosenIndex.value = index
+		deleteDialog.value = true
+	}
+
+	// 弹窗确认删除记录
+	const conFirmDelete = ()=> {
+		applyData.splice(chosenIndex.value,1)
+		deleteDialog.value = false
+	}
+	// 折线图
+	const renderMenu = async (value: string) => {
+		Session.set('projectId',value)
+		userInfos.value.projectId = value
+		await initBackEndControlRoutes();
+	};
+</script>
+
+<style scoped lang="scss">
+	$homeNavLengh: 8;
+	.home-container {
+		height: calc(100vh - 114px);
+		box-sizing: border-box;
+		overflow: hidden;
+		.demo-tabs{
+			width: 100%;
+			height: 100%;
+
+			&::v-deep(.el-tabs__content){
+				height: calc(100% - 60px);
+			}
+
+			.el-tab-pane{
+				height: 100%;
+			}
+		}
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			box-sizing: border-box;
+			background: #fff;
+			border-radius: 4px;
+
+			.main-card{
+				width: 100%;
+				height: 100%;
+				.cardTop{
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+					margin-bottom: 20px;
+					.mainCardBtn{
+						margin: 0;
+					}
+				}
+				.pageBtn{
+					height: 60px;
+					display: flex;
+					align-items: center;
+					justify-content: right;
+
+					.demo-pagination-block + .demo-pagination-block {
+						margin-top: 10px;
+					}
+					.demo-pagination-block .demonstration {
+						margin-bottom: 16px;
+					}
+				}
+			}
+			&:last-of-type{
+				height: calc(100% - 100px);
+			}
+		}
+		.el-row{
+			display: flex;
+			align-items: center;
+			margin-bottom: 20px;
+			&:last-child {
+				margin-bottom: 0;
+			}
+			.grid-content{
+				align-items: center;
+				min-height: 36px;
+			}
+
+			.topInfo {
+				display: flex;
+				align-items: center;
+				font-size: 16px;
+				font-weight: bold;
+
+				&>div{
+					white-space: nowrap;
+					margin-right: 20px;
+				}
+			}
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/components/blindPanelForm.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/components/blindPanelForm.vue
new file mode 100644
index 0000000..bf26c37
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/components/blindPanelForm.vue
@@ -0,0 +1,354 @@
+<template>
+	<div class="comp-container">
+		<el-form :model="bpForm" label-width="180px" :rules="bpFormRules" ref="bpRef">
+			<div class="homeCard">
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="申请部门" prop="bpDepartment">
+							<el-select v-model="bpForm.bpDepartment" placeholder="请选择部门">
+								<el-option label="机修班" value="机修班" />
+								<el-option label="火工班" value="火工班" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="申请人" prop="bpApplyName">
+							<el-input
+								v-model="bpForm.bpApplyName"
+								placeholder="请输入"
+								class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="设备管道名称" prop="bpTubeName">
+							<el-input
+								v-model="bpForm.bpTubeName"
+								placeholder="请输入"
+								class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="主要介质" prop="bpMainMatter">
+							<el-input
+								v-model="bpForm.bpMainMatter"
+								placeholder="请输入"
+								class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="温度" prop="bpTemperature">
+							<el-input
+								v-model="bpForm.bpTemperature"
+								placeholder="请输入"
+								class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="压力" prop="bpPressure">
+							<el-input
+								v-model="bpForm.bpPressure"
+								placeholder="请输入"
+								class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="盲板材质" prop="bpMaterial">
+							<el-input
+								v-model="bpForm.bpMaterial"
+								placeholder="请输入"
+								class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="盲板规格" prop="bpFormat">
+							<el-input
+								v-model="bpForm.bpFormat"
+								placeholder="请输入"
+								class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="盲板编号" prop="bpNum">
+							<el-input
+								v-model="bpForm.bpNum"
+								placeholder="请输入"
+								class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="盲板位置" prop="bpLocation">
+							<el-input
+								v-model="bpForm.bpLocation"
+								placeholder="请输入"
+								class="input-with-select"
+								type="textarea"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="盲板位置图">
+							<el-upload
+								v-model:file-list="bpForm.picList"
+								class="upload-demo"
+								action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
+								multiple
+								:on-preview="handlePreview"
+								:on-remove="handleRemove"
+								:before-remove="beforeRemove"
+								:limit="3"
+								:on-exceed="handleExceed"
+							>
+								<el-button type="primary">上传附件</el-button>
+								<template #tip>
+									<div class="el-upload__tip">
+										jpg/png 文件大小须在500k以内.
+									</div>
+								</template>
+							</el-upload>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="装盲板负责人" prop="bpPrincipals">
+							<el-select v-model="bpForm.bpPrincipals" placeholder="请选择" multiple>
+								<el-option label="负责人一" value="负责人一" />
+								<el-option label="负责人二" value="负责人二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="装盲板时间" prop="bpInstallTime">
+						<el-date-picker
+							v-model="bpForm.bpInstallTime"
+							type="datetime"
+							placeholder="请选择"
+						/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="拆盲板负责人" prop="bpDePrincipals">
+							<el-select v-model="bpForm.bpDePrincipals" placeholder="请选择" multiple>
+								<el-option label="负责人一" value="负责人一" />
+								<el-option label="负责人二" value="负责人二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="拆盲板时间" prop="bpUninstallTime">
+							<el-date-picker
+									v-model="bpForm.bpUninstallTime"
+									type="datetime"
+									placeholder="请选择"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
+		</el-form>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import { ElMessage, ElMessageBox } from 'element-plus'
+	import type { FormInstance, FormRules, UploadProps, UploadUserFile } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'blindPanelForm',
+		props: {
+			bpForm: Object,
+		},
+		setup(props) {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({});
+			const bpForm1 = reactive(props.bpForm)
+			// const bpForm = reactive({
+			// 	bpDepartment: '',
+			// 	bpApplyName: '',
+			// 	bpTubeName: '',
+			// 	bpMainMatter: '',
+			// 	bpTemperature: '',
+			// 	bpPressure: '',
+			// 	bpMaterial: '',
+			// 	bpFormat: '',
+			// 	bpNum: '',
+			// 	bpLocation: '',
+			// 	fileList: [],
+			// 	bpPrincipals: [],
+			// 	bpInstallTime: '',
+			// 	bpDePrincipals: [],
+			// 	bpUninstallTime: ''
+			// })
+			const bpRef = ref<FormInstance>()
+			const bpFormRules = reactive<FormRules>({
+				bpDepartment:[{required: true,message: '此处不可为空'}],
+				bpApplyName:[{required: true,message: '此处不可为空'}],
+				bpTubeName: [{required: true,message: '此处不可为空'}],
+				bpMainMatter: [{required: true,message: '此处不可为空'}],
+				bpTemperature: [{required: true,message: '此处不可为空'}],
+				bpPressure: [{required: true,message: '此处不可为空'}],
+				bpMaterial: [{required: true,message: '此处不可为空'}],
+				bpFormat: [{required: true,message: '此处不可为空'}],
+				bpNum: [{required: true,message: '此处不可为空'}],
+				bpLocation: [{required: true,message: '此处不可为空'}],
+				bpPrincipals: [{type: 'array',required: true,message: '此处不可为空',trigger:'blur'}],
+				bpInstallTime: [{required: true,message: '此处不可为空'}],
+				bpDePrincipals: [{type: 'array',required: true,message: '此处不可为空',trigger:'blur'}],
+				bpUninstallTime: [{required: true,message: '此处不可为空'}]
+			})
+			const fileList = ref<UploadUserFile[]>([
+				{
+					name: 'element-plus-logo.svg',
+					url: 'https://element-plus.org/images/element-plus-logo.svg',
+				}
+			])
+
+			const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {
+				console.log(file, uploadFiles)
+			}
+
+			const handlePreview: UploadProps['onPreview'] = (uploadFile) => {
+				console.log(uploadFile)
+			}
+
+			const handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {
+				ElMessage.warning(
+						// `The limit is 3, you selected ${files.length} files this time, add up to ${
+						// 		files.length + uploadFiles.length
+						// } totally`
+						'文件总数超出限制'
+				)
+			}
+
+			const beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {
+				return ElMessageBox.confirm(
+						`取消上传 ${uploadFile.name} ?`
+				).then(
+						() => true,
+						() => false
+				)
+			}
+
+			const validateForm = async () => {
+				let flag = null
+				await bpRef.value.validate(valid=>{
+					if(valid){
+						flag = true
+					}else{
+						flag = false
+					}
+				})
+				return flag
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				bpForm1,
+				bpFormRules,
+				bpRef,
+				fileList,
+				Search,
+				validateForm,
+				handleRemove,
+				handlePreview,
+				handleExceed,
+				beforeRemove,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.home-container {
+		height: 100%;
+		overflow: hidden;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/components/cutLineForm.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/components/cutLineForm.vue
new file mode 100644
index 0000000..4a0a5be
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/components/cutLineForm.vue
@@ -0,0 +1,220 @@
+<template>
+	<div class="comp-container">
+		<el-form :model="clForm" label-width="180px" :rules="clFormRules" ref="clRef">
+			<div class="homeCard">
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="申请部门" prop="clDepartment">
+							<el-select v-model="clForm.clDepartment" placeholder="请选择部门">
+								<el-option label="机修班" value="机修班" />
+								<el-option label="火工班" value="火工班" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="申请人" prop="clApplyName">
+							<el-input
+									v-model="clForm.clApplyName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="断路原因" prop="clReason">
+							<el-input
+									v-model="clForm.clReason"
+									placeholder="请输入"
+									class="input-with-select"
+									type="textarea"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="涉及相关单位(部门)" prop="clUnits">
+							<el-select v-model="clForm.clUnits" placeholder="请选择" multiple>
+								<el-option label="单位一" value="单位一" />
+								<el-option label="单位二" value="单位二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="断路地段示意图" prop="fileList">
+							<el-upload
+									v-model:file-list="fileList"
+									class="upload-demo"
+									action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
+									multiple
+									:on-preview="handlePreview"
+									:on-remove="handleRemove"
+									:before-remove="beforeRemove"
+									:limit="3"
+									:on-exceed="handleExceed"
+							>
+								<el-button type="primary">上传附件</el-button>
+								<template #tip>
+									<div class="el-upload__tip">
+										jpg/png 文件大小须在500k以内.
+									</div>
+								</template>
+							</el-upload>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
+		</el-form>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import { ElMessage, ElMessageBox } from 'element-plus'
+	import type { FormInstance, FormRules, UploadProps, UploadUserFile } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'cutLineForm',
+		props: {
+			clForm: Object
+		},
+		setup(props) {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({});
+			const clForm1 = reactive(props.clForm)
+			const clRef = ref<FormInstance>()
+			const clFormRules = reactive<FormRules>({
+				clDepartment:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				clApplyName:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				clReason: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				clUnits: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				fileList: [{type: 'array',required: true,message: '此处不可为空',trigger: 'change'}]
+			})
+			const fileList = ref<UploadUserFile[]>([
+				{
+					name: 'element-plus-logo.svg',
+					url: 'https://element-plus.org/images/element-plus-logo.svg',
+				}
+			])
+
+			const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {
+				console.log(file, uploadFiles)
+			}
+
+			const handlePreview: UploadProps['onPreview'] = (uploadFile) => {
+				console.log(uploadFile)
+			}
+
+			const handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {
+				ElMessage.warning(
+						// `The limit is 3, you selected ${files.length} files this time, add up to ${
+						// 		files.length + uploadFiles.length
+						// } totally`
+						'文件总数超出限制'
+				)
+			}
+
+			const beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {
+				return ElMessageBox.confirm(
+						`取消上传 ${uploadFile.name} ?`
+				).then(
+						() => true,
+						() => false
+				)
+			}
+			const validateForm = async () => {
+				let flag = null
+				await clRef.value.validate(valid=>{
+					if(valid){
+						flag = true
+					}else{
+						flag = false
+					}
+				})
+				return flag
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				clForm1,
+				Search,
+				clFormRules,
+				clRef,
+				fileList,
+				validateForm,
+				handleRemove,
+				handlePreview,
+				handleExceed,
+				beforeRemove,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.home-container {
+		height: 100%;
+		overflow: hidden;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/components/dirtWorkForm.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/components/dirtWorkForm.vue
new file mode 100644
index 0000000..4bb6e52
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/components/dirtWorkForm.vue
@@ -0,0 +1,221 @@
+<template>
+	<div class="comp-container">
+		<el-form :model="dwForm" label-width="180px" :rules="dwFormRules" ref="dwRef">
+			<div class="homeCard">
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="申请部门" prop="dwDepartment">
+							<el-select v-model="dwForm.dwDepartment" placeholder="请选择部门">
+								<el-option label="机修班" value="机修班" />
+								<el-option label="火工班" value="火工班" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="申请人" prop="dwApplyName">
+							<el-input
+									v-model="dwForm.dwApplyName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="动土范围" prop="dwRange">
+							<el-input
+									v-model="dwForm.dwRange"
+									placeholder="请输入"
+									class="input-with-select"
+									type="textarea"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="动土方式" prop="dwWay">
+							<el-input
+									v-model="dwForm.dwWay"
+									placeholder="请输入"
+									class="input-with-select"
+									type="textarea"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="动土简图" prop="fileList">
+							<el-upload
+									v-model:file-list="fileList"
+									class="upload-demo"
+									action="https://run.mocky.io/v3/9d059bf9-4660-45f2-925d-ce80ad6c4d15"
+									multiple
+									:on-preview="handlePreview"
+									:on-remove="handleRemove"
+									:before-remove="beforeRemove"
+									:limit="3"
+									:on-exceed="handleExceed"
+							>
+								<el-button type="primary">上传附件</el-button>
+								<template #tip>
+									<div class="el-upload__tip">
+										jpg/png 文件大小须在500k以内.
+									</div>
+								</template>
+							</el-upload>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
+		</el-form>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import { ElMessage, ElMessageBox } from 'element-plus'
+	import type { FormInstance, FormRules, UploadProps, UploadUserFile } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'dirtWorkForm',
+		props:{
+			dwForm: Object
+		},
+		setup(props) {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({});
+			const dwForm1 = reactive(props.dwForm)
+			const dwRef = ref<FormInstance>()
+			const dwFormRules = reactive<FormRules>({
+				dwDepartment:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				dwApplyName:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				dwRange: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				dwWay: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				fileList: [{type: 'array',required: true,message: '此处不可为空',trigger: 'change'}]
+			})
+			const fileList = ref<UploadUserFile[]>([
+				{
+					name: 'element-plus-logo.svg',
+					url: 'https://element-plus.org/images/element-plus-logo.svg',
+				}
+			])
+
+			const handleRemove: UploadProps['onRemove'] = (file, uploadFiles) => {
+				console.log(file, uploadFiles)
+			}
+
+			const handlePreview: UploadProps['onPreview'] = (uploadFile) => {
+				console.log(uploadFile)
+			}
+
+			const handleExceed: UploadProps['onExceed'] = (files, uploadFiles) => {
+				ElMessage.warning(
+						// `The limit is 3, you selected ${files.length} files this time, add up to ${
+						// 		files.length + uploadFiles.length
+						// } totally`
+						'文件总数超出限制'
+				)
+			}
+
+			const beforeRemove: UploadProps['beforeRemove'] = (uploadFile, uploadFiles) => {
+				return ElMessageBox.confirm(
+						`取消上传 ${uploadFile.name} ?`
+				).then(
+						() => true,
+						() => false
+				)
+			}
+			const validateForm = async () => {
+				let flag = null
+				await dwRef.value.validate(valid=>{
+					if(valid){
+						flag = true
+					}else{
+						flag = false
+					}
+				})
+				return flag
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				dwForm1,
+				dwFormRules,
+				dwRef,
+				fileList,
+				validateForm,
+				handleRemove,
+				handlePreview,
+				handleExceed,
+				beforeRemove,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.home-container {
+		height: 100%;
+		overflow: hidden;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/components/fireWorkForm.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/components/fireWorkForm.vue
new file mode 100644
index 0000000..084f86c
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/components/fireWorkForm.vue
@@ -0,0 +1,164 @@
+<template>
+	<div class="comp-container">
+		<el-form :model="fwForm" label-width="150px" :rules="fwRules" ref="fwRef">
+			<div class="homeCard">
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="申请部门" prop="fwDepartment">
+							<el-select v-model="fwForm.fwDepartment" placeholder="请选择部门">
+								<el-option label="机修班" value="机修班" />
+								<el-option label="火工班" value="火工班" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="申请人" prop="fwApplyName">
+							<el-input
+									v-model="fwForm.fwApplyName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="作业等级" prop="fwLevel">
+							<el-select v-model="fwForm.fwLevel" placeholder="请选择">
+								<el-option label="一" value="一" />
+								<el-option label="二" value="二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="危害辨识" prop="fwRiskIdentify">
+							<el-select v-model="fwForm.fwRiskIdentify" placeholder="请选择">
+								<el-option label="辨识一" value="辨识一" />
+								<el-option label="辨识二" value="辨识二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="动火方式" prop="fwWorkWay">
+							<el-select v-model="fwForm.fwWorkWay" placeholder="请选择">
+								<el-option label="方式一" value="方式一" />
+								<el-option label="方式二" value="方式二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
+		</el-form>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import type { FormInstance, FormRules } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'fireWorkForm',
+		props: {
+			fwForm: Object
+		},
+		setup(props) {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({});
+			const fwForm1 = reactive(props.fwForm)
+			const fwRef = ref<FormInstance>()
+			const fwRules = reactive<FormRules>({
+				fwDepartment:[{required: true,message: '此处不可为空'}],
+				fwApplyName:[{required: true,message: '此处不可为空'}],
+				fwLevel: [{required: true,message: '此处不可为空'}],
+				fwRiskIdentify: [{required: true,message: '此处不可为空'}],
+				fwWorkWay: [{required: true,message: '此处不可为空'}]
+			})
+			const validateForm = async () => {
+				let flag = null
+				await fwRef.value.validate(valid=>{
+					if(valid){
+						flag = true
+					}else{
+						flag = false
+					}
+				})
+				return flag
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				Search,
+				fwForm1,
+				fwRules,
+				fwRef,
+				validateForm,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.comp-container {
+		height: 100%;
+		overflow: hidden;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/components/hangLoadForm.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/components/hangLoadForm.vue
new file mode 100644
index 0000000..6b36361
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/components/hangLoadForm.vue
@@ -0,0 +1,169 @@
+<template>
+	<div class="comp-container">
+		<el-form :model="hlForm" label-width="180px" :rules="hlFormRules" ref="hlRef">
+			<div class="homeCard">
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="申请部门" prop="hlDepartment">
+							<el-select v-model="hlForm.hlDepartment" placeholder="请选择部门">
+								<el-option label="机修班" value="机修班" />
+								<el-option label="火工班" value="火工班" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="申请人" prop="hlApplyName">
+							<el-input
+									v-model="hlForm.hlApplyName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="作业等级" prop="hlLevel">
+							<el-select v-model="hlForm.hlLevel" placeholder="请选择等级">
+								<el-option label="等级一" value="等级一" />
+								<el-option label="等级二" value="等级二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="起吊重物质量" prop="hlWeight">
+							<el-input
+									v-model="hlForm.hlWeight"
+									placeholder="请输入"
+									class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="吊装工具名称" prop="hlToolsName">
+							<el-input
+									v-model="hlForm.hlToolsName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
+		</el-form>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import type { FormInstance, FormRules } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'hangLoadForm',
+		props: {
+			hlForm: Object
+		},
+		setup(props) {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({});
+			const hlForm1 = reactive(props.hlForm)
+			const hlRef = ref<FormInstance>()
+			const hlFormRules = reactive<FormRules>({
+				hlDepartment:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				hlApplyName:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				hlLevel: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				hlWeight: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				hlToolsName: [{required: true,message: '此处不可为空',trigger: 'blur'}]
+			})
+			const validateForm = async () => {
+				let flag = null
+				await hlRef.value.validate(valid=>{
+					if(valid){
+						flag = true
+					}else{
+						flag = false
+					}
+				})
+				return flag
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				hlForm1,
+				hlFormRules,
+				hlRef,
+				validateForm,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.home-container {
+		height: 100%;
+		overflow: hidden;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/components/highWorkForm.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/components/highWorkForm.vue
new file mode 100644
index 0000000..1ae364a
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/components/highWorkForm.vue
@@ -0,0 +1,153 @@
+<template>
+	<div class="comp-container">
+		<el-form :model="hwForm" label-width="150px" :rules="hwRules" ref="hwRef">
+			<div class="homeCard">
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="申请部门" prop="hwDepartment">
+							<el-select v-model="hwForm.hwDepartment" placeholder="请选择部门">
+								<el-option label="机修班" value="机修班" />
+								<el-option label="火工班" value="火工班" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="申请人" prop="hwApplyName">
+							<el-input
+									v-model="hwForm.hwApplyName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="作业等级" prop="hwLevel">
+							<el-select v-model="hwForm.hwLevel" placeholder="请选择">
+								<el-option label="一" value="一" />
+								<el-option label="二" value="二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="作业高度" prop="hwHeight">
+							<el-input
+									v-model="hwForm.hwHeight"
+									placeholder="请输入"
+									class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
+		</el-form>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import type { FormInstance, FormRules } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'highWorkForm',
+		props:{
+			hwForm: Object
+		},
+		setup(props) {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({});
+			const hwForm1 = reactive(props.hwForm)
+			const hwRef = ref<FormInstance>()
+			const hwRules = reactive<FormRules>({
+				hwDepartment:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				hwApplyName:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				hwLevel: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				hwHeight: [{required: true,message: '此处不可为空',trigger: 'blur'}]
+			})
+			const validateForm = async () => {
+				let flag = null
+				await hwRef.value.validate(valid=>{
+					if(valid){
+						flag = true
+					}else{
+						flag = false
+					}
+				})
+				return flag
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				hwForm1,
+				hwRef,
+				hwRules,
+				validateForm,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.comp-container {
+		height: 100%;
+		overflow: hidden;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/components/limitedSpaceForm.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/components/limitedSpaceForm.vue
new file mode 100644
index 0000000..bd92649
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/components/limitedSpaceForm.vue
@@ -0,0 +1,175 @@
+<template>
+	<div class="comp-container">
+		<el-form :model="lsForm" label-width="180px" :rules="lsFormRules" ref="lsRef">
+			<div class="homeCard">
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="申请部门" prop="lsDepartment">
+							<el-select v-model="lsForm.lsDepartment" placeholder="请选择部门">
+								<el-option label="机修班" value="机修班" />
+								<el-option label="火工班" value="火工班" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="申请人" prop="lsApplyName">
+							<el-input
+									v-model="lsForm.lsApplyName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="受限空间名称" prop="lsUnitName">
+							<el-input
+									v-model="lsForm.lsUnitName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="受限空间所属单位" prop="lsUnit">
+							<el-select v-model="lsForm.lsUnit" placeholder="请选择">
+								<el-option label="一" value="一" />
+								<el-option label="二" value="二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="24">
+						<el-form-item label="受限空间内原有介质名称" prop="lsUnitName">
+							<el-input
+									v-model="lsForm.lsUnitMatterName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
+		</el-form>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import type { FormInstance, FormRules } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'limitedSpaceForm',
+		props: {
+			lsForm: Object
+		},
+		setup(props) {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({});
+			const lsForm1 = reactive(props.lsForm)
+			const lsRef = ref<FormInstance>()
+			const lsFormRules = reactive<FormRules>({
+				lsDepartment:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				lsApplyName:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				lsUnitName: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				lsUnit: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				lsUnitMatterName: [{required: true,message: '此处不可为空',trigger: 'blur'}]
+			})
+			const validateForm = async () => {
+				let flag = null
+				await lsRef.value.validate(valid=>{
+					if(valid){
+						flag = true
+					}else{
+						flag = false
+					}
+				})
+				return flag
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				lsForm1,
+				lsFormRules,
+				lsRef,
+				validateForm,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.home-container {
+		height: 100%;
+		overflow: hidden;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/components/tempElectForm.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/components/tempElectForm.vue
new file mode 100644
index 0000000..cc21d11
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/components/tempElectForm.vue
@@ -0,0 +1,153 @@
+<template>
+	<div class="comp-container">
+		<el-form :model="teForm" label-width="150px" :rules="teRules" ref="teRef">
+			<div class="homeCard">
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="申请部门" prop="teDepartment">
+							<el-select v-model="teForm.teDepartment" placeholder="请选择部门">
+								<el-option label="机修班" value="机修班" />
+								<el-option label="火工班" value="火工班" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="申请人" prop="teApplyName">
+							<el-input
+									v-model="teForm.teApplyName"
+									placeholder="请输入"
+									class="input-with-select"
+							>
+								<template #append>
+									<el-button :icon="Search" />
+								</template>
+							</el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+				<el-row>
+					<el-col :span="8">
+						<el-form-item label="作业等级" prop="teLevel">
+							<el-select v-model="teForm.teLevel" placeholder="请选择等级">
+								<el-option label="等级一" value="等级一" />
+								<el-option label="等级二" value="等级二" />
+							</el-select>
+						</el-form-item>
+					</el-col>
+					<el-col :span="8">
+						<el-form-item label="作业高度" prop="teHeight">
+							<el-input
+									v-model="teForm.teHeight"
+									placeholder="请输入"
+									class="input-with-select"
+							/>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
+		</el-form>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import type { FormInstance, FormRules } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'tempElectForm',
+		props: {
+			teForm: Object
+		},
+		setup(props) {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({});
+			const teForm1 = reactive(props.teForm)
+			const teRef = ref<FormInstance>()
+			const teRules = reactive<FormRules>({
+				teDepartment:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				teApplyName:[{required: true,message: '此处不可为空',trigger: 'blur'}],
+				teLevel: [{required: true,message: '此处不可为空',trigger: 'blur'}],
+				teHeight: [{required: true,message: '此处不可为空',trigger: 'blur'}]
+			})
+			const validateForm = async () => {
+				let flag = null
+				await teRef.value.validate(valid=>{
+					if(valid){
+						flag = true
+					}else{
+						flag = false
+					}
+				})
+				return flag
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				teForm1,
+				teRef,
+				teRules,
+				validateForm,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.comp-container {
+		height: 100%;
+		overflow: hidden;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>
diff --git a/src/views/specialWorkSystem/workApplyManage/workTicket/index.vue b/src/views/specialWorkSystem/workApplyManage/workTicket/index.vue
new file mode 100644
index 0000000..466fa00
--- /dev/null
+++ b/src/views/specialWorkSystem/workApplyManage/workTicket/index.vue
@@ -0,0 +1,671 @@
+<template>
+	<div class="home-container">
+		<div style="height: 100%">
+		<el-form :model="form" label-width="150px" :rules="applyRules" ref="ruleFormRef2">
+<!--			<blind-panel-form :bpForm="form.addForm" ref="additionalForm"></blind-panel-form>-->
+<!--			<cut-line-form :clForm="form.addForm" ref="additionalForm"></cut-line-form>-->
+<!--			<dirt-work-form :dwForm="form.addForm" ref="additionalForm"></dirt-work-form>-->
+			<fire-work-form :fwForm="form.addForm" ref="additionalForm"></fire-work-form>
+<!--			<hang-load-form :hlForm="form.addForm" ref="additionalForm"></hang-load-form>-->
+<!--			<high-work-form :hwForm="form.addForm" ref="additionalForm"></high-work-form>-->
+<!--			<limited-space-form :lsForm="form.addForm" ref="additionalForm"></limited-space-form>-->
+<!--			<temp-elect-form :teForm="form.addForm" ref="additionalForm"></temp-elect-form>-->
+			<div>
+			<div class="homeCard">
+			<el-row>
+				<el-col :span="3"><el-button type="primary" size="default" @click="dialogAddWorker = true">添加作业人</el-button></el-col>
+				<el-col :span="21">
+					<el-table :data="form.workerList" style="width: 100%">
+						<el-table-column type="index" label="序号" width="100"/>
+						<el-table-column prop="worker" label="作业人"/>
+						<el-table-column prop="role" label="作业人角色" width="180"/>
+						<el-table-column prop="unit" label="所属单位" width="180" />
+						<el-table-column prop="certificate" label="证书名称" width="180" />
+						<el-table-column prop="certificateId" label="证书号" />
+						<el-table-column fixed="right" label="操作" align="center" width="180">
+							<template #default="scope">
+								<el-button link type="danger" size="small" @click="deleteRow(scope.$index)">删除</el-button>
+							</template>
+						</el-table-column>
+					</el-table>
+				</el-col>
+			</el-row>
+			<el-row>
+				<el-col :span="12">
+					<el-form-item label="作业地点" prop="workLocation">
+						<el-input
+							v-model="form.workLocation"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>
+								<el-button :icon="Search" />
+							</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="12">
+					<el-form-item label="作业期限" prop="workTimeLine">
+						<el-date-picker
+							v-model="form.workTimeLine"
+							type="daterange"
+							unlink-panels
+							range-separator="至"
+							start-placeholder="开始日期"
+							end-placeholder="结束日期"
+							:shortcuts="shortcuts"
+						/>
+					</el-form-item>
+				</el-col>
+			</el-row>
+			<el-row>
+				<el-col :span="12">
+					<el-form-item label="作业内容" prop="workContent">
+						<el-input
+							v-model="form.workContent"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>
+								<el-button :icon="Search" />
+							</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="12">
+					<el-form-item label="作业单位" prop="workUnit">
+						<el-input
+							v-model="form.workUnit"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>选择作业单位</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+			</el-row>
+			<el-row>
+				<el-col :span="8">
+					<el-form-item label="作业负责人" prop="responsor">
+						<el-input
+							v-model="form.responsor"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>
+								<el-button :icon="Search" />
+							</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="8">
+					<el-form-item label="监护人" prop="monitor">
+						<el-input
+							v-model="form.monitor"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>
+								<el-button :icon="Search" />
+							</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="8">
+					<el-form-item label="监护人岗位" prop="monitorStation">
+						<el-input
+							v-model="form.monitorStation"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>
+								<el-button :icon="Search" />
+							</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+			</el-row>
+			<el-row>
+				<el-col :span="12">
+					<el-form-item label="生产车间负责人" prop="workhouseLeader">
+						<el-input
+							v-model="form.workhouseLeader"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>
+								<el-button :icon="Search" />
+							</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="12">
+					<el-form-item label="申请日期" prop="applyDate">
+						<el-date-picker
+							size="large"
+							v-model="form.applyDate"
+							type="date"
+							placeholder="请选择"
+							style="width: 100%"
+						></el-date-picker>
+					</el-form-item>
+				</el-col>
+			</el-row>
+			</div>
+			<div class="homeCard">
+			<el-row>
+				<el-col :span="24">
+					<el-form-item label="涉及的其他特殊作业" prop="otherSpecialWorks">
+						<el-checkbox-group v-model="form.otherSpecialWorks">
+							<el-checkbox label="动火作业" />
+							<el-checkbox label="受限空间" />
+							<el-checkbox label="高处作业" />
+							<el-checkbox label="吊装作业" />
+							<el-checkbox label="临时用电" />
+							<el-checkbox label="设备检修" />
+							<el-checkbox label="盲板抽堵" />
+							<el-checkbox label="断路作业" />
+							<el-checkbox label="动土作业" />
+						</el-checkbox-group>
+					</el-form-item>
+				</el-col>
+			</el-row>
+			<el-row>
+				<el-col>
+					<el-form-item label="防护用品" prop="protections">
+						<el-cascader
+							v-model="form.protections"
+							:options="protectOption"
+							:props="{expandTrigger: 'hover'}"
+							@change="protectionsChange"
+							placeholder="请选择"
+							style="width: 100%"
+						/>
+					</el-form-item>
+				</el-col>
+			</el-row>
+			<el-row style="justify-content: center">
+				<el-button type="primary" size="default" @click="dialogAddFile = true">点击添加安全交底和风险告知书</el-button>
+			</el-row>
+			<el-row>
+				<el-col :span="12">
+					<el-form-item label="实施安全教育人" prop="safetyMan">
+						<el-input
+							v-model="form.safetyMan"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>
+								<el-button :icon="Search"/>
+							</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="12">
+					<el-form-item label="被教育人" prop="educated">
+						<el-input
+							v-model="form.educated"
+							placeholder="请输入"
+							class="input-with-select"
+						>
+							<template #append>
+								<el-button :icon="Search" />
+							</template>
+						</el-input>
+					</el-form-item>
+				</el-col>
+			</el-row>
+			</div>
+			</div>
+		</el-form>
+		<div class="applyBtn">
+			<el-col :span="24" class="submitBtn">
+				<el-button type="primary" size="large" plain @click="handleApply(ruleFormRef2)">发起申请</el-button>
+			</el-col>
+		</div>
+		<el-dialog v-model="dialogAddWorker" title="添加作业人">
+			<el-form :model="addWorkerForm" label-width="120px" :rules="addWorkerRules" ref='ruleFormRef3'>
+				<el-form-item label="作业人" prop="worker">
+					<el-input
+							v-model="addWorkerForm.worker"
+							placeholder="请输入"
+							class="input-with-select"
+					>
+						<template #append>
+							<el-button :icon="Search" />
+						</template>
+					</el-input>
+				</el-form-item>
+				<el-form-item label="作业人角色" prop="role">
+					<el-input
+							v-model="addWorkerForm.role"
+							placeholder="请输入"
+							class="input-with-select"
+					>
+						<template #append>
+							<el-button :icon="Search" />
+						</template>
+					</el-input>
+				</el-form-item>
+				<el-form-item label="作业人角色" prop="unit">
+					<el-input
+							v-model="addWorkerForm.unit"
+							placeholder="请输入"
+							class="input-with-select"
+					>
+						<template #append>
+							<el-button :icon="Search" />
+						</template>
+					</el-input>
+				</el-form-item>
+				<el-form-item label="证书名称" prop="certificate">
+					<el-input
+							v-model="addWorkerForm.certificate"
+							placeholder="请输入"
+							class="input-with-select"
+					>
+						<template #append>
+							<el-button :icon="Search" />
+						</template>
+					</el-input>
+				</el-form-item>
+				<el-form-item label="证书号" prop="certificateId">
+					<el-input
+							v-model="addWorkerForm.certificateId"
+							placeholder="请输入"
+							class="input-with-select"
+					>
+						<template #append>
+							<el-button :icon="Search" />
+						</template>
+					</el-input>
+				</el-form-item>
+				<el-form-item>
+					<el-button type="primary" @click="onSubmitAddForm(ruleFormRef3)" size="default">确认</el-button>
+					<el-button size="default" @click="cancleAdd">取消</el-button>
+				</el-form-item>
+			</el-form>
+		</el-dialog>
+		<el-dialog v-model="dialogAddFile" title="安全交底和风险告知">
+			<el-form :model="saftyFileForm" label-width="0" ref="ruleFormRef" :rules="saftyFileRules">
+				<el-form-item label="" prop="surrounding">
+					<div>1.作业许可范围及作业环境:</div>
+					<el-input
+							v-model="saftyFileForm.surrounding"
+							:rows="2"
+							type="textarea"
+							placeholder="请输入"
+					/>
+				</el-form-item>
+				<el-form-item label="" prop="risk">
+					<div>2.作业风险:</div>
+					<el-input
+							v-model="saftyFileForm.risk"
+							:rows="2"
+							type="textarea"
+							placeholder="请输入"
+					/>
+				</el-form-item>
+				<el-form-item label="" prop="protection">
+					<div>3.防范措施(工艺、设备、个体防护等):</div>
+					<el-input
+							v-model="saftyFileForm.protection"
+							:rows="2"
+							type="textarea"
+							placeholder="请输入"
+					/>
+				</el-form-item>
+				<el-form-item label="" prop="emergency">
+					<div>4.应急措施:</div>
+					<el-input
+							v-model="saftyFileForm.emergency"
+							:rows="2"
+							type="textarea"
+							placeholder="请输入"
+					/>
+				</el-form-item>
+				<el-form-item label="" prop="otherStuff">
+					<div>5.其他注意事项:</div>
+					<el-input
+							v-model="saftyFileForm.otherStuff"
+							:rows="2"
+							type="textarea"
+							placeholder="请输入"
+					/>
+				</el-form-item>
+				<el-form-item>
+					<el-button type="primary" @click="onSubmitAddFile(ruleFormRef)" size="default">确认</el-button>
+					<el-button size="default" @click="cancleAddFile">取消</el-button>
+				</el-form-item>
+			</el-form>
+		</el-dialog>
+	</div>
+	</div>
+</template>
+
+<script lang="ts">
+	import { toRefs, reactive, defineComponent, ref, defineAsyncComponent } from 'vue';
+	import { storeToRefs } from 'pinia';
+	import { initBackEndControlRoutes } from '/@/router/backEnd';
+	import {useUserInfo} from "/@/stores/userInfo";
+	import { Session } from '/@/utils/storage';
+	import { Search } from '@element-plus/icons-vue'
+	import { ElMessage } from 'element-plus'
+	import type { FormInstance, FormRules } from 'element-plus'
+	let global: any = {
+		homeChartOne: null,
+		homeChartTwo: null,
+		homeCharThree: null,
+		dispose: [null, '', undefined],
+	};
+
+	interface stateType {
+		homeOne: Array <type>
+	}
+	interface type {
+
+	}
+	export default defineComponent({
+		name: 'workApplyForm',
+		components: {
+			fireWorkForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/fireWorkForm.vue')),
+			limitedSpaceForm: defineAsyncComponent(() => import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/limitedSpaceForm.vue')),
+			hangLoadForm: defineAsyncComponent(()=> import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/hangLoadForm.vue')),
+			dirtWorkForm: defineAsyncComponent(()=> import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/dirtWorkForm.vue')),
+			cutLineForm: defineAsyncComponent(()=> import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/cutLineForm.vue')),
+			highWorkForm: defineAsyncComponent(()=> import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/highWorkForm.vue')),
+			tempElectForm: defineAsyncComponent(()=> import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/tempElectForm.vue')),
+			blindPanelForm: defineAsyncComponent(()=> import('/@/views/specialWorkSystem/workApplyManage/workApplyForm/components/blindPanelForm.vue'))
+		},
+		setup() {
+			const userInfo = useUserInfo()
+			const { userInfos } = storeToRefs(userInfo);
+			const state  = reactive<stateType>({
+				homeOne:[{id:1,name:'安全基础信息系统'},{id:2,name:'双重预防系统'},{id:3,name:'系统2'},{id:4,name:'系统3'},{id:5,name:'系统4'}],
+			});
+			const form = reactive({
+				addForm: {},
+				workerList: [],
+				workLocation: '',
+				workTimeLine: '',
+				workContent: '',
+				workUnit: '',
+				responsor: '',
+				monitor: '',
+				workMonitor: '',
+				monitorStation: '',
+				workhouseLeader: '',
+				applyDate: '',
+				otherSpecialWorks: [],
+				protections: '',
+				saftyFile: {},
+				safetyMan: '',
+				educated: ''
+			})
+			const dialogAddWorker = ref(false)
+			const dialogAddFile = ref(false)
+			const addWorkerForm = ref({
+				worker: '',
+				role: '',
+				unit: '',
+				certificate: '',
+				certificateId: ''
+			})
+			const saftyFileForm = reactive({
+				surrounding: '',
+				risk: '',
+				protection: '',
+				emergency: '',
+				otherStuff: ''
+			})
+			const shortcuts = [
+				{
+					text: 'Last week',
+					value: () => {
+						const end = new Date()
+						const start = new Date()
+						start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
+						return [start, end]
+					},
+				},
+				{
+					text: 'Last month',
+					value: () => {
+						const end = new Date()
+						const start = new Date()
+						start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
+						return [start, end]
+					},
+				},
+				{
+					text: 'Last 3 months',
+					value: () => {
+						const end = new Date()
+						const start = new Date()
+						start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
+						return [start, end]
+					},
+				},
+			]
+			const protectOption = [
+				{
+					value: 'guide',
+					label: 'Guide',
+					children: [
+						{
+							value: 'disciplines',
+							label: 'Disciplines',
+							children: [
+								{
+									value: 'consistency',
+									label: 'Consistency',
+								},
+								{
+									value: 'feedback',
+									label: 'Feedback',
+								}
+							],
+						},
+						{
+							value: 'navigation',
+							label: 'Navigation',
+							children: [
+								{
+									value: 'side nav',
+									label: 'Side Navigation',
+								}
+							],
+						},
+					],
+				}
+			]
+			const ruleFormRef = ref<FormInstance>()
+			const ruleFormRef2 = ref<FormInstance>()
+			const ruleFormRef3 = ref<FormInstance>()
+			const applyRules = reactive<FormRules>({
+				extraForm: [{type: 'object', required: true,message: '此处不能为空'}],
+				workLocation: [{required: true,message: '此处不能为空'}],
+				workTimeLine: [{required: true,message: '此处不能为空'}],
+				workContent: [{required: true,message: '此处不能为空'}],
+				workUnit: [{required: true,message: '此处不能为空'}],
+				responsor: [{required: true,message: '此处不能为空'}],
+				monitor: [{required: true,message: '此处不能为空'}],
+				workMonitor: [{required: true,message: '此处不能为空'}],
+				monitorStation: [{required: true,message: '此处不能为空'}],
+				workhouseLeader: [{required: true,message: '此处不能为空'}],
+				applyDate: [{required: true,message: '此处不能为空'}],
+				otherSpecialWorks: [{type: 'array', required: true,message: '此处不能为空'}],
+				protections: [{required: true,message: '此处不能为空'}],
+				safetyMan: [{required: true,message: '此处不能为空'}],
+				educated: [{required: true,message: '此处不能为空'}]
+			})
+			const addWorkerRules = reactive<FormRules>({
+				worker: [{required: true,message: '此处不能为空'}],
+				role: [{required: true,message: '此处不能为空'}],
+				unit: [{required: true,message: '此处不能为空'}],
+				certificate: [{required: true,message: '此处不能为空'}],
+				certificateId: [{required: true,message: '此处不能为空'}]
+			})
+			const saftyFileRules = reactive<FormRules>({
+				surrounding: [{required: true,message: '该选项不能为空'}],
+				risk: [{required: true,message: '该选项不能为空'}],
+				protection: [{required: true,message: '该选项不能为空'} ],
+				emergency: [{required: true,message: '该选项不能为空'} ]
+			})
+			const protectionsChange = (value) => {
+				console.log(value)
+			}
+
+			const onSubmitAddForm = async (formEl: FormInstance | undefined) => {
+				if (!formEl) return
+				await formEl.validate((valid, fields) => {
+					if (valid) {
+						form.workerList.unshift(addWorkerForm.value)
+						addWorkerForm.value = {
+							worker: '',
+							role: '',
+							unit: '',
+							certificate: '',
+							certificateId: ''
+						}
+						dialogAddWorker.value = false
+					} else {
+						console.log('error submit!', fields)
+					}
+				})
+			}
+			const onSubmitAddFile = () =>{
+
+			}
+			const cancleAdd = ()=> {
+				addWorkerForm.value = {
+					worker: '',
+					role: '',
+					unit: '',
+					certificate: '',
+					certificateId: ''
+				}
+				dialogAddWorker.value = false
+			}
+			const cancleAddFile = ()=>{
+
+			}
+			const deleteRow = (index) =>{
+				form.workerList.splice( index,1)
+			}
+			const isValid = ref(false)
+			const additionalForm = ref(null)
+			const handleApply = async (formEl: FormInstance | undefined) =>{
+				if (!formEl) return
+				const flag = additionalForm.value.validateForm()
+				await flag.then((res)=>{
+					isValid.value = res
+				})
+				await formEl.validate((valid, fields) => {
+					console.log(valid,'and',isValid.value)
+					if (valid && isValid.value) {
+						console.log('submit',form,fields)
+						ElMessage({
+							message: '提交成功!',
+							type: 'success',
+						})
+					} else {
+						// console.log('error submit!',form,fields)
+						ElMessage({
+							message: '表单未填写完整',
+							type: 'error',
+						})
+					}
+				})
+
+			}
+			// 折线图
+			const renderMenu = async (value: string) => {
+				Session.set('projectId',value)
+				userInfos.value.projectId = value
+				await initBackEndControlRoutes();
+			};
+			return {
+				renderMenu,
+				form,
+				Search,
+				shortcuts,
+				protectOption,
+				dialogAddWorker,
+				dialogAddFile,
+				addWorkerForm,
+				saftyFileForm,
+				ruleFormRef,
+				ruleFormRef2,
+				ruleFormRef3,
+				additionalForm,
+				addWorkerRules,
+				saftyFileRules,
+				applyRules,
+				isValid,
+				handleApply,
+				cancleAddFile,
+				deleteRow,
+				cancleAdd,
+				onSubmitAddForm,
+				onSubmitAddFile,
+				protectionsChange,
+				...toRefs(state),
+			};
+		},
+	});
+</script>
+
+<style scoped lang="scss">
+	.home-container {
+		height: 100%;
+		overflow: hidden;
+		position: relative;
+		.homeCard{
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			border-radius: 4px;
+			margin-bottom: 20px;
+
+			&:last-of-type{
+				margin-bottom: 100px;
+			}
+		}
+		.applyBtn{
+			position: absolute;
+			width: 100%;
+			padding: 20px;
+			background: #fff;
+			bottom: 0;
+			left: 0;
+			height: 80px;
+			z-index: 999;
+			margin-bottom: 0;
+			border-radius: 0;
+			box-shadow: 0 -3px 8px rgba(150,150,150,.1);
+		}
+		.el-row{
+			margin-bottom: 20px;
+		}
+		.el-row:last-child {
+			margin-bottom: 0;
+		}
+		.el-input{
+			width: 100% !important;
+		}
+		.el-date-editor::v-deep{
+			width: 100%;
+		}
+		.el-select{
+			width: 100%;
+		}
+		.el-cascader{
+			width: 100% !important;
+		}
+		.submitBtn{
+			display: flex;
+			justify-content: center;
+		}
+	}
+</style>

--
Gitblit v1.9.2