From 1536c360aad6a5c33dde3c29c7a83cd44c5c5b8a Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期三, 09 八月 2023 13:26:38 +0800
Subject: [PATCH] 删除修改

---
 /dev/null                                      |  967 --------------------------------------------------
 src/views/system/role/index.vue                |   14 
 src/views/system/user/index.vue                |   12 
 src/views/system/home/index.vue                |    2 
 src/views/bigScreen/index.vue                  |   39 ++
 src/views/loginPage/component/accountLogin.vue |    7 
 src/views/system/user/component/userDialog.vue |   94 ----
 7 files changed, 55 insertions(+), 1,080 deletions(-)

diff --git a/src/views/analyse/applyReview/components/reportDialog.vue b/src/views/analyse/applyReview/components/reportDialog.vue
deleted file mode 100644
index 66e8843..0000000
--- a/src/views/analyse/applyReview/components/reportDialog.vue
+++ /dev/null
@@ -1,591 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="reportDialogState.title" v-model="reportDialogState.reportDialogVisible" width="80%">
-          <div style="text-align: center;font-size: 20px;font-weight: bolder;color: #0c4995">{{reportDialogState.reportForm.experimentName}}实验安全风险评估报告表(带<span style="color: red">*</span>为填写内容)</div>
-            <el-form ref="reportFormRef" :rules="reportDialogState.reportFormRules" :model="reportDialogState.reportForm" size="default" label-width="0">
-                <table class="report-table">
-                    <th class="m-color b-font" style="text-align: center">实验基本信息</th>
-                    <tr>
-                        <td class="w-25 m-color">实验名称</td>
-                        <td class="w-75 m-color">
-                            <el-form-item prop="experimentName">
-                                <el-input readonly v-model="reportDialogState.reportForm.experimentName" placeholder="请输入实验名称" />
-                            </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color">实验类型</td>
-                        <td class="w-75" style="text-align: left;padding-left: 11px">
-<!--                            <el-radio-group style="text-align: center" disabled v-model="reportDialogState.reportForm.experimentType">-->
-<!--                                <el-radio :label="1">化学类</el-radio>-->
-<!--                                <el-radio :label="2">生物类</el-radio>-->
-<!--                                <el-radio :label="3">辐射类</el-radio>-->
-<!--                                <el-radio :label="4">机电类</el-radio>-->
-<!--                                <el-radio :label="5">特种设备类</el-radio>-->
-<!--                                <el-radio :label="6">其他类</el-radio>-->
-<!--                            </el-radio-group>-->
-                            {{reportDialogState.experimentTypeList.find(i=>i.id === reportDialogState.reportForm.experimentType)?.name}}
-                        </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color">负责人</td>
-                      <td class="w-25 m-color">
-<!--                        <el-select style="width: 100%" disabled v-model="reportDialogState.reportForm.liabilityUserId" clearable filterable @change="getLiabilityUserPhone($event)">-->
-<!--                          <el-option-->
-<!--                              v-for="item in reportDialogState.systemPersonList"-->
-<!--                              :key="item.id"-->
-<!--                              :value="item.id"-->
-<!--                              :label="item.realName"-->
-<!--                          ></el-option>-->
-<!--                        </el-select>-->
-                        <el-input readonly v-model="reportDialogState.reportForm.personUser" />
-                      </td>
-                      <td class="w-25 m-color">电话</td>
-                      <td class="w-25 m-color">
-                        <el-input disabled v-model="reportDialogState.reportForm.personUserPhone" />
-                      </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color">安全负责人</td>
-                      <td class="w-25 m-color">
-<!--                        <el-select v-if="reportDialogState.reportForm.safeLiabilityUserId" style="width: 100%" disabled v-model="reportDialogState.reportForm.safeLiabilityUserId" @change="getSafeLiabilityUserPhone($event)" clearable filterable>-->
-<!--                          <el-option-->
-<!--                              v-for="item in reportDialogState.allPersonList"-->
-<!--                              :key="item.id"-->
-<!--                              :value="item.id"-->
-<!--                              :label="item.personName"-->
-<!--                          ></el-option>-->
-<!--                        </el-select>-->
-                        <el-input disabled v-model="reportDialogState.reportForm.safePersonUser" />
-                      </td>
-                      <td class="w-25 m-color">电话</td>
-                      <td class="w-25 m-color">
-                        <el-input readonly v-model="reportDialogState.reportForm.safePersonUserPhone" />
-                      </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color">部门</td>
-                      <td class="w-75 m-color">
-                        <el-input readonly v-model="reportDialogState.reportForm.dep" />
-                      </td>
-                    </tr>
-                    <tr class="m-color b-font" style="text-align: center">实验场所</tr>
-                    <tr>
-                      <td class="w-14 m-color">场所名称</td>
-                      <td class="w-14 m-color">所在楼栋</td>
-                      <td class="w-14 m-color">房间</td>
-                      <td class="w-14 m-color">有无消防设施</td>
-                      <td class="w-14 m-color">有无隔断</td>
-                      <td class="w-14 m-color">场所性质</td>
-                    </tr>
-                    <tr v-for="(item,index) in reportDialogState.reportForm.experimentSite" :key="index">
-                      <td class="w-14">
-<!--                        <el-select disabled filterable v-model="item.siteId">-->
-<!--                          <el-option-->
-<!--                              v-for="item in reportDialogState.allRoomList"-->
-<!--                              :key="item.id"-->
-<!--                              :value="item.id"-->
-<!--                              :label="item.siteName"-->
-<!--                          >-->
-<!--                          </el-option>-->
-<!--                        </el-select>-->
-                        <el-input disabled v-model="item.siteName" />
-                      </td>
-                      <td class="w-14">
-                        <el-input disabled v-model="item.floor" />
-                      </td>
-                      <td class="w-14">
-                        <el-input disabled v-model="item.room" />
-                      </td>
-                      <td class="w-14">
-                        <div>{{item.fireFacilities== 1 ? '有' : item.fireFacilities== 2 ? '无' : ''}}</div>
-                      </td>
-                      <td class="w-14">
-                        <div>{{item.partitionStatus == 1 ? '有' : item.partitionStatus == 2 ? '无' : ''}}</div>
-                      </td>
-                      <td class="w-14">
-                        <div>{{item.siteType}}</div>
-                      </td>
-                    </tr>
-
-                    <tr class="m-color b-font" style="text-align: center">实验概况</tr>
-                    <tr>
-                        <el-input type="textarea" :autosize="{ minRows: 3}" disabled v-model="reportDialogState.reportForm.experimentDesc" placeholder="(简要描述实验原理、实验步骤、所用试剂或材料设备等)" />
-                    </tr>
-                    <tr class="m-color b-font" style="text-align: center">实验涉及的危险源</tr>
-                    <tr>
-                      <td class="w-25 m-color">危险源种类</td>
-                      <td class="w-75 m-color">
-<!--                        <el-radio-group disabled v-model="reportDialogState.reportForm.dangerSource">-->
-<!--                          <el-radio :label="1">化学安全</el-radio>-->
-<!--                          <el-radio :label="2">辐射安全</el-radio>-->
-<!--                          <el-radio :label="3">特种设备安全</el-radio>-->
-<!--                          <el-radio :label="4">机电安全</el-radio>-->
-<!--                          <el-radio :label="5">电气安全</el-radio>-->
-<!--                          <el-radio :label="6">生物安全</el-radio>-->
-<!--                          <el-radio :label="7">激光安全</el-radio>-->
-<!--                          <el-radio :label="8">其他安全</el-radio>-->
-<!--                        </el-radio-group>-->
-                        <el-checkbox-group disabled>
-                          <el-checkbox v-for="item in reportDialogState.reportForm.riskSourceType" :label="item.riskSourceType" :checked="item.status==1?true:false"/>
-                        </el-checkbox-group>
-                      </td>
-                    </tr>
-                    <select-danger ref="selectDangerRef" v-model:data="reportDialogState.reportForm.riskSource" v-model:disabled="reportDialogState.disabled"></select-danger>
-                    <tr class="m-color b-font required" style="text-align: center">安全风险分析(总结)</tr>
-                    <tr>
-                      <el-input type="textarea" :autosize="{ minRows: 3}" :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.safeRiskAnalysis" placeholder="1.实验过程中是否有爆炸、火灾、腐蚀、中毒风险、产生危险废弃物等(根据危险源清单,分析实验过程中可能对人身安全、人体健康、实验室环境和周边环境等带来的负面影响)" />
-                    </tr>
-                    <tr class="m-color b-font" style="text-align: center">拟采取的防护和应急措施</tr>
-                    <tr>
-                      <el-input type="textarea" :autosize="{ minRows: 3}" disabled v-model="reportDialogState.reportForm.emergencyMeasure" placeholder="" />
-                    </tr>
-                    <tr class="m-color b-font required" style="text-align: center">实验和实验项目综合风险等级评定</tr>
-                    <tr>
-                      <td class="m-color" style="width: 100%">
-                        <el-radio-group :disabled="reportDialogState.disabled"  v-model="reportDialogState.reportForm.assessLevel">
-                          <el-radio :label="1">重大风险(一级)</el-radio>
-                          <el-radio :label="2">较大风险(二级)</el-radio>
-                          <el-radio :label="3">一般风险(三级)</el-radio>
-                          <el-radio :label="4">低风险(四级)</el-radio>
-                        </el-radio-group>
-                      </td>
-                    </tr>
-                    <tr>
-                      <el-input type="textarea" :autosize="{ minRows: 3}" :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.description" placeholder="评定依据(必填)" />
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">评估人</td>
-                      <td class="w-75 m-color">
-                        <!--                        <el-select style="width: 100%" :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.assessPerson" clearable filterable>-->
-                        <!--                          <el-option-->
-                        <!--                              v-for="item in reportDialogState.allPersonList"-->
-                        <!--                              :key="item.id"-->
-                        <!--                              :value="item.id"-->
-                        <!--                              :label="item.personName"-->
-                        <!--                          ></el-option>-->
-                        <!--                        </el-select>-->
-                        <el-input :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.assessPerson" placeholder="评估人" />
-                      </td>
-                      <!--                      <td class="w-25 m-color required">评估时间</td>-->
-                      <!--                      <td class="w-25 m-color">-->
-                      <!--                        <el-date-picker :disabled="reportDialogState.disabled"  type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="reportDialogState.reportForm.assessTime" />-->
-                      <!--                      </td>-->
-                    </tr>
-                    <tr v-if="reportDialogState.reportForm.person?.length>0" class="m-color b-font" style="text-align: center">审批内容</tr>
-                    <template v-if="reportDialogState.reportForm.person?.length>0" v-for="item in reportDialogState.reportForm.person">
-                      <tr>
-                        <td class="w-25 m-color">{{item.approveStage}}</td>
-                        <td class="w-25">{{item.approvePerson}}</td>
-                        <td class="w-25 m-color">审批结果</td>
-<!--                        <td class="w-25">{{item.approveStatus==1?'未审批':item.approveStatus==2?'通过':'未通过'}}</td>-->
-                        <td class="w-25" :class="item.approveStatus==3?'redTit':''">{{item.approveStatus==1?'未审批':item.approveStatus==2?'通过':'未通过'}}</td>
-                      </tr>
-                      <tr>
-                        <td class="w-25 m-color autoheight">审批意见</td>
-                        <td class="w-75 autoheight l-border">
-                          {{ item.approveDesc }}
-                        </td>
-                      </tr>
-                    </template>
-                </table>
-            </el-form>
-            <template #footer>
-              <span class="dialog-footer" style="padding-top:10px;text-align: center !important;">
-                <el-button @click="reportDialogState.reportDialogVisible = !reportDialogState.reportDialogVisible" size="default">取 消</el-button>
-                <el-button type="primary" v-if="!reportDialogState.disabled" @click="onSubmitProject()" size="default">提交审批</el-button>
-              </span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, nextTick, onMounted, reactive, ref} from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-import {personApi} from "/@/api/basic/person";
-import {userApi} from "/@/api/systemManage/user";
-import {roomApi} from "/@/api/basic/room";
-import {assessApplyApi} from "/@/api/analyse/assessApply";
-
-const SelectDanger = defineAsyncComponent(() => import('./selectDanger.vue'))
-const selectDangerRef = ref()
-const reportFormRef = ref()
-const reportDialogState = reactive<ReportDialogType>({
-    title: '',
-    disabled: false,
-    reportDialogVisible: false,
-    reportForm: {
-        id: null,
-        experimentName: "",
-        experimentType: null,
-        personUser: '',
-        personUserId: null,
-        personUserPhone: '',
-        safePersonUserId: null,
-        safePersonUser: '',
-        safePersonUserPhone: '',
-        dep: "",
-        experimentSite: [],
-        experimentDesc: '',
-        emergencyMeasure: '',
-        assessPerson:'',
-        safeRiskAnalysis: '',
-        assessLevel:null,
-        riskSource: [],
-        riskSourceType: [],
-        description: '',
-        person: []
-    },
-    reportFormRules: {
-      assessPerson: [{ required: true, message: '请填写评估人员', trigger: 'blur' }],
-      safeRiskAnalysis: [{ required: true, message: '请填写安全风险分析', trigger: 'blur' }],
-      assessLevel: [{ required: true, message: '请选择风险等级评定', trigger: 'blur' }],
-      description: [{ required: true, message: '请填写风险等级评定依据', trigger: 'blur' }],
-    },
-    allPersonList: [],
-    allRoomList: [],
-    systemPersonList: [],
-    experimentTypeList: [
-      {id: 1, name: '化学类'},
-      {id: 2, name: '生物类'},
-      {id: 3, name: '辐射类'},
-      {id: 4, name: '机电类'},
-      {id: 5, name: '特种设备类'},
-      {id: 6, name: '其它类'}
-    ]
-})
-
-const showReportDialog = (title: string, value: ProjectType, allRoomList: RoomType []) => {
-    getReportData(value.experimentId)
-    reportDialogState.reportDialogVisible = true;
-    reportDialogState.allRoomList = allRoomList
-    setTimeout(() => {
-        reportFormRef.value.clearValidate();
-    });
-    if(title === '提交'){
-      reportDialogState.title = '提交报告';
-      reportDialogState.disabled = false
-      // for(let i in reportDialogState.reportForm) {
-      //   if(isValidKey(i, reportDialogState.reportForm)) {
-      //     reportDialogState.reportForm[i] = value[i];
-      //   }
-      // }
-    }else if(title === '修改'){
-      reportDialogState.title = '修改报告';
-      reportDialogState.disabled = false
-    }else{
-        reportDialogState.title = '查看';
-        reportDialogState.disabled = true
-        // for(let i in reportDialogState.reportForm) {
-        //     if(isValidKey(i, reportDialogState.reportForm)) {
-        //         reportDialogState.reportForm[i] = value[i];
-        //     }
-        // }
-    }
-};
-
-const isValidKey = (key: string | number | symbol, object:object): key is keyof typeof object =>{
-    return key in object;
-};
-
-const getReportData = async (id:number|null|undefined) => {
-  let res = await assessApplyApi().getRiskReportPage({
-    experimentId: id,
-    pageIndex: 1,
-    pageSize: 10,
-    tag: 3
-  });
-  if(res.data.code === 100){
-    for(let i in reportDialogState.reportForm) {
-      if(isValidKey(i, reportDialogState.reportForm)) {
-        reportDialogState.reportForm[i] = res.data.data[0][i];
-      }
-    }
-    console.log(reportDialogState.reportForm,'reportDialogState.reportForm')
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    });
-  }
-};
-
-// const getLiabilityUserPhone = (value: number)=>{
-//   const data = reportDialogState.systemPersonList.find(item => item.id === value) as AllPersonListType
-//   reportDialogState.reportForm.liabilityUserPhone = data.phone
-// }
-//
-// const getSafeLiabilityUserPhone = (value: number)=>{
-//   const data = reportDialogState.allPersonList.find(item => item.id === value) as AllPersonListType
-//   reportDialogState.reportForm.safeLiabilityUserPhone = data.phone
-// }
-
-// const hasSafeSystem = (value: number) =>{
-//   if(value == 2){
-//     reportDialogState.reportForm.safeInformationSystem = ''
-//   }
-// }
-
-const onSubmitProject = () => {
-    reportFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-          const { id,assessPerson,safeRiskAnalysis,assessLevel,description } = reportDialogState.reportForm
-          const data = { id,assessPerson,safeRiskAnalysis,assessLevel,description }
-            if(reportDialogState.title === '提交报告'){
-                let res = await assessApplyApi().updateRiskReport(data);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    reportDialogState.reportDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '提交报告成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await assessApplyApi().updateRiskReportInfo(data)
-                if(res.data.code === 100){
-                  emit('refresh')
-                  reportDialogState.reportDialogVisible = false;
-                  ElMessage({
-                    type: 'success',
-                    message: '修改报告成功'
-                  })
-                }else{
-                  ElMessage({
-                    type: 'warning',
-                    message: res.data.msg,
-                  });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const getPersonList = async () => {
-    let res = await userApi().getUserList({
-      pageIndex: 1,
-      pageSize: 99999,
-      searchParams:{
-        roleId: null,
-        name: '',
-        realName: ''
-      }
-    });
-    if(res.data.code === 100){
-        reportDialogState.systemPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const getAllPersonList = async () => {
-    let res = await personApi().getAllPerson();
-    if(res.data.code === 100){
-        reportDialogState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const emit = defineEmits(['refresh']);
-
-defineExpose({
-    showReportDialog,
-});
-
-onMounted(() => {
-    getAllPersonList();
-    getPersonList()
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-th {
-    padding: 10px 0;
-    border: 1px solid #337ecc;
-    border-left: none;
-}
-
-tr {
-    width: 100%;
-    height: 44px;
-    line-height: 42px;
-    border-bottom: 1px solid #ccc;
-
-  &.required {
-    &::before {
-      content: "*";
-      display: inline-block;
-      color: red;
-    }
-  }
-
-&:last-of-type {
-     border-bottom: none;
- }
-
-  td {
-      border-right: 1px solid #ccc;
-      display: inline-block;
-      height: 44px;
-      vertical-align: middle;
-      text-align: center;
-      line-height: 42px;
-
-    :deep(.el-input__wrapper ){
-      box-shadow: none;
-      margin-top: 6px;
-    }
-
-    &:last-of-type {
-         border-right: none;
-     }
-
-    &.required {
-      &::before {
-        content: "*";
-        display: inline-block;
-        color: red;
-      }
-    }
-
-    &.w-14 {
-         width: calc((100/7)/100 * 100%);
-     }
-
-    &.w-16 {
-         width: calc((100/6)/100 * 100%);
-     }
-
-    &.w-18 {
-         width: 16.59%;
-     }
-
-    &.w-20 {
-         width: 20%;
-     }
-
-    &.w-25 {
-         width: 25%;
-     }
-
-    &.w-50 {
-         width: 50%;
-     }
-
-    &.w-75 {
-         width: 75%;
-     }
-
-    &.redTit{
-      color: red;
-    }
-
-    &.autoheight {
-      min-height: 44px;
-      height: auto;
-    }
-
-    &.l-border{
-      border-left: 1px solid #ccc;
-    }
-
-    .ant-input {
-        height: 100%;
-        border: none;
-        background: #f5f7fa;
-    }
-
-    .ant-picker {
-        width: 100%;
-        height: 100%;
-    }
-  }
-}
-
-.b-font {
-    font-size: 16px;
-    font-weight: bolder;
-}
-}
-
-.m-color {
-    color: #0c4995;
-}
-
-.roomSelect{
-  ::v-deep(.el-popper){
-    .el-select-dropdown__item{
-      height: auto;
-      padding: 0;
-
-      .roomTable{
-        width: 100%;
-        display: flex;
-        border-bottom: 1px solid #ebeef5;
-
-        &:last-of-type{
-          border-bottom: none;
-        }
-
-        &>div{
-          width: 25%;
-          border-right: 1px dashed #ebeef5;
-          &:last-of-type{
-            border-right: none;
-          }
-
-          div{
-            width: 100%;
-          }
-          .roomTit{
-            border-bottom: 1px solid #ebeef5;
-          }
-        }
-      }
-    }
-    .el-select-dropdown__item.selected{
-      .roomTit{
-        color: #606266;
-        font-weight: normal;
-      }
-    }
-  }
-}
-
-:deep(.el-dialog__footer){
-    padding-top: 20px;
-    display: flex;
-    justify-content: center;
-}
-
-
-</style>
diff --git a/src/views/analyse/applyReview/components/selectDanger.vue b/src/views/analyse/applyReview/components/selectDanger.vue
deleted file mode 100644
index 4918cff..0000000
--- a/src/views/analyse/applyReview/components/selectDanger.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-<template>
-    <tr class="m-color b-font required" style="text-align: center">主要危险源或有害因素</tr>
-    <tr>
-        <td class="w-20 m-color">序号</td>
-        <td class="w-20 m-color">危险源或有害因素</td>
-        <td class="w-20 m-color">危险特性</td>
-        <td class="w-20 m-color">数量</td>
-        <td class="w-20 m-color">其他说明</td>
-<!--        <td class="w-18 m-color">操作</td>-->
-    </tr>
-    <tr v-for="(item,index) in dangerSourceState.dangerList" :key="index">
-        <td class="w-20">
-            {{ index + 1 }}
-        </td>
-        <td class="w-20">
-          <el-input disabled v-model="item.riskSource"></el-input>
-        </td>
-        <td class="w-20">
-          <el-input disabled v-model="item.riskCharacteristic"></el-input>
-        </td>
-        <td class="w-20">
-            <el-input disabled type="number" v-model="item.number"></el-input>
-        </td>
-        <td class="w-20">
-          <el-input disabled v-model="item.description"></el-input>
-        </td>
-<!--        <td class="w-18">-->
-<!--            <el-button disabled type="danger" @click="deleteDangerItem(index)">删除</el-button>-->
-<!--        </td>-->
-    </tr>
-<!--    <tr style="text-align: center">-->
-<!--        <el-button :disabled="dangerSourceState.disabled" type="primary" shape="round" @click="addDangerItem()">-->
-<!--            添加行-->
-<!--        </el-button>-->
-<!--    </tr>-->
-</template>
-
-<script setup lang="ts">
-import {reactive, watchEffect} from "vue";
-
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<DangerListType>
-});
-
-const dangerSourceState = reactive<DangerSourceType>({
-    disabled: false,
-    dangerList: [],
-})
-
-watchEffect(() => {
-    dangerSourceState.dangerList = props.data as Array<DangerListType>
-    dangerSourceState.disabled = props.disabled
-});
-
-const addDangerItem = () => {
-    dangerSourceState.dangerList.push({riskSource: '', riskCharacteristic: '', number: null, description: ''});
-};
-
-const deleteDangerItem = (index: number) => {
-    dangerSourceState.dangerList.splice(index,1);
-};
-
-const formatList = (formatList: Array<DangerListType>) => {
-    dangerSourceState.dangerList = formatList
-}
-
-defineExpose({
-    formatList,
-    dataList: dangerSourceState.dangerList,
-});
-
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-      &.required {
-        &::before {
-          content: "*";
-          display: inline-block;
-          color: red;
-        }
-      }
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.required {
-              &::before {
-                content: "*";
-                display: inline-block;
-                color: red;
-              }
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-:deep(.el-input__wrapper ){
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/analyse/applyReview/index.ts b/src/views/analyse/applyReview/index.ts
deleted file mode 100644
index 03349c3..0000000
--- a/src/views/analyse/applyReview/index.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-declare interface reportReviewStateType {
-	developData?: Array<ProjectType>
-	searchQuery: {
-		pageIndex: number | null,
-		pageSize: number | null,
-		tag: number | null,
-		experimentName: string,
-		experimentType: null | number,
-	},
-	total: 0,
-	experimentTypeList: Type []
-	allRoomList: RoomType [],
-	reviewDialogVisible: boolean,
-	reviewForm:{
-		id: number | null
-		approveStatus: null | number
-		approveDesc: string
-	},
-	rules:object,
-	isLeader: boolean
-}
\ No newline at end of file
diff --git a/src/views/analyse/applyReview/index.vue b/src/views/analyse/applyReview/index.vue
deleted file mode 100644
index e8a7215..0000000
--- a/src/views/analyse/applyReview/index.vue
+++ /dev/null
@@ -1,373 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>实验名称:</span>
-                    <el-input v-model="developState.searchQuery.experimentName" clearable filterable class="input-box" placeholder="实验名称">
-                    </el-input>
-                </div>
-<!--                <div class="basic-line">-->
-<!--                    <span>实验类型:</span>-->
-<!--                    <el-select v-model="developState.searchQuery.experimentType" clearable filterable class="input-box" placeholder="实验类型">-->
-<!--                        <el-option v-for="item in developState.experimentTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>-->
-<!--                    </el-select>-->
-<!--                </div>-->
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getReportData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </el-row>
-            <div class="homeCard">
-                <div class="main-card">
-                    <el-row class="cardTop">
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="developState.developData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="experimentCode" label="实验编号"/>
-                        <el-table-column prop="experimentName" label="实验名称"/>
-                        <el-table-column prop="createExperimentTime" label="评价时间">
-                          <template #default="scope">
-                            <span>{{scope.row.evaluateTime?scope.row.evaluateTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="startTime" label="报告提交时间" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.updateTime?scope.row.updateTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-<!--                        <el-table-column prop="experimentSite" label="实验场所" show-overflow-tooltip>-->
-<!--                          <template #default="scope">-->
-<!--                            <span>{{scope.row.experimentSite?.map(i=>i.siteName).join(',')}}</span>-->
-<!--                          </template>-->
-<!--                        </el-table-column>-->
-<!--                        <el-table-column prop="experimentType" label="实验类别">-->
-<!--                          <template #default="scope">-->
-<!--                            <span>{{developState.experimentTypeList.find(i=>i.id == scope.row.experimentType)?.name}}</span>-->
-<!--                          </template>-->
-<!--                        </el-table-column>-->
-                        <el-table-column label="操作" width="250" fixed="right">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" v-if="developState.isLeader == true && (!scope.row.person||(scope.row.person && scope.row.person.length == 0))" :icon="Edit" @click="openRiskDialog(scope.row)">审批</el-button>
-                                <el-button size="small" text type="primary" :icon="Edit" @click="openReportDialog('查看',scope.row)">查看评估报告</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="developState.searchQuery.pageIndex" background v-model:page-size="developState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="developState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <report-dialog ref="ReportDialogRef" @refresh="getReportData"></report-dialog>
-        <el-dialog title="报告审批" v-model="developState.reviewDialogVisible" width="50%">
-          <el-form ref="ruleFormRef" :rules="developState.rules" :model="developState.reviewForm" label-width="120px">
-            <el-form-item label="审批结果" prop="approveStatus">
-              <el-radio-group style="text-align: center" v-model="developState.reviewForm.approveStatus">
-                  <el-radio :label="2">通过</el-radio>
-                  <el-radio :label="3">不通过</el-radio>
-              </el-radio-group>
-            </el-form-item>
-            <el-form-item label="主管部门意见" prop="approveDesc">
-              <el-input v-model="developState.reviewForm.approveDesc" type="textarea" :autosize="{ minRows: 3 }" />
-            </el-form-item>
-          </el-form>
-          <template #footer>
-              <span class="dialog-footer" style="padding-top:10px;text-align: center !important;">
-                <el-button @click="developState.reviewDialogVisible = !developState.reviewDialogVisible" size="default">取 消</el-button>
-                <el-button type="primary" @click="onSubmitReview(ruleFormRef)" size="default">提交审批</el-button>
-              </span>
-          </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {projectApi} from "/@/api/experiment/project";
-import {ElMessage, ElMessageBox} from "element-plus";
-import type { FormInstance, FormRules } from 'element-plus'
-import { View,Edit, Plus, RefreshLeft } from '@element-plus/icons-vue';
-import {roomApi} from "/@/api/basic/room";
-import {assessApplyApi} from "/@/api/analyse/assessApply";
-import {useUserInfo} from "/@/stores/userInfo";
-import {storeToRefs} from "pinia";
-const userInfo = useUserInfo();
-const { userInfos } = storeToRefs(userInfo);
-const ReportDialog = defineAsyncComponent(() => import('./components/reportDialog.vue'));
-
-const ReportDialogRef = ref();
-const ruleFormRef = ref<FormInstance>()
-const developState = reactive<reportReviewStateType>({
-    developData: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        experimentName: '',
-        experimentType: null,
-        tag: 2
-    },
-    total: 0,
-    experimentTypeList: [
-        {id: 1, name: '化学类'},
-        {id: 2, name: '生物类'},
-        {id: 3, name: '辐射类'},
-        {id: 4, name: '机电类'},
-        {id: 5, name: '特种设备类'},
-        {id: 6, name: '其它类'},
-    ],
-    allRoomList: [],
-    reviewDialogVisible: false,
-    reviewForm:{
-      id: null,
-      approveStatus: null,
-      approveDesc: ''
-    },
-    isLeader: false,
-    rules: {
-      approveDesc: [{ required: true, message: '请输入审批意见', trigger: 'blur' }],
-      approveStatus: [{ required: true, message: '请选择审批结果', trigger: 'blur' }]
-    }
-})
-
-const getReportData = async () => {
-    let res = await assessApplyApi().getRiskReportPage(developState.searchQuery);
-    if(res.data.code === 100){
-        developState.developData = res.data.data;
-        console.log(developState.developData,'developState.developData')
-        developState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-
-const getAllRoom = async () => {
-  let res = await roomApi().getAllRoom();
-  if(res.data.code === 100){
-    developState.allRoomList = JSON.parse(JSON.stringify(res.data.data));
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    })
-  }
-};
-
-const openReportDialog = (title: string,value: ProjectType) =>{
-  ReportDialogRef.value.showReportDialog(title, value, developState.allRoomList);
-}
-
-const onSubmitReview = async (formEl: FormInstance | undefined) => {
-  if (!formEl) return
-  await formEl.validate(async(valid, fields) => {
-    if (valid) {
-      let res = await assessApplyApi().uploadReport(developState.reviewForm);
-      if(res.data.code === 100){
-        ElMessage({
-          type: 'success',
-          message: '审批提交成功'
-        });
-      }else{
-        ElMessage({
-          type: 'warning',
-          message: res.data.msg
-        });
-      }
-      developState.reviewForm = {
-        id: null,
-        approveStatus: null,
-        approveDesc: ''
-      },
-      developState.reviewDialogVisible = false
-      getReportData()
-    } else {
-      console.log('error submit!', fields)
-    }
-  })
-}
-
-const openRiskDialog = (val)=>{
-  developState.reviewForm.id = val.id
-  developState.reviewDialogVisible = true
-}
-
-const onHandleSizeChange = (val: number) => {
-    developState.searchQuery.pageSize = val;
-    getReportData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    developState.searchQuery.pageIndex = val;
-    getReportData();
-};
-
-const reset = () => {
-    developState.searchQuery = {
-      pageIndex: 1,
-      pageSize: 10,
-      experimentName: '',
-      experimentType: null,
-      tag: 2
-    }
-};
-
-onMounted(() => {
-    getReportData()
-    getAllRoom()
-    console.log(userInfos.value.roles,'roles')
-    if(userInfos.value.roles?.find(i=>i.roleId == '6')){
-      developState.isLeader = true
-    }
-    console.log(developState.isManage,userInfos.value.roles)
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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);
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/analyse/assessApply/components/reportDialog.vue b/src/views/analyse/assessApply/components/reportDialog.vue
deleted file mode 100644
index 462a3c0..0000000
--- a/src/views/analyse/assessApply/components/reportDialog.vue
+++ /dev/null
@@ -1,612 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="reportDialogState.title" v-model="reportDialogState.reportDialogVisible" width="80%">
-          <div style="text-align: center;font-size: 20px;font-weight: bolder;color: #0c4995">{{reportDialogState.reportForm.experimentName}}实验安全风险评估报告表(带<span style="color: red">*</span>为填写内容)</div>
-            <el-form ref="reportFormRef" :rules="reportDialogState.reportFormRules" :model="reportDialogState.reportForm" size="default" label-width="0">
-                <table class="report-table">
-                    <th class="m-color b-font" style="text-align: center">实验基本信息</th>
-                    <tr>
-                        <td class="w-25 m-color">实验名称</td>
-                        <td class="w-75 m-color">
-                            <el-form-item prop="experimentName">
-                                <el-input readonly v-model="reportDialogState.reportForm.experimentName" placeholder="请输入实验名称" />
-                            </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color">实验类型</td>
-                        <td class="w-75" style="text-align: left;padding-left: 11px">
-<!--                            <el-radio-group style="text-align: center" disabled v-model="reportDialogState.reportForm.experimentType">-->
-<!--                                <el-radio :label="1">化学类</el-radio>-->
-<!--                                <el-radio :label="2">生物类</el-radio>-->
-<!--                                <el-radio :label="3">辐射类</el-radio>-->
-<!--                                <el-radio :label="4">机电类</el-radio>-->
-<!--                                <el-radio :label="5">特种设备类</el-radio>-->
-<!--                                <el-radio :label="6">其他类</el-radio>-->
-<!--                            </el-radio-group>-->
-                            {{reportDialogState.experimentTypeList.find(i=>i.id === reportDialogState.reportForm.experimentType)?.name}}
-                        </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color">负责人</td>
-                      <td class="w-25 m-color">
-<!--                        <el-select style="width: 100%" disabled v-model="reportDialogState.reportForm.liabilityUserId" clearable filterable @change="getLiabilityUserPhone($event)">-->
-<!--                          <el-option-->
-<!--                              v-for="item in reportDialogState.systemPersonList"-->
-<!--                              :key="item.id"-->
-<!--                              :value="item.id"-->
-<!--                              :label="item.realName"-->
-<!--                          ></el-option>-->
-<!--                        </el-select>-->
-                        <el-input readonly v-model="reportDialogState.reportForm.personUser" />
-                      </td>
-                      <td class="w-25 m-color">电话</td>
-                      <td class="w-25 m-color">
-                        <el-input disabled v-model="reportDialogState.reportForm.personUserPhone" />
-                      </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color">安全负责人</td>
-                      <td class="w-25 m-color">
-<!--                        <el-select v-if="reportDialogState.reportForm.safeLiabilityUserId" style="width: 100%" disabled v-model="reportDialogState.reportForm.safeLiabilityUserId" @change="getSafeLiabilityUserPhone($event)" clearable filterable>-->
-<!--                          <el-option-->
-<!--                              v-for="item in reportDialogState.allPersonList"-->
-<!--                              :key="item.id"-->
-<!--                              :value="item.id"-->
-<!--                              :label="item.personName"-->
-<!--                          ></el-option>-->
-<!--                        </el-select>-->
-                        <el-input disabled v-model="reportDialogState.reportForm.safePersonUser" />
-                      </td>
-                      <td class="w-25 m-color">电话</td>
-                      <td class="w-25 m-color">
-                        <el-input readonly v-model="reportDialogState.reportForm.safePersonUserPhone" />
-                      </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color">部门</td>
-                      <td class="w-75 m-color">
-                        <el-input readonly v-model="reportDialogState.reportForm.dep" />
-                      </td>
-                    </tr>
-                    <tr class="m-color b-font" style="text-align: center">实验场所</tr>
-                    <tr>
-                      <td class="w-14 m-color">场所名称</td>
-                      <td class="w-14 m-color">所在楼栋</td>
-                      <td class="w-14 m-color">房间</td>
-                      <td class="w-14 m-color">有无消防设施</td>
-                      <td class="w-14 m-color">有无隔断</td>
-                      <td class="w-14 m-color">场所性质</td>
-                    </tr>
-                    <tr v-for="(item,index) in reportDialogState.reportForm.experimentSite" :key="index">
-                      <td class="w-14">
-<!--                        <el-select disabled filterable v-model="item.siteId">-->
-<!--                          <el-option-->
-<!--                              v-for="item in reportDialogState.allRoomList"-->
-<!--                              :key="item.id"-->
-<!--                              :value="item.id"-->
-<!--                              :label="item.siteName"-->
-<!--                          >-->
-<!--                          </el-option>-->
-<!--                        </el-select>-->
-                        <el-input disabled v-model="item.siteName" />
-                      </td>
-                      <td class="w-14">
-                        <el-input disabled v-model="item.floor" />
-                      </td>
-                      <td class="w-14">
-                        <el-input disabled v-model="item.room" />
-                      </td>
-                      <td class="w-14">
-                        <div>{{item.fireFacilities== 1 ? '有' : item.fireFacilities== 2 ? '无' : ''}}</div>
-                      </td>
-                      <td class="w-14">
-                        <div>{{item.partitionStatus == 1 ? '有' : item.partitionStatus == 2 ? '无' : ''}}</div>
-                      </td>
-                      <td class="w-14">
-                        <div>{{item.siteType}}</div>
-                      </td>
-                    </tr>
-
-                    <tr class="m-color b-font" style="text-align: center">实验概况</tr>
-                    <tr>
-                        <el-input type="textarea" :autosize="{ minRows: 3}" disabled v-model="reportDialogState.reportForm.experimentDesc" placeholder="(简要描述实验原理、实验步骤、所用试剂或材料设备等)" />
-                    </tr>
-                    <tr class="m-color b-font" style="text-align: center">实验涉及的危险源</tr>
-                    <tr>
-                      <td class="w-25 m-color">危险源种类</td>
-                      <td class="w-75 m-color">
-<!--                        <el-radio-group disabled v-model="reportDialogState.reportForm.dangerSource">-->
-<!--                          <el-radio :label="1">化学安全</el-radio>-->
-<!--                          <el-radio :label="2">辐射安全</el-radio>-->
-<!--                          <el-radio :label="3">特种设备安全</el-radio>-->
-<!--                          <el-radio :label="4">机电安全</el-radio>-->
-<!--                          <el-radio :label="5">电气安全</el-radio>-->
-<!--                          <el-radio :label="6">生物安全</el-radio>-->
-<!--                          <el-radio :label="7">激光安全</el-radio>-->
-<!--                          <el-radio :label="8">其他安全</el-radio>-->
-<!--                        </el-radio-group>-->
-                        <el-checkbox-group disabled>
-                          <el-checkbox v-for="item in reportDialogState.reportForm.riskSourceType" :label="item.riskSourceType" :checked="item.status==1?true:false"/>
-                        </el-checkbox-group>
-                      </td>
-                    </tr>
-
-                    <select-danger ref="selectDangerRef" v-model:data="reportDialogState.reportForm.riskSource" v-model:disabled="reportDialogState.disabled"></select-danger>
-
-                    <tr class="m-color b-font required" style="text-align: center">安全风险分析(总结)</tr>
-                    <tr>
-                      <el-input type="textarea" :autosize="{ minRows: 3}" :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.safeRiskAnalysis" placeholder="1.实验过程中是否有爆炸、火灾、腐蚀、中毒风险、产生危险废弃物等(根据危险源清单,分析实验过程中可能对人身安全、人体健康、实验室环境和周边环境等带来的负面影响)" />
-                    </tr>
-                    <tr class="m-color b-font" style="text-align: center">拟采取的防护和应急措施</tr>
-                    <tr>
-                      <el-input type="textarea" :autosize="{ minRows: 3}" disabled v-model="reportDialogState.reportForm.emergencyMeasure" placeholder="" />
-                    </tr>
-                    <tr class="m-color b-font required" style="text-align: center">实验和实验项目综合风险等级评定</tr>
-                    <tr>
-                      <td class="m-color" style="width: 100%">
-                        <el-radio-group :disabled="reportDialogState.disabled"  v-model="reportDialogState.reportForm.assessLevel">
-                          <el-radio :label="1">重大风险(一级)</el-radio>
-                          <el-radio :label="2">较大风险(二级)</el-radio>
-                          <el-radio :label="3">一般风险(三级)</el-radio>
-                          <el-radio :label="4">低风险(四级)</el-radio>
-                        </el-radio-group>
-                      </td>
-                    </tr>
-                    <tr>
-                      <el-input type="textarea" :autosize="{ minRows: 3}" :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.description" placeholder="评定依据(必填)" />
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">评估人</td>
-                      <td class="w-75 m-color">
-                        <!--                        <el-select style="width: 100%" :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.assessPerson" clearable filterable>-->
-                        <!--                          <el-option-->
-                        <!--                              v-for="item in reportDialogState.allPersonList"-->
-                        <!--                              :key="item.id"-->
-                        <!--                              :value="item.id"-->
-                        <!--                              :label="item.personName"-->
-                        <!--                          ></el-option>-->
-                        <!--                        </el-select>-->
-                        <el-input :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.assessPerson" placeholder="评估人" />
-                      </td>
-                      <!--                      <td class="w-25 m-color required">评估时间</td>-->
-                      <!--                      <td class="w-25 m-color">-->
-                      <!--                        <el-date-picker :disabled="reportDialogState.disabled"  type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="reportDialogState.reportForm.assessTime" />-->
-                      <!--                      </td>-->
-                    </tr>
-                    <tr v-if="reportDialogState.reportForm.person?.length>0" class="m-color b-font" style="text-align: center">审批内容</tr>
-                    <template v-if="reportDialogState.reportForm.person?.length>0" v-for="item in reportDialogState.reportForm.person">
-                      <tr>
-                        <td class="w-25 m-color">{{item.approveStage}}</td>
-                        <td class="w-25">{{item.approvePerson}}</td>
-                        <td class="w-25 m-color">审批结果</td>
-                        <td class="w-25" :class="item.approveStatus==3?'redTit':''">{{item.approveStatus==1?'未审批':item.approveStatus==2?'通过':'未通过'}}</td>
-                      </tr>
-                      <tr>
-                        <td class="w-25 m-color autoheight">审批意见</td>
-                        <td class="w-75 autoheight l-border">
-                          {{ item.approveDesc }}
-                        </td>
-                      </tr>
-                    </template>
-                </table>
-            </el-form>
-            <template #footer>
-              <span class="dialog-footer" style="padding-top:10px;text-align: center !important;">
-                <el-button @click="reportDialogState.reportDialogVisible = !reportDialogState.reportDialogVisible" size="default">取 消</el-button>
-                <el-button type="primary" v-if="!reportDialogState.disabled" @click="onSubmitProject()" size="default">提交审批</el-button>
-              </span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, nextTick, onMounted, reactive, ref} from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-import {personApi} from "/@/api/basic/person";
-import {userApi} from "/@/api/systemManage/user";
-import {roomApi} from "/@/api/basic/room";
-import {assessApplyApi} from "/@/api/analyse/assessApply";
-
-const SelectDanger = defineAsyncComponent(() => import('./selectDanger.vue'))
-const selectDangerRef = ref()
-const reportFormRef = ref()
-const reportDialogState = reactive<ReportDialogType>({
-    title: '',
-    disabled: false,
-    reportDialogVisible: false,
-    reportForm: {
-        id: null,
-        experimentName: "",
-        experimentType: null,
-        personUser: '',
-        personUserId: null,
-        personUserPhone: '',
-        safePersonUserId: null,
-        safePersonUser: '',
-        safePersonUserPhone: '',
-        dep: "",
-        experimentSite: [],
-        experimentDesc: '',
-        emergencyMeasure: '',
-        assessPerson:'',
-        safeRiskAnalysis: '',
-        assessLevel:null,
-        riskSource: [],
-        riskSourceType: [],
-        description: '',
-        person:[]
-    },
-    reportFormRules: {
-      assessPerson: [{ required: true, message: '请填写评估人员', trigger: 'blur' }],
-      safeRiskAnalysis: [{ required: true, message: '请填写安全风险分析', trigger: 'blur' }],
-      assessLevel: [{ required: true, message: '请选择风险等级评定', trigger: 'blur' }],
-      description: [{ required: true, message: '请填写风险等级评定依据', trigger: 'blur' }],
-    },
-    allPersonList: [],
-    allRoomList: [],
-    systemPersonList: [],
-    experimentTypeList: [
-      {id: 1, name: '化学类'},
-      {id: 2, name: '生物类'},
-      {id: 3, name: '辐射类'},
-      {id: 4, name: '机电类'},
-      {id: 5, name: '特种设备类'},
-      {id: 6, name: '其它类'}
-    ]
-})
-
-const showReportDialog = (title: string, value: ProjectType, allRoomList: RoomType []) => {
-    getReportData(value.id)
-    reportDialogState.reportDialogVisible = true;
-    reportDialogState.allRoomList = allRoomList
-    setTimeout(() => {
-        reportFormRef.value.clearValidate();
-    });
-    if(title === '提交'){
-      reportDialogState.title = '提交报告';
-      reportDialogState.disabled = false
-      // for(let i in reportDialogState.reportForm) {
-      //   if(isValidKey(i, reportDialogState.reportForm)) {
-      //     reportDialogState.reportForm[i] = value[i];
-      //   }
-      // }
-    }else if(title === '修改'){
-      reportDialogState.title = '修改报告';
-      reportDialogState.disabled = false
-    }else{
-        reportDialogState.title = '查看';
-        reportDialogState.disabled = true
-        // for(let i in reportDialogState.reportForm) {
-        //     if(isValidKey(i, reportDialogState.reportForm)) {
-        //         reportDialogState.reportForm[i] = value[i];
-        //     }
-        // }
-    }
-};
-
-const isValidKey = (key: string | number | symbol, object:object): key is keyof typeof object =>{
-    return key in object;
-};
-
-const getReportData = async (id:number|null|undefined) => {
-  let res = await assessApplyApi().getRiskReportPage({
-    experimentId: id,
-    pageIndex: 1,
-    pageSize: 10,
-    tag: 3
-  });
-  if(res.data.code === 100){
-    reportDialogState.reportForm = {
-      id: null,
-      experimentName: "",
-      experimentType: null,
-      personUser: '',
-      personUserId: null,
-      personUserPhone: '',
-      safePersonUserId: null,
-      safePersonUser: '',
-      safePersonUserPhone: '',
-      dep: "",
-      experimentSite: [],
-      experimentDesc: '',
-      emergencyMeasure: '',
-      assessPerson:'',
-      safeRiskAnalysis: '',
-      assessLevel:null,
-      riskSource: [],
-      riskSourceType: [],
-      description: '',
-      person:[]
-    }
-    if(res.data.data&&res.data.data.length==0){
-      ElMessage({
-        type: 'warning',
-        message: '暂时无法获取实验信息,可能评估流程未完成,用户无法查看'
-      });
-    }else{
-      for(let i in reportDialogState.reportForm) {
-        if(isValidKey(i, reportDialogState.reportForm)) {
-          reportDialogState.reportForm[i] = res.data.data[0][i];
-        }
-      }
-    }
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    });
-  }
-};
-
-// const getLiabilityUserPhone = (value: number)=>{
-//   const data = reportDialogState.systemPersonList.find(item => item.id === value) as AllPersonListType
-//   reportDialogState.reportForm.liabilityUserPhone = data.phone
-// }
-//
-// const getSafeLiabilityUserPhone = (value: number)=>{
-//   const data = reportDialogState.allPersonList.find(item => item.id === value) as AllPersonListType
-//   reportDialogState.reportForm.safeLiabilityUserPhone = data.phone
-// }
-
-// const hasSafeSystem = (value: number) =>{
-//   if(value == 2){
-//     reportDialogState.reportForm.safeInformationSystem = ''
-//   }
-// }
-
-const onSubmitProject = () => {
-    reportFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-          reportDialogState.reportForm.riskSource = selectDangerRef.value.dangerSourceState.dangerList
-          const { id,assessPerson,riskSource,safeRiskAnalysis,assessLevel,description } = reportDialogState.reportForm
-          const data = { id,assessPerson,riskSource,safeRiskAnalysis,assessLevel,description }
-            if(reportDialogState.title === '提交报告'){
-                let res = await assessApplyApi().updateRiskReport(data);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    reportDialogState.reportDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '提交报告成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await assessApplyApi().updateRiskReportInfo(data)
-                if(res.data.code === 100){
-                  emit('refresh')
-                  reportDialogState.reportDialogVisible = false;
-                  ElMessage({
-                    type: 'success',
-                    message: '修改报告成功'
-                  })
-                }else{
-                  ElMessage({
-                    type: 'warning',
-                    message: res.data.msg,
-                  });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const getPersonList = async () => {
-    let res = await userApi().getUserList({
-        pageIndex: 1,
-        pageSize: 99999,
-        searchParams:{
-          roleId: null,
-          name: '',
-          realName: ''
-        }
-    });
-    if(res.data.code === 100){
-        reportDialogState.systemPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const getAllPersonList = async () => {
-    let res = await personApi().getAllPerson();
-    if(res.data.code === 100){
-        reportDialogState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const emit = defineEmits(['refresh']);
-
-defineExpose({
-    showReportDialog,
-});
-
-onMounted(() => {
-    getAllPersonList();
-    getPersonList()
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-th {
-    padding: 10px 0;
-    border: 1px solid #337ecc;
-    border-left: none;
-}
-
-tr {
-    width: 100%;
-    height: 44px;
-    line-height: 42px;
-    border-bottom: 1px solid #ccc;
-
-  &.required {
-    &::before {
-      content: "*";
-      display: inline-block;
-      color: red;
-    }
-  }
-
-&:last-of-type {
-     border-bottom: none;
- }
-
-td {
-    border-right: 1px solid #ccc;
-    display: inline-block;
-    height: 44px;
-    vertical-align: middle;
-    text-align: center;
-    line-height: 42px;
-
-  :deep(.el-input__wrapper ){
-    box-shadow: none;
-    margin-top: 6px;
-  }
-
-&:last-of-type {
-     border-right: none;
- }
-
-&.required {
-  &::before {
-    content: "*";
-    display: inline-block;
-    color: red;
-  }
-}
-
-&.w-14 {
-     width: calc((100/7)/100 * 100%);
- }
-
-&.w-16 {
-     width: calc((100/6)/100 * 100%);
- }
-
-&.w-18 {
-     width: 16.59%;
- }
-
-&.w-20 {
-     width: 20%;
- }
-
-&.w-25 {
-     width: 25%;
- }
-
-&.w-50 {
-     width: 50%;
- }
-
-&.w-75 {
-     width: 75%;
- }
-
-&.redTit{
-  color: red;
-}
-
-.ant-input {
-    height: 100%;
-    border: none;
-    background: #f5f7fa;
-}
-
-.ant-picker {
-    width: 100%;
-    height: 100%;
-}
-}
-}
-
-.b-font {
-    font-size: 16px;
-    font-weight: bolder;
-}
-}
-
-.m-color {
-    color: #0c4995;
-}
-
-.roomSelect{
-  ::v-deep(.el-popper){
-    .el-select-dropdown__item{
-      height: auto;
-      padding: 0;
-
-      .roomTable{
-        width: 100%;
-        display: flex;
-        border-bottom: 1px solid #ebeef5;
-
-        &:last-of-type{
-          border-bottom: none;
-        }
-
-        &>div{
-          width: 25%;
-          border-right: 1px dashed #ebeef5;
-          &:last-of-type{
-            border-right: none;
-          }
-
-          div{
-            width: 100%;
-          }
-          .roomTit{
-            border-bottom: 1px solid #ebeef5;
-          }
-        }
-      }
-    }
-    .el-select-dropdown__item.selected{
-      .roomTit{
-        color: #606266;
-        font-weight: normal;
-      }
-    }
-  }
-}
-
-:deep(.el-dialog__footer){
-    padding-top: 20px;
-    display: flex;
-    justify-content: center;
-}
-
-
-</style>
diff --git a/src/views/analyse/assessApply/components/riskDialog.vue b/src/views/analyse/assessApply/components/riskDialog.vue
deleted file mode 100644
index 9c38d2f..0000000
--- a/src/views/analyse/assessApply/components/riskDialog.vue
+++ /dev/null
@@ -1,175 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog title="管理实验现实风险" v-model="assessApplyDialogState.assessApplyDialogVisible" width="60%">
-          <div>
-            <el-button @click="openUnitDialog('新增','', assessApplyDialogState.id)" type="primary" style="margin-bottom: 20px" size="default">增加风险分析单元</el-button>
-          </div>
-          <el-table ref="multipleTableRef" :data="assessApplyDialogState.riskUnitData" style="width: 100%" :header-cell-style="{ background: '#fafafa' }">
-            <el-table-column prop="riskCode" label="风险单元编号"/>
-            <el-table-column prop="riskName" label="风险单元名称"/>
-            <el-table-column prop="riskType" label="风险类型">
-              <template #default="scope">
-                <span>{{`${assessApplyDialogState.riskList.find(item =>item.id === scope.row.riskType)?.name || ''}`}}</span>
-              </template>
-            </el-table-column>
-            <el-table-column prop="riskUnitType" label="风险单元类型"/>
-            <el-table-column prop="riskUnitType" label="负责人">
-              <template #default="scope">
-                <span>{{`${assessApplyDialogState.allPersonList.find(item =>item.id === scope.row.liabilityUserId)?.personName || ''}`}}</span>
-              </template>
-            </el-table-column>
-            <el-table-column prop="evaluateStatus" label="是否评价">
-              <template #default="scope">
-                <span>{{scope.row.evaluateStatus == 1?'未评价':scope.row.evaluateStatus == 2?'已评价':'--'}}</span>
-              </template>
-            </el-table-column>
-            <el-table-column label="操作" width="150" align="center">
-              <template #default="scope">
-                <el-button size="default" text  type="primary" @click="openUnitDialog('查看', scope.row, assessApplyDialogState.id)">查看</el-button>
-                <el-button size="default" text  type="primary" @click="openUnitDialog('编辑', scope.row, assessApplyDialogState.id)">编辑</el-button>
-                <el-button size="default" text type="danger" @click="deleteUnit(scope.$index, scope.row)">删除</el-button>
-              </template>
-            </el-table-column>
-          </el-table>
-          <template #footer>
-            <span class="dialog-footer">
-              <el-button @click="assessApplyDialogState.assessApplyDialogVisible = !assessApplyDialogState.assessApplyDialogVisible" type="primary" size="default">确定</el-button>
-            </span>
-          </template>
-          <risk-unit-dialog ref="riskUnitDialogRef" @refresh="getRiskData"></risk-unit-dialog>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-import {personApi} from "/@/api/basic/person";
-import {riskUnitApi} from "/@/api/analyse/riskUnit";
-import {unitApi} from "/@/api/basic/unit";
-import {userApi} from "/@/api/systemManage/user";
-import {ElMessageBox} from "element-plus/es";
-import {identifyApi} from "/@/api/analyse/identify";
-const RiskUnitDialog = defineAsyncComponent(() => import('./riskUnitDialog.vue'));
-
-const assessApplyDialogState = reactive<AssessApplyDialogStateType>({
-    title: '',
-    riskUnitData: [],
-    assessApplyDialogVisible: false,
-    id: null,
-    liabilityUserId: null,
-    riskList: [
-      {id: 1, name: '固有风险'},
-      {id:2, name: '实验风险'}
-    ],
-    basicUnitList: [],
-    allPersonList: [],
-    allRiskTypeList: []
-})
-
-const riskUnitDialogRef = ref()
-
-const showRiskDialog = (value: ProjectType) => {
-    assessApplyDialogState.assessApplyDialogVisible = true;
-    assessApplyDialogState.id = <number>value.id
-    assessApplyDialogState.liabilityUserId = <number>value.liabilityUserId
-    getRiskData()
-};
-
-const openUnitDialog = (title: string, val, id: number) => {
-  riskUnitDialogRef.value.showRiskUnitDialog(title, val, id, assessApplyDialogState.basicUnitList, assessApplyDialogState.allPersonList, assessApplyDialogState.allRiskTypeList);
-};
-
-const getRiskData = async () => {
-  let res = await riskUnitApi().getRiskUnitByList({pageIndex: 1,pageSize: 9999,riskCode: '',riskName: '',experimentId: assessApplyDialogState.id});
-  if(res.data.code === 100){
-    assessApplyDialogState.riskUnitData = JSON.parse(JSON.stringify(res.data.data));
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    })
-  }
-};
-
-const getAllBasicUnitList = async () => {
-  let res = await unitApi().getAllUnit();
-  if(res.data.code === 100){
-    assessApplyDialogState.basicUnitList = JSON.parse(JSON.stringify(res.data.data));
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    })
-  }
-};
-
-const getAllPersonList = async () => {
-  let res = await personApi().getAllPerson();
-  if(res.data.code === 100){
-    assessApplyDialogState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    })
-  }
-};
-
-const getAllTypeList = async () =>{
-  let res = await unitApi().getAllUnitType()
-  if(res.data.code === 100){
-    assessApplyDialogState.allRiskTypeList = JSON.parse(JSON.stringify(res.data.data));
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    })
-  }
-}
-
-const deleteUnit = (index: number, val: IdentifyType) => {
-  ElMessageBox.confirm(`此操作将永久删除该风险单元,是否继续?`, '提示', {
-    confirmButtonText: '确认',
-    cancelButtonText: '取消',
-    type: 'warning'
-  })
-      .then(async () => {
-        let data = { id: val.id }
-        let res = await unitApi().deleteRiskUnitById(data);
-        if (res.data.code === 100) {
-          (<Array<IdentifyType>>assessApplyDialogState.riskUnitData).splice(index, 1)
-          ElMessage({
-            type: 'success',
-            duration: 2000,
-            message: '删除成功'
-          });
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      })
-      .catch((error) => {
-        console.log(error);
-      });
-};
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showRiskDialog
-})
-
-onMounted(() => {
-  getAllBasicUnitList()
-  getAllPersonList()
-  getAllTypeList()
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/analyse/assessApply/components/riskUnitDialog.vue b/src/views/analyse/assessApply/components/riskUnitDialog.vue
deleted file mode 100644
index edf1305..0000000
--- a/src/views/analyse/assessApply/components/riskUnitDialog.vue
+++ /dev/null
@@ -1,199 +0,0 @@
-<template>
-  <div class="system-menu-dialog-container">
-    <el-dialog :title="riskUnitDialogState.title" v-model="riskUnitDialogState.riskUnitDialogVisible" width="600px">
-      <el-form ref="riskUnitFormRef" :rules="riskUnitDialogState.riskUnitFormRules" :model="riskUnitDialogState.riskUnitForm" size="default" label-width="120px">
-        <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 v-model="riskUnitDialogState.riskUnitForm.riskCode" :disabled="riskUnitDialogState.disabled" placeholder="风险单元编号" clearable class="input-length"></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="riskName">
-              <el-input v-model="riskUnitDialogState.riskUnitForm.riskName" :disabled="riskUnitDialogState.disabled" placeholder="风险单元名称" clearable class="input-length"></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="riskUnitTypeId">
-              <el-select v-model="riskUnitDialogState.riskUnitForm.riskUnitTypeId" :disabled="riskUnitDialogState.disabled" placeholder="风险单元类型" clearable class="input-length">
-                <el-option v-for="item in riskUnitDialogState.riskTypeList" :key="item.id" :label="item.riskType" :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="liabilityUserId">
-              <el-select v-model="riskUnitDialogState.riskUnitForm.liabilityUserId" :disabled="riskUnitDialogState.disabled" placeholder="负责人" clearable class="input-length">
-                <el-option v-for="item in riskUnitDialogState.allPersonList" :key="item.id" :label="item.personName" :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="liabilityDep">
-              <el-input v-model="riskUnitDialogState.riskUnitForm.liabilityDep" :disabled="riskUnitDialogState.disabled" placeholder="负责部门" clearable class="input-length"></el-input>
-            </el-form-item>
-          </el-col>
-          <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-if="riskUnitDialogState.experimentType === 1">
-            <el-form-item label="基础风险单元" prop="basicRiskUnitId">
-              <el-select v-model="riskUnitDialogState.riskUnitForm.basicRiskUnitId" :disabled="riskUnitDialogState.disabled" placeholder="基础风险单元" clearable class="input-length">
-                <el-option v-for="item in riskUnitDialogState.basicUnitList" :key="item.id" :label="item.riskName" :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="风险单元描述">
-              <el-input type="textarea" :rows="3" v-model="riskUnitDialogState.riskUnitForm.description" :disabled="riskUnitDialogState.disabled" placeholder="风险单元描述" clearable class="input-length"></el-input>
-            </el-form-item>
-          </el-col>
-        </el-row>
-      </el-form>
-      <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="riskUnitDialogState.riskUnitDialogVisible = !riskUnitDialogState.riskUnitDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitRiskUnit" v-if="!riskUnitDialogState.disabled" size="default">确定</el-button>
-				</span>
-      </template>
-    </el-dialog>
-  </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import { isValidKey } from "/@/utils/methods";
-import {ElMessage} from "element-plus";
-import {riskUnitApi} from "/@/api/analyse/riskUnit";
-
-const riskUnitFormRef = ref()
-
-const riskUnitDialogState = reactive<RiskUnitDialogType>({
-  title: '',
-  experimentType: 2,
-  disabled: false,
-  riskUnitDialogVisible: false,
-  riskUnitForm: {
-    id: null,
-    experimentId: null,
-    riskCode: '',
-    riskName: '',
-    riskUnitTypeId: null,
-    liabilityUserId: null,
-    liabilityDep: '',
-    description: '',
-    basicRiskUnitId: null,
-  },
-  riskUnitFormRules: {
-    riskCode: [{ required: true, message: '请填写风险单元编号', trigger: 'blur' }],
-    riskName: [{ required: true, message: '请填写风险单元名称', trigger: 'blur' }],
-    riskUnitTypeId: [{ required: true, message: '请选择风险单元类型', trigger: 'blur' }],
-    liabilityUserId: [{ required: true, message: '请选择负责人', trigger: 'change' }],
-    basicRiskUnitId: [{ required: true, message: '请选择基础风险单元', trigger: 'change' }]
-  },
-  specialDeviceList: [],
-  deviceUnitList: [
-    {id:1, name: '台'},
-    {id:2, name: '个'},
-    {id:3, name: '件'}
-  ],
-  riskTypeList: [],
-  basicUnitList: [],
-  allPersonList: [],
-  allExperimentList: [],
-  experimentTypeList: [
-    {id: 2, name: '实验风险'},
-    {id: 1, name: '固有风险'},
-  ],
-})
-
-const showRiskUnitDialog = (title: string, val, id: number, basicUnitList: UnitType [], allPersonList: AllPersonListType [], allRiskTypeList: RiskType []) => {
-  riskUnitDialogState.riskUnitDialogVisible = true;
-  riskUnitDialogState.basicUnitList = basicUnitList
-  riskUnitDialogState.allPersonList = allPersonList
-  riskUnitDialogState.riskTypeList = allRiskTypeList
-  riskUnitDialogState.disabled = false
-  setTimeout(() => {
-    riskUnitFormRef.value.clearValidate();
-  });
-  if(title === '新增'){
-    riskUnitDialogState.title = '新增';
-    riskUnitDialogState.riskUnitForm = {
-      id: null,
-      experimentId: id,
-      riskCode: '',
-      riskName: '',
-      riskUnitTypeId: null,
-      liabilityUserId: null,
-      liabilityDep: '',
-      description: '',
-      basicRiskUnitId: null,
-    };
-  }else if(title === '查看'){
-    riskUnitDialogState.title = '查看';
-    riskUnitDialogState.disabled = true
-    for(let i in riskUnitDialogState.riskUnitForm){
-      if(isValidKey(i, riskUnitDialogState.riskUnitForm)){
-        riskUnitDialogState.riskUnitForm[i] = val[i];
-      }
-    }
-  }else{
-    riskUnitDialogState.title = '编辑';
-    for(let i in riskUnitDialogState.riskUnitForm){
-      if(isValidKey(i, riskUnitDialogState.riskUnitForm)){
-        riskUnitDialogState.riskUnitForm[i] = val[i];
-      }
-    }
-  }
-};
-
-const onSubmitRiskUnit = () => {
-  riskUnitFormRef.value.validate(async(valid: boolean) => {
-    if(valid){
-      if(riskUnitDialogState.title === '新增'){
-        let { id, basicRiskUnitId, ...query} = riskUnitDialogState.riskUnitForm
-        let res = await riskUnitApi().addRiskUnit(query);
-        if(res.data.code === 100){
-          emit('refresh')
-          riskUnitDialogState.riskUnitDialogVisible = false;
-          ElMessage({
-            type: 'success',
-            message: '新增成功'
-          })
-        }else{
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg,
-          });
-        }
-      }else{
-        let res = await riskUnitApi().modRiskUnit(riskUnitDialogState.riskUnitForm)
-        if(res.data.code === 100){
-          emit('refresh')
-          riskUnitDialogState.riskUnitDialogVisible = false;
-          ElMessage({
-            type: 'success',
-            message: '编辑成功'
-          })
-        }else{
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg,
-          });
-        }
-      }
-    }else{
-      ElMessage({
-        type: 'warning',
-        message: '请完善基本信息',
-      });
-    }
-  })
-}
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-  showRiskUnitDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/analyse/assessApply/components/selectDanger.vue b/src/views/analyse/assessApply/components/selectDanger.vue
deleted file mode 100644
index 3e051ef..0000000
--- a/src/views/analyse/assessApply/components/selectDanger.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-<template>
-    <tr class="m-color b-font required" style="text-align: center">主要危险源或有害因素</tr>
-    <tr>
-        <td class="w-16 m-color">序号</td>
-        <td class="w-16 m-color">危险源或有害因素</td>
-        <td class="w-16 m-color">危险特性</td>
-        <td class="w-16 m-color">数量</td>
-        <td class="w-16 m-color">其他说明</td>
-        <td class="w-16 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in dangerSourceState.dangerList" :key="index">
-        <td class="w-16">
-            {{ index + 1 }}
-        </td>
-        <td class="w-16">
-          <el-input :disabled="dangerSourceState.disabled" v-model="item.riskSource"></el-input>
-        </td>
-        <td class="w-16">
-          <el-input :disabled="dangerSourceState.disabled" v-model="item.riskCharacteristic"></el-input>
-        </td>
-        <td class="w-16">
-            <el-input :disabled="dangerSourceState.disabled" type="number" v-model="item.number"></el-input>
-        </td>
-        <td class="w-16">
-          <el-input :disabled="dangerSourceState.disabled" v-model="item.description"></el-input>
-        </td>
-        <td class="w-16">
-            <el-button :disabled="dangerSourceState.disabled" type="danger" @click="deleteDangerItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="dangerSourceState.disabled" type="primary" shape="round" @click="addDangerItem()">
-            添加行
-        </el-button>
-    </tr>
-</template>
-
-<script setup lang="ts">
-import {reactive, watchEffect} from "vue";
-
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<DangerListType>
-});
-
-const dangerSourceState = reactive<DangerSourceType>({
-    disabled: false,
-    dangerList: []
-})
-
-watchEffect(() => {
-    dangerSourceState.dangerList = props.data as Array<DangerListType>
-    dangerSourceState.disabled = props.disabled
-  console.log(dangerSourceState.dangerList,'dangerSourceState.dangerList')
-});
-
-const addDangerItem = () => {
-    dangerSourceState.dangerList.push({riskSource: '', riskCharacteristic: '', number: null, description: ''});
-};
-
-const deleteDangerItem = (index: number) => {
-    dangerSourceState.dangerList.splice(index,1);
-};
-
-const formatList = (formatList: Array<DangerListType>) => {
-    dangerSourceState.dangerList = formatList
-}
-
-defineExpose({
-    dangerSourceState
-});
-
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-      &.required {
-        &::before {
-          content: "*";
-          display: inline-block;
-          color: red;
-        }
-      }
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.required {
-              &::before {
-                content: "*";
-                display: inline-block;
-                color: red;
-              }
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-:deep(.el-input__wrapper ){
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/analyse/assessApply/index.ts b/src/views/analyse/assessApply/index.ts
deleted file mode 100644
index 8e28d84..0000000
--- a/src/views/analyse/assessApply/index.ts
+++ /dev/null
@@ -1,66 +0,0 @@
-declare interface ReportStateType {
-
-}
-
-declare interface ReportDialogType {
-	title: string
-	disabled: boolean
-	reportDialogVisible: boolean
-	reportForm: {
-		id: null | number,
-		experimentName: string,
-		experimentType: null | number,
-		personUser: string,
-		personUserId: null | number,
-		personUserPhone: string,
-		safePersonUserId: null | number,
-		safePersonUser: string,
-		safePersonUserPhone: string,
-		dep: string,
-		experimentSite: [],
-		experimentDesc: string,
-		emergencyMeasure: string,
-		assessPerson: string,
-		safeRiskAnalysis: string,
-		assessLevel: null | number,
-		riskSource: [],
-		riskSourceType: [],
-		description: string,
-		person: []
-	}
-	reportFormRules: object
-	allPersonList: Array<AllPersonListType>
-	systemPersonList: Array<AllPersonListType>
-	allRoomList: Array<RoomType>,
-	experimentTypeList: Array<Type>
-}
-
-declare interface DangerSourceType {
-	disabled: boolean
-	dangerList: Array<DangerListType>
-}
-
-
-declare interface DangerListType {
-	riskSource: string
-	riskCharacteristic: string
-	number: null | number
-	description: string
-}
-
-declare interface AssessApplyDialogStateType {
-	title: string,
-	assessApplyDialogVisible: boolean,
-	id: number | null,
-	liabilityUserId: number | null,
-	riskUnitData: Array<any>,
-	riskList: Array<type>,
-	basicUnitList: Array<UnitType>
-	allPersonList: Array<AllPersonListType>
-	allRiskTypeList: Array<RiskType>
-}
-
-declare interface type {
-	id: number,
-	name: string
-}
\ No newline at end of file
diff --git a/src/views/analyse/assessApply/index.vue b/src/views/analyse/assessApply/index.vue
deleted file mode 100644
index b593b5a..0000000
--- a/src/views/analyse/assessApply/index.vue
+++ /dev/null
@@ -1,379 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>实验名称:</span>
-                    <el-input v-model="developState.searchQuery.searchParams.experimentName" clearable filterable class="input-box" placeholder="实验名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>实验类型:</span>
-                    <el-select v-model="developState.searchQuery.searchParams.experimentType" clearable filterable class="input-box" placeholder="实验类型">
-                        <el-option v-for="item in developState.experimentTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getAssessData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </el-row>
-            <div class="homeCard">
-                <div class="main-card">
-                    <el-row class="cardTop">
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="developState.developData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="experimentCode" label="实验编号"/>
-                        <el-table-column prop="experimentName" label="实验名称"/>
-                        <el-table-column prop="createExperimentTime" label="立项时间">
-                          <template #default="scope">
-                            <span>{{scope.row.createExperimentTime?scope.row.createExperimentTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="startTime" label="开展时间" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.startTime?scope.row.startTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="siteList" label="实验场所" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.siteList.map(i=>i.siteName).join(',')}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="experimentType" label="实验类别">
-                          <template #default="scope">
-                            <span>{{developState.experimentTypeList.find(i=>i.id == scope.row.experimentType)?.name}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="status" label="评估申请">
-                          <template #default="scope">
-                            <span>{{scope.row.status == 1?'未申请':scope.row.status == 2?'已申请':'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="status" label="评估申请时间" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.assessApplyTime?scope.row.assessApplyTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="stage" label="评估状态">
-                          <template #default="scope">
-                            <el-tag :type="scope.row.stage == 4?'success':scope.row.stage == 1?'info':''">
-                              {{scope.row.stage == 1?'未评估':scope.row.stage == 2?'评估中':scope.row.stage == 3?'评估完成':scope.row.stage == 4?'生成报告':'--'}}
-                            </el-tag>
-                          </template>
-                        </el-table-column>
-                        <el-table-column label="操作" width="250" fixed="right">
-                            <template #default="scope">
-                                <el-button size="small" v-if="scope.row.stage == 3" text type="primary" :icon="Edit" @click="toReport(scope.row)">生成评估报告</el-button>
-                                <el-button size="small" text type="primary" :icon="Edit" @click="openRiskDialog(scope.row)">管理实验风险单元</el-button>
-                                <el-button size="small" v-if="scope.row.stage == 4 && !scope.row.assessPerson" text type="primary" :icon="View" @click="openReportDialog('提交', scope.row)">提交审批</el-button>
-                                <el-button size="small" v-if="scope.row.stage == 4 && scope.row.assessPerson" text type="primary" :icon="View" @click="openReportDialog('修改', scope.row)">修改</el-button>
-                                <el-button size="small" v-if="scope.row.stage == 4 && scope.row.assessPerson" text type="primary" :icon="Edit" @click="openReportDialog('查看',scope.row)">查看</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="developState.searchQuery.pageIndex" background v-model:page-size="developState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="developState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <risk-dialog ref="RiskDialogRef" @refresh="getAssessData"></risk-dialog>
-        <report-dialog ref="ReportDialogRef" @refresh="getAssessData"></report-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {projectApi} from "/@/api/experiment/project";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { View,Edit, Plus, RefreshLeft } from '@element-plus/icons-vue';
-import {roomApi} from "/@/api/basic/room";
-import {assessApplyApi} from "/@/api/analyse/assessApply";
-
-const RiskDialog = defineAsyncComponent(() => import('./components/riskDialog.vue'));
-const ReportDialog = defineAsyncComponent(() => import('./components/reportDialog.vue'));
-
-const RiskDialogRef = ref();
-
-const ReportDialogRef = ref();
-const developState = reactive<ProjectStateType>({
-    developData: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        searchParams: {
-            experimentName: '',
-            experimentType: null,
-        }
-    },
-    total: 0,
-    experimentTypeList: [
-        {id: 1, name: '化学类'},
-        {id: 2, name: '生物类'},
-        {id: 3, name: '辐射类'},
-        {id: 4, name: '机电类'},
-        {id: 5, name: '特种设备类'},
-        {id: 6, name: '其它类'},
-    ],
-    allRoomList: []
-})
-
-const getAssessData = async () => {
-    let res = await assessApplyApi().getData(developState.searchQuery);
-    if(res.data.code === 100){
-        developState.developData = res.data.data;
-        developState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const toReport = (val: ProjectType)=>{
-  ElMessageBox.confirm(`此操作将对该实验生成风险评估报告:“${val.experimentName}”,是否继续?`, '提示', {
-    confirmButtonText: '确认',
-    cancelButtonText: '取消',
-    type: 'warning'
-  })
-      .then(async () => {
-        let res = await assessApplyApi().toRiskReport({ id: val.id });
-        if (res.data.code === 100) {
-          ElMessage({
-            type: 'success',
-            duration: 2000,
-            message: '生成报告成功'
-          });
-          await getAssessData();
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      })
-      .catch((error) => {
-      });
-}
-
-const getAllRoom = async () => {
-  let res = await roomApi().getAllRoom();
-  if(res.data.code === 100){
-    developState.allRoomList = JSON.parse(JSON.stringify(res.data.data));
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    })
-  }
-};
-
-const openRiskDialog = (value: ProjectType) => {
-    RiskDialogRef.value.showRiskDialog(value);
-};
-
-const openReportDialog = (title: string,value: ProjectType) =>{
-  ReportDialogRef.value.showReportDialog(title, value, developState.allRoomList);
-}
-
-const onDelProject = (val: ProjectType) => {
-    ElMessageBox.confirm(`此操作将永久删除该实验:“${val.experimentCode}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await projectApi().deleteProjectById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getAssessData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    developState.searchQuery.pageSize = val;
-    getAssessData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    developState.searchQuery.pageIndex = val;
-    getAssessData();
-};
-
-const reset = () => {
-    developState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        searchParams: {
-            experimentName: '',
-            experimentType: null,
-        }
-    }
-};
-
-onMounted(() => {
-    getAssessData()
-    getAllRoom()
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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);
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/analyse/evaluate/components/evaluateDialog.vue b/src/views/analyse/evaluate/components/evaluateDialog.vue
deleted file mode 100644
index 145d202..0000000
--- a/src/views/analyse/evaluate/components/evaluateDialog.vue
+++ /dev/null
@@ -1,1204 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="evaluateDialogState.title" v-model="evaluateDialogState.evaluateDialogVisible" width="70%">
-            <el-form ref="evaluateFormRef" :rules="evaluateDialogState.evaluateFormRules" :model="evaluateDialogState.evaluateForm" size="default" label-width="140px">
-                <el-row :gutter="35">
-<!--                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">-->
-<!--                        <el-form-item label="评估计划" prop="id">-->
-<!--                            <el-select class="input-length" :disabled="true" v-model="evaluateDialogState.evaluateForm.id" style="width:100%" placeholder="评估计划" clearable>-->
-<!--                                <el-option v-for="item in evaluateDialogState.planList" :key="item.id" :label="item.assessPlanName" :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="riskValue">-->
-<!--                            <el-input type="number" class="input-length" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.riskValue" style="width:100%" placeholder="风险数值">-->
-<!--                            </el-input>-->
-<!--                        </el-form-item>-->
-<!--                    </el-col>-->
-
-                    <div class="evaluateCard">
-                      <div class="cardTit">
-                        <span v-if="evaluateDialogState.evaluateForm.identificationMethod === 1">PHA辨识法</span>
-                        <span v-if="evaluateDialogState.evaluateForm.identificationMethod === 2">JHA辨识法</span>
-                        <span v-if="evaluateDialogState.evaluateForm.identificationMethod === 3">SCL辨识法</span>
-                        <span v-if="evaluateDialogState.evaluateForm.identificationMethod === 4">HAZOP辨识法</span>
-                        <span v-if="evaluateDialogState.evaluateForm.identificationMethod === 5">类比辨识法</span>
-                      </div>
-                      <div v-if="evaluateDialogState.evaluateForm.identificationMethod === 1">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="检查项目">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.phaCheckItem" 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="存在风险因素">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.phaRiskFactor" 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="可能产生的后果">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.phaResult" placeholder="可能产生的后果" clearable></el-input>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div v-if="evaluateDialogState.evaluateForm.identificationMethod === 2">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="作业步骤">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.jhaCheckItem" 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="危险源或潜在事件">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.jhaRiskFactor" 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="可能产生的后果">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.jhaResult" placeholder="可能产生的后果" clearable></el-input>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div v-if="evaluateDialogState.evaluateForm.identificationMethod === 3">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="检查项目">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.sclCheckItem" 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="检查标准">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.sclCheckStandard" 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="不符合标准情况">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.sclCheckUnstandard" 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="主要后果">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.sclCheckResult" placeholder="主要后果" clearable></el-input>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div v-if="evaluateDialogState.evaluateForm.identificationMethod === 4">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="节点">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.hazopNode" placeholder="HAZOP_节点" 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="参数">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.hazopParam" placeholder="HAZOP_参数" 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="参数描述">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.hazopParamDesc" placeholder="HAZOP_参数描述" 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="引导词">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.hazopGuide" placeholder="HAZOP_引导词" 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="偏差">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.hazopDeviation" placeholder="HAZOP_偏差" 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="可能原因">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.hazopPossibleCauses" placeholder="HAZOP_可能原因" 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="主要后果">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.hazopResult" placeholder="HAZOP_主要后果" clearable></el-input>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div v-if="evaluateDialogState.evaluateForm.identificationMethod === 5">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="检查项目" prop="analogyCheckItem">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.analogyCheckItem" 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="analogyReference">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.analogyReference" 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="analogyRiskFactor">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.analogyRiskFactor" 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="analogyResult">
-                            <el-input class="input-length" disabled v-model="evaluateDialogState.evaluateInfo.analogyResult" placeholder="可能产生的后果" clearable></el-input>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                    </div>
-
-                    <el-col style="display: flex;align-items: center" :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                      <el-form-item label="评价方法" style="width: 80% !important;">
-                        <el-select class="input-length" disabled v-model="evaluateDialogState.evaluateForm.evaluateMethod" style="width:100%" placeholder="评价方法" clearable>
-                          <el-option v-for="item in evaluateDialogState.evaluateMethodList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                        </el-select>
-                      </el-form-item>
-                      <el-button :disabled="evaluateDialogState.disabled" size="default" type="primary" @click="openChangeMethod()">修改评价方法</el-button>
-                    </el-col>
-
-                    <div class="evaluateCard">
-                      <div class="cardTit">
-                        <span>固有风险评分</span>
-                      </div>
-                      <div class="valueSelect" v-if="evaluateDialogState.evaluateMethod === 1">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="LEC_L" prop="originalLecL">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalLecL" @change="calcOriginScore('lec')" style="width:100%" placeholder="LEC_L的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLecL" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="LEC_E" prop="originalLecE">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalLecE" @change="calcOriginScore('lec')" style="width:100%" placeholder="LEC_E的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLecE" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="LEC_C" prop="originalLecC">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalLecC" @change="calcOriginScore('lec')" style="width:100%" placeholder="LEC_C的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLecC" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div class="longTit"><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div class="longTit"><div>人员伤亡:</div><span>{{item.person}}</span></div>
-                                  <div class="longTit"><div>直接经济损失:</div><span>{{item.money}}</span></div>
-                                  <div class="longTit"><div>停工情况:</div><span>{{item.stopWork}}</span></div>
-                                  <div class="longTit"><div>企业形象:</div><span>{{item.company}}</span></div>
-                                  <div class="longTit"><div>法律,法规及其它要求:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div class="valueSelect" v-if="evaluateDialogState.evaluateMethod === 2">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="LS_L" prop="originalLsL">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalLsL" @change="calcOriginScore('ls')" style="width:100%" placeholder="LS_L的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLsL" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="LS_S" prop="originalLsS">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalLsS" @change="calcOriginScore('ls')" style="width:100%" placeholder="LS_S的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLsS" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div class="longTit"><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div class="longTit"><div>人员伤亡:</div><span>{{item.person}}</span></div>
-                                  <div class="longTit"><div>直接经济损失:</div><span>{{item.money}}</span></div>
-                                  <div class="longTit"><div>停工情况:</div><span>{{item.stopWork}}</span></div>
-                                  <div class="longTit"><div>企业形象:</div><span>{{item.company}}</span></div>
-                                  <div class="longTit"><div>法律,法规及其它要求:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div class="valueSelect" v-if="evaluateDialogState.evaluateMethod === 3">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="MES_M" prop="originalMesM">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalMesM" @change="calcOriginScore('mes')" style="width:100%" placeholder="MES_M的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listMesM" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="MES_E" prop="originalMesE">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalMesE" @change="calcOriginScore('mes')" style="width:100%" placeholder="MES_E的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listMesE" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>e1标准:</div><span>{{item.e1Desc}}</span></div>
-                                  <div><div>e2标准:</div><span>{{item.e2Desc}}</span></div>
-                                </div>
-                              </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="MES_S" prop="originalMesS">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalMesS" @change="calcOriginScore('mes')" style="width:100%" placeholder="MES_S的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listMesS" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div class="longTit"><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div class="longTit"><div>人员伤亡:</div><span>{{item.person}}</span></div>
-                                  <div class="longTit"><div>直接经济损失:</div><span>{{item.money}}</span></div>
-                                  <div class="longTit"><div>停工情况:</div><span>{{item.stopWork}}</span></div>
-                                  <div class="longTit"><div>法律,法规及其它要求:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div class="valueSelect" v-if="evaluateDialogState.evaluateMethod === 4">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="RS_R" prop="originalRsR">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalRsR" @change="calcOriginScore('rs')" style="width:100%" placeholder="RS_R的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listRsR" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div class="longTit"><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div class="longTit"><div>区间,定量描述:</div><span>{{item.section}}</span></div>
-                                  <div class="longTit"><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="RS_S" prop="originalRsS">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.originalRsS" @change="calcOriginScore('rs')" style="width:100%" placeholder="RS_S的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listRsS" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>人员伤亡:</div><span>{{item.person}}</span></div>
-                                  <div><div>直接经济损失:</div><span>{{item.money}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                    </div>
-
-                    <div class="evaluateCard">
-                      <div class="cardTit">
-                        <span>固有风险分值</span>
-                      </div>
-                      <div>
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="风险值" prop="originalRiskValue">
-                            <el-input type="number" class="input-length" disabled v-model="evaluateDialogState.evaluateForm.originalRiskValue" 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="originalRiskLevelValue">
-                            <el-select class="input-length" disabled v-model="evaluateDialogState.evaluateForm.originalRiskLevelValue" style="width:100%" placeholder="风险等级值" clearable>
-                              <el-option v-for="item in evaluateDialogState.riskLevelValueList" :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="originalRiskLevel">
-                            <el-select class="input-length" disabled v-model="evaluateDialogState.evaluateForm.originalRiskLevel" style="width:100%" placeholder="风险级别" clearable>
-                              <el-option v-for="item in evaluateDialogState.riskLevelList" :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="originalRiskColor">
-                            <el-select class="input-length" disabled v-model="evaluateDialogState.evaluateForm.originalRiskColor" style="width:100%" placeholder="风险色" clearable>
-                              <el-option v-for="item in evaluateDialogState.riskColorList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                    </div>
-
-                    <div class="evaluateCard">
-                      <div class="cardTit">
-                        <span>现有措施</span>
-                      </div>
-                      <div>
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="技术措施" prop="technologyMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.technologyMeasure" 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="manageMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.manageMeasure" 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="educationMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.educationMeasure" 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="personalProtectionMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.personalProtectionMeasure" 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="emergencyMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.emergencyMeasure" placeholder="应急措施" clearable></el-input>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                    </div>
-
-                    <div class="evaluateCard">
-                      <div class="cardTit">
-                        <span>现有风险评分</span>
-                      </div>
-                      <div class="valueSelect" v-if="evaluateDialogState.evaluateMethod === 1">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="LEC_L" prop="lecL">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.lecL" @change="calcScore('lec')" style="width:100%" placeholder="LEC_L的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLecL" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="LEC_E" prop="lecE">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.lecE" @change="calcScore('lec')" style="width:100%" placeholder="LEC_E的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLecE" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="LEC_C" prop="lecC">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.lecC" @change="calcScore('lec')" style="width:100%" placeholder="LEC_C的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLecC" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div class="longTit"><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div class="longTit"><div>人员伤亡:</div><span>{{item.person}}</span></div>
-                                  <div class="longTit"><div>直接经济损失:</div><span>{{item.money}}</span></div>
-                                  <div class="longTit"><div>停工情况:</div><span>{{item.stopWork}}</span></div>
-                                  <div class="longTit"><div>企业形象:</div><span>{{item.company}}</span></div>
-                                  <div class="longTit"><div>法律,法规及其它要求:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div class="valueSelect" v-if="evaluateDialogState.evaluateMethod === 2">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="LS_L" prop="lsL">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.lsL" @change="calcScore('ls')" style="width:100%" placeholder="LS_L的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLsL" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="LS_S" prop="lsS">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.lsS" @change="calcScore('ls')" style="width:100%" placeholder="LS_S的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listLsS" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div class="longTit"><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div class="longTit"><div>人员伤亡:</div><span>{{item.person}}</span></div>
-                                  <div class="longTit"><div>直接经济损失:</div><span>{{item.money}}</span></div>
-                                  <div class="longTit"><div>停工情况:</div><span>{{item.stopWork}}</span></div>
-                                  <div class="longTit"><div>企业形象:</div><span>{{item.company}}</span></div>
-                                  <div class="longTit"><div>法律,法规及其它要求:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div class="valueSelect" v-if="evaluateDialogState.evaluateMethod === 3">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="MES_M" prop="mesM">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.mesM" @change="calcScore('mes')" style="width:100%" placeholder="MES_M的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listMesM" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="MES_E" prop="mesE">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.mesE" @change="calcScore('mes')" style="width:100%" placeholder="MES_E的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listMesE" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>e1标准:</div><span>{{item.e1Desc}}</span></div>
-                                  <div><div>e2标准:</div><span>{{item.e2Desc}}</span></div>
-                                </div>
-                              </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="MES_S" prop="mesS">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.mesS" @change="calcScore('mes')" style="width:100%" placeholder="MES_S的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listMesS" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div class="longTit"><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div class="longTit"><div>人员伤亡:</div><span>{{item.person}}</span></div>
-                                  <div class="longTit"><div>直接经济损失:</div><span>{{item.money}}</span></div>
-                                  <div class="longTit"><div>停工情况:</div><span>{{item.stopWork}}</span></div>
-                                  <div class="longTit"><div>法律,法规及其它要求:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                      <div class="valueSelect" v-if="evaluateDialogState.evaluateMethod === 4">
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="RS_R" prop="rsR">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.rsR" @change="calcScore('rs')" style="width:100%" placeholder="RS_R的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listRsR" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div class="longTit"><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div class="longTit"><div>区间,定量描述:</div><span>{{item.section}}</span></div>
-                                  <div class="longTit"><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </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="RS_S" prop="rsS">
-                            <el-select class="input-length" :teleported="false" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.rsS" @change="calcScore('rs')" style="width:100%" placeholder="RS_S的数值" clearable>
-                              <el-option v-for="item in evaluateDialogState.listRsS" :key="item.value" :label="item.value" :value="item.value">
-                                <div class="valueTable">
-                                  <div><div>分值:</div><span>{{item.value}}</span></div>
-                                  <div><div>人员伤亡:</div><span>{{item.person}}</span></div>
-                                  <div><div>直接经济损失:</div><span>{{item.money}}</span></div>
-                                  <div><div>标准:</div><span>{{item.desc}}</span></div>
-                                </div>
-                              </el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                    </div>
-
-                    <div class="evaluateCard">
-                      <div class="cardTit">
-                        <span>现有风险分值</span>
-                      </div>
-                      <div>
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="风险值" prop="riskValue">
-                            <el-input type="number" class="input-length" disabled v-model="evaluateDialogState.evaluateForm.riskValue" 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="riskLevelValue">
-                            <el-select class="input-length" disabled v-model="evaluateDialogState.evaluateForm.riskLevelValue" style="width:100%" placeholder="风险等级值" clearable>
-                              <el-option v-for="item in evaluateDialogState.riskLevelValueList" :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="riskLevel">
-                            <el-select class="input-length" disabled v-model="evaluateDialogState.evaluateForm.riskLevel" style="width:100%" placeholder="风险级别" clearable>
-                              <el-option v-for="item in evaluateDialogState.riskLevelList" :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="riskColor">
-                            <el-select class="input-length" disabled v-model="evaluateDialogState.evaluateForm.riskColor" style="width:100%" placeholder="风险色" clearable>
-                              <el-option v-for="item in evaluateDialogState.riskColorList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                            </el-select>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                    </div>
-
-                    <div class="evaluateCard">
-                      <div class="cardTit">
-                        <span>建议措施</span>
-                      </div>
-                      <div>
-                        <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                          <el-form-item label="技术措施" prop="adviseTechnologyMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.adviseTechnologyMeasure" 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="adviseManageMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.adviseManageMeasure" 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="adviseEducationMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.adviseEducationMeasure" 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="advisePersonalProtectionMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.advisePersonalProtectionMeasure" 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="adviseEmergencyMeasure">
-                            <el-input type="textarea" class="input-length" :autosize="{ minRows:1 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.adviseEmergencyMeasure" placeholder="应急措施" clearable></el-input>
-                          </el-form-item>
-                        </el-col>
-                      </div>
-                    </div>
-
-                    <el-col style="display: flex;align-items: center" :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                      <el-form-item label="评价专家意见" prop="evaluateDesc" style="width: 100% !important;">
-                        <el-input type="textarea" class="input-length" :autosize="{ minRows:2 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.evaluateDesc" placeholder="评价专家意见" clearable></el-input>
-                      </el-form-item>
-                    </el-col>
-                    <el-col style="display: flex;align-items: center" :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                      <el-form-item label="安全风险分析" prop="evaluateDesc" style="width: 100% !important;">
-                        <el-input type="textarea" class="input-length" :autosize="{ minRows:2 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.safeRiskAnalysis" placeholder="安全风险分析" clearable></el-input>
-                      </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <el-dialog title="修改评价方法" v-model="evaluateDialogState.evaluateMethodVisible" width="30%">
-              <el-select class="input-length" v-model="evaluateDialogState.evaluateForm.evaluateMethod" style="width:100%" placeholder="评价方法" clearable>
-                <el-option v-for="item in evaluateDialogState.evaluateMethodList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-              </el-select>
-              <template #footer>
-              <span class="Query-footer">
-                <el-button @click="evaluateDialogState.evaluateMethodVisible = false" size="default">取 消</el-button>
-                <el-button type="primary" @click="conFirmChange()" size="default">确定</el-button>
-              </span>
-              </template>
-            </el-dialog>
-            <template #footer>
-              <span class="dialog-footer">
-                <el-button @click="evaluateDialogState.evaluateDialogVisible = !evaluateDialogState.evaluateDialogVisible" size="default">取 消</el-button>
-                <el-button v-if="!evaluateDialogState.disabled" type="primary" @click="onSubmitEvaluate" size="default">提交</el-button>
-              </span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {computed, onMounted, reactive, ref} from "vue";
-import {ElMessage} from "element-plus";
-import {evaluateApi} from "/@/api/analyse/evaluate";
-import {isValidKey, numFloat} from "/@/utils/methods";
-import { BigNumber } from 'bignumber.js';
-import {identifyApi} from "/@/api/analyse/identify";
-import {ElMessageBox} from "element-plus/es";
-
-const evaluateFormRef = ref()
-
-const evaluateDialogState = reactive<EvaluateDialogType>({
-    title: '',
-    time:[],
-    disabled: false,
-    evaluateDialogVisible: false,
-    evaluateMethodVisible:false,
-    evaluateMethod: null,
-    evaluateInfo: {
-      id: null,
-      identificationMethod: null,
-      result: null,
-      identificationDesc: '',
-      analogyCheckItem: '',
-      analogyRiskFactor: '',
-      analogyResult: '',
-      analogyReference: '',
-      hazopNode: '',
-      hazopParam: '',
-      hazopParamDesc: '',
-      hazopGuide: '',
-      hazopDeviation: '',
-      hazopPossibleCauses: '',
-      hazopResult: '',
-      jhaCheckItem: '',
-      jhaRiskFactor: '',
-      jhaResult: '',
-      phaCheckItem: '',
-      phaRiskFactor: '',
-      phaResult: '',
-      sclCheckItem: '',
-      sclCheckStandard: '',
-      sclCheckUnstandard: '',
-      sclCheckResult: '',
-      hazopId: null,
-      jhaId: null,
-      phaId: null,
-      sclId: null,
-      analogyId: null
-    },
-    evaluateForm: {
-        id: null,
-        evaluateMethod: null,
-        identificationMethod: null,
-        identificationId: null,
-        manageLevel: 1,
-        originalManageLevel: 1,
-        riskValue: null,
-        riskLevelValue: null,
-        riskLevel: null,
-        riskColor: null,
-        lecL: null,
-        lecE: null,
-        lecC: null,
-        lsL: null,
-        lsS: null,
-        mesM: null,
-        mesE: null,
-        mesS: null,
-        rsR: null,
-        rsS: null,
-        lecId: null,
-        lsId: null,
-        mesId: null,
-        rsId: null,
-        originalLecL: null,
-        originalLecE: null,
-        originalLecC: null,
-        originalLsL: null,
-        originalLsS: null,
-        originalMesM: null,
-        originalMesE: null,
-        originalMesS: null,
-        originalRsR: null,
-        originalRsS: null,
-        originalRiskValue: null,
-        originalRiskLevelValue: null,
-        originalRiskLevel: null,
-        originalRiskColor: null,
-        technologyMeasure: '',
-        manageMeasure: '',
-        educationMeasure: '',
-        personalProtectionMeasure: '',
-        emergencyMeasure: '',
-        adviseTechnologyMeasure: '',
-        adviseManageMeasure: '',
-        adviseEducationMeasure: '',
-        advisePersonalProtectionMeasure: '',
-        adviseEmergencyMeasure: '',
-        evaluateDesc: '',
-        safeRiskAnalysis: ''
-    },
-    evaluateFormRules: {
-
-    },
-    listLecL: [],
-    listLecE: [],
-    listLecC: [],
-    listLsL:[],
-    listLsS:[],
-    listRsR:[],
-    listRsS:[],
-    listMesM:[],
-    listMesE:[],
-    listMesS:[],
-    manageLevelList: [
-        {id:1, name: '院所级'},
-        {id:2, name: '部门级'},
-        {id:3, name: '项目组级'},
-    ],
-    riskColorList: [
-        {id:1, name: '蓝色'},
-        {id:2, name: '黄色'},
-        {id:3, name: '橙色'},
-        {id:4, name: '红色'},
-    ],
-    riskLevelList: [
-        {id:1, name: '低'},
-        {id:2, name: '一般'},
-        {id:3, name: '较大'},
-        {id:4, name: '重大'},
-    ],
-    riskLevelValueList: [
-        {id:1, name: '1级'},
-        {id:2, name: '2级'},
-        {id:3, name: '3级'},
-        {id:4, name: '4级'},
-        {id:5, name: '5级'},
-    ],
-    identificationMethodList: [
-        {id:1, name: 'PHA'},
-        {id:2, name: 'JHA'},
-        {id:3, name: 'SCL'},
-        {id:4, name: 'HAZOP'},
-        {id:5, name: '类比法'},
-    ],
-    evaluateMethodList: [
-        {id:1, name: 'LEC'},
-        {id:2, name: 'LS'},
-        {id:3, name: 'MES'},
-        {id:4, name: 'RS'},
-    ]
-})
-
-const numOriginValue = computed( () => {
-    return numFloat(
-        evaluateDialogState.evaluateForm.originalLecL,
-        evaluateDialogState.evaluateForm.originalLecE,
-        evaluateDialogState.evaluateForm.originalLecC,
-        evaluateDialogState.evaluateForm.originalLsL,
-        evaluateDialogState.evaluateForm.originalLsS,
-        evaluateDialogState.evaluateForm.originalMesM,
-        evaluateDialogState.evaluateForm.originalMesE,
-        evaluateDialogState.evaluateForm.originalMesS,
-        evaluateDialogState.evaluateForm.originalRsR,
-        evaluateDialogState.evaluateForm.originalRsS
-    )
-})
-
-const numValue = computed( () => {
-  return numFloat(
-      evaluateDialogState.evaluateForm.lecL,
-      evaluateDialogState.evaluateForm.lecE,
-      evaluateDialogState.evaluateForm.lecC,
-      evaluateDialogState.evaluateForm.lsL,
-      evaluateDialogState.evaluateForm.lsS,
-      evaluateDialogState.evaluateForm.mesM,
-      evaluateDialogState.evaluateForm.mesE,
-      evaluateDialogState.evaluateForm.mesS,
-      evaluateDialogState.evaluateForm.rsR,
-      evaluateDialogState.evaluateForm.rsS
-  )
-})
-
-const showEvaluateDialog = (title: string, value: IdentifyType ) => {
-    evaluateDialogState.evaluateDialogVisible = true;
-    evaluateDialogState.disabled = false
-    evaluateDialogState.evaluateMethod = value.evaluateMethod as number
-    evaluateDialogState.evaluateInfo = value
-    setTimeout(() => {
-        evaluateFormRef.value.clearValidate();
-    });
-    if( title === '评价'){
-      if(value.riskValue){
-        evaluateDialogState.title = '编辑评价';
-        for(let i in evaluateDialogState.evaluateForm){
-          if(isValidKey(i, evaluateDialogState.evaluateForm)){
-            evaluateDialogState.evaluateForm[i] = value[i]
-          }
-        }
-      }else{
-        evaluateDialogState.title = '评价'
-        evaluateDialogState.evaluateForm = {
-          id: null,
-          evaluateMethod: null,
-          identificationMethod: null,
-          identificationId: null,
-          manageLevel: 1,
-          originalManageLevel: 1,
-          riskValue: null,
-          riskLevelValue: null,
-          riskLevel: null,
-          riskColor: null,
-          lecL: null,
-          lecE: null,
-          lecC: null,
-          lsL: null,
-          lsS: null,
-          mesM: null,
-          mesE: null,
-          mesS: null,
-          rsR: null,
-          rsS: null,
-          lecId: null,
-          lsId: null,
-          mesId: null,
-          rsId: null,
-          originalLecL: null,
-          originalLecE: null,
-          originalLecC: null,
-          originalLsL: null,
-          originalLsS: null,
-          originalMesM: null,
-          originalMesE: null,
-          originalMesS: null,
-          originalRsR: null,
-          originalRsS: null,
-          originalRiskValue: null,
-          originalRiskLevelValue: null,
-          originalRiskLevel: null,
-          originalRiskColor: null,
-          technologyMeasure: '',
-          manageMeasure: '',
-          educationMeasure: '',
-          personalProtectionMeasure: '',
-          emergencyMeasure: '',
-          adviseTechnologyMeasure: '',
-          adviseManageMeasure: '',
-          adviseEducationMeasure: '',
-          advisePersonalProtectionMeasure: '',
-          adviseEmergencyMeasure: '',
-          evaluateDesc: '',
-          safeRiskAnalysis: ''
-        };
-      }
-    }else {
-        evaluateDialogState.title = '查看'
-        evaluateDialogState.disabled = true
-        for(let i in evaluateDialogState.evaluateForm){
-            if(isValidKey(i, evaluateDialogState.evaluateForm)){
-                evaluateDialogState.evaluateForm[i] = value[i]
-            }
-        }
-    }
-    evaluateDialogState.evaluateForm.id = value.id as number
-    evaluateDialogState.evaluateForm.evaluateMethod = value.evaluateMethod as number
-    evaluateDialogState.evaluateForm.identificationMethod = value.phaId?1:value.jhaId?2:value.sclId?3:value.hazopId?4:5
-    evaluateDialogState.evaluateForm.identificationId = (value.hazopId || value.jhaId || value.phaId || value.sclId || value.analogyId) as number
-};
-
-const openChangeMethod = ()=>{
-  evaluateDialogState.evaluateMethodVisible = true
-}
-
-const conFirmChange = async () =>{
-  ElMessageBox.confirm(`此操作将修改该评价计划的评价方法并清除之前的所有评价信息,是否继续?`, '提示', {
-    confirmButtonText: '确认',
-    cancelButtonText: '取消',
-    type: 'warning'
-  })
-      .then(async () => {
-        let res = await evaluateApi().modEvaluateMethod({
-          id: evaluateDialogState.evaluateForm.id,
-          evaluateMethodId: evaluateDialogState.evaluateForm.evaluateMethod
-        });
-        if(res.data.code === 100){
-          ElMessage({
-            type: 'success',
-            message: '评价方法修改成功'
-          })
-          emit('refresh')
-        }else{
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          })
-        }
-        evaluateDialogState.evaluateMethodVisible = false
-        evaluateDialogState.evaluateDialogVisible = false
-      })
-      .catch((error) => {
-      });
-}
-
-const onSubmitEvaluate = () => {
-    evaluateFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            // evaluateDialogState.evaluateForm.riskValue = Number(numOriginValue.value)
-            if(evaluateDialogState.title === '评价'){
-                let { lecId, lsId, mesId, rsId, ...data} = evaluateDialogState.evaluateForm
-                let res = await evaluateApi().addEvaluate(data);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    evaluateDialogState.evaluateDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '评价成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await evaluateApi().modEvaluate(evaluateDialogState.evaluateForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    evaluateDialogState.evaluateDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-}
-
-const getListLecL = async() =>{
-  let res = await evaluateApi().getListLecL()
-  if(res.data.code === 100){
-    evaluateDialogState.listLecL = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-
-const getListLecE = async() =>{
-  let res = await evaluateApi().getListLecE()
-  if(res.data.code === 100){
-    evaluateDialogState.listLecE = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-
-const getListLecC = async() =>{
-  let res = await evaluateApi().getListLecC()
-  if(res.data.code === 100){
-    evaluateDialogState.listLecC = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-
-const getListLsL = async() =>{
-  let res = await evaluateApi().getListLsL()
-  if(res.data.code === 100){
-    evaluateDialogState.listLsL = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-
-const getListLsS = async() =>{
-  let res = await evaluateApi().getListLsS()
-  if(res.data.code === 100){
-    evaluateDialogState.listLsS = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-
-const getListRsR = async() =>{
-  let res = await evaluateApi().getListRsR()
-  if(res.data.code === 100){
-    evaluateDialogState.listRsR = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-
-const getListRsS = async() =>{
-  let res = await evaluateApi().getListRsS()
-  if(res.data.code === 100){
-    evaluateDialogState.listRsS = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-
-const getListMesM = async() =>{
-  let res = await evaluateApi().getListMesM()
-  if(res.data.code === 100){
-    evaluateDialogState.listMesM = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-const getListMesE = async() =>{
-  let res = await evaluateApi().getListMesE()
-  if(res.data.code === 100){
-    evaluateDialogState.listMesE = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-const getListMesS = async() =>{
-  let res = await evaluateApi().getListMesS()
-  if(res.data.code === 100){
-    evaluateDialogState.listMesS = res.data.data
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg,
-    });
-  }
-}
-
-const calcOriginScore=(i:string)=>{
-  if((i == 'lec' && (evaluateDialogState.evaluateForm.originalLecL && evaluateDialogState.evaluateForm.originalLecE && evaluateDialogState.evaluateForm.originalLecC))||(i == 'ls' && (evaluateDialogState.evaluateForm.originalLsL && evaluateDialogState.evaluateForm.originalLsS))||(i == 'mes' &&(evaluateDialogState.evaluateForm.originalMesM && evaluateDialogState.evaluateForm.originalMesE && evaluateDialogState.evaluateForm.originalMesS))||(i == 'rs' && (evaluateDialogState.evaluateForm.originalRsR && evaluateDialogState.evaluateForm.originalRsS))){
-      evaluateDialogState.evaluateForm.originalRiskValue = Number(numOriginValue.value)
-      if(evaluateDialogState.evaluateForm.originalRiskValue<=0.5){
-        evaluateDialogState.evaluateForm.originalRiskLevelValue = 1
-        evaluateDialogState.evaluateForm.originalRiskLevel = 1
-        evaluateDialogState.evaluateForm.originalRiskColor = 1
-      }else if(evaluateDialogState.evaluateForm.originalRiskValue>0.5&&evaluateDialogState.evaluateForm.originalRiskValue<1){
-        evaluateDialogState.evaluateForm.originalRiskLevelValue = 2
-        evaluateDialogState.evaluateForm.originalRiskLevel = 2
-        evaluateDialogState.evaluateForm.originalRiskColor = 2
-      }else{
-        evaluateDialogState.evaluateForm.originalRiskLevelValue = 3
-        evaluateDialogState.evaluateForm.originalRiskLevel = 3
-        evaluateDialogState.evaluateForm.originalRiskColor = 3
-      }
-  }
-}
-
-const calcScore=(i:string)=>{
-  if((i == 'lec' && (evaluateDialogState.evaluateForm.lecL && evaluateDialogState.evaluateForm.lecE && evaluateDialogState.evaluateForm.lecC))||(i == 'ls' && (evaluateDialogState.evaluateForm.lsL && evaluateDialogState.evaluateForm.lsS))||(i == 'mes' &&(evaluateDialogState.evaluateForm.mesM && evaluateDialogState.evaluateForm.mesE && evaluateDialogState.evaluateForm.mesS))||(i == 'rs' && (evaluateDialogState.evaluateForm.rsR && evaluateDialogState.evaluateForm.rsS))){
-    evaluateDialogState.evaluateForm.riskValue = Number(numValue.value)
-    if(evaluateDialogState.evaluateForm.riskValue<=0.5){
-      evaluateDialogState.evaluateForm.riskLevelValue = 1
-      evaluateDialogState.evaluateForm.riskLevel = 1
-      evaluateDialogState.evaluateForm.riskColor = 1
-    }else if(evaluateDialogState.evaluateForm.riskValue>0.5&&evaluateDialogState.evaluateForm.riskValue<1){
-      evaluateDialogState.evaluateForm.riskLevelValue = 2
-      evaluateDialogState.evaluateForm.riskLevel = 2
-      evaluateDialogState.evaluateForm.riskColor = 2
-    }else{
-      evaluateDialogState.evaluateForm.riskLevelValue = 3
-      evaluateDialogState.evaluateForm.riskLevel = 3
-      evaluateDialogState.evaluateForm.riskColor = 3
-    }
-  }
-}
-
-const emit = defineEmits(['refresh']);
-
-onMounted(()=>{
-  getListLecL()
-  getListLecE()
-  getListLecC()
-  getListLsL()
-  getListLsS()
-  getListRsR()
-  getListRsS()
-  getListMesM()
-  getListMesE()
-  getListMesS()
-})
-
-defineExpose({
-    showEvaluateDialog
-});
-</script>
-
-<style lang="scss" scoped>
-.evaluateCard{
-  width: 100%;
-  margin: 0 40px 20px;
-  border: 1px solid #ccc;
-  border-radius: 4px;
-  background: #fff;
-
-  .cardTit{
-    width: 100%;
-    padding: 10px 20px;
-    background: #f5f5f5;
-    border-bottom: 1px solid #ccc;
-    margin-bottom: 20px;
-  }
-
-  .valueSelect{
-    ::v-deep(.el-popper){
-      .el-select-dropdown__item{
-        width: 100%;
-        height: auto;
-        white-space: normal;
-        word-break: break-all;
-        word-wrap: break-word;
-        overflow: auto;
-        padding: 10px 25px;
-        border-bottom: 1px solid #ccc;
-
-        .valueTable{
-          &>div{
-            line-height: 1.5;
-            margin-bottom: 6px;
-            padding-bottom: 6px;
-            display: flex;
-            align-items: center;
-
-            div{
-              width: 8%;
-            }
-            span{
-              width: 92%;
-            }
-
-            &:last-of-type{
-              margin-bottom: 0;
-            }
-          }
-          .longTit{
-            div{
-              width: 15%;
-            }
-            span{
-              width: 85%;
-            }
-          }
-        }
-      }
-    }
-  }
-}
-</style>
diff --git a/src/views/analyse/evaluate/index.ts b/src/views/analyse/evaluate/index.ts
deleted file mode 100644
index ebf7b8d..0000000
--- a/src/views/analyse/evaluate/index.ts
+++ /dev/null
@@ -1,108 +0,0 @@
-declare interface EvaluateStateType {
-	evaluateData: Array<IdentifyType>
-	user: null| number
-	currentEvalute:{}
-	evaluateDialog:boolean
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		assessPlanName: string,
-		experimentName: string,
-		tag: number,
-		planExecStatus: number | null
-	}
-	total: number
-	identificationMethodList: Array<Type>,
-	evaluateMethodList: Array<Type>
-	planList: Array<PlanType>
-	personList: Array<SystemPersonType>
-}
-declare interface EvaluateType {
-	id: null | number,
-	riskValue: null | number,
-	riskLevelValue: null | number,
-	riskLevel: null | number,
-	riskColor: null | number,
-	manageLevel?: null | number,
-	originalManageLevel?: null | number,
-	identificationId: null | number,
-	lecL: null | number,
-	lecE: null | number,
-	lecC: null | number,
-	lsL: null | number,
-	lsS: null | number,
-	mesM: null | number,
-	mesE: null | number,
-	mesS: null | number,
-	rsR: null | number,
-	rsS: null | number,
-	lecId: null | number,
-	lsId: null | number,
-	mesId: null | number,
-	rsId: null | number,
-	evaluateMethod?: null | number,
-	evaluateStatus?: null | number,
-	identificationMethod: null | number,
-	originalLecL: null | number,
-	originalLecE: null | number,
-	originalLecC: null | number,
-	originalLsL: null | number,
-	originalLsS: null | number,
-	originalMesM: null | number,
-	originalMesE: null | number,
-	originalMesS: null | number,
-	originalRsR: null | number,
-	originalRsS: null | number,
-	originalRiskValue: null | number,
-	originalRiskLevelValue: null | number,
-	originalRiskLevel: null | number,
-	originalRiskColor: null | number,
-	technologyMeasure: string,
-	manageMeasure: string,
-	educationMeasure: string,
-	personalProtectionMeasure: string,
-	emergencyMeasure: string,
-	adviseTechnologyMeasure: string,
-	adviseManageMeasure: string,
-	adviseEducationMeasure: string,
-	advisePersonalProtectionMeasure: string,
-	adviseEmergencyMeasure: string,
-	evaluateDesc: string,
-	safeRiskAnalysis: string
-}
-
-declare interface EvaluateDialogType {
-	title: string,
-	time: string [],
-	disabled: boolean,
-	evaluateDialogVisible: boolean,
-	evaluateMethodVisible:boolean
-	evaluateMethod: number | null,
-	evaluateInfo: IdentifyType,
-	evaluateForm: EvaluateType,
-	evaluateFormRules: {
-
-	},
-	identificationMethodList: Array<Type>,
-	evaluateMethodList: Array<Type>
-	riskLevelValueList: Array<Type>
-	riskLevelList: Array<Type>
-	riskColorList: Array<Type>
-	manageLevelList: Array<Type>
-	listLecL: Array<evaluateSelectType>
-	listLecE: Array<evaluateSelectType>
-	listLecC: Array<evaluateSelectType>
-	listLsL: Array<evaluateSelectType>
-	listLsS: Array<evaluateSelectType>
-	listRsR: Array<evaluateSelectType>
-	listRsS: Array<evaluateSelectType>
-	listMesM: Array<evaluateSelectType>
-	listMesE: Array<evaluateSelectType>
-	listMesS: Array<evaluateSelectType>
-}
-
-declare interface evaluateSelectType {
-	id: number | null
-	value: number | null
-	desc: string
-}
\ No newline at end of file
diff --git a/src/views/analyse/evaluate/index.vue b/src/views/analyse/evaluate/index.vue
deleted file mode 100644
index 41ec3e0..0000000
--- a/src/views/analyse/evaluate/index.vue
+++ /dev/null
@@ -1,452 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>评估计划名称:</span>
-                    <el-input v-model="evaluateState.searchQuery.assessPlanName" clearable filterable class="input-box" placeholder="评估计划名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>实验名称:</span>
-                    <el-input v-model="evaluateState.searchQuery.experimentName" clearable filterable class="input-box" placeholder="实验名称">
-                    </el-input>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getEvaluateData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openevaluateDialog('新增', {})">新增</el-button>-->
-<!--                        </el-col>-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="evaluateState.evaluateData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-<!--                        <el-table-column type="expand">-->
-<!--                            <template #default="scope">-->
-<!--                                <el-table :data="scope.row.factorQueryDTOList" style="width: 100%">-->
-<!--                                  <el-table-column type="index" label="序号" width="80" />-->
-<!--                                  <el-table-column prop="evaluateMethod" label="评价方法" align="center">-->
-<!--                                    <template #default="scope">-->
-<!--                                      {{ evaluateState.evaluateMethodList.find(i=>i.id === scope.row.evaluateMethod)?.name }}-->
-<!--                                    </template>-->
-<!--                                  </el-table-column>-->
-<!--                                  <el-table-column prop="itemIdentificationTime" label="辨识添加时间" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 1" prop="phaCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 1" prop="phaRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 1" prop="phaResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 2" prop="jhaCheckItem" label="作业步骤" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 2" prop="jhaRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 2" prop="jhaResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 3" prop="sclCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 3" prop="sclCheckStandard" label="检查标准" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 3" prop="sclCheckUnstandard" label="不符合标准情况" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 3" prop="sclCheckResult" label="主要后果" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 4" prop="hazopNode" label="节点" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 4" prop="hazopParam" label="参数" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 4" prop="hazopParamDesc" label="参数描述" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 4" prop="hazopNode" label="节点" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 4" prop="hazopGuide" label="引导词" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 4" prop="hazopDeviation" label="偏差" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 4" prop="hazopPossibleCauses" label="可能原因" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 4" prop="hazopResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 5" prop="analogyCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 5" prop="analogyReference" label="类比参照" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 5" prop="analogyRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column v-if="scope.row.identificationMethod == 5" prop="analogyResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>-->
-<!--                                  <el-table-column label="操作" width="250" >-->
-<!--                                    <template #default="scope2">-->
-<!--                                        <el-button size="small" v-if="scope.row.planExecStatus === 3 && scope.row.evaluateUserId == evaluateState.user" text type="primary" :icon="Plus" @click="openEvaluateDialog('评价', scope2.row)">评价</el-button>-->
-<!--                                        <el-button size="small" v-if="scope2.row.riskValue" text type="primary" :icon="View" @click="openEvaluateDialog('查看', scope2.row)">查看</el-button>-->
-<!--                                    </template>-->
-<!--                                  </el-table-column>-->
-<!--                                </el-table>-->
-<!--                            </template>-->
-<!--                        </el-table-column>-->
-
-                        <el-table-column prop="assessPlanName" label="评估计划名称"/>
-                        <el-table-column prop="identificationMethod" label="辨识方法" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${evaluateState.identificationMethodList.find(item =>item.id === scope.row.identificationMethod)?.name}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="riskUnitName" label="风险单元" />
-                        <el-table-column prop="identificationUser" label="计划负责人" />
-                        <el-table-column prop="identificationUser" label="辨识专家" />
-                        <el-table-column prop="evaluateUser" label="评价专家" />
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="evaluateStatus" label="执行状态" show-overflow-tooltip align="center">
-                          <template #default="scope">
-                            <div>
-                              <div v-if="scope.row.planExecStatus === 1">
-                                <el-tag :type="'info'">
-                                  {{ '未开始' }}
-                                </el-tag>
-                              </div>
-                              <div v-if="scope.row.planExecStatus === 2">
-                                <el-tag :type="'info'">
-                                  {{ '辨识阶段' }}
-                                </el-tag>
-                              </div>
-                              <div v-if="scope.row.planExecStatus === 3">
-                                <el-tag :type="'primary'">
-                                  {{ '评价阶段' }}
-                                </el-tag>
-                              </div>
-                              <div v-if="scope.row.planExecStatus === 4">
-                                <el-tag :type="'success'">
-                                  {{ '完成阶段' }}
-                                </el-tag>
-                              </div>
-                            </div>
-                          </template>
-                        </el-table-column>
-                        <el-table-column label="操作" width="250">
-                          <template #default="scope">
-                            <el-button size="small" v-if="scope.row.planExecStatus===3 && scope.row.evaluateUserId == evaluateState.user" text type="primary" :icon="DocumentChecked" @click="accessEvaluate(scope.row)">提交</el-button>
-                            <el-button size="small" v-if="scope.row.planExecStatus===3 && scope.row.evaluateUserId == evaluateState.user" text type="primary" :icon="Edit" @click="openEvaluate(scope.row)">评价</el-button>
-                            <el-button size="small" v-if="scope.row.planExecStatus===4" text :icon="View" type="primary" @click="openEvaluate(scope.row)">查看评价</el-button>
-                          </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="evaluateState.searchQuery.pageIndex" background v-model:page-size="evaluateState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="evaluateState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-
-        <el-dialog title="辨识信息评价" v-model="evaluateState.evaluateDialog" width="50%">
-          <el-table :data="evaluateState.currentEvalute.factorQueryDTOList" style="width: 100%">
-            <el-table-column type="index" label="序号" width="80"/>
-            <el-table-column prop="evaluateMethod" label="评价方法" align="center">
-              <template #default="scope">
-                {{ evaluateState.evaluateMethodList.find(i=>i.id === scope.row.evaluateMethod)?.name }}
-              </template>
-            </el-table-column>
-            <el-table-column prop="itemIdentificationTime" label="辨识添加时间" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 1" prop="phaCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 1" prop="phaRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 1" prop="phaResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 2" prop="jhaCheckItem" label="作业步骤" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 2" prop="jhaRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 2" prop="jhaResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 3" prop="sclCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 3" prop="sclCheckStandard" label="检查标准" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 3" prop="sclCheckUnstandard" label="不符合标准情况" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 3" prop="sclCheckResult" label="主要后果" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 4" prop="hazopNode" label="节点" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 4" prop="hazopParam" label="参数" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 4" prop="hazopParamDesc" label="参数描述" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 4" prop="hazopNode" label="节点" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 4" prop="hazopGuide" label="引导词" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 4" prop="hazopDeviation" label="偏差" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 4" prop="hazopPossibleCauses" label="可能原因" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 4" prop="hazopResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 5" prop="analogyCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 5" prop="analogyReference" label="类比参照" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 5" prop="analogyRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column v-if="evaluateState.currentEvalute.identificationMethod == 5" prop="analogyResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>
-            <el-table-column label="操作">
-              <template #default="scope">
-                <el-button size="small" v-if="evaluateState.currentEvalute.planExecStatus === 3 && evaluateState.currentEvalute.evaluateUserId == evaluateState.user" text type="primary" :icon="Plus" @click="openEvaluateDialog('评价', scope.row)">评价</el-button>
-                <el-button size="small" v-if="scope.row.riskValue" text type="primary" :icon="View" @click="openEvaluateDialog('查看', scope.row)">查看</el-button>
-              </template>
-            </el-table-column>
-          </el-table>
-        </el-dialog>
-
-        <evaluate-dialog ref="evaluateDialogRef" @refresh="getDataAndClose"></evaluate-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {evaluateApi} from "/@/api/analyse/evaluate";
-import {identifyApi} from "/@/api/analyse/identify";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { Edit, View, Plus, Delete, DocumentChecked } from '@element-plus/icons-vue';
-import {planApi} from "/@/api/analyse/plan";
-import {userApi} from "/@/api/systemManage/user";
-import {useUserInfo} from "/@/stores/userInfo";
-import {storeToRefs} from "pinia";
-
-const EvaluateDialog = defineAsyncComponent(() => import('./components/evaluateDialog.vue'));
-
-const evaluateDialogRef = ref();
-const userInfo = useUserInfo();
-const { userInfos } = storeToRefs(userInfo);
-const evaluateState = reactive<EvaluateStateType>({
-    evaluateData: [],
-    user: null,
-    currentEvalute:{},
-    evaluateDialog: false,
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        assessPlanName: '',
-        experimentName: '',
-        tag: 2,
-        planExecStatus: 5
-    },
-    total: 0,
-    planList: [
-    ],
-    personList: [],
-    identificationMethodList: [
-        {id:1, name: 'PHA'},
-        {id:2, name: 'JHA'},
-        {id:3, name: 'SCL'},
-        {id:4, name: 'HAZOP'},
-        {id:5, name: '类比法'},
-    ],
-    evaluateMethodList: [
-        {id:1, name: 'LEC'},
-        {id:2, name: 'LS'},
-        {id:3, name: 'MES'},
-        {id:4, name: 'RS'},
-    ]
-    // deviceUnitList: [
-    //     {id:1, name: '台'},
-    //     {id:2, name: '个'},
-    //     {id:3, name: '件'}
-    // ]
-});
-
-const getEvaluateData = async () => {
-    let res = await identifyApi().getIdentifyByList(evaluateState.searchQuery);
-    if(res.data.code === 100){
-        evaluateState.evaluateData = res.data.data;
-        evaluateState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getDataAndClose =()=>{
-  evaluateState.evaluateDialog = false
-  getEvaluateData()
-}
-
-const getAllPlanList = async () => {
-    let res = await planApi().getAllPlan();
-    if(res.data.code === 100){
-        evaluateState.planList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getPersonList = async () => {
-    let res = await userApi().getUserList({
-        pageIndex: 1,
-        pageSize: 99999,
-        searchParams:{
-          roleId: null,
-          name: '',
-          realName: ''
-        }
-    });
-    if(res.data.code === 100){
-        evaluateState.personList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const openEvaluate = (value: IdentifyType) => {
-  evaluateState.evaluateDialog = true
-  evaluateState.currentEvalute  = value
-}
-
-const openEvaluateDialog = (title: string, value: IdentifyType) => {
-    evaluateDialogRef.value.showEvaluateDialog(title, value);
-};
-
-const onDelEvaluate = (val: IdentifyType) => {
-    ElMessageBox.confirm(`此操作将提交该计划:“${val.assessPlanName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await evaluateApi().submitEvaluate({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getEvaluateData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-};
-
-const accessEvaluate = (val: IdentifyType) => {
-    ElMessageBox.confirm(`此操作将提交该评价计划:“${val.assessPlanName}”的评价信息,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await evaluateApi().submitEvaluate({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '提交成功'
-                });
-                await getEvaluateData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-};
-
-const onHandleSizeChange = (val: number) => {
-    evaluateState.searchQuery.pageSize = val;
-    getEvaluateData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    evaluateState.searchQuery.pageIndex = val;
-    getEvaluateData();
-};
-
-const reset = () => {
-    evaluateState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        assessPlanName: '',
-        experimentName: '',
-        tag: 2,
-        planExecStatus: 5
-    }
-};
-
-onMounted(() => {
-    getEvaluateData();
-    getAllPlanList();
-    getPersonList();
-    evaluateState.user = Number(userInfos.value.uid)
-});
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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);
-}
-:deep(.el-range-editor.is-disabled input){
-    background-color: var(--el-card-bg-color);
-    color: var(--el-input-text-color, var(--el-text-color-regular));
-}
-</style>
diff --git a/src/views/analyse/identify/components/identifyDialog.vue b/src/views/analyse/identify/components/identifyDialog.vue
deleted file mode 100644
index a764ab6..0000000
--- a/src/views/analyse/identify/components/identifyDialog.vue
+++ /dev/null
@@ -1,513 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="identifyDialogState.title" v-model="identifyDialogState.identifyDialogVisible" width="600px">
-            <el-form ref="identifyFormRef" :rules="identifyDialogState.identifyFormRules" :model="identifyDialogState.identifyForm" size="default" label-width="160px">
-                <el-row :gutter="35">
-<!--                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">-->
-<!--                        <el-form-item label="辨识方法" prop="identificationMethod">-->
-<!--                            <el-select class="input-length" :disabled="true" v-model="identifyDialogState.identifyForm.identificationMethod" style="width:100%" placeholder="辨识方法" clearable>-->
-<!--                                <el-option v-for="item in identifyDialogState.identificationMethodList" :key="item.id" :label="item.name" :value="item.id"></el-option>-->
-<!--                            </el-select>-->
-<!--                        </el-form-item>-->
-<!--                    </el-col>-->
-
-                    <div style="width: 100%" v-if="identifyDialogState.method === 1">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="PHA_检查项目" prop="phaCheckItem">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.phaCheckItem" 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="PHA_存在风险因素" prop="phaRiskFactor">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.phaRiskFactor" 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="PHA_可能产生的后果" prop="phaResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.phaResult" 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="分配评价方法">
-                          <el-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="phaEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.phaEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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="评价专家">
-                          <el-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
-
-                    <div style="width: 100%" v-if="identifyDialogState.method === 2">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="JHA_作业步骤" prop="jhaCheckItem">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.jhaCheckItem" 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="JHA_危险源或潜在事件" prop="jhaRiskFactor">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.jhaRiskFactor" 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="JHA_可能产生的后果" prop="jhaResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.jhaResult" 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="分配评价方法">
-                          <el-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="jhaEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.jhaEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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="评价专家">
-                          <el-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
-
-                    <div style="width: 100%" v-if="identifyDialogState.method === 3">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="SCL_检查项目" prop="sclCheckItem">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.sclCheckItem" 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="SCL_检查标准" prop="sclCheckStandard">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.sclCheckStandard" 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="SCL_不符合标准情况" prop="sclCheckUnstandard">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.sclCheckUnstandard" 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="SCL_主要后果" prop="sclCheckResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.sclCheckResult" 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="分配评价方法">
-                          <el-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="sclEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.sclEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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="评价专家">
-                          <el-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
-
-                    <div style="width: 100%" v-if="identifyDialogState.method === 4">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="HAZOP_节点" prop="hazopNode">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopNode" placeholder="HAZOP_节点" 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="HAZOP_参数" prop="hazopParam">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopParam" placeholder="HAZOP_参数" 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="HAZOP_参数描述" prop="hazopParamDesc">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopParamDesc" placeholder="HAZOP_参数描述" 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="HAZOP_引导词" prop="hazopGuide">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopGuide" placeholder="HAZOP_引导词" 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="HAZOP_偏差" prop="hazopDeviation">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopDeviation" placeholder="HAZOP_偏差" 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="HAZOP_可能原因" prop="hazopPossibleCauses">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopPossibleCauses" placeholder="HAZOP_可能原因" 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="HAZOP_主要后果" prop="hazopResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.hazopResult" placeholder="HAZOP_主要后果" 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="分配评价方法">
-                          <el-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="hazopEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.hazopEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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="评价专家">
-                          <el-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
-
-                    <div style="width: 100%" v-if="identifyDialogState.method === 5">
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="类比法_检查项目" prop="analogyCheckItem">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.analogyCheckItem" 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="analogyReference">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.analogyReference" 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="analogyRiskFactor">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.analogyRiskFactor" 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="analogyResult">
-                          <el-input class="input-length" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.analogyResult" 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="分配评价方法">
-                          <el-select disabled class="input-length" v-model="identifyDialogState.evaluateMethod" style="width:100%" placeholder="" clearable>
-                            <el-option v-for="item in identifyDialogState.evaluateMethodList" :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="analogyEvaluateUser">-->
-<!--                          <el-select class="input-length" v-model="identifyDialogState.identifyForm.analogyEvaluateUser" style="width:100%" placeholder="" clearable>-->
-<!--                            <el-option v-for="item in identifyDialogState.personList" :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="评价专家">
-                          <el-input class="input-length" disabled v-model="identifyDialogState.evaluateUser" 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="result">
-                          <el-radio-group v-model="identifyDialogState.identifyForm.result" :disabled="identifyDialogState.disabled">
-                            <el-radio :label="1">有风险</el-radio>
-                            <el-radio :label="2">无风险</el-radio>
-                          </el-radio-group>
-                        </el-form-item>
-                      </el-col>
-                      <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识专家建议" prop="identificationDesc">
-                          <el-input class="input-length" type="textarea" :autosize="{ minRows: 3}" :disabled="identifyDialogState.disabled" v-model="identifyDialogState.identifyForm.identificationDesc" placeholder="辨识专家建议" clearable></el-input>
-                        </el-form-item>
-                      </el-col>
-                    </div>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="identifyDialogState.identifyDialogVisible = !identifyDialogState.identifyDialogVisible" size="default">取 消</el-button>
-					<el-button v-if="!identifyDialogState.disabled" type="primary" @click="onSubmitIdentify" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import {ElMessage} from "element-plus";
-import {identifyApi} from "/@/api/analyse/identify";
-import {isValidKey} from "/@/utils/methods";
-
-const identifyFormRef = ref()
-
-const identifyDialogState = reactive<IdentifyDialogType>({
-    title: '',
-    method: null,
-    time:[],
-    disabled: false,
-    evaluateMethod: null,
-    evaluateUser: '',
-    identifyDialogVisible: false,
-    identifyForm: {
-        id: null,
-        identificationMethod: null,
-        result: null,
-        identificationDesc: '',
-        analogyCheckItem: '',
-        analogyRiskFactor: '',
-        analogyResult: '',
-        analogyReference: '',
-        hazopNode: '',
-        hazopParam: '',
-        hazopParamDesc: '',
-        hazopGuide: '',
-        hazopDeviation: '',
-        hazopPossibleCauses: '',
-        hazopResult: '',
-        jhaCheckItem: '',
-        jhaRiskFactor: '',
-        jhaResult: '',
-        phaCheckItem: '',
-        phaRiskFactor: '',
-        phaResult: '',
-        sclCheckItem: '',
-        sclCheckStandard: '',
-        sclCheckUnstandard: '',
-        sclCheckResult: '',
-        hazopId: null,
-        jhaId: null,
-        phaId: null,
-        sclId: null,
-        analogyId: null
-    },
-    identifyFormRules: {
-        result: [{ required: true, message: '请选择辨识结果', trigger: 'blur' }],
-        identificationDesc: [{ required: true, message: '请输入辨识专家建议', trigger: 'blur' }],
-        analogyCheckItem: [{ required: true, message: '请输入检查项目', trigger: 'blur' }],
-        analogyRiskFactor: [{ required: true, message: '请输入存在风险因素', trigger: 'blur' }],
-        analogyResult: [{ required: true, message: '请输入可能产生的后果', trigger: 'blur' }],
-        analogyReference: [{ required: true, message: '请输入类比参照', trigger: 'blur' }],
-        hazopNode: [{ required: true, message: '请输入节点', trigger: 'blur' }],
-        hazopParam: [{ required: true, message: '请输入参数', trigger: 'blur' }],
-        hazopParamDesc: [{ required: true, message: '请输入参数描述', trigger: 'blur' }],
-        hazopGuide: [{ required: true, message: '请输入引导词', trigger: 'blur' }],
-        hazopDeviation: [{ required: true, message: '请输入偏差', trigger: 'blur' }],
-        hazopPossibleCauses: [{ required: true, message: '请输入可能原因', trigger: 'blur' }],
-        hazopResult: [{ required: true, message: '请输入主要后果', trigger: 'blur' }],
-        jhaCheckItem: [{ required: true, message: '请输入作业步骤', trigger: 'blur' }],
-        jhaRiskFactor: [{ required: true, message: '请输入危险源或潜在事件', trigger: 'blur' }],
-        jhaResult: [{ required: true, message: '请输入可能产生的后果', trigger: 'blur' }],
-        phaCheckItem: [{ required: true, message: '请输入检查项目', trigger: 'blur' }],
-        phaRiskFactor: [{ required: true, message: '请输入存在风险因素', trigger: 'blur' }],
-        phaResult: [{ required: true, message: '请输入可能产生的后果', trigger: 'blur' }],
-        sclCheckItem: [{ required: true, message: '请输入检查项目', trigger: 'blur' }],
-        sclCheckStandard: [{ required: true, message: '请输入检查标准', trigger: 'blur' }],
-        sclCheckUnstandard: [{ required: true, message: '请输入不符合标准情况', trigger: 'blur' }],
-        sclCheckResult: [{ required: true, message: '请输入主要后果', trigger: 'blur' }]
-    },
-    planList: [],
-    personList: [],
-    identificationMethodList: [
-        {id:1, name: 'PHA'},
-        {id:2, name: 'JHA'},
-        {id:3, name: 'SCL'},
-        {id:4, name: 'HAZOP'},
-        {id:5, name: '类比法'},
-    ],
-    evaluateMethodList: [
-        {id:1, name: 'LEC'},
-        {id:2, name: 'LS'},
-        {id:3, name: 'MES'},
-        {id:4, name: 'RS'},
-    ]
-})
-
-const showIdentifyDialog = (title: string, value: IdentifyType, identifyQueryForm: identifyQueryFormType,idenForm: IdentifyType,personList: Array<NewPersonListType>) => {
-    identifyDialogState.method = identifyQueryForm.identificationMethod
-    identifyDialogState.identifyDialogVisible = true;
-    identifyDialogState.disabled = false
-    identifyDialogState.evaluateMethod = idenForm.evaluateMethod
-    identifyDialogState.evaluateUser = idenForm.evaluateUser
-    identifyDialogState.personList = personList
-    setTimeout(() => {
-        identifyFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        identifyDialogState.title = '新增';
-        identifyDialogState.identifyForm = {
-            id: identifyQueryForm.id,
-            identificationMethod: identifyQueryForm.identificationMethod,
-            result: null,
-            identificationDesc: '',
-            analogyCheckItem: '',
-            analogyRiskFactor: '',
-            analogyResult: '',
-            analogyReference: '',
-            hazopNode: '',
-            hazopParam: '',
-            hazopParamDesc: '',
-            hazopGuide: '',
-            hazopDeviation: '',
-            hazopPossibleCauses: '',
-            hazopResult: '',
-            jhaCheckItem: '',
-            jhaRiskFactor: '',
-            jhaResult: '',
-            phaCheckItem: '',
-            phaRiskFactor: '',
-            phaResult: '',
-            sclCheckItem: '',
-            sclCheckStandard: '',
-            sclCheckUnstandard: '',
-            sclCheckResult: '',
-            hazopId: null,
-            jhaId: null,
-            phaId: null,
-            sclId: null,
-            analogyId: null,
-        };
-    }else if(title === '查看'){
-        identifyDialogState.title = '查看';
-        identifyDialogState.disabled = true
-        for(let i in identifyDialogState.identifyForm){
-            if(isValidKey(i, identifyDialogState.identifyForm)){
-                identifyDialogState.identifyForm[i] = value[i];
-            }
-        }
-    }else{
-        identifyDialogState.title = '编辑';
-        for(let i in identifyDialogState.identifyForm){
-              if(isValidKey(i, identifyDialogState.identifyForm)){
-                  identifyDialogState.identifyForm[i] = value[i];
-              }
-        }
-        identifyDialogState.identifyForm.identificationMethod = identifyQueryForm.identificationMethod
-        console.log(identifyDialogState.identifyForm,'identifyDialogState.identifyForm')
-    }
-};
-
-const onSubmitIdentify = () => {
-    identifyFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(identifyDialogState.title === '新增'){
-                let { hazopId, jhaId, phaId, sclId, analogyId, ...data } = identifyDialogState.identifyForm
-                let res = await identifyApi().addIdentify(data);
-                if(res.data.code === 100){
-                    emit('refresh',1,res.data.data)
-                    identifyDialogState.identifyDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await identifyApi().modIdentify(identifyDialogState.identifyForm)
-                if(res.data.code === 100){
-                    emit('refresh',2,identifyDialogState.identifyForm)
-                    identifyDialogState.identifyDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-}
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showIdentifyDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/analyse/identify/components/identifyQuery.vue b/src/views/analyse/identify/components/identifyQuery.vue
deleted file mode 100644
index 7aed26a..0000000
--- a/src/views/analyse/identify/components/identifyQuery.vue
+++ /dev/null
@@ -1,275 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="identifyQueryState.title" v-model="identifyQueryState.identifyQueryVisible" :close-on-click-modal="false" width="800px" @close="resetData()">
-            <el-form ref="identifyFormRef" :model="identifyQueryState.identifyQueryForm" size="default" label-width="160px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="风险评价计划名称" prop="id">
-                            <el-select class="input-length" :disabled="true" v-model="identifyQueryState.identifyQueryForm.id" style="width:100%" placeholder="风险评价计划名称" clearable>
-                                <el-option v-for="item in identifyQueryState.planList" :key="item.id" :label="item.assessPlanName" :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="评价类型">-->
-<!--                        <el-input v-model="identifyQueryState.identifyQueryForm.assessType" 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="计划开始评价时间">
-                        <el-input v-model="identifyQueryState.identifyQueryForm.assessStartTime" 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="评价风险分析单元">
-                        <el-input v-model="identifyQueryState.identifyQueryForm.riskUnitName" readonly placeholder="暂无风险分析单元"></el-input>
-                      </el-form-item>
-                    </el-col>
-                    <el-col style="display: flex;align-items: center" :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="辨识方法" prop="identificationMethod">
-                            <el-select class="input-length" disabled v-model="identifyQueryState.identifyQueryForm.identificationMethod" style="width:100%" placeholder="辨识方法" clearable>
-                                <el-option v-for="item in identifyQueryState.identificationMethodList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                            </el-select>
-                        </el-form-item>
-                        <el-button size="default" v-if="identifyQueryState.identifyForm.planExecStatus == 2" type="primary" @click="openChangeMethod()">修改辨识方法</el-button>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <div class="checkUnit-point">
-                <el-tabs class="active" v-model="identifyQueryState.activeName">
-                    <el-tab-pane label="辨识信息" name="identify">
-                        <div style="padding-bottom: 10px" v-if="identifyQueryState.identifyForm.planExecStatus === 2">
-                            <el-button size="default"  type="primary"  @click="openIdentifyDialog('新增', '')">
-                                <el-icon>
-                                    <ele-FolderAdd />
-                                </el-icon>
-                                新增
-                            </el-button>
-                        </div>
-
-                        <el-table :data="identifyQueryState.list" border fit highlight-current-row style="width: 100%">
-                            <el-table-column type="index" label="序号" width="80" />
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 1" prop="phaCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 1" prop="phaRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 1" prop="phaResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 2" prop="jhaCheckItem" label="作业步骤" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 2" prop="jhaRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 2" prop="jhaResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 3" prop="sclCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 3" prop="sclCheckStandard" label="检查标准" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 3" prop="sclCheckUnstandard" label="不符合标准情况" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 3" prop="sclCheckResult" label="主要后果" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 4" prop="hazopNode" label="节点" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 4" prop="hazopParam" label="参数" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 4" prop="hazopParamDesc" label="参数描述" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 4" prop="hazopNode" label="节点" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 4" prop="hazopGuide" label="引导词" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 4" prop="hazopDeviation" label="偏差" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 4" prop="hazopPossibleCauses" label="可能原因" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 4" prop="hazopResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 5" prop="analogyCheckItem" label="检查项目" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 5" prop="analogyReference" label="类比参照" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 5" prop="analogyRiskFactor" label="存在风险因素" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column v-if="identifyQueryState.identifyForm.identificationMethod == 5" prop="analogyResult" label="可能存在后果" show-overflow-tooltip align="center"></el-table-column>
-                            <el-table-column prop="result" label="辨识结果" show-overflow-tooltip align="center">
-                                <template #default="scope">
-                                    <span>{{scope.row.result == 1?'有风险':scope.row.result == 2?'无风险':'--'}}</span>
-                                </template>
-                            </el-table-column>
-                            <el-table-column label="操作" width="150" align="center">
-                                <template #default="scope">
-                                    <el-button size="default" text  type="primary"  @click="openIdentifyDialog('查看', scope.row)">查看</el-button>
-                                    <el-button size="default" text  type="primary" v-if="identifyQueryState.identifyForm.planExecStatus === 2"  @click="openIdentifyDialog('编辑', scope.row)">编辑</el-button>
-                                    <el-button size="default" text type="danger" v-if="identifyQueryState.identifyForm.planExecStatus === 2" @click="onDelIdentifyQuery(scope.$index, scope.row)">删除</el-button>
-                                </template>
-                            </el-table-column>
-                        </el-table>
-                    </el-tab-pane>
-                </el-tabs>
-            </div>
-            <template #footer>
-            <span class="Query-footer">
-              <el-button @click="identifyQueryState.identifyQueryVisible = !identifyQueryState.identifyQueryVisible" size="default">取 消</el-button>
-              <el-button v-if="identifyQueryState.identifyForm.planExecStatus === 2" type="primary" @click="identifyQueryState.identifyQueryVisible = !identifyQueryState.identifyQueryVisible" size="default">确定</el-button>
-            </span>
-            </template>
-        </el-dialog>
-        <el-dialog title="修改辨识方法" v-model="identifyQueryState.identifyMethodVisible" width="30%">
-          <el-select class="input-length" v-model="identifyQueryState.currentMethod" style="width:100%" placeholder="辨识方法" clearable>
-            <el-option v-for="item in identifyQueryState.identificationMethodList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-          </el-select>
-          <template #footer>
-            <span class="Query-footer">
-              <el-button @click="identifyQueryState.identifyMethodVisible = false" size="default">取 消</el-button>
-              <el-button type="primary" @click="conFirmChange()" size="default">确定</el-button>
-            </span>
-          </template>
-        </el-dialog>
-        <identify-dialog ref="identifyDialogRef" @refresh="getIdentifyData"></identify-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, reactive, ref} from "vue";
-import {ElMessage, ElMessageBox} from "element-plus";
-import {identifyApi} from "/@/api/analyse/identify";
-import {isValidKey} from "/@/utils/methods";
-import {userApi} from "/@/api/systemManage/user";
-
-const identifyDialogRef = ref()
-const IdentifyDialog = defineAsyncComponent(() => import('./identifyDialog.vue'))
-
-const identifyQueryState = reactive<IdentifyQueryType>({
-    title: '',
-    activeName: 'identify',
-    list: [],
-    identifyQueryVisible: false,
-    identifyMethodVisible: false,
-    currentMethod: null,
-    identifyQueryForm: {
-        id: null,
-        identificationMethod: null,
-        assessType: null,
-        assessStartTime: '',
-        riskUnitName: ''
-    },
-    identifyForm: {},
-    identificationMethodList: [
-        {id:1, name: 'PHA'},
-        {id:2, name: 'JHA'},
-        {id:3, name: 'SCL'},
-        {id:4, name: 'HAZOP'},
-        {id:5, name: '类比法'},
-    ],
-    planList: [],
-    personList: []
-})
-
-// const getAssessInfo =(value: number|null)=>{
-//   const data = identifyQueryState.planList.find(item => item.id === value) as PlanType
-// }
-
-const showIdentifyQuery = (title: string, value: IdentifyType, planList: PlanType [], personList: AllPersonListType []) => {
-    identifyQueryState.identifyQueryVisible = true;
-    identifyQueryState.identifyForm = value;
-    identifyQueryState.list = value.factorQueryDTOList
-    identifyQueryState.planList = planList;
-    identifyQueryState.personList = personList
-    identifyQueryState.list = value.factorQueryDTOList;
-    // getAssessInfo(identifyQueryState.identifyQueryForm.id);
-    for(let i in identifyQueryState.identifyQueryForm){
-        if(isValidKey(i, identifyQueryState.identifyQueryForm)){
-            identifyQueryState.identifyQueryForm[i] = value[i]
-        }
-    }
-
-    if(title === '辨识'){
-        identifyQueryState.title = '辨识';
-    }else {
-        identifyQueryState.title = '查看';
-    }
-};
-
-const openIdentifyDialog = (title: string, value: IdentifyType) => {
-    identifyDialogRef.value.showIdentifyDialog(title, value, identifyQueryState.identifyQueryForm,identifyQueryState.identifyForm, identifyQueryState.personList);
-};
-
-const openChangeMethod = ()=>{
-  identifyQueryState.currentMethod = identifyQueryState.identifyQueryForm.identificationMethod
-  identifyQueryState.identifyMethodVisible = true
-}
-
-const conFirmChange = async () =>{
-  let res = await identifyApi().UpdateIdentifyMethod({
-    id: identifyQueryState.identifyQueryForm.id,
-    identificationMethodId: identifyQueryState.currentMethod
-  });
-  if(res.data.code === 100){
-    ElMessage({
-      type: 'success',
-      message: '辨识方法修改成功'
-    })
-    identifyQueryState.identifyQueryForm.identificationMethod = identifyQueryState.currentMethod,
-    identifyQueryState.currentMethod = identifyQueryState.currentMethod,
-    emit('refresh')
-    getIdentifyData()
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    })
-  }
-  identifyQueryState.identifyMethodVisible = false
-}
-
-const resetData = ()=>{
-  emit('refresh')
-}
-
-// const refreshList = (type: number, data: IdentifyType) => {
-//     if(type === 1){
-//         identifyQueryState.list?.push(data)
-//     }else{
-//         (<Array<IdentifyType>>identifyQueryState.list)[identifyQueryState.list?.findIndex(item => item.id === data.id) as number] = data
-//     }
-// };
-
-const getIdentifyData = async () => {
-  let res = await identifyApi().getIdentifyByList(
-{
-        pageIndex: 1,
-        pageSize: 10,
-        assessPlanName: '',
-        experimentName: '',
-        tag: 1,
-        assessPlanId: identifyQueryState.identifyForm.id
-      }
-    );
-  if(res.data.code === 100){
-    identifyQueryState.list = res.data.data[0].factorQueryDTOList
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    });
-  }
-};
-
-const onDelIdentifyQuery = (index: number, val: IdentifyType) => {
-    ElMessageBox.confirm(`此操作将永久删除该辨识,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let data = { id: val.id, analogyId: val.analogyId, hazopId: val.hazopId, jhaId: val.jhaId, phaId: val.phaId, sclId: val.sclId, }
-            let res = await identifyApi().deleteIdentifyById(data);
-            if (res.data.code === 100) {
-                (<Array<IdentifyType>>identifyQueryState.list).splice(index, 1)
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-            console.log(error);
-        });
-};
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showIdentifyQuery
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/analyse/identify/index.ts b/src/views/analyse/identify/index.ts
deleted file mode 100644
index 66859ae..0000000
--- a/src/views/analyse/identify/index.ts
+++ /dev/null
@@ -1,136 +0,0 @@
-declare interface IdentifyStateType {
-	identifyData: Array<IdentifyType>
-	user: null | number
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		assessPlanName: string,
-		experimentName: string,
-		tag: number,
-	}
-	total: number
-	identificationMethodList: Array<Type>,
-	evaluateMethodList: Array<Type>
-	planList: Array<PlanType>
-	personList: Array<SystemPersonType>
-}
-
-declare interface IdentifyQueryType {
-	title: string,
-	activeName: string,
-	list?: IdentifyType [],
-	identifyQueryVisible: boolean,
-	identifyMethodVisible: boolean
-	currentMethod: number | null
-	identifyQueryForm: identifyQueryFormType,
-	identifyForm: IdentifyType,
-	identificationMethodList: Array<Type>,
-	planList: Array<PlanType>
-	personList: Array<AllPersonListType>
-}
-
-declare interface identifyQueryFormType {
-	id: null | number,
-	identificationMethod: null | number,
-	assessType: null | number,
-	assessStartTime: string,
-	riskUnitName: string
-}
-
-
-declare interface IdentifyType {
-	id: number | null,
-	technologyMeasure?: string,
-	assessPlanName?: string,
-	manageMeasure?: string,
-	educationMeasure?: string,
-	personalProtectionMeasure?: string,
-	emergencyMeasure?: string,
-	identificationMethod: number | null,
-	hazopId?: number | null,
-	jhaId?: number | null,
-	phaId?: number | null,
-	sclId?: number | null,
-	analogyId?: number | null,
-	analogyCheckItem: string,
-	analogyRiskFactor: string,
-	analogyResult: string,
-	analogyReference: string,
-	hazopNode: string,
-	hazopParam: string,
-	hazopParamDesc: string,
-	hazopGuide: string,
-	hazopDeviation: string,
-	hazopPossibleCauses: string,
-	hazopResult: string,
-	jhaCheckItem: string,
-	jhaRiskFactor: string,
-	jhaResult: string,
-	phaCheckItem: string,
-	phaRiskFactor: string,
-	phaResult: string,
-	sclCheckItem: string,
-	sclCheckStandard: string,
-	sclCheckUnstandard: string,
-	sclCheckResult: string,
-	planExecStatus?: number,
-	evaluateMethod?: number,
-	factorQueryDTOList?: EvaluateType [],
-	evaluateUser?: string,
-	result?: number | null,
-	identificationDesc: string
-}
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-
-declare interface IdentifyDialogType {
-	title: string,
-	method: null | number,
-	evaluateMethod: null | number,
-	evaluateUser?: string,
-	time: string [],
-	disabled: boolean,
-	identifyDialogVisible: boolean,
-	identifyForm: {
-		id: number | null,
-		identificationMethod: number | null,
-		result: null | number,
-		identificationDesc: string,
-		hazopId?: number | null,
-		jhaId?: number | null,
-		phaId?: number | null,
-		sclId?: number | null,
-		analogyId?: number | null,
-		analogyCheckItem: string,
-		analogyRiskFactor: string,
-		analogyResult: string,
-		analogyReference: string,
-		hazopNode: string,
-		hazopParam: string,
-		hazopParamDesc: string,
-		hazopGuide: string,
-		hazopDeviation: string,
-		hazopPossibleCauses: string,
-		hazopResult: string,
-		jhaCheckItem: string,
-		jhaRiskFactor: string,
-		jhaResult: string,
-		phaCheckItem: string,
-		phaRiskFactor: string,
-		phaResult: string,
-		sclCheckItem: string,
-		sclCheckStandard: string,
-		sclCheckUnstandard: string,
-		sclCheckResult: string,
-	},
-	identifyFormRules: {
-
-	},
-	identificationMethodList: Array<Type>,
-	evaluateMethodList: Array<Type>
-	planList: Array<PlanType>
-	personList?: Array<NewPersonListType>
-}
diff --git a/src/views/analyse/identify/index.vue b/src/views/analyse/identify/index.vue
deleted file mode 100644
index 62b0508..0000000
--- a/src/views/analyse/identify/index.vue
+++ /dev/null
@@ -1,364 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>评估计划名称:</span>
-                    <el-input v-model="identifyState.searchQuery.assessPlanName" clearable filterable class="input-box" placeholder="评估计划名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>实验名称:</span>
-                    <el-input v-model="identifyState.searchQuery.experimentName" clearable filterable class="input-box" placeholder="实验名称">
-                    </el-input>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getIdentifyData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openIdentifyQuery('新增', {})">新增</el-button>-->
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-                        <!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="identifyState.identifyData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column type="index" label="序号"/>
-                        <el-table-column prop="assessPlanName" label="评估计划名称"/>
-                        <el-table-column prop="identificationMethod" label="辨识方法" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${identifyState.identificationMethodList.find(item =>item.id === scope.row.identificationMethod)?.name}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="identificationUser" label="计划负责人" />
-                        <el-table-column prop="identificationUser" label="辨识专家" />
-                        <el-table-column prop="evaluateUser" label="评价专家" />
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="planExecStatus" label="执行状态" show-overflow-tooltip>
-                            <template #default="scope">
-                                <div>
-                                    <div v-if="scope.row.planExecStatus === 1">
-                                      <el-tag :type="'info'">
-                                        {{ '未开始' }}
-                                      </el-tag>
-                                    </div>
-                                    <div v-if="scope.row.planExecStatus === 2">
-                                        <el-tag :type="'info'">
-                                            {{ '辨识阶段' }}
-                                        </el-tag>
-                                    </div>
-                                    <div v-if="scope.row.planExecStatus === 3">
-                                        <el-tag :type="'primary'">
-                                            {{ '评价阶段' }}
-                                        </el-tag>
-                                    </div>
-                                    <div v-if="scope.row.planExecStatus === 4">
-                                      <el-tag :type="'success'">
-                                        {{ '完成阶段' }}
-                                      </el-tag>
-                                    </div>
-                                </div>
-                            </template>
-                        </el-table-column>
-                        <el-table-column label="操作" width="250">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" v-if="scope.row.planExecStatus === 2 && scope.row.identificationUserId == identifyState.user" @click="accessIdentify(scope.row)">提交</el-button>
-                                <el-button size="small" text type="primary" v-if="scope.row.planExecStatus === 3 || scope.row.planExecStatus === 4" :icon="View" @click="openIdentifyQuery('查看', scope.row)">查看</el-button>
-                                <el-button size="small" text type="primary" v-if="scope.row.planExecStatus === 2 && scope.row.identificationUserId == identifyState.user" :icon="Edit" @click="openIdentifyQuery('辨识', scope.row)">辨识</el-button>
-<!--                                <el-button size="small" text type="primary" v-if="scope.row.planExecStatus === 2" :icon="Edit" @click="openIdentifyQuery('编辑', scope.row)">编辑</el-button>-->
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="identifyState.searchQuery.pageIndex" background v-model:page-size="identifyState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="identifyState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <identify-query-dialog ref="identifyQueryDialogRef" @refresh="getIdentifyData"></identify-query-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {identifyApi} from "/@/api/analyse/identify";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { Edit, View, Plus, Delete } from '@element-plus/icons-vue';
-import {planApi} from "/@/api/analyse/plan";
-import {userApi} from "/@/api/systemManage/user";
-import {useUserInfo} from "/@/stores/userInfo";
-import {storeToRefs} from "pinia";
-
-const IdentifyQueryDialog = defineAsyncComponent(() => import('./components/identifyQuery.vue'));
-
-const identifyQueryDialogRef = ref();
-const userInfo = useUserInfo();
-const { userInfos } = storeToRefs(userInfo);
-const identifyState = reactive<IdentifyStateType>({
-    identifyData: [],
-    user: null,
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        assessPlanName: '',
-        experimentName: '',
-        tag: 1,
-    },
-    total: 0,
-    planList: [
-    ],
-    personList: [],
-    identificationMethodList: [
-        {id:1, name: 'PHA'},
-        {id:2, name: 'JHA'},
-        {id:3, name: 'SCL'},
-        {id:4, name: 'HAZOP'},
-        {id:5, name: '类比法'},
-    ],
-    evaluateMethodList: [
-        {id:1, name: 'LEC'},
-        {id:2, name: 'LS'},
-        {id:3, name: 'MES'},
-        {id:4, name: 'RS'},
-    ]
-    // deviceUnitList: [
-    //     {id:1, name: '台'},
-    //     {id:2, name: '个'},
-    //     {id:3, name: '件'}
-    // ]
-});
-
-const getIdentifyData = async () => {
-    let res = await identifyApi().getIdentifyByList(identifyState.searchQuery);
-    if(res.data.code === 100){
-        identifyState.identifyData = res.data.data;
-        identifyState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getAllPlanList = async () => {
-    let res = await planApi().getAllPlan();
-    if(res.data.code === 100){
-        identifyState.planList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getPersonList = async () => {
-    let res = await userApi().getUserList({
-        pageIndex: 1,
-        pageSize: 99999,
-        searchParams:{
-          roleId: null,
-          name: '',
-          realName: ''
-        }
-    });
-    if(res.data.code === 100){
-        identifyState.personList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const openIdentifyQuery = (title: string, value: IdentifyType) => {
-    identifyQueryDialogRef.value.showIdentifyQuery(title, value, identifyState.planList, identifyState.personList);
-};
-
-const onDelIdentify = (val: IdentifyType) => {
-    ElMessageBox.confirm(`此操作将永久删除该辨识,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await identifyApi().deleteIdentifyById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getIdentifyData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-};
-
-const accessIdentify = (val: IdentifyType) => {
-    if(val.factorQueryDTOList?.length > 0){
-      ElMessageBox.confirm(`此操作将提交该计划:“${val.assessPlanName}”的辨识信息,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-      })
-          .then(async () => {
-            let res = await identifyApi().submitIdentify({ id: val.id});
-            if (res.data.code === 100) {
-              ElMessage({
-                type: 'success',
-                duration: 2000,
-                message: '提交成功'
-              });
-              await getIdentifyData();
-            } else {
-              ElMessage({
-                type: 'warning',
-                message: res.data.msg
-              });
-            }
-          })
-          .catch((error) => {
-          });
-    }else{
-      ElMessage({
-        type: 'warning',
-        message: '请先添加辨识信息'
-      });
-    }
-};
-
-const onHandleSizeChange = (val: number) => {
-    identifyState.searchQuery.pageSize = val;
-    getIdentifyData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    identifyState.searchQuery.pageIndex = val;
-    getIdentifyData();
-};
-
-const reset = () => {
-    identifyState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        assessPlanName: '',
-        experimentName: '',
-        tag: 1,
-    }
-};
-
-onMounted(() => {
-    getIdentifyData();
-    getAllPlanList();
-    getPersonList();
-    identifyState.user = Number(userInfos.value.uid)
-});
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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);
-}
-:deep(.el-range-editor.is-disabled input){
-    background-color: var(--el-card-bg-color);
-    color: var(--el-input-text-color, var(--el-text-color-regular));
-}
-</style>
diff --git a/src/views/analyse/plan/components/planDialog.vue b/src/views/analyse/plan/components/planDialog.vue
deleted file mode 100644
index aab3fce..0000000
--- a/src/views/analyse/plan/components/planDialog.vue
+++ /dev/null
@@ -1,255 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="planDialogState.title" v-model="planDialogState.planDialogVisible" width="600px">
-            <el-form ref="planFormRef" :rules="planDialogState.planFormRules" :model="planDialogState.planForm" size="default" label-width="120px">
-                <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 :disabled="planDialogState.disabled" v-model="planDialogState.planForm.riskUnitId" style="width:100%" placeholder="风险分析单元" clearable>
-                                <el-option v-for="item in planDialogState.riskUnitList" :key="item.id" :label="item.riskName" :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="assessPlanName">
-                            <el-input :disabled="planDialogState.disabled" v-model="planDialogState.planForm.assessPlanName" 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="assessTime">
-                        <el-date-picker
-                            :disabled="planDialogState.disabled"
-                            type="datetimerange"
-                            v-model="planDialogState.planForm.assessTime"
-                            start-placeholder="开始时间"
-                            end-placeholder="结束时间"
-                            format="YYYY-MM-DD HH:mm:ss"
-                            value-format="YYYY-MM-DD HH:mm:ss"
-                            popper-class="pickTime"
-                            @change="formatTime">
-                        </el-date-picker>
-                      </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="计划制定人" prop="planUserId">
-                            <el-select :disabled="planDialogState.disabled" v-model="planDialogState.planForm.planUserId" style="width:100%"  placeholder="计划制定人" clearable>
-                                <el-option v-for="item in planDialogState.personList" :key="item.id" :label="item.realName" :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 valueSelect">
-                        <el-form-item label="辨识专家" prop="identificationUserId">
-                            <el-select :disabled="planDialogState.disabled" v-model="planDialogState.planForm.identificationUserId" style="width:100%" :teleported="false" placeholder="辨识专家" clearable>
-                                <el-option v-for="item in planDialogState.bsExperts" :key="item.id" :label="item.realName" :value="item.id">
-                                  <div class="valueTable">
-                                    <div><div>姓名:</div><span>{{item.realName}}</span></div>
-                                    <div><div>专业:</div><span>{{item.userIdentities?.map(i=>i.userIdentity).join(',')}}</span></div>
-                                  </div>
-                                </el-option>
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20 valueSelect">
-                        <el-form-item label="评价专家" prop="evaluateUserId">
-                            <el-select :disabled="planDialogState.disabled" v-model="planDialogState.planForm.evaluateUserId" style="width:100%" :teleported="false" placeholder="评价专家" clearable>
-                                <el-option v-for="item in planDialogState.pjExperts" :key="item.id" :label="item.realName" :value="item.id">
-                                  <div class="valueTable">
-                                    <div><div>姓名:</div><span>{{item.realName}}</span></div>
-                                    <div><div>专业:</div><span>{{item.userIdentities?.map(i=>i.userIdentity).join(',')}}</span></div>
-                                  </div>
-                                </el-option>
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="planDialogState.planDialogVisible = !planDialogState.planDialogVisible" size="default">取 消</el-button>
-					<el-button v-if="!planDialogState.disabled" type="primary" @click="onSubmitPlan" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref, getCurrentInstance } from "vue";
-import {ElMessage} from "element-plus";
-import {planApi} from "/@/api/analyse/plan";
-import {isValidKey} from "/@/utils/methods";
-
-const planFormRef = ref()
-
-const planDialogState = reactive<PlanDialogType>({
-    title: '',
-    disabled: false,
-    planDialogVisible: false,
-    planForm: {
-        riskUnitId: null,
-        planUserId: null,
-        assessPlanName: '',
-        assessTime: [],
-        assessStartTime: '',
-        assessEndTime: '',
-        identificationUserId: null,
-        evaluateUserId: null,
-        riskType: 2
-    },
-    planFormRules: {
-        riskUnitId: [{ required: true, message: '请选择风险分析单元', trigger: 'change' }],
-        assessPlanName: [{ required: true, message: '请填写评估计划名称', trigger: 'blur' }],
-        assessTime: [{ required: true, message: '请选择评估时间', trigger: 'blur' }],
-        planUserId: [{ required: true, message: '请选择计划制定人', trigger: 'change' }],
-        identificationUserId: [{ required: true, message: '请选择辨识专家', trigger: 'change' }],
-        evaluateUserId: [{ required: true, message: '请选择评价专家', trigger: 'change' }],
-    },
-    riskUnitList: [],
-    personList: [],
-    bsExperts: [],
-    pjExperts: []
-})
-
-const showPlanDialog = (title: string, value: PlanType, riskUnitList: RiskUnitType [], personList: SystemPersonType [],bsExperts:[],pjExperts:[]) => {
-    planDialogState.planDialogVisible = true;
-    planDialogState.riskUnitList = riskUnitList;
-    planDialogState.personList = personList;
-    planDialogState.bsExperts = bsExperts;
-    planDialogState.pjExperts = pjExperts;
-    planDialogState.disabled = false
-    setTimeout(() => {
-        planFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        planDialogState.title = '新增';
-        planDialogState.planForm = {
-            riskUnitId: null,
-            planUserId: null,
-            assessPlanName: '',
-            assessTime: [],
-            assessStartTime: '',
-            assessEndTime: '',
-            identificationUserId: null,
-            evaluateUserId: null,
-            riskType: 2
-        };
-    }else if(title === '查看'){
-        planDialogState.title = '查看';
-        planDialogState.disabled = true
-        for(let i in planDialogState.planForm){
-            if(isValidKey(i, planDialogState.planForm)){
-                planDialogState.planForm[i] = value[i]
-            }
-        }
-        planDialogState.planForm.assessTime=[value.assessStartTime, value.assessEndTime]
-        console.log(value,planDialogState.planForm.assessTime,'time')
-    }else{
-        planDialogState.title = '编辑';
-        planDialogState.planForm.id = value.id
-        for(let i in planDialogState.planForm){
-            if(isValidKey(i, planDialogState.planForm)){
-                planDialogState.planForm[i] = value[i]
-            }
-        }
-        planDialogState.planForm.assessTime=[value.assessStartTime, value.assessEndTime]
-    }
-};
-
-const formatTime = () => {
-    planDialogState.planForm.assessStartTime = planDialogState.planForm.assessTime == [] ? '' : planDialogState.planForm.assessTime[0]
-    planDialogState.planForm.assessEndTime = planDialogState.planForm.assessTime == [] ? '' : planDialogState.planForm.assessTime[1]
-};
-
-const onSubmitPlan = () => {
-    planFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            formatTime()
-            delete planDialogState.planForm.assessTime
-            if(planDialogState.title === '新增'){
-                let res = await planApi().addPlan(planDialogState.planForm);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    planDialogState.planDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await planApi().modPlan(planDialogState.planForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    planDialogState.planDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-}
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showPlanDialog
-})
-</script>
-
-<style lang="scss" scoped>
-    ::v-deep(.pickTime){
-      position: absolute !important;
-      top: 0 !important;
-    }
-    .valueSelect{
-      ::v-deep(.el-popper){
-        .el-select-dropdown__item{
-          width: 100%;
-          height: auto;
-          white-space: normal;
-          word-break: break-all;
-          word-wrap: break-word;
-          overflow: auto;
-          padding: 10px 25px;
-          border-bottom: 1px solid #ccc;
-
-          .valueTable{
-            &>div{
-              line-height: 1.5;
-              margin-bottom: 6px;
-              display: flex;
-              align-items: center;
-
-              div{
-                color: #999;
-              }
-
-              span{
-                font-weight: bolder;
-              }
-
-              &:last-of-type{
-                margin-bottom: 0;
-              }
-            }
-          }
-        }
-      }
-    }
-</style>
diff --git a/src/views/analyse/plan/index.ts b/src/views/analyse/plan/index.ts
deleted file mode 100644
index 405aac0..0000000
--- a/src/views/analyse/plan/index.ts
+++ /dev/null
@@ -1,73 +0,0 @@
-declare interface PlanStateType {
-	planData: Array<PlanType>
-	user: number | null,
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		assessPlanName: string,
-		riskUnitName: string,
-	}
-	total: number
-	identificationMethodList: Array<Type>,
-	evaluateMethodList: Array<Type>
-	riskUnitList: Array<RiskUnitType>
-	personList: Array<SystemPersonType>,
-	bsExperts: [],
-	pjExperts: [],
-	reSendTitle:string
-	reSendDialogVisible: boolean
-	reSendForm: {
-		id: null | number,
-		identificationUserId: null | number,
-		evaluateUserId: null | number,
-	},
-	rules: object
-}
-
-declare  interface SystemPersonType {
-	id: number,
-	realName: string,
-}
-
-declare interface PlanType {
-	id: number | null,
-	riskUnitId: number | null,
-	planUserId: number | null,
-	assessPlanName: string,
-	assessStartTime: string,
-	assessEndTime: string,
-	identificationMethod: number | null,
-	identificationUserId: number | null,
-	evaluateMethod: number | null,
-	evaluateUserId: number | null,
-}
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-
-declare interface PlanDialogType {
-	title: string,
-	disabled: boolean,
-	planDialogVisible: boolean,
-	planForm: {
-		id?: number | null,
-		riskUnitId: number | null,
-		planUserId: number | null,
-		assessPlanName: string,
-		assessTime: string[],
-		assessStartTime: string,
-		assessEndTime: string,
-		identificationUserId: number | null,
-		evaluateUserId: number | null,
-		riskType: number | null
-	},
-	planFormRules: {
-
-	},
-	riskUnitList: Array<RiskUnitType>
-	personList: Array<SystemPersonType>
-	bsExperts: []
-	pjExperts: []
-}
diff --git a/src/views/analyse/plan/index.vue b/src/views/analyse/plan/index.vue
deleted file mode 100644
index 8b4814d..0000000
--- a/src/views/analyse/plan/index.vue
+++ /dev/null
@@ -1,586 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>评估计划名称:</span>
-                    <el-input v-model="planState.searchQuery.assessPlanName" clearable filterable class="input-box" placeholder="评估计划名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>风险单元名称:</span>
-                    <el-input v-model="planState.searchQuery.riskUnitName" clearable filterable class="input-box" placeholder="风险单元名称">
-                    </el-input>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getPlanData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openPlanDialog('新增', {})">新增</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="planState.planData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="assessPlanName" label="评估计划名称"/>
-                        <el-table-column prop="riskUnitName" label="风险单元名称" />
-                        <el-table-column prop="planUserName" label="计划制定人" />
-                        <el-table-column prop="assessStartTime" label="评估开始时间">
-                          <template #default="scope">
-                            <span>{{scope.row.assessStartTime?scope.row.assessStartTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="assessEndTime" label="评估结束时间">
-                          <template #default="scope">
-                            <span>{{scope.row.assessEndTime?scope.row.assessEndTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="identificationUser" label="辨识专家" />
-                        <el-table-column prop="evaluateUser" label="评价专家" />
-<!--                        <el-table-column prop="sceneUser" label="现场专家" />-->
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="planSellStatus" label="是否派发" show-overflow-tooltip>
-                            <template #default="scope">
-                                <div>
-                                    <div v-if="scope.row.planSellStatus === 1">
-                                        <el-tag :type="'info'">
-                                            {{ '未派发' }}
-                                        </el-tag>
-                                    </div>
-                                    <div v-if="scope.row.planSellStatus === 2">
-                                        <el-tag :type="'success'">
-                                            {{ '已派发' }}
-                                        </el-tag>
-                                    </div>
-                                </div>
-                            </template>
-                        </el-table-column>
-                        <el-table-column label="操作" width="250">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" v-if="scope.row.planSellStatus === 1" @click="accessPlan(scope.row)">派发</el-button>
-                                <el-button size="small" text type="primary" :icon="View" @click="openPlanDialog('查看', scope.row)">查看</el-button>
-                                <el-button v-if="scope.row.planSellStatus === 1" size="small" text type="primary" :icon="Edit" @click="openPlanDialog('修改', scope.row)">编辑</el-button>
-                                <el-button v-if="scope.row.identificationUserId == planState.user" size="small" text type="primary" :icon="Edit" @click="refuseIdentify(scope.row)">拒绝辨识</el-button>
-                                <el-button v-if="scope.row.evaluateUserId == planState.user" size="small" text type="primary" :icon="Edit" @click="refuseEvaluate(scope.row)">拒绝评价</el-button>
-<!--                                <el-button v-if="scope.row.sceneUserId == planState.user" size="small" text type="primary" :icon="Edit" @click="refuseScene(scope.row)">拒绝现场</el-button>-->
-                                <el-button v-if="scope.row.identificationUserId == null" size="small" text type="primary" :icon="Edit" @click="reSendJob(scope.row,'identification')">重新指派辨识</el-button>
-                                <el-button v-if="scope.row.evaluateUserId == null" size="small" text type="primary" :icon="Edit" @click="reSendJob(scope.row,'evaluate')">重新指派评价</el-button>
-                                <el-button v-if="scope.row.planSellStatus === 1" size="small" text type="danger" :icon="Delete" @click="onDelPlan(scope.row)">删除</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="planState.searchQuery.pageIndex" background v-model:page-size="planState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="planState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <plan-dialog ref="planDialogRef" @refresh="getPlanData"></plan-dialog>
-
-        <el-dialog class="chooseExpert" :title="planState.reSendTitle" v-model="planState.reSendDialogVisible" width="50%">
-          <el-form ref="ruleFormRef" :rules="planState.rules" :model="planState.reSendForm" label-width="120px">
-            <el-form-item v-if="planState.reSendTitle == '指派辨识专家'" label="选择辨识专家" prop="identificationUserId" class="valueSelect">
-              <el-select v-model="planState.reSendForm.identificationUserId" style="width:100%" :teleported="false" placeholder="辨识专家" clearable>
-                <el-option v-for="item in planState.bsExperts" :key="item.id" :label="item.realName" :value="item.id">
-                  <div class="valueTable">
-                    <div><div>姓名:</div><span>{{item.realName}}</span></div>
-                    <div><div>专业:</div><span>{{item.userIdentities?.map(i=>i.userIdentity).join(',')}}</span></div>
-                  </div>
-                </el-option>
-              </el-select>
-            </el-form-item>
-            <el-form-item v-if="planState.reSendTitle == '指派评价专家'" label="选择评价专家" prop="evaluateUserId" class="valueSelect">
-              <el-select v-model="planState.reSendForm.evaluateUserId" style="width:100%" :teleported="false" placeholder="评价专家" clearable>
-                <el-option v-for="item in planState.pjExperts" :key="item.id" :label="item.realName" :value="item.id">
-                  <div class="valueTable">
-                    <div><div>姓名:</div><span>{{item.realName}}</span></div>
-                    <div><div>专业:</div><span>{{item.userIdentities?.map(i=>i.userIdentity).join(',')}}</span></div>
-                  </div>
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-form>
-          <template #footer>
-                <span class="dialog-footer" style="padding-top:10px;text-align: center !important;">
-                  <el-button @click="planState.reSendDialogVisible = !planState.reSendDialogVisible" size="default">取 消</el-button>
-                  <el-button type="primary" @click="onSubmitReSend(ruleFormRef)" size="default">确认指派</el-button>
-                </span>
-          </template>
-        </el-dialog>
-
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {planApi} from "/@/api/analyse/plan";
-import {ElMessage, ElMessageBox, FormInstance} from "element-plus";
-import { Edit, View, Plus, Delete } from '@element-plus/icons-vue';
-import {riskUnitApi} from "/@/api/analyse/riskUnit";
-import {personApi} from "/@/api/basic/person";
-import {useUserInfo} from "/@/stores/userInfo";
-import { storeToRefs } from 'pinia';
-import {userApi} from "/@/api/systemManage/user";
-import {assessApplyApi} from "/@/api/analyse/assessApply";
-
-
-const PlanDialog = defineAsyncComponent(() => import('./components/planDialog.vue'));
-const planDialogRef = ref();
-const userInfo = useUserInfo();
-const { userInfos } = storeToRefs(userInfo);
-const ruleFormRef = ref<FormInstance>()
-const planState = reactive<PlanStateType>({
-    planData: [],
-    user: null,
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        assessPlanName: '',
-        riskUnitName: '',
-    },
-    total: 0,
-    riskUnitList: [
-    ],
-    personList: [],
-    bsExperts: [],
-    pjExperts: [],
-    identificationMethodList: [
-        {id:1, name: 'PHA'},
-        {id:2, name: 'JHA'},
-        {id:3, name: 'SCL'},
-        {id:4, name: 'HAZOP'},
-        {id:5, name: '类比法'},
-    ],
-        evaluateMethodList: [
-        {id:1, name: 'LEC'},
-        {id:2, name: 'LS'},
-        {id:3, name: 'MES'},
-        {id:4, name: 'RS'},
-    ],
-    reSendTitle:'',
-    reSendDialogVisible: false,
-    reSendForm: {
-      id: null,
-      identificationUserId: null,
-      evaluateUserId: null
-    },
-    rules: {
-      identificationUserId: [{ required: true, message: '请选择辨识专家', trigger: 'blur' }],
-      evaluateUserId: [{ required: true, message: '请选择评价专家', trigger: 'blur' }]
-    }
-    // deviceUnitList: [
-    //     {id:1, name: '台'},
-    //     {id:2, name: '个'},
-    //     {id:3, name: '件'}
-    // ]
-})
-
-const getPlanData = async () => {
-    let res = await planApi().getPlanByList(planState.searchQuery);
-    if(res.data.code === 100){
-        planState.planData = res.data.data;
-        planState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getAllRiskUnitList = async () => {
-    let res = await riskUnitApi().getAllRiskUnit();
-    if(res.data.code === 100){
-        planState.riskUnitList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getPersonList = async () => {
-    let res = await userApi().getUserList({
-        pageIndex: 1,
-        pageSize: 99999,
-        searchParams:{
-          roleId: null,
-          name: '',
-          realName: ''
-        }
-    });
-    if(res.data.code === 100){
-        planState.personList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const getAllExperts = async () => {
-  let res = await userApi().getExpertsList({
-    pageIndex: 1,
-    pageSize: 99999,
-    searchParams:{
-      userIndentityId: null
-    }
-  });
-  if (res.data.code === 100) {
-    const expertsList = res.data.data;
-    for(let i of expertsList){
-      if(i.roles?.find(obj=>obj.roleId == 2)){
-        planState.bsExperts.push(i)
-      }
-      if(i.roles?.find(obj=>obj.roleId == 3)){
-        planState.pjExperts.push(i)
-      }
-    }
-  } else {
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    });
-  }
-};
-
-const openPlanDialog = (title: string, value: PlanType) => {
-    planDialogRef.value.showPlanDialog(title, value, planState.riskUnitList, planState.personList,planState.bsExperts,planState.pjExperts);
-};
-
-const refuseIdentify = async(val: PlanType)=>{
-  ElMessageBox.confirm(`此操作将拒绝作为该计划:“${val.assessPlanName}”的辨识专家,是否继续?`, '提示', {
-    confirmButtonText: '确认',
-    cancelButtonText: '取消',
-    type: 'warning'
-  })
-      .then(async () => {
-        let res = await planApi().refuseIdentify({ id: val.id });
-        if (res.data.code === 100) {
-          ElMessage({
-            type: 'success',
-            duration: 2000,
-            message: '拒绝成功'
-          });
-          await getPlanData();
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      })
-      .catch((error) => {
-      });
-}
-
-const reSendJob= async(val: PlanType,type:string)=>{
-  planState.reSendForm = {
-    id: val.id,
-    identificationUserId: null,
-    evaluateUserId: null
-  }
-  if(type=='identification'){
-    planState.reSendTitle = '指派辨识专家'
-  }else{
-    planState.reSendTitle = '指派评价专家'
-  }
-  planState.reSendDialogVisible = true
-}
-
-const onSubmitReSend = async (formEl: FormInstance | undefined) => {
-  if (!formEl) return
-  await formEl.validate(async(valid, fields) => {
-    if (valid) {
-      let res = await planApi().reSendJob(planState.reSendForm);
-      if(res.data.code === 100){
-        ElMessage({
-          type: 'success',
-          message: '重新指派成功'
-        });
-      }else{
-        ElMessage({
-          type: 'warning',
-          message: res.data.msg
-        });
-      }
-
-      planState.reSendForm = {
-        id: null,
-        identificationUserId: null,
-        evaluateUserId: null
-      },
-      planState.reSendDialogVisible = false
-      getPlanData()
-    } else {
-      console.log('error submit!', fields)
-    }
-  })
-}
-
-const refuseEvaluate = async(val: PlanType)=>{
-  ElMessageBox.confirm(`此操作将拒绝作为该计划:“${val.assessPlanName}”的评价专家,是否继续?`, '提示', {
-    confirmButtonText: '确认',
-    cancelButtonText: '取消',
-    type: 'warning'
-  })
-      .then(async () => {
-        let res = await planApi().refuseEvaluate({ id: val.id });
-        if (res.data.code === 100) {
-          ElMessage({
-            type: 'success',
-            duration: 2000,
-            message: '拒绝成功'
-          });
-          await getPlanData();
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      })
-      .catch((error) => {
-      });
-}
-
-// const refuseScene = async(val: PlanType)=>{
-//   let res = await planApi().refuseScene({ id: val.id });
-//   if (res.data.code === 100) {
-//     ElMessage({
-//       type: 'success',
-//       duration: 2000,
-//       message: '拒绝成功'
-//     });
-//     await getPlanData();
-//   } else {
-//     ElMessage({
-//       type: 'warning',
-//       message: res.data.msg
-//     });
-//   }
-// }
-
-const onDelPlan = (val: PlanType) => {
-    ElMessageBox.confirm(`此操作将永久删除该计划:“${val.assessPlanName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await planApi().deletePlanById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getPlanData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-};
-
-const accessPlan = (val: PlanType) => {
-    ElMessageBox.confirm(`此操作将派发该计划:“${val.assessPlanName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await planApi().sellAssessPlan({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '派发成功'
-                });
-                await getPlanData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-};
-
-const onHandleSizeChange = (val: number) => {
-    planState.searchQuery.pageSize = val;
-    getPlanData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    planState.searchQuery.pageIndex = val;
-    getPlanData();
-};
-
-const reset = () => {
-    planState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        riskUnitName: '',
-        assessPlanName: '',
-    }
-};
-
-onMounted(() => {
-    getPlanData();
-    getAllRiskUnitList();
-    getAllExperts();
-    getPersonList();
-    planState.user = Number(userInfos.value.uid)
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-::v-deep(.el-dialog){
-  .el-dialog__body{
-    overflow-y: visible !important;
-    overflow-x: visible !important;
-  }
-}
-
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-
-.valueSelect{
-  ::v-deep(.el-popper){
-    .el-select-dropdown__item{
-      width: 100%;
-      height: auto;
-      white-space: normal;
-      word-break: break-all;
-      word-wrap: break-word;
-      overflow: auto;
-      padding: 10px 25px;
-      border-bottom: 1px solid #ccc;
-
-      .valueTable{
-        &>div{
-          line-height: 1.5;
-          margin-bottom: 6px;
-          display: flex;
-          align-items: center;
-
-          div{
-            color: #999;
-          }
-
-          span{
-            font-weight: bolder;
-          }
-
-          &:last-of-type{
-            margin-bottom: 0;
-          }
-        }
-      }
-    }
-  }
-}
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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);
-}
-:deep(.el-range-editor.is-disabled input){
-    background-color: var(--el-card-bg-color);
-    color: var(--el-input-text-color, var(--el-text-color-regular));
-}
-</style>
diff --git a/src/views/analyse/riskUnit/components/riskUnitDialog.vue b/src/views/analyse/riskUnit/components/riskUnitDialog.vue
deleted file mode 100644
index d916b3b..0000000
--- a/src/views/analyse/riskUnit/components/riskUnitDialog.vue
+++ /dev/null
@@ -1,222 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="riskUnitDialogState.title" v-model="riskUnitDialogState.riskUnitDialogVisible" width="600px">
-            <el-form ref="riskUnitFormRef" :rules="riskUnitDialogState.riskUnitFormRules" :model="riskUnitDialogState.riskUnitForm" size="default" label-width="120px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="实验类型" prop="experimentType">
-                            <el-select :disabled="riskUnitDialogState.title === '编辑'" v-model="riskUnitDialogState.experimentType" placeholder="实验类型" clearable class="input-length">
-                                <el-option v-for="item in riskUnitDialogState.experimentTypeList" :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="experimentId">
-                            <el-select v-model="riskUnitDialogState.riskUnitForm.experimentId" placeholder="实验名称" clearable class="input-length">
-                                <el-option v-for="item in riskUnitDialogState.allExperimentList" :key="item.id" :label="item.experimentName" :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" v-if="riskUnitDialogState.experimentType === 2">
-                        <el-form-item label="风险单元编号" prop="riskCode">
-                            <el-input v-model="riskUnitDialogState.riskUnitForm.riskCode" placeholder="风险单元编号" clearable class="input-length"></el-input>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-if="riskUnitDialogState.experimentType === 2">
-                        <el-form-item label="风险单元名称" prop="riskName">
-                            <el-input v-model="riskUnitDialogState.riskUnitForm.riskName" placeholder="风险单元名称" clearable class="input-length"></el-input>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-if="riskUnitDialogState.experimentType === 2">
-                      <el-form-item label="风险单元类型" prop="experimentId">
-                        <el-select v-model="riskUnitDialogState.riskUnitForm.riskUnitTypeId" placeholder="风险单元类型" clearable class="input-length">
-                          <el-option v-for="item in riskUnitDialogState.riskTypeList" :key="item.id" :label="item.riskType" :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" v-if="riskUnitDialogState.experimentType === 2">
-                        <el-form-item label="负责人" prop="liabilityUserId">
-                            <el-select v-model="riskUnitDialogState.riskUnitForm.liabilityUserId" placeholder="负责人" clearable class="input-length">
-                                <el-option v-for="item in riskUnitDialogState.allPersonList" :key="item.id" :label="item.personName" :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" v-if="riskUnitDialogState.experimentType === 2">
-                        <el-form-item label="负责部门" prop="liabilityDep">
-                            <el-input v-model="riskUnitDialogState.riskUnitForm.liabilityDep" placeholder="负责部门" clearable class="input-length"></el-input>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-if="riskUnitDialogState.experimentType === 2">
-                        <el-form-item label="风险单元描述">
-                            <el-input type="textarea" :rows="3" v-model="riskUnitDialogState.riskUnitForm.description" placeholder="风险单元描述" clearable class="input-length"></el-input>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-if="riskUnitDialogState.experimentType === 1">
-                        <el-form-item label="基础风险单元" prop="basicRiskUnitId">
-                            <el-select v-model="riskUnitDialogState.riskUnitForm.basicRiskUnitId" placeholder="基础风险单元" clearable class="input-length">
-                                <el-option v-for="item in riskUnitDialogState.basicUnitList" :key="item.id" :label="item.riskName" :value="item.id"></el-option>
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="riskUnitDialogState.riskUnitDialogVisible = !riskUnitDialogState.riskUnitDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitRiskUnit" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import { isValidKey } from "/@/utils/methods";
-import {ElMessage} from "element-plus";
-import {riskUnitApi} from "/@/api/analyse/riskUnit";
-
-const riskUnitFormRef = ref()
-
-const riskUnitDialogState = reactive<RiskUnitDialogType>({
-    title: '',
-    experimentType: null,
-    riskUnitDialogVisible: false,
-    riskUnitForm: {
-        experimentId: null,
-        riskCode: '',
-        riskName: '',
-        riskUnitTypeId: null,
-        liabilityUserId: null,
-        liabilityDep: '',
-        description: '',
-        basicRiskUnitId: null,
-    },
-    riskUnitFormRules: {
-        experimentId: [{ required: true, message: '请选择实验', trigger: 'change' }],
-        riskCode: [{ required: true, message: '请填写风险单元编号', trigger: 'blur' }],
-        riskName: [{ required: true, message: '请填写风险单元名称', trigger: 'blur' }],
-        riskUnitTypeId: [{ required: true, message: '请选择风险单元类型', trigger: 'blur' }],
-        liabilityUserId: [{ required: true, message: '请选择负责人', trigger: 'change' }],
-        basicRiskUnitId: [{ required: true, message: '请选择基础风险单元', trigger: 'change' }]
-    },
-    specialDeviceList: [],
-    deviceUnitList: [
-        {id:1, name: '台'},
-        {id:2, name: '个'},
-        {id:3, name: '件'}
-    ],
-    riskTypeList: [],
-    basicUnitList: [],
-    allPersonList: [],
-    allExperimentList: [],
-    experimentTypeList: [
-        {id: 2, name: '实验风险'},
-        {id: 1, name: '固有风险'},
-    ],
-})
-
-const showRiskUnitDialog = (title: string, value: RiskUnitType, basicUnitList: UnitType [], allPersonList: AllPersonListType [], allExperimentList: ProjectType [],allRiskTypeList: RiskType []) => {
-    riskUnitDialogState.riskUnitDialogVisible = true;
-    riskUnitDialogState.basicUnitList = basicUnitList
-    riskUnitDialogState.allPersonList = allPersonList
-    riskUnitDialogState.allExperimentList = allExperimentList
-    riskUnitDialogState.riskTypeList = allRiskTypeList
-    setTimeout(() => {
-        riskUnitFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        riskUnitDialogState.title = '新增';
-        riskUnitDialogState.riskUnitForm = {
-            experimentId: null,
-            riskCode: '',
-            riskName: '',
-            riskUnitTypeId: null,
-            liabilityUserId: null,
-            liabilityDep: '',
-            description: '',
-            basicRiskUnitId: null,
-        };
-    }else{
-        riskUnitDialogState.title = '编辑';
-        riskUnitDialogState.experimentType = value.riskType as number
-        for(let i in riskUnitDialogState.riskUnitForm) {
-            if(isValidKey(i, riskUnitDialogState.riskUnitForm)) {
-                riskUnitDialogState.riskUnitForm[i] = value[i];
-            }
-        }
-        riskUnitDialogState.riskUnitForm.id = value.id
-    }
-};
-
-const onSubmitRiskUnit = () => {
-    riskUnitFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(riskUnitDialogState.title === '新增' && riskUnitDialogState.experimentType === 1){
-                let { experimentId,basicRiskUnitId} = riskUnitDialogState.riskUnitForm
-                let query = { experimentId,basicRiskUnitId }
-                let res = await riskUnitApi().addBasicRiskUnit(query);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    riskUnitDialogState.riskUnitDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else if(riskUnitDialogState.title === '新增' && riskUnitDialogState.experimentType === 2){
-                let { basicRiskUnitId, ...query} = riskUnitDialogState.riskUnitForm
-                let res = await riskUnitApi().addRiskUnit(query);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    riskUnitDialogState.riskUnitDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await riskUnitApi().modRiskUnit(riskUnitDialogState.riskUnitForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    riskUnitDialogState.riskUnitDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-}
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showRiskUnitDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/analyse/riskUnit/index.ts b/src/views/analyse/riskUnit/index.ts
deleted file mode 100644
index b1dde19..0000000
--- a/src/views/analyse/riskUnit/index.ts
+++ /dev/null
@@ -1,68 +0,0 @@
-declare interface RiskUnitStateType {
-	riskUnitData:  RiskUnitType [],
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		riskCode: string,
-		riskName: string,
-	}
-	total: number
-	allRiskTypeList: Array<RiskType>
-	riskList: Array<Type>,
-	riskSourceList: Array<Type>
-	evaluateStatusList: Array<Type>
-	basicUnitList: Array<UnitType>
-	allPersonList: Array<AllPersonListType>
-	allExperimentList: Array<ProjectType>
-}
-
-declare interface RiskUnitType {
-	id?: number
-	experimentId: number | null,
-	riskCode: string,
-	riskName: string,
-	liabilityDep: string,
-	liabilityUserId: number | null,
-	description: string,
-	basicRiskUnitId: number | null,
-	riskType?: number,
-}
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-
-declare interface RiskType {
-	id: number,
-	riskType: string
-}
-
-declare interface RiskUnitDialogType {
-	title: string,
-	disabled: boolean
-	experimentType: number | null,
-	riskUnitDialogVisible: boolean,
-	riskUnitForm: {
-		id?: number | null
-		experimentId: number | null,
-		riskCode: string,
-		riskName: string,
-		riskUnitTypeId: number | null,
-		liabilityDep: string,
-		liabilityUserId: number | null,
-		description: string,
-		basicRiskUnitId: number | null,
-		riskType?: number,
-	},
-	riskUnitFormRules: {
-
-	},
-	riskTypeList: Array<RiskType>,
-	specialDeviceList: Array<Type>,
-	deviceUnitList: Array<Type>,
-	basicUnitList: Array<UnitType>,
-	allPersonList: Array<AllPersonListType>,
-	allExperimentList: Array<ProjectType>,
-	experimentTypeList: Array<Type>
-}
diff --git a/src/views/analyse/riskUnit/index.vue b/src/views/analyse/riskUnit/index.vue
deleted file mode 100644
index 2ea936f..0000000
--- a/src/views/analyse/riskUnit/index.vue
+++ /dev/null
@@ -1,373 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>风险编码:</span>
-                    <el-input v-model="riskUnitState.searchQuery.riskCode" clearable filterable class="input-box" placeholder="风险编码">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>风险名称:</span>
-                    <el-input v-model="riskUnitState.searchQuery.riskName" clearable filterable class="input-box" placeholder="风险名称">
-                    </el-input>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getRiskUnitData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openRiskUnitDialog('新增', {})">新增</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="riskUnitState.riskUnitData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="riskCode" label="风险编码"/>
-                        <el-table-column prop="riskName" label="风险名称" />
-                        <el-table-column prop="riskSourceType" label="风险源风险类型">
-                            <template #default="scope">
-                                <span>{{`${riskUnitState.riskSourceList.find(item =>item.id === scope.row.riskSourceType)?.name || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="riskType" label="风险类型">
-                            <template #default="scope">
-                                <span>{{`${riskUnitState.riskList.find(item =>item.id === scope.row.riskType)?.name || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="riskUnitType" label="风险单元类型"/>
-                        <el-table-column prop="evaluateStatus" label="是否评价" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${riskUnitState.evaluateStatusList.find(item =>item.id === scope.row.evaluateStatus)?.name}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column label="操作" width="150">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" :icon="Edit" @click="openRiskUnitDialog('修改', scope.row)" v-if="scope.row.riskType === 2">编辑</el-button>
-                                <el-button size="small" text type="danger" :icon="Delete" @click="onDelRiskUnit(scope.row)">删除</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="riskUnitState.searchQuery.pageIndex" background v-model:page-size="riskUnitState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="riskUnitState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <risk-unit-dialog ref="riskUnitDialogRef" @refresh="getRiskUnitData"></risk-unit-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {riskUnitApi} from "/@/api/analyse/riskUnit";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { Edit, View, Plus, Delete } from '@element-plus/icons-vue';
-import { unitApi } from "/@/api/basic/unit";
-import {personApi} from "/@/api/basic/person";
-import { projectApi } from "/@/api/experiment/project";
-
-const RiskUnitDialog = defineAsyncComponent(() => import('./components/riskUnitDialog.vue'));
-
-const riskUnitDialogRef = ref();
-
-const riskUnitState = reactive<RiskUnitStateType>({
-    riskUnitData: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        riskCode: '',
-        riskName: '',
-    },
-    total: 0,
-    riskList: [
-        {id: 1, name: '固有风险'},
-        {id:2, name: '实验风险'}
-    ],
-    evaluateStatusList: [
-        {id: 1, name: '未评价'},
-        {id:2, name: '已评价'}
-    ],
-    riskSourceList: [
-        {id:1, name: '区域、实验场所'},
-        {id:2, name: '设施设备'},
-        {id:3, name: '固定工艺节点'}
-    ],
-    allRiskTypeList: [],
-    basicUnitList: [],
-    allPersonList: [],
-    allExperimentList: [],
-})
-
-const getRiskUnitData = async () => {
-    let res = await riskUnitApi().getRiskUnitByList(riskUnitState.searchQuery);
-    if(res.data.code === 100){
-        riskUnitState.riskUnitData = res.data.data;
-        riskUnitState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getAllBasicUnitList = async () => {
-    let res = await unitApi().getAllUnit();
-    if(res.data.code === 100){
-        riskUnitState.basicUnitList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const getAllPersonList = async () => {
-    let res = await personApi().getAllPerson();
-    if(res.data.code === 100){
-        riskUnitState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const getAllTypeList = async () =>{
-  let res = await unitApi().getAllUnitType()
-  if(res.data.code === 100){
-    riskUnitState.allRiskTypeList = JSON.parse(JSON.stringify(res.data.data));
-  }else{
-    ElMessage({
-      type: 'warning',
-      message: res.data.msg
-    })
-  }
-}
-
-const getAllExperimentList = async () => {
-    let res = await projectApi().getAllExperiment()
-    if(res.data.code === 100){
-        riskUnitState.allExperimentList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const openRiskUnitDialog = (title: string, value: RiskUnitType) => {
-    riskUnitDialogRef.value.showRiskUnitDialog(title, value, riskUnitState.basicUnitList, riskUnitState.allPersonList, riskUnitState.allExperimentList, riskUnitState.allRiskTypeList);
-};
-
-const onDelRiskUnit = (val: RiskUnitType) => {
-    ElMessageBox.confirm(`此操作将永久删除该风险单元:“${val.riskName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await riskUnitApi().deleteRiskUnitById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getRiskUnitData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    riskUnitState.searchQuery.pageSize = val;
-    getRiskUnitData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    riskUnitState.searchQuery.pageIndex = val;
-    getRiskUnitData();
-};
-
-const reset = () => {
-    riskUnitState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        riskCode: '',
-        riskName: '',
-    }
-};
-
-onMounted(() => {
-    getRiskUnitData();
-    getAllBasicUnitList();
-    getAllPersonList();
-    getAllTypeList();
-    getAllExperimentList();
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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/basic/equipment/components/equipmentDialog.vue b/src/views/basic/equipment/components/equipmentDialog.vue
deleted file mode 100644
index d20f00d..0000000
--- a/src/views/basic/equipment/components/equipmentDialog.vue
+++ /dev/null
@@ -1,236 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="equipmentDialogState.title" v-model="equipmentDialogState.equipmentDialogVisible" :close-on-click-modal="false" width="600px">
-            <el-form ref="EquipmentFormRef" :rules="equipmentDialogState.equipmentFormRules" :model="equipmentDialogState.equipmentForm" size="default" label-width="120px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="设备编号" prop="deviceCode">
-                            <el-input v-model="equipmentDialogState.equipmentForm.deviceCode" placeholder="设备编号" clearable class="input-length"></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="deviceName">
-                            <el-input v-model="equipmentDialogState.equipmentForm.deviceName" placeholder="设备名称" clearable class="input-length"></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="deviceTypeId">
-                        <el-select v-model="equipmentDialogState.equipmentForm.deviceTypeId" placeholder="设备类型" clearable class="input-length">
-                          <el-option v-for="item in equipmentTypeList" :key="item.id" :label="item.deviceType" :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="deviceDesc">
-                        <el-input v-model="equipmentDialogState.equipmentForm.deviceDesc" placeholder="设备型号" clearable class="input-length"></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="devicePower">
-                            <el-input v-model="equipmentDialogState.equipmentForm.devicePower" placeholder="额定功率" clearable class="input-length"></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="deviceUnit">
-                            <el-select v-model="equipmentDialogState.equipmentForm.deviceUnit" placeholder="计量单位" clearable class="input-length">
-                                <el-option v-for="item in equipmentDialogState.deviceUnitList" :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="是否特种设备">
-                            <el-select v-model="equipmentDialogState.equipmentForm.specialDevice" placeholder="是否特种设备" clearable class="input-length">
-                                <el-option v-for="item in equipmentDialogState.specialDeviceList" :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="deviceStatus">
-                        <el-select v-model="equipmentDialogState.equipmentForm.deviceStatus" placeholder="设备状态" clearable class="input-length">
-                          <el-option :key="1" label="完好" :value="1"></el-option>
-                          <el-option :key="2" label="异常" :value="2"></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="安全防护">
-                            <el-input type="textarea" :rows="3" v-model="equipmentDialogState.equipmentForm.safeProtect" placeholder="安全防护" clearable class="input-length"></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="buyTime">
-                        <el-date-picker
-                            v-model="equipmentDialogState.equipmentForm.buyTime"
-                            format="YYYY-MM-DD"
-                            value-format="YYYY-MM-DD 00:00:00"
-                            type="dateTime"
-                            placeholder="购入时间"
-                        />
-                      </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                      <el-form-item label="校准时间" prop="adjustTime">
-                        <el-date-picker
-                            v-model="equipmentDialogState.equipmentForm.adjustTime"
-                            format="YYYY-MM-DD"
-                            value-format="YYYY-MM-DD 00:00:00"
-                            type="dateTime"
-                            placeholder="校准时间"
-                        />
-                      </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="equipmentDialogState.equipmentDialogVisible = !equipmentDialogState.equipmentDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitEquipment" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { defineProps, reactive, ref } from "vue";
-import {useMenuApi} from "/@/api/systemManage/menu";
-import {ElMessage} from "element-plus";
-import {equipmentApi} from "/@/api/basic/equipement";
-
-const EquipmentFormRef = ref()
-
-const equipmentDialogState = reactive<EquipmentDialogType>({
-    title: '',
-    equipmentDialogVisible: false,
-    equipmentForm: {
-        id: null,
-        deviceCode: '',
-        deviceName: '',
-        devicePower: '',
-        deviceUnit: null,
-        specialDevice: null,
-        safeProtect: '',
-        deviceTypeId: null,
-        deviceDesc: '',
-        deviceStatus: null,
-        buyTime: '',
-        adjustTime: ''
-    },
-    equipmentFormRules: {
-        deviceCode: [{ required: true, message: '请填写设备编号', trigger: 'blur' }],
-        deviceName: [{ required: true, message: '请填写设备名称', trigger: 'blur' }],
-        devicePower: [{ required: true, message: '请填写额定功率', trigger: 'blur' }],
-        deviceUnit: [{ required: true, message: '请选择计量单位', trigger: 'change' }],
-        deviceTypeId: [{ required: true, message: '请填写设备类型ID', trigger: 'blur' }],
-        deviceDesc: [{ required: true, message: '请填写设备型号', trigger: 'blur' }],
-        deviceStatus: [{ required: true, message: '请选择设备状态', trigger: 'blur' }],
-        buyTime: [{ required: true, message: '请选择购入时间', trigger: 'blur' }],
-        adjustTime: [{ required: true, message: '请选择校准时间', trigger: 'blur' }]
-    },
-    specialDeviceList: [],
-    deviceUnitList: [
-        {id:1, name: '台'},
-        {id:2, name: '个'},
-        {id:3, name: '件'}
-    ]
-})
-
-const showEquipmentDialog = (title: string, value: EquipmentType, specialDeviceList: Type []) => {
-
-    equipmentDialogState.equipmentDialogVisible = true;
-    equipmentDialogState.specialDeviceList = specialDeviceList;
-    setTimeout(() => {
-        EquipmentFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        equipmentDialogState.title = '新增';
-        equipmentDialogState.equipmentForm = {
-            deviceCode: '',
-            deviceName: '',
-            devicePower: '',
-            deviceUnit: null,
-            specialDevice: null,
-            safeProtect: '',
-            deviceTypeId: null,
-            deviceDesc: '',
-            deviceStatus: null,
-            buyTime: '',
-            adjustTime: ''
-        };
-    }else{
-        equipmentDialogState.title = '编辑'
-        equipmentDialogState.equipmentForm = {
-            id: value.id,
-            deviceCode: value.deviceCode,
-            deviceName: value.deviceName,
-            devicePower: value.devicePower,
-            deviceUnit: value.deviceUnit,
-            specialDevice: value.specialDevice,
-            safeProtect: value.safeProtect,
-            deviceTypeId:value.deviceTypeId,
-            deviceDesc: value.deviceDesc,
-            deviceStatus: value.deviceStatus,
-            buyTime: value.buyTime,
-            adjustTime: value.adjustTime
-        };
-    }
-};
-
-const onSubmitEquipment = () => {
-    EquipmentFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(equipmentDialogState.title === '新增'){
-                let res = await equipmentApi().addEquipment(equipmentDialogState.equipmentForm);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    equipmentDialogState.equipmentDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-              console.log(equipmentDialogState.equipmentForm,'修改')
-                let res = await equipmentApi().modEquipment(equipmentDialogState.equipmentForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    equipmentDialogState.equipmentDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-}
-
-const emit = defineEmits(['refresh'])
-
-defineProps({
-  equipmentTypeList: Array
-})
-
-defineExpose({
-    showEquipmentDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/basic/equipment/index.ts b/src/views/basic/equipment/index.ts
deleted file mode 100644
index c708fa3..0000000
--- a/src/views/basic/equipment/index.ts
+++ /dev/null
@@ -1,62 +0,0 @@
-declare interface EquipmentStateType {
-	equipmentData: Array<EquipmentType>
-	equipmentTypeList: Array<deviceType>
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		deviceCode: string,
-		deviceName: string,
-		devicePower: string,
-		specialDevice: number | null,
-	}
-	total: number
-	specialDeviceList: Array<Type>,
-	deviceUnitList: Array<Type>
-}
-
-declare interface EquipmentType {
-	id: number | null,
-	deviceCode: string,
-	deviceName: string,
-	devicePower: string,
-	deviceUnit: number | null,
-	specialDevice: number | null,
-	safeProtect: string,
-	deviceTypeId: number | null,
-	deviceDesc: string,
-	deviceStatus: number | null,
-	buyTime: string,
-	adjustTime: string
-}
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-declare interface deviceType {
-	id: number,
-	deviceType: string,
-}
-declare interface EquipmentDialogType {
-	title: string,
-	equipmentDialogVisible: boolean,
-	equipmentForm: {
-		id?: number | null,
-		deviceCode: string,
-		deviceName: string,
-		devicePower: string,
-		deviceUnit: number | null,
-		specialDevice: number | null,
-		safeProtect: string,
-		deviceTypeId: number | null,
-		deviceDesc: string,
-		deviceStatus: number | null,
-		buyTime: string,
-		adjustTime: string
-	},
-	equipmentFormRules: {
-
-	},
-	specialDeviceList: Array<Type>,
-	deviceUnitList: Array<Type>
-}
diff --git a/src/views/basic/equipment/index.vue b/src/views/basic/equipment/index.vue
deleted file mode 100644
index 153359c..0000000
--- a/src/views/basic/equipment/index.vue
+++ /dev/null
@@ -1,345 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>设备编码:</span>
-                    <el-input v-model="equipmentState.searchQuery.deviceCode" clearable filterable class="input-box" placeholder="设备编码">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>设备名称:</span>
-                    <el-input v-model="equipmentState.searchQuery.deviceName" clearable filterable class="input-box" placeholder="设备名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>额定功率:</span>
-                    <el-input v-model="equipmentState.searchQuery.devicePower" clearable filterable class="input-box" placeholder="额定功率">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>是否特种设备:</span>
-                    <el-select v-model="equipmentState.searchQuery.specialDevice" clearable filterable class="input-box" placeholder="是否特种设备">
-                        <el-option v-for="item in equipmentState.specialDeviceList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getEquipmentData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openEquipmentDialog('新增', {})">新增</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="equipmentState.equipmentData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="deviceCode" label="设备编号"/>
-                        <el-table-column prop="deviceName" label="设备名称" />
-                        <el-table-column prop="deviceTypeId" label="设备类型" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{equipmentState.equipmentTypeList.find(item =>item.id === scope.row.deviceTypeId)?.deviceType}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="deviceDesc" label="设备型号" />
-                        <el-table-column prop="devicePower" label="额定功率">
-                          <template #default="scope">
-                            <span>{{scope.row.devicePower}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="deviceStatus" label="设备状态">
-                            <template #default="scope">
-                                <span>{{scope.row.deviceStatus == 1?'完好':'异常'}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="deviceUnit" label="计量单位" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{`${equipmentState.deviceUnitList.find(item =>item.id === scope.row.deviceUnit)?.name}`}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="specialDevice" label="是否特殊装备" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${equipmentState.specialDeviceList.find(item =>item.id === scope.row.specialDevice)?.name}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="safeProtect" label="安全防护"/>
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column label="操作" width="150">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" :icon="Edit" @click="openEquipmentDialog('修改', scope.row)">编辑</el-button>
-                                <el-button size="small" text type="danger" :icon="Delete" @click="onDelEquipment(scope.row)">删除</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="equipmentState.searchQuery.pageIndex" background v-model:page-size="equipmentState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="equipmentState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <equipment-dialog ref="equipmentDialogRef" @refresh="getEquipmentData" :equipmentTypeList="equipmentState.equipmentTypeList"></equipment-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {equipmentApi} from "/@/api/basic/equipement";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { Edit, View, Plus, Delete } from '@element-plus/icons-vue';
-
-const EquipmentDialog = defineAsyncComponent(() => import('./components/equipmentDialog.vue'));
-
-const equipmentDialogRef = ref();
-
-const equipmentState = reactive<EquipmentStateType>({
-    equipmentData: [],
-    equipmentTypeList: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        deviceCode: '',
-        deviceName: '',
-        devicePower: '',
-        specialDevice: null,
-    },
-    total: 0,
-    specialDeviceList: [
-        {id: 1, name: '是'},
-        {id:2, name: '否'}
-    ],
-    deviceUnitList: [
-        {id:1, name: '台'},
-        {id:2, name: '个'},
-        {id:3, name: '件'}
-    ]
-})
-
-const getAllType = async ()=>{
-  const res = await equipmentApi().getAllType();
-  if(res.data.code === 100){
-    equipmentState.equipmentTypeList = res.data.data
-  }
-}
-
-const getEquipmentData = async () => {
-    let res = await equipmentApi().getEquipmentByList(equipmentState.searchQuery);
-    if(res.data.code === 100){
-        equipmentState.equipmentData = res.data.data;
-        equipmentState.total = res.data.total
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const openEquipmentDialog = (title: string, value: EquipmentType) => {
-    equipmentDialogRef.value.showEquipmentDialog(title, value, equipmentState.specialDeviceList);
-};
-
-const onDelEquipment = (val: EquipmentType) => {
-    ElMessageBox.confirm(`此操作将永久删除该设备:“${val.deviceName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await equipmentApi().deleteEquipmentById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getEquipmentData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    equipmentState.searchQuery.pageSize = val;
-    getEquipmentData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    equipmentState.searchQuery.pageIndex = val;
-    getEquipmentData();
-};
-
-const reset = () => {
-    equipmentState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        deviceCode: '',
-        deviceName: '',
-        devicePower: '',
-        specialDevice: null,
-    }
-};
-
-onMounted(() => {
-    getEquipmentData()
-    getAllType()
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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/basic/material/components/materialDialog.vue b/src/views/basic/material/components/materialDialog.vue
deleted file mode 100644
index 4410290..0000000
--- a/src/views/basic/material/components/materialDialog.vue
+++ /dev/null
@@ -1,169 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="materialDialogState.title" v-model="materialDialogState.materialDialogVisible"  :close-on-click-modal="false" width="600px">
-            <el-form ref="MaterialFormRef" :rules="materialDialogState.materialFormRules" :model="materialDialogState.materialForm" size="default" label-width="120px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="实验材料" prop="stuffName">
-                            <el-input v-model="materialDialogState.materialForm.stuffName" placeholder="实验材料" clearable class="input-length"></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="stuffCode">
-                            <el-input v-model="materialDialogState.materialForm.stuffCode" placeholder="编号" clearable class="input-length"></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="stuffType">
-                            <el-select v-model="materialDialogState.materialForm.stuffType" placeholder="材料类型" clearable class="input-length">
-                                <el-option v-for="item in materialDialogState.stuffTypeList" :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="stuffStorage">
-                            <el-select v-model="materialDialogState.materialForm.stuffStorage" placeholder="材料储存" clearable class="input-length">
-                                <el-option v-for="item in materialDialogState.stuffStorageList" :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="stuffUnit">
-                            <el-select v-model="materialDialogState.materialForm.stuffUnit" placeholder="计量单位" clearable class="input-length">
-                                <el-option v-for="item in materialDialogState.stuffUnitList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="materialDialogState.materialDialogVisible = !materialDialogState.materialDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitMaterial" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import {useMenuApi} from "/@/api/systemManage/menu";
-import {ElMessage} from "element-plus";
-import {materialApi} from "/@/api/basic/material";
-
-const MaterialFormRef = ref()
-
-const materialDialogState = reactive<MaterialDialogType>({
-    title: '',
-    materialDialogVisible: false,
-    materialForm: {
-        stuffCode: '',
-        stuffName: '',
-        stuffStorage: null,
-        stuffType: null,
-        stuffUnit: null,
-    },
-    materialFormRules: {
-        stuffCode: [{ required: true, message: '请填写实验材料', trigger: 'blur' }],
-        stuffName: [{ required: true, message: '请填写编号', trigger: 'blur' }],
-        stuffStorage: [{ required: true, message: '请选择材料类型', trigger: 'change' }],
-        stuffType: [{ required: true, message: '请选择材料储存', trigger: 'change' }],
-        stuffUnit: [{ required: true, message: '请选择计量单位', trigger: 'change' }]
-    },
-    stuffTypeList: [
-        {id: 1, name: '化学试剂'},
-        {id:2, name: '基础材料'}
-    ],
-    stuffStorageList: [
-        {id:1, name: '智能试剂柜'},
-        {id:2, name: '普通储存柜'},
-    ],
-    stuffUnitList: [
-        {id:1, name: 'g'},
-        {id:2, name: 'kg'},
-        {id:3, name: 'ml'},
-        {id:4, name: 'l'},
-    ]
-})
-
-const showMaterialDialog = (title: string, value: MaterialType) => {
-    materialDialogState.materialDialogVisible = true;
-    setTimeout(() => {
-        MaterialFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        materialDialogState.title = '新增';
-        materialDialogState.materialForm = {
-            stuffName: '',
-            stuffCode: '',
-            stuffType: null,
-            stuffStorage: null,
-            stuffUnit: null,
-        };
-    }else{
-        materialDialogState.title = '编辑'
-        materialDialogState.materialForm = {
-            id: value.id,
-            stuffName: value.stuffName,
-            stuffCode: value.stuffCode,
-            stuffType: value.stuffType,
-            stuffStorage: value.stuffStorage,
-            stuffUnit: value.stuffUnit,
-        };
-    }
-};
-
-const onSubmitMaterial = () => {
-    MaterialFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(materialDialogState.title === '新增'){
-                let res = await materialApi().addMaterial(materialDialogState.materialForm);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    materialDialogState.materialDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await materialApi().modMaterial(materialDialogState.materialForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    materialDialogState.materialDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-}
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showMaterialDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/basic/material/index.ts b/src/views/basic/material/index.ts
deleted file mode 100644
index 8be5c9a..0000000
--- a/src/views/basic/material/index.ts
+++ /dev/null
@@ -1,48 +0,0 @@
-declare interface MaterialStateType{
-	materialData: Array<MaterialType>
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		stuffName: string,
-		stuffCode: string,
-		stuffType: number | null,
-	}
-	total: number,
-	stuffTypeList: Array<Type>,
-	stuffStorageList: Array<Type>,
-	stuffUnitList: Array<Type>
-}
-
-
-declare interface MaterialType {
-	id?: number | null,
-	stuffName: string,
-	stuffCode: string,
-	stuffType: number | null,
-	stuffStorage: number | null,
-	stuffUnit: number | null,
-}
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-
-declare interface MaterialDialogType {
-	title: string,
-	materialDialogVisible: boolean,
-	materialForm: {
-		id?: number | null,
-		stuffName: string,
-		stuffCode: string,
-		stuffType: number | null,
-		stuffStorage: number | null,
-		stuffUnit: number | null,
-	},
-	materialFormRules: {
-
-	},
-	stuffTypeList: Array<Type>,
-	stuffStorageList: Array<Type>,
-	stuffUnitList: Array<Type>
-}
diff --git a/src/views/basic/material/index.vue b/src/views/basic/material/index.vue
deleted file mode 100644
index 7bde878..0000000
--- a/src/views/basic/material/index.vue
+++ /dev/null
@@ -1,322 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>实验材料:</span>
-                    <el-input v-model="materialState.searchQuery.stuffName" clearable filterable class="input-box" placeholder="实验材料">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>耗材编号:</span>
-                    <el-input v-model="materialState.searchQuery.stuffCode" clearable filterable class="input-box" placeholder="耗材编号">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>材料类型:</span>
-                    <el-select v-model="materialState.searchQuery.stuffType" clearable filterable class="input-box" placeholder="材料类型">
-                        <el-option v-for="item in materialState.stuffTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getMaterialData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openMaterialDialog('新增', {})">新增</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="materialState.materialData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="stuffName" label="实验材料"/>
-                        <el-table-column prop="stuffCode" label="编号" />
-                        <el-table-column prop="stuffType" label="材料类型">
-                            <template #default="scope">
-                                <span>{{`${materialState.stuffTypeList.find(item =>item.id === scope.row.stuffType)?.name || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="stuffStorage" label="材料储存" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${materialState.stuffStorageList.find(item =>item.id === scope.row.stuffStorage)?.name  || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="stuffUnit" label="计量单位" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${materialState.stuffUnitList.find(item =>item.id === scope.row.stuffUnit)?.name || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column label="操作" width="150">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" :icon="Edit" @click="openMaterialDialog('修改', scope.row)">编辑</el-button>
-                                <el-button size="small" text type="danger" :icon="Delete" @click="onDelMaterial(scope.row)">删除</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="materialState.searchQuery.pageIndex" background v-model:page-size="materialState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="materialState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <material-dialog ref="materialDialogRef" @refresh="getMaterialData"></material-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import { materialApi } from "/@/api/basic/material";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { Edit, View, Plus, Delete } from '@element-plus/icons-vue';
-
-const MaterialDialog = defineAsyncComponent(() => import('./components/materialDialog.vue'));
-
-const materialDialogRef = ref();
-
-const materialState = reactive<MaterialStateType>({
-    materialData: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        stuffName: '',
-        stuffCode: '',
-        stuffType: null,
-    },
-    total: 0,
-    stuffTypeList: [
-        {id: 1, name: '化学试剂'},
-        {id:2, name: '基础材料'}
-    ],
-    stuffStorageList: [
-        {id:1, name: '智能试剂柜'},
-        {id:2, name: '普通储存柜'},
-    ],
-    stuffUnitList: [
-        {id:1, name: 'g'},
-        {id:2, name: 'kg'},
-        {id:3, name: 'ml'},
-        {id:4, name: 'l'},
-    ]
-})
-
-const getMaterialData = async () => {
-    let res = await materialApi().getMaterialByList(materialState.searchQuery);
-    if(res.data.code === 100){
-        materialState.materialData = res.data.data;
-        materialState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const openMaterialDialog = (title: string, value: MaterialType) => {
-    materialDialogRef.value.showMaterialDialog(title, value);
-};
-
-const onDelMaterial = (val: MaterialType) => {
-    ElMessageBox.confirm(`此操作将永久删除该耗材:“${val.stuffName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await materialApi().deleteMaterialById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getMaterialData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    materialState.searchQuery.pageSize = val;
-    getMaterialData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    materialState.searchQuery.pageIndex = val;
-    getMaterialData();
-};
-
-const reset = () => {
-    materialState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        stuffName: '',
-        stuffCode: '',
-        stuffType: null,
-    }
-};
-
-onMounted(() => {
-    getMaterialData()
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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/basic/person/components/personDialog.vue b/src/views/basic/person/components/personDialog.vue
deleted file mode 100644
index 6817302..0000000
--- a/src/views/basic/person/components/personDialog.vue
+++ /dev/null
@@ -1,197 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="personDialogState.title" v-model="personDialogState.personDialogVisible" :close-on-click-modal="false" width="600px">
-            <el-form ref="PersonFormRef" :rules="personDialogState.personFormRules" :model="personDialogState.personForm" size="default" label-width="120px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="人员名称" prop="personName">
-                            <el-input v-model="personDialogState.personForm.personName" placeholder="人员名称" clearable class="input-length"></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="personAge">
-                            <el-input @input="onVerifiyNumberInteger($event, 'age')" v-model="personDialogState.personForm.personAge" placeholder="人员年龄" clearable class="input-length"></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="personGender">
-                            <el-select v-model="personDialogState.personForm.personGender" placeholder="人员性别" clearable class="input-length">
-                                <el-option v-for="item in personDialogState.personGenderList" :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="personMajor">
-                            <el-input v-model="personDialogState.personForm.personMajor" placeholder="专业" clearable class="input-length"></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="depName">
-                            <el-input v-model="personDialogState.personForm.depName" placeholder="部门名称" clearable class="input-length"></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="phone">
-                            <el-input @input="onVerifiyNumberInteger($event, 'phone')" v-model="personDialogState.personForm.phone" placeholder="手机号" clearable class="input-length"></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="aptitude">
-                            <el-input v-model="personDialogState.personForm.aptitude" placeholder="相关资质" clearable class="input-length"></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="training">
-                            <el-select v-model="personDialogState.personForm.training" placeholder="培训情况" clearable class="input-length">
-                                <el-option v-for="item in personDialogState.trainingList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="personDialogState.personDialogVisible = !personDialogState.personDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitPerson" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import {useMenuApi} from "/@/api/systemManage/menu";
-import {ElMessage} from "element-plus";
-import {personApi} from "/@/api/basic/person";
-import { verifiyNumberInteger } from '../../../../utils/toolsValidate'
-
-const PersonFormRef = ref()
-
-const personDialogState = reactive<PersonDialogType>({
-    title: '',
-    personDialogVisible: false,
-    personForm: {
-        personName: '',
-        personAge: null,
-        personGender: null,
-        personMajor: '',
-        depName: '',
-        phone: null,
-        aptitude: '',
-        training: null,
-    },
-    personFormRules: {
-        personName: [{ required: true, message: '请填写人员名称', trigger: 'blur' }],
-        personMajor: [{ required: true, message: '请填写专业', trigger: 'blur' }],
-        aptitude: [{ required: true, message: '请填写相关资质', trigger: 'blur' }],
-        personAge: [{ required: true, message: '请填写人员年龄', trigger: 'blur' }],
-        personGender: [{ required: true, message: '请选择人员性别', trigger: 'change' }],
-        phone: [{ required: true, message: '请填写手机号', trigger: 'blur' }],
-        training: [{ required: true, message: '请选择培训情况', trigger: 'change' }]
-    },
-    personGenderList: [
-        {id:1, name: '男'},
-        {id:2, name: '女'},
-    ],
-    trainingList: [
-        {id:1, name: '已完成当期安全培训'},
-        {id:2, name: '未完成当期安全培训'},
-    ]
-})
-
-const showPersonDialog = (title: string, value: PersonType,) => {
-
-    personDialogState.personDialogVisible = true;
-    setTimeout(() => {
-        PersonFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        personDialogState.title = '新增';
-        personDialogState.personForm = {
-            personName: '',
-            personAge: null,
-            personGender: null,
-            personMajor: '',
-            depName: '',
-            phone: null,
-            aptitude: '',
-            training: null,
-        };
-    }else{
-        personDialogState.title = '编辑'
-        personDialogState.personForm = {
-            id: value.id,
-            personName: value.personName,
-            personAge: value.personAge,
-            personGender: value.personGender,
-            personMajor: value.personMajor,
-            depName: value.depName,
-            phone: value.phone,
-            aptitude: value.aptitude,
-            training: value.training,
-        };
-    }
-};
-
-const onSubmitPerson = () => {
-    PersonFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(personDialogState.title === '新增'){
-                let res = await personApi().addPerson(personDialogState.personForm);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    personDialogState.personDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await personApi().modPerson(personDialogState.personForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    personDialogState.personDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const onVerifiyNumberInteger = (val: number, title: string) => {
-    if (title === 'age') {
-        personDialogState.personForm.personAge = Number(verifiyNumberInteger(val.toString())) === 0 ? null : Number(verifiyNumberInteger(val.toString()));
-    } else if (title === 'phone') {
-        personDialogState.personForm.phone = Number(verifiyNumberInteger(val.toString())) === 0 ? null : Number(verifiyNumberInteger(val.toString()));
-    }
-};
-
-const emit = defineEmits(['refresh']);
-
-defineExpose({
-    showPersonDialog
-});
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/basic/person/index.ts b/src/views/basic/person/index.ts
deleted file mode 100644
index c1de227..0000000
--- a/src/views/basic/person/index.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-declare interface PersonStateType extends PublicType{
-	personData: Array<PersonType>
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		personName: string,
-		training: number | null,
-		depName: string,
-	}
-	total: number
-}
-
-declare interface PersonType {
-	id?: number | null,
-	personName: string,
-	personAge: number | null,
-	personGender: number | null,
-	personMajor: string,
-	depName: string,
-	phone: number | null,
-	aptitude: string,
-	training: number | null,
-}
-
-declare interface PublicType {
-	personGenderList: Array<Type>,
-	trainingList: Array<Type>
-}
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-
-declare interface PersonDialogType extends PublicType{
-	title: string,
-	personDialogVisible: boolean,
-	personForm: {
-		id?: number | null,
-		personName: string,
-		personAge: number | null,
-		personGender: number | null,
-		personMajor: string,
-		depName: string,
-		phone: number | null,
-		aptitude: string,
-		training: number | null,
-	},
-	personFormRules: {
-
-	},
-}
diff --git a/src/views/basic/person/index.vue b/src/views/basic/person/index.vue
deleted file mode 100644
index 479ebb6..0000000
--- a/src/views/basic/person/index.vue
+++ /dev/null
@@ -1,315 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>人员名称:</span>
-                    <el-input v-model="personState.searchQuery.personName" clearable filterable class="input-box" placeholder="人员名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>部门名称:</span>
-                    <el-input v-model="personState.searchQuery.depName" clearable filterable class="input-box" placeholder="部门名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>培训情况:</span>
-                    <el-select v-model="personState.searchQuery.training"  clearable filterable class="input-box" placeholder="培训情况">
-                        <el-option v-for="item in personState.trainingList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getPersonData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openPersonDialog('新增', {})">新增</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="personState.personData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="personName" label="人员名称"/>
-                        <el-table-column prop="personAge" label="年龄" />
-                        <el-table-column prop="personGender" label="性别">
-                            <template #default="scope">
-                                <span>{{`${personState.personGenderList.find(item =>item.id === scope.row.personGender)?.name || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="personMajor" label="专业" show-overflow-tooltip/>
-                        <el-table-column prop="depName" label="部门名称" show-overflow-tooltip/>
-                        <el-table-column prop="phone" label="手机号" show-overflow-tooltip/>
-                        <el-table-column prop="aptitude" label="相关资质" show-overflow-tooltip/>
-                        <el-table-column prop="training" label="培训情况" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${personState.trainingList.find(item =>item.id === scope.row.training)?.name || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column label="操作" width="150">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" :icon="Edit" @click="openPersonDialog('修改', scope.row)">编辑</el-button>
-                                <el-button size="small" text type="danger" :icon="Delete" @click="onDelPerson(scope.row)">删除</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="personState.searchQuery.pageIndex" background v-model:page-size="personState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="personState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <person-dialog ref="personDialogRef" @refresh="getPersonData"></person-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {personApi} from "/@/api/basic/person";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { Edit, View, Plus, Delete } from '@element-plus/icons-vue';
-
-const PersonDialog = defineAsyncComponent(() => import('./components/personDialog.vue'));
-
-const personDialogRef = ref();
-
-const personState = reactive<PersonStateType>({
-    personData: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        personName: '',
-        training: null,
-        depName: '',
-    },
-    total: 0,
-    personGenderList: [
-        {id:1, name: '男'},
-        {id:2, name: '女'},
-    ],
-    trainingList: [
-        {id: 1, name: '已完成当期安全培训'},
-        {id:2, name: '未完成当期安全培训'}
-    ],
-})
-
-const getPersonData = async () => {
-    let res = await personApi().getPersonByList(personState.searchQuery);
-    if(res.data.code === 100){
-        personState.personData = res.data.data;
-        personState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const openPersonDialog = (title: string, value: PersonType) => {
-    personDialogRef.value.showPersonDialog(title, value);
-};
-
-const onDelPerson = (val: PersonType) => {
-    ElMessageBox.confirm(`此操作将永久删除该用户:“${val.personName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await personApi().deletePersonById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getPersonData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    personState.searchQuery.pageSize = val;
-    getPersonData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    personState.searchQuery.pageIndex = val;
-    getPersonData();
-};
-
-const reset = () => {
-    personState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        personName: '',
-        training: null,
-        depName: '',
-    }
-};
-
-onMounted(() => {
-    getPersonData()
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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/basic/room/components/roomDialog.vue b/src/views/basic/room/components/roomDialog.vue
deleted file mode 100644
index bfa5291..0000000
--- a/src/views/basic/room/components/roomDialog.vue
+++ /dev/null
@@ -1,200 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="roomDialogState.title" v-model="roomDialogState.roomDialogVisible" :close-on-click-modal="false" width="600px">
-            <el-form ref="roomFormRef" :rules="roomDialogState.roomFormRules" :model="roomDialogState.roomForm" size="default" label-width="120px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="实验室名称" prop="siteName">
-                            <el-input v-model="roomDialogState.roomForm.siteName" placeholder="场所名称" clearable class="input-length"></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="floor">
-                            <el-input v-model="roomDialogState.roomForm.floor" placeholder="实验室所在楼" clearable class="input-length"></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="room">
-                            <el-input v-model="roomDialogState.roomForm.room" placeholder="实验室所在房间" clearable class="input-length"></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="siteLiabilityPersonId">
-                      <el-select v-model="roomDialogState.roomForm.siteLiabilityPersonId" placeholder="场所责任人" clearable class="input-length">
-                        <el-option v-for="item in memberList" :key="item.id" :label="item.personName" :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="safeLiabilityPersonId">
-                      <el-select v-model="roomDialogState.roomForm.safeLiabilityPersonId" placeholder="场所安全员" clearable class="input-length">
-                        <el-option v-for="item in memberList" :key="item.id" :label="item.personName" :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="fireFacilities">
-                      <el-select v-model="roomDialogState.roomForm.fireFacilities" placeholder="有无消防设施" clearable class="input-length">
-                        <el-option :key="1" label="有" :value="1"></el-option>
-                        <el-option :key="2" label="无" :value="2"></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="partitionStatus">
-                      <el-select v-model="roomDialogState.roomForm.partitionStatus" placeholder="有无隔断" clearable class="input-length">
-                        <el-option :key="1" label="有" :value="1"></el-option>
-                        <el-option :key="2" label="无" :value="2"></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="siteTypeId">
-                      <el-select v-model="roomDialogState.roomForm.siteTypeId" placeholder="场所性质" clearable class="input-length">
-                        <el-option v-for="item in typeList" :key="item.id" :label="item.siteType" :value="item.id"></el-option>
-                      </el-select>
-                    </el-form-item>
-                  </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="roomDialogState.roomDialogVisible = !roomDialogState.roomDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitRoom" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref, defineProps} from "vue";
-import {ElMessage} from "element-plus";
-import {roomApi} from "/@/api/basic/room";
-
-const roomFormRef = ref()
-
-const roomDialogState = reactive<RoomDialogType>({
-    title: '',
-    roomDialogVisible: false,
-    roomForm: {
-        siteName: '',
-        floor: '',
-        room: '',
-        siteLiabilityPersonId: null,
-        safeLiabilityPersonId: null,
-        fireFacilities: null,
-        partitionStatus: null,
-        siteTypeId: null
-    },
-    roomFormRules: {
-        siteName: [{ required: true, message: '请填写实验室名称', trigger: 'blur' }],
-        floor: [{ required: true, message: '请填写楼名称', trigger: 'blur' }],
-        room: [{ required: true, message: '请填写房间', trigger: 'blur' }],
-        siteLiabilityPersonId: [{ required: true, message: '请选择场所责任人', trigger: 'blur' }],
-        safeLiabilityPersonId: [{ required: true, message: '请选择场所安全员', trigger: 'blur' }],
-        fireFacilities: [{ required: true, message: '请选择有无消防设施', trigger: 'blur' }],
-        partitionStatus: [{ required: true, message: '请选择有无隔断', trigger: 'blur' }],
-        siteTypeId: [{ required: true, message: '请选择场所性质', trigger: 'blur' }]
-    },
-    specialDeviceList: [],
-    deviceUnitList: [
-        {id:1, name: '台'},
-        {id:2, name: '个'},
-        {id:3, name: '件'}
-    ]
-})
-
-const showroomDialog = (title: string, value: RoomType, specialDeviceList: Type []) => {
-
-    roomDialogState.roomDialogVisible = true;
-    roomDialogState.specialDeviceList = specialDeviceList;
-    setTimeout(() => {
-        roomFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        roomDialogState.title = '新增';
-        roomDialogState.roomForm = {
-            siteName: '',
-            floor: '',
-            room: '',
-            siteLiabilityPersonId: null,
-            safeLiabilityPersonId: null,
-            fireFacilities: null,
-            partitionStatus: null,
-            siteTypeId: null
-        };
-    }else{
-        roomDialogState.title = '编辑'
-        roomDialogState.roomForm = {
-            id: value.id,
-            siteName: value.siteName,
-            floor: value.floor,
-            room: value.room,
-            siteLiabilityPersonId: value.siteLiabilityPersonId,
-            safeLiabilityPersonId: value.safeLiabilityPersonId,
-            fireFacilities: value.fireFacilities,
-            partitionStatus: value.partitionStatus,
-            siteTypeId: value.siteTypeId
-        };
-    }
-};
-
-const onSubmitRoom = () => {
-    roomFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(roomDialogState.title === '新增'){
-                let res = await roomApi().addRoom(roomDialogState.roomForm);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    roomDialogState.roomDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await roomApi().modRoom(roomDialogState.roomForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    roomDialogState.roomDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-}
-
-const emit = defineEmits(['refresh'])
-
-defineProps({
-  memberList: Array,
-  typeList: Array
-})
-
-defineExpose({
-    showroomDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/basic/room/index.ts b/src/views/basic/room/index.ts
deleted file mode 100644
index 11634cf..0000000
--- a/src/views/basic/room/index.ts
+++ /dev/null
@@ -1,53 +0,0 @@
-declare interface RoomStateType {
-	roomData: Array<RoomType>
-	memberList: Array<any>
-	typeList: Array<any>
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		siteName: string,
-		floor: string,
-		room: string,
-	}
-	total: number
-	specialDeviceList: Array<Type>,
-	deviceUnitList: Array<Type>
-}
-
-declare interface RoomType {
-	id?: number | null,
-	siteName: string,
-	floor: string,
-	room: string,
-	siteLiabilityPersonId: number | null,
-	safeLiabilityPersonId: number | null,
-	fireFacilities: number | null,
-	partitionStatus: number | null,
-	siteTypeId: number | null
-}
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-
-declare interface RoomDialogType {
-	title: string,
-	roomDialogVisible: boolean,
-	roomForm: {
-		id?: number | null,
-		siteName: string,
-		floor: string,
-		room: string,
-		siteLiabilityPersonId: number | null,
-		safeLiabilityPersonId: number | null,
-		fireFacilities: number | null,
-		partitionStatus: number | null,
-		siteTypeId: number | null
-	},
-	roomFormRules: {
-
-	},
-	specialDeviceList: Array<Type>,
-	deviceUnitList: Array<Type>
-}
diff --git a/src/views/basic/room/index.vue b/src/views/basic/room/index.vue
deleted file mode 100644
index dc3af1d..0000000
--- a/src/views/basic/room/index.vue
+++ /dev/null
@@ -1,335 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>场所名称:</span>
-                    <el-input v-model="roomState.searchQuery.siteName" clearable filterable class="input-box" placeholder="场所名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>楼:</span>
-                    <el-input v-model="roomState.searchQuery.floor" clearable filterable class="input-box" placeholder="楼">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>房间号:</span>
-                    <el-input v-model="roomState.searchQuery.room" clearable filterable class="input-box" placeholder="房间号">
-                    </el-input>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getRoomData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openRoomDialog('新增', {})">新增</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="roomState.roomData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="siteName" label="场所名称"/>
-                        <el-table-column prop="floor" label="实验室所在楼" />
-                        <el-table-column prop="room" label="实验室所在房间"/>
-                        <el-table-column prop="siteLiabilityPerson" label="场所责任人"/>
-                        <el-table-column prop="safeLiabilityPerson" label="场所安全员"/>
-                        <el-table-column prop="fireFacilities" label="有无消防设施">
-                          <template #default="scope">
-                            <span>{{scope.row.fireFacilities == 1?'有':'无'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="partitionStatus" label="有无隔断">
-                          <template #default="scope">
-                            <span>{{scope.row.partitionStatus == 1?'有':'无'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="siteType" label="场所性质"/>
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column label="操作" width="150">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" :icon="Edit" @click="openRoomDialog('修改', scope.row)">编辑</el-button>
-                                <el-button size="small" text type="danger" :icon="Delete" @click="onDelRoom(scope.row)">删除</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="roomState.searchQuery.pageIndex" background v-model:page-size="roomState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="roomState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <room-dialog ref="roomDialogRef" @refresh="getRoomData" :memberList="roomState.memberList" :typeList="roomState.typeList"></room-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {roomApi} from "/@/api/basic/room";
-import {personApi} from "/@/api/basic/person";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { Edit, View, Plus, Delete } from '@element-plus/icons-vue';
-import {equipmentApi} from "/@/api/basic/equipement";
-
-const RoomDialog = defineAsyncComponent(() => import('./components/roomDialog.vue'));
-
-const roomDialogRef = ref();
-
-const roomState = reactive<RoomStateType>({
-    roomData: [],
-    memberList: [],
-    typeList: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        siteName: '',
-        floor: '',
-        room: '',
-    },
-    total: 0,
-    specialDeviceList: [
-        {id: 1, name: '是'},
-        {id:2, name: '否'}
-    ],
-    deviceUnitList: [
-        {id:1, name: '台'},
-        {id:2, name: '个'},
-        {id:3, name: '件'}
-    ]
-})
-
-const getAllMember = async ()=>{
-  const res = await personApi().getAllPerson();
-  if(res.data.code === 100){
-    roomState.memberList = res.data.data
-  }
-}
-
-const getAllType = async ()=>{
-  const res = await roomApi().getAllType();
-  if(res.data.code === 100){
-    roomState.typeList = res.data.data
-  }
-}
-
-const getRoomData = async () => {
-    let res = await roomApi().getRoomByList(roomState.searchQuery);
-    if(res.data.code === 100){
-        roomState.roomData = res.data.data;
-        roomState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const openRoomDialog = (title: string, value: RoomType) => {
-    roomDialogRef.value.showroomDialog(title, value, roomState.specialDeviceList);
-};
-
-const onDelRoom = (val: RoomType) => {
-    ElMessageBox.confirm(`此操作将永久删除该场所:“${val.siteName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await roomApi().deleteRoomById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getRoomData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    roomState.searchQuery.pageSize = val;
-    getRoomData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    roomState.searchQuery.pageIndex = val;
-    getRoomData();
-};
-
-const reset = () => {
-    roomState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        siteName: '',
-        floor: '',
-        room: '',
-    }
-};
-
-onMounted(() => {
-    getRoomData()
-    getAllMember()
-    getAllType()
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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/basic/unit/components/unitDialog.vue b/src/views/basic/unit/components/unitDialog.vue
deleted file mode 100644
index 93a4dcd..0000000
--- a/src/views/basic/unit/components/unitDialog.vue
+++ /dev/null
@@ -1,185 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="unitDialogState.title" v-model="unitDialogState.unitDialogVisible" :close-on-click-modal="false" width="600px">
-            <el-form ref="UnitFormRef" :rules="unitDialogState.unitFormRules" :model="unitDialogState.unitForm" size="default" label-width="120px">
-                <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 v-model="unitDialogState.unitForm.riskCode" placeholder="风险单元编号" clearable class="input-length"></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="riskName">
-                            <el-input v-model="unitDialogState.unitForm.riskName" placeholder="风险单元名称" clearable class="input-length"></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="riskSourceType">
-                            <el-select v-model="unitDialogState.unitForm.riskSourceType" @change="unitDialogState.unitForm.riskSourceId = null" placeholder="风险源风险类型" clearable class="input-length">
-                                <el-option v-for="item in unitDialogState.riskSourceTypeList" :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="riskSourceId">
-                            <el-select v-model="unitDialogState.unitForm.riskSourceId" placeholder="风险源" clearable class="input-length">
-                                <el-option v-if="unitDialogState.unitForm.riskSourceType === 2"  v-for="item in unitDialogState.allEquipmentList" :key="item.id" :label="item.deviceName" :value="item.id"></el-option>
-                                <el-option v-if="unitDialogState.unitForm.riskSourceType === 1" v-for="item in unitDialogState.allRoomList" :key="item.id" :label="item.room" :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="liabilityUserId">
-                            <el-select v-model="unitDialogState.unitForm.liabilityUserId" placeholder="负责人" clearable class="input-length">
-                                <el-option v-for="item in unitDialogState.allPersonList" :key="item.id" :label="item.personName" :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="liabilityDep">
-                            <el-input v-model="unitDialogState.unitForm.liabilityDep" placeholder="负责部门" clearable class="input-length"></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="风险单元描述">
-                            <el-input type="textarea" :rows="3" v-model="unitDialogState.unitForm.description" placeholder="风险单元描述" clearable class="input-length"></el-input>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="unitDialogState.unitDialogVisible = !unitDialogState.unitDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitUnit" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import {ElMessage} from "element-plus";
-import {unitApi} from "/@/api/basic/unit";
-
-const UnitFormRef = ref()
-
-const unitDialogState = reactive<UnitDialogType>({
-    title: '',
-    unitDialogVisible: false,
-    unitForm: {
-        riskCode: '',
-        riskName: '',
-        riskSourceId: null,
-        riskSourceType: null,
-        liabilityUserId: null,
-        liabilityDep: '',
-        description: '',
-    },
-    unitFormRules: {
-        riskCode: [{ required: true, message: '请填写风险单元编号', trigger: 'blur' }],
-        riskName: [{ required: true, message: '请填写风险单元名称', trigger: 'blur' }],
-        riskSourceId: [{ required: true, message: '请选择风险源风险类型', trigger: 'change' }],
-        riskSourceType: [{ required: true, message: '请选择风险源', trigger: 'change' }],
-    },
-    riskSourceTypeList: [
-        {id: 1, name: '区域、实验场所'},
-        {id:2, name: '设施设备'},
-        {id:3, name: '固定工艺节点'},
-    ],
-    evaluateStatusList: [
-        {id: 1, name: '未评价'},
-        {id:2, name: '已评价'},
-    ],
-    allRoomList: [],
-    allEquipmentList: [],
-    allPersonList: [],
-})
-
-const showUnitDialog = (title: string, value: UnitType, allEquipmentList: AllEquipmentListType [], allRoomList: RoomType [], allPersonList: AllPersonListType []) => {
-    unitDialogState.unitDialogVisible = true;
-    unitDialogState.allRoomList = allRoomList
-    unitDialogState.allEquipmentList = allEquipmentList
-    unitDialogState.allPersonList = allPersonList
-    setTimeout(() => {
-        UnitFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        unitDialogState.title = '新增';
-        unitDialogState.unitForm = {
-            riskCode: '',
-            riskName: '',
-            riskSourceId: null,
-            riskSourceType: null,
-            liabilityUserId: null,
-            liabilityDep: '',
-            description: '',
-        };
-    }else{
-        unitDialogState.title = '编辑'
-        unitDialogState.unitForm = {
-            id: value.id,
-            riskCode: value.riskCode,
-            riskName: value.riskName,
-            riskSourceId: value.riskSourceId,
-            riskSourceType: value.riskSourceType,
-            liabilityUserId: value.liabilityUserId,
-            liabilityDep: value.liabilityDep,
-            description: value.description,
-        };
-    }
-};
-
-const onSubmitUnit = () => {
-    UnitFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(unitDialogState.title === '新增'){
-                let res = await unitApi().addUnit(unitDialogState.unitForm);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    unitDialogState.unitDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await unitApi().modUnit(unitDialogState.unitForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    unitDialogState.unitDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-}
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showUnitDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/basic/unit/index.ts b/src/views/basic/unit/index.ts
deleted file mode 100644
index f2eead4..0000000
--- a/src/views/basic/unit/index.ts
+++ /dev/null
@@ -1,55 +0,0 @@
-declare interface UnitStateType {
-	unitData: Array<UnitType>
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		riskCode: string,
-		riskName: string,
-		riskSourceType: number | null,
-	}
-	total: number
-	riskSourceTypeList: Array<Type>,
-	evaluateStatusList: Array<Type>,
-	allRoomList: Array<RoomType>,
-	allEquipmentList: Array<AllEquipmentListType>,
-	allPersonList: Array<AllPersonListType>,
-}
-
-declare interface UnitType {
-	id?: number | null,
-	riskCode: string,
-	riskName: string,
-	riskSourceId: number | null,
-	riskSourceType: number | null,
-	liabilityUserId: number | null,
-	liabilityDep: string,
-	description: string,
-}
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-
-declare interface UnitDialogType {
-	title: string,
-	unitDialogVisible: boolean,
-	unitForm: {
-		id?: number | null,
-		riskCode: string,
-		riskName: string,
-		riskSourceId: number | null,
-		riskSourceType: number | null,
-		liabilityUserId: number | null,
-		liabilityDep: string,
-		description: string,
-	},
-	unitFormRules: {
-
-	},
-	riskSourceTypeList: Array<Type>,
-	evaluateStatusList: Array<Type>,
-	allRoomList: Array<RoomType>,
-	allEquipmentList: Array<AllEquipmentListType>,
-	allPersonList: Array<AllPersonListType>,
-}
diff --git a/src/views/basic/unit/index.vue b/src/views/basic/unit/index.vue
deleted file mode 100644
index 3ae75ed..0000000
--- a/src/views/basic/unit/index.vue
+++ /dev/null
@@ -1,358 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>风险单元编号:</span>
-                    <el-input v-model="unitState.searchQuery.riskCode" clearable filterable class="input-box" placeholder="风险单元编号">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>风险单元名称:</span>
-                    <el-input v-model="unitState.searchQuery.riskName" clearable filterable class="input-box" placeholder="风险单元名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>风险源风险类型:</span>
-                    <el-select v-model="unitState.searchQuery.riskSourceType" clearable filterable class="input-box" placeholder="风险源风险类型">
-                        <el-option v-for="item in unitState.riskSourceTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getUnitData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openUnitDialog('新增', {})">新增</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="unitState.unitData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="riskCode" label="风险单元编号" show-overflow-tooltip/>
-                        <el-table-column prop="riskName" label="风险单元名称" show-overflow-tooltip/>
-                        <el-table-column prop="riskSourceType" label="风险源风险类型" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${unitState.riskSourceTypeList.find(item =>item.id === scope.row.riskSourceType)?.name || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="evaluateStatus" label="评价状态" show-overflow-tooltip>
-                            <template #default="scope">
-                                <span>{{`${unitState.evaluateStatusList.find(item =>item.id === scope.row.evaluateStatus)?.name  || ''}`}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="liabilityUserName" label="责任人" show-overflow-tooltip/>
-                        <el-table-column prop="liabilityDep" label="责任部门" show-overflow-tooltip/>
-                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>
-                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>
-                        <el-table-column label="操作" width="150">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" :icon="Edit" @click="openUnitDialog('修改', scope.row)">编辑</el-button>
-                                <el-button size="small" text type="danger" :icon="Delete" @click="onDelUnit(scope.row)">删除</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="unitState.searchQuery.pageIndex" background v-model:page-size="unitState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="unitState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <unit-dialog ref="unitDialogRef" @refresh="getUnitData"></unit-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {unitApi} from "/@/api/basic/unit";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { Edit, View, Plus, Delete } from '@element-plus/icons-vue';
-import {roomApi} from "/@/api/basic/room";
-import {equipmentApi} from "/@/api/basic/equipement";
-import {personApi} from "/@/api/basic/person";
-
-const UnitDialog = defineAsyncComponent(() => import('./components/unitDialog.vue'));
-
-const unitDialogRef = ref();
-
-const unitState = reactive<UnitStateType>({
-    unitData: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        riskCode: '',
-        riskName: '',
-        riskSourceType: null,
-    },
-    total: 0,
-    riskSourceTypeList: [
-        {id: 1, name: '区域、实验场所'},
-        {id:2, name: '设施设备'},
-        {id:3, name: '固定工艺节点'},
-    ],
-    evaluateStatusList: [
-        {id: 1, name: '未评价'},
-        {id:2, name: '已评价'},
-    ],
-    allRoomList: [],
-    allEquipmentList: [],
-    allPersonList: [],
-})
-
-const getUnitData = async () => {
-    let res = await unitApi().getUnitByList(unitState.searchQuery);
-    if(res.data.code === 100){
-        unitState.unitData = res.data.data;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getRoomData = async () => {
-    let res = await roomApi().getAllRoom();
-    if(res.data.code === 100){
-        unitState.allRoomList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const getAllEquipmentList = async () => {
-    let res = await equipmentApi().getAllEquipment();
-    if(res.data.code === 100){
-        unitState.allEquipmentList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const getAllPersonList = async () => {
-    let res = await personApi().getAllPerson();
-    if(res.data.code === 100){
-        unitState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const openUnitDialog = (title: string, value: UnitType) => {
-    unitDialogRef.value.showUnitDialog(title, value, unitState.allEquipmentList, unitState.allRoomList, unitState.allPersonList);
-};
-
-const onDelUnit = (val: UnitType) => {
-    ElMessageBox.confirm(`此操作将永久删除该单元:“${val.riskName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await unitApi().deleteUnitById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getUnitData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    unitState.searchQuery.pageSize = val;
-    getUnitData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    unitState.searchQuery.pageIndex = val;
-    getUnitData();
-};
-
-const reset = () => {
-    unitState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        riskCode: '',
-        riskName: '',
-        riskSourceType: null,
-    }
-};
-
-onMounted(() => {
-    getUnitData();
-    getRoomData();
-    getAllEquipmentList();
-    getAllPersonList();
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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/bigScreen/index.vue b/src/views/bigScreen/index.vue
new file mode 100644
index 0000000..f7775c5
--- /dev/null
+++ b/src/views/bigScreen/index.vue
@@ -0,0 +1,39 @@
+<template>
+    <div class="system-role-container">
+      6666666
+    </div>
+</template>
+
+<script lang="ts">
+import { toRefs, reactive, onMounted, ref, defineComponent } from 'vue';
+
+// 定义接口来定义对象的类型
+interface TableData {
+
+}
+interface TableDataState {
+
+}
+
+export default defineComponent({
+    name: 'bigScreen',
+    components: {  },
+    setup() {
+        const roleDialogRef = ref();
+        const state = reactive<TableDataState>({
+
+        });
+
+        // 页面加载时
+        onMounted(() => {
+
+        });
+        return {
+            ...toRefs(state)
+        };
+    }
+});
+</script>
+<style lang="scss" scoped>
+
+</style>
\ No newline at end of file
diff --git a/src/views/experiment/developing/components/applyDialog.vue b/src/views/experiment/developing/components/applyDialog.vue
deleted file mode 100644
index 4f4b618..0000000
--- a/src/views/experiment/developing/components/applyDialog.vue
+++ /dev/null
@@ -1,98 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="applyStartDialogState.title" v-model="applyStartDialogState.applyStartDialogVisible" width="600px">
-            <el-form ref="applyStartFormRef" :rules="applyStartDialogState.applyStartFormRules" :model="applyStartDialogState.applyStartForm" size="default" label-width="160px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="实验开始时间" prop="startTime">
-                            <el-date-picker type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="applyStartDialogState.applyStartForm.startTime" class="input-length"/>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="是否使用安全信息化系统" prop="sisStatus">
-                            <el-radio-group v-model="applyStartDialogState.applyStartForm.sisStatus">
-                                <el-radio :label="1">是</el-radio>
-                                <el-radio :label="2">否</el-radio>
-                            </el-radio-group>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="安全信息化系统" prop="safeInformationSystem">
-                            <el-input v-model="applyStartDialogState.applyStartForm.safeInformationSystem" placeholder="材料类型" class="input-length">
-                            </el-input>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="applyStartDialogState.applyStartDialogVisible = !applyStartDialogState.applyStartDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitApplyStart" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-
-const applyStartFormRef = ref()
-
-const applyStartDialogState = reactive<ApplyStartDialogType>({
-    title: '',
-    applyStartDialogVisible: false,
-    applyStartForm: {
-        id: null,
-        sisStatus: null,
-        safeInformationSystem: '',
-        startTime: '',
-    },
-    applyStartFormRules: {
-
-    },
-})
-
-const showApplyStartDialog = (value: ProjectType) => {
-    applyStartDialogState.applyStartDialogVisible = true;
-    applyStartDialogState.applyStartForm.id = <number>value.id
-};
-
-const onSubmitApplyStart = () => {
-    applyStartFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            let res = await projectApi().applyProject([applyStartDialogState.applyStartForm]);
-            if(res.data.code === 100){
-                emit('refresh')
-                applyStartDialogState.applyStartDialogVisible = false;
-                ElMessage({
-                    type: 'success',
-                    message: '申请开展成功'
-                })
-            }else{
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg,
-                });
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showApplyStartDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/experiment/developing/components/applyStart.vue b/src/views/experiment/developing/components/applyStart.vue
deleted file mode 100644
index 8906f6e..0000000
--- a/src/views/experiment/developing/components/applyStart.vue
+++ /dev/null
@@ -1,101 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="applyStartDialogState.title" v-model="applyStartDialogState.applyStartDialogVisible" width="600px">
-            <el-form ref="applyStartFormRef" :rules="applyStartDialogState.applyStartFormRules" :model="applyStartDialogState.applyStartForm" size="default" label-width="120px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="实验材料" prop="stuffName">
-                            <el-date-picker type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="applyStartDialogState.applyStartForm.startTime" class="input-length"/>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="编号" prop="sisStatus">
-                            <el-radio-group v-model="applyStartDialogState.applyStartForm.sisStatus">
-                                <el-radio :label="1">是</el-radio>
-                                <el-radio :label="2">否</el-radio>
-                            </el-radio-group>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="材料类型" prop="stuffType">
-                            <el-select v-model="applyStartDialogState.applyStartForm.safeInformationSystem" placeholder="材料类型" class="input-length">
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="applyStartDialogState.applyStartDialogVisible = !applyStartDialogState.applyStartDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitApplyStart" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-
-const applyStartFormRef = ref()
-
-const applyStartDialogState = reactive<ApplyStartDialogType>({
-    title: '',
-    applyStartDialogVisible: false,
-    applyStartForm: {
-        id: null,
-        sisStatus: null,
-        safeInformationSystem: '',
-        startTime: '',
-    },
-    applyStartFormRules: {
-        stuffCode: [{ required: true, message: '请填写实验材料', trigger: 'blur' }],
-        stuffName: [{ required: true, message: '请填写编号', trigger: 'blur' }],
-        stuffStorage: [{ required: true, message: '请选择材料类型', trigger: 'change' }],
-        stuffType: [{ required: true, message: '请选择材料储存', trigger: 'change' }],
-        stuffUnit: [{ required: true, message: '请选择计量单位', trigger: 'change' }]
-    },
-})
-
-const showApplyStartDialog = (value: ProjectType) => {
-    applyStartDialogState.applyStartDialogVisible = true;
-};
-
-const onSubmitApplyStart = () => {
-    applyStartFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            let res = await projectApi().applyProject(applyStartDialogState.applyStartForm);
-            if(res.data.code === 100){
-                emit('refresh')
-                applyStartDialogState.applyStartDialogVisible = false;
-                ElMessage({
-                    type: 'success',
-                    message: '申请开展成功'
-                })
-            }else{
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg,
-                });
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showApplyStartDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/experiment/developing/components/developDialog.vue b/src/views/experiment/developing/components/developDialog.vue
deleted file mode 100644
index 4e1689a..0000000
--- a/src/views/experiment/developing/components/developDialog.vue
+++ /dev/null
@@ -1,795 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="projectDialogState.title" v-model="projectDialogState.projectDialogVisible" width="80%">
-            <el-form ref="ProjectFormRef" :rules="projectDialogState.projectFormRules" :model="projectDialogState.projectForm" size="default" label-width="0">
-                <table class="report-table">
-                  <th class="m-color b-font" style="text-align: center">***研究所/***大学<br />科学研究实验项目安全风险基础信息录入表(已开展)(带<span style="color: red">*</span>为必填项)</th>
-                    <tr>
-                        <td class="w-25 m-color required">实验名称</td>
-                        <td class="w-75 m-color">
-                            <el-form-item prop="experimentName">
-                                <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.experimentName" placeholder="请输入实验名称" />
-                            </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验类型</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="experimentType" style="display: flex;justify-content: center">
-                            <el-radio-group style="text-align: center" :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.experimentType">
-                                <el-radio :label="1">化学类</el-radio>
-                                <el-radio :label="2">生物类</el-radio>
-                                <el-radio :label="3">辐射类</el-radio>
-                                <el-radio :label="4">机电类</el-radio>
-                                <el-radio :label="5">特种设备类</el-radio>
-                                <el-radio :label="6">其他类</el-radio>
-                            </el-radio-group>
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">部门</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="dep">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.dep" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">负责人</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="liabilityUserId">
-<!--                        <el-select style="width: 100%" v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable @change="getLiabilityUserPhone($event)">-->
-<!--                            <el-option-->
-<!--                                v-for="item in projectDialogState.systemPersonList"-->
-<!--                                :key="item.id"-->
-<!--                                :value="item.id"-->
-<!--                                :label="item.realName"-->
-<!--                            ></el-option>-->
-<!--                        </el-select>-->
-                            <el-select style="width: 100%" disabled v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable>
-                              <el-option :key="userInfos.uid" :value="userInfos.uid" :label="userInfos.userName"></el-option>
-                            </el-select>
-                        </el-form-item>
-                        <!--                        <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.liabilityUserId"/>-->
-                      </td>
-                      <td class="w-25 m-color required">电话</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="liabilityUserPhone">
-                        <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.liabilityUserPhone" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">安全负责人</td>
-                      <td class="w-25 m-color">
-<!--                        <el-select style="width: 100%" :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeLiabilityUser" @change="getSafeLiabilityUserPhone($event)" clearable filterable>-->
-<!--                          <el-option-->
-<!--                              v-for="item in projectDialogState.allPersonList"-->
-<!--                              :key="item.id"-->
-<!--                              :value="item.id"-->
-<!--                              :label="item.personName"-->
-<!--                          ></el-option>-->
-<!--                        </el-select>-->
-                        <el-form-item prop="safeLiabilityUser">
-                          <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeLiabilityUser"/>
-                        </el-form-item>
-                      </td>
-                      <td class="w-25 m-color required">电话</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="safeLiabilityUserPhone">
-                          <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeLiabilityUserPhone" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">立项时间</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="createExperimentTime">
-                          <el-date-picker :disabled="projectDialogState.disabled"  type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="projectDialogState.projectForm.createExperimentTime" />
-                        </el-form-item>
-                      </td>
-                      <td class="w-25 m-color required">开展时间</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="startTime">
-                          <el-date-picker :disabled="projectDialogState.disabled"  type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="projectDialogState.projectForm.startTime" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">是否是安全化信息系统</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="sisStatus">
-                        <el-radio-group :disabled="projectDialogState.disabled"  v-model="projectDialogState.projectForm.sisStatus" @change="hasSafeSystem">
-                          <el-radio :label="1">是</el-radio>
-                          <el-radio :label="2">否</el-radio>
-                        </el-radio-group>
-                        </el-form-item>
-                      </td>
-                      <td class="w-25 m-color" v-if="projectDialogState.projectForm.sisStatus == 1" :class="projectDialogState.projectForm.sisStatus==1?'required':''">安全信息化系统</td>
-                      <td class="w-25 m-color" v-if="projectDialogState.projectForm.sisStatus == 1">
-                        <el-form-item prop="safeInformationSystem">
-                        <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeInformationSystem" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <select-room ref="selectRoomRef" v-model:disabled="projectDialogState.disabled" v-model:data="projectDialogState.projectForm.siteList"></select-room>
-                    <select-material ref="selectMaterialRef" v-model:disabled="projectDialogState.disabled" v-model:data="projectDialogState.projectForm.stuffList"></select-material>
-                    <select-equipment ref="selectEquipmentRef" v-model:disabled="projectDialogState.disabled" v-model:data="projectDialogState.projectForm.deviceList"></select-equipment>
-                    <tr>
-                        <td class="w-25 m-color required">实验步骤</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="experimentStep">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.experimentStep" placeholder="请输入实验步骤" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">操作方法</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="experimentMethod">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.experimentMethod" placeholder="请输入操作方法" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">工艺过程</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="process">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.process" placeholder="请输入工艺过程" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">特殊/关键过程</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="keyProcess">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.keyProcess" placeholder="请输入特殊/关键过程" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">预防措施</td>
-                      <td class="w-75 m-color">
-                        <el-form-item prop="measure">
-                          <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.measure" placeholder="请输入预防措施" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">是否存在过夜、老化实验</td>
-                        <td class="w-25 m-color">
-                          <el-form-item prop="timeout">
-                            <el-radio-group :disabled="projectDialogState.disabled"  v-model="projectDialogState.projectForm.timeout">
-                                <el-radio :label="1">存在</el-radio>
-                                <el-radio :label="2">不存在</el-radio>
-                            </el-radio-group>
-                          </el-form-item>
-                        </td>
-                        <td class="w-25 m-color required" v-if="projectDialogState.projectForm.timeout === 1">过夜、老化保障措施</td>
-                        <td class="w-25 m-color" v-if="projectDialogState.projectForm.timeout === 1">
-                          <el-form-item prop="timeoutManager">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.timeoutManager" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">是否在封闭条件下</td>
-                        <td class="w-25 m-color">
-                          <el-form-item prop="closed">
-                            <el-radio-group :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.closed">
-                                <el-radio :label="1">存在</el-radio>
-                                <el-radio :label="2">不存在</el-radio>
-                            </el-radio-group>
-                          </el-form-item>
-                        </td>
-                        <td class="w-25 m-color required" v-if="projectDialogState.projectForm.closed === 1">封闭条件保障措施</td>
-                        <td class="w-25 m-color" v-if="projectDialogState.projectForm.closed === 1">
-                          <el-form-item prop="unclosedManager">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.unclosedManager" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验场所防爆措施条件和设施情况</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="explosionProof">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.explosionProof" placeholder="请输入" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验场所防火措施条件和设施情况</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="fireProof">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.fireProof" placeholder="请输入" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验场所防中毒措施条件和设施情况</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="poisonProof">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.poisonProof" placeholder="请输入" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-
-
-                    <select-danger ref="selectDangerRef" v-model:data="projectDialogState.projectForm.hazardousWasteList" v-model:disabled="projectDialogState.disabled"></select-danger>
-                    <select-person ref="selectPersonRef" v-model:data="projectDialogState.projectForm.persons" v-model:disabled="projectDialogState.disabled"></select-person>
-<!--                    <tr class="m-color b-font" style="text-align: center">应急预案/应急演练</tr>-->
-<!--                    <tr>-->
-<!--                        <td class="w-25 m-color required">有无预案</td>-->
-<!--                        <td class="w-25 m-color required">预案名称</td>-->
-<!--                        <td class="w-25 m-color required">是否演练</td>-->
-<!--                        <td class="w-25 m-color required">演练情况</td>-->
-<!--                    </tr>-->
-<!--                    <tr>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.emergencyPlan" />-->
-<!--                        </td>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.emergencyPlanName" />-->
-<!--                        </td>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.emergencyDrillStatus" />-->
-<!--                        </td>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.emergencyDrill" />-->
-<!--                        </td>-->
-<!--                    </tr>-->
-                    <select-emergency ref="selectEmergencyRef" v-model:disabled="projectDialogState.disabled" v-model:data="projectDialogState.projectForm.emergencyList"></select-emergency>
-                    <tr>
-                      <td class="w-25 m-color required">安全管理制度</td>
-                      <td class="w-75 m-color">
-                        <el-form-item prop="safeManagerMethod">
-                        <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeManagerMethod" placeholder="请输入" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <tr class="m-color b-font" style="  text-align: center">其他信息</tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验场所是否需要分区隔断</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="partitionCondition">
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.partitionCondition" placeholder="请输入" />-->
-                          <el-radio-group :disabled="projectDialogState.disabled"  v-model="projectDialogState.projectForm.partitionCondition">
-                            <el-radio :label="0">是</el-radio>
-                            <el-radio :label="1">否</el-radio>
-                          </el-radio-group>
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color">其它基础信息(详细描述)</td>
-                        <td class="w-75 m-color">
-                          <el-form-item>
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.note" placeholder="请输入" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                </table>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer" style="padding-top:10px;text-align: center !important;">
-					<el-button @click="projectDialogState.projectDialogVisible = !projectDialogState.projectDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" v-if="!projectDialogState.disabled" @click="onSubmitProject" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, nextTick, onMounted, reactive, ref} from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-import {personApi} from "/@/api/basic/person";
-import {userApi} from "/@/api/systemManage/user";
-
-import {useUserInfo} from "/@/stores/userInfo";
-import {storeToRefs} from "pinia";
-import {checkChineseName, verifyPhone} from "/@/utils/toolsValidate";
-const SelectEquipment = defineAsyncComponent(() => import('../../project/components/selectEquipment.vue'))
-const SelectMaterial = defineAsyncComponent(() => import('../../project/components/selectMaterial.vue'))
-const SelectDanger = defineAsyncComponent(() => import('../../project/components/selectDanger.vue'))
-const SelectEmergency = defineAsyncComponent(() => import('../../project/components/selectEmergency.vue'))
-const SelectPerson = defineAsyncComponent(() => import('../../project/components/selectPerson.vue'))
-const SelectRoom = defineAsyncComponent(() => import('../../project/components/selectRoom.vue'))
-const ProjectFormRef = ref()
-const selectPersonRef = ref()
-const selectEquipmentRef = ref()
-const selectRoomRef = ref()
-const selectMaterialRef = ref()
-const selectDangerRef = ref()
-const selectEmergencyRef = ref()
-const userInfo = useUserInfo()
-const { userInfos } = storeToRefs(userInfo)
-
-const projectDialogState = reactive<ProjectDialogType>({
-    title: '',
-    disabled: false,
-    projectDialogVisible: false,
-    projectForm:   {
-        id: null,
-        experimentName: "",
-        experimentType: null,
-        liabilityUserId: Number(userInfos.value.uid),
-        liabilityUserPhone: '',
-        safeLiabilityUser: '',
-        safeLiabilityUserPhone: '',
-        sisStatus: null,
-        safeInformationSystem: '',
-        dep: "",
-        experimentStep: "",
-        experimentMethod: "",
-        process: "",
-        keyProcess: "",
-        measure: "",
-        timeout: null,
-        timeoutManager: "",
-        closed: null,
-        unclosedManager: "",
-        explosionProof: "",
-        fireProof: "",
-        poisonProof: "",
-        safeManagerMethod: "",
-        emergencyList: [],
-        partitionCondition: null,
-        note: "",
-        createExperimentTime: '',
-        startTime: '',
-        persons: [
-        ],
-        siteList: [],
-        deviceList: [
-        ],
-        stuffList: [
-        ],
-        hazardousWasteList: [
-        ]
-    },
-    projectFormRules: {
-      experimentName: [{ required: true, message: '', trigger: 'blur' }],
-      experimentType: [{ required: true, message: '', trigger: 'blur' }],
-      liabilityUserId: [{ required: true, message: '', trigger: 'blur' }],
-      liabilityUserPhone: [{ required: true, message: '', trigger: 'blur' }],
-      safeLiabilityUser: [{ required: true, message: '', trigger: 'blur' }],
-      safeLiabilityUserPhone: [{ required: true, message: '', trigger: 'blur' }],
-      sisStatus: [{ required: true, message: '', trigger: 'blur' }],
-      safeInformationSystem: [{ required: true, message: '', trigger: 'blur' }],
-      dep: [{ required: true, message: '', trigger: 'blur' }],
-      experimentStep: [{ required: true, message: '', trigger: 'blur' }],
-      experimentMethod: [{ required: true, message: '', trigger: 'blur' }],
-      process: [{ required: true, message: '', trigger: 'blur' }],
-      keyProcess: [{ required: true, message: '', trigger: 'blur' }],
-      measure: [{ required: true, message: '', trigger: 'blur' }],
-      timeout: [{ required: true, message: '', trigger: 'blur' }],
-      timeoutManager: [{ required: true, message: '', trigger: 'blur' }],
-      closed: [{ required: true, message: '', trigger: 'blur' }],
-      unclosedManager: [{ required: true, message: '', trigger: 'blur' }],
-      explosionProof: [{ required: true, message: '', trigger: 'blur' }],
-      fireProof: [{ required: true, message: '', trigger: 'blur' }],
-      poisonProof: [{ required: true, message: '', trigger: 'blur' }],
-      safeManagerMethod: [{ required: true, message: '', trigger: 'blur' }],
-      emergencyList: [{ required: true, message: '', trigger: 'blur' }],
-      partitionCondition: [{ required: true, message: '', trigger: 'blur' }],
-      createExperimentTime: [{ required: true, message: '', trigger: 'blur' }],
-      startTime: [{ required: true, message: '', trigger: 'blur' }]
-    },
-    allPersonList: [],
-    allRoomList: [],
-    systemPersonList: [],
-})
-
-const showDevelopDialog = (title: string, value: ProjectType, allRoomList: RoomType []) => {
-    projectDialogState.projectDialogVisible = true;
-    projectDialogState.allRoomList = allRoomList
-    setTimeout(() => {
-        ProjectFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        projectDialogState.disabled = false
-        projectDialogState.title = '新增';
-        projectDialogState.projectForm = {
-            id: null,
-            experimentName: "",
-            experimentType: null,
-            liabilityUserId: Number(userInfos.value.uid),
-            liabilityUserPhone: '',
-            safeLiabilityUser: '',
-            safeLiabilityUserPhone: '',
-            sisStatus: null,
-            safeInformationSystem: '',
-            dep: "",
-            experimentStep: "",
-            experimentMethod: "",
-            process: "",
-            keyProcess: "",
-            measure: "",
-            timeout: null,
-            timeoutManager: "",
-            closed: null,
-            unclosedManager: "",
-            explosionProof: "",
-            fireProof: "",
-            poisonProof: "",
-            safeManagerMethod: "",
-            emergencyList: [],
-            partitionCondition: null,
-            note: "",
-            createExperimentTime: '',
-            startTime: '',
-            persons: [],
-            siteList: [],
-            deviceList: [],
-            stuffList: [],
-            hazardousWasteList: []
-        };
-    }else if(title === '整改'){
-      projectDialogState.title = '整改';
-      projectDialogState.disabled = false
-      for(let i in projectDialogState.projectForm) {
-        if(isValidKey(i, projectDialogState.projectForm)) {
-          projectDialogState.projectForm[i] = value[i];
-        }
-      }
-    }else{
-        projectDialogState.title = '查看';
-        projectDialogState.disabled = true
-        for(let i in projectDialogState.projectForm) {
-            if(isValidKey(i, projectDialogState.projectForm)) {
-                projectDialogState.projectForm[i] = value[i];
-            }
-        }
-    }
-};
-
-const isValidKey = (key: string | number | symbol, object:object): key is keyof typeof object =>{
-    return key in object;
-};
-
-const getLiabilityUserPhone = (value: number)=>{
-  const data = projectDialogState.systemPersonList.find(item => item.id === value) as AllPersonListType
-  projectDialogState.projectForm.liabilityUserPhone = data.phone
-}
-
-const getSafeLiabilityUserPhone = (value: number)=>{
-  const data = projectDialogState.allPersonList.find(item => item.id === value) as AllPersonListType
-  projectDialogState.projectForm.safeLiabilityUserPhone = data.phone
-}
-
-const hasSafeSystem = (value: number) =>{
-  if(value == 2){
-    projectDialogState.projectForm.safeInformationSystem = ''
-  }
-}
-
-const onSubmitProject = async() => {
-    ProjectFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(projectDialogState.projectForm.timeout == 2){
-              projectDialogState.projectForm.timeoutManager = ''
-            }else{
-              if(projectDialogState.projectForm.timeoutManager == ''){
-                ElMessage({
-                  type: 'warning',
-                  message: '请填写过夜、老化保障措施',
-                  duration: 1000
-                });
-                return
-              }
-            }
-            if(projectDialogState.projectForm.closed == 2){
-              projectDialogState.projectForm.unclosedManager = ""
-            }else{
-              if(projectDialogState.projectForm.unclosedManager == ''){
-                ElMessage({
-                  type: 'warning',
-                  message: '请填写封闭条件保障措施',
-                  duration: 1000
-                });
-                return
-              }
-            }
-            if(projectDialogState.title === '新增'){
-                if(checkChineseName(projectDialogState.projectForm.safeLiabilityUser) == false){
-                  ElMessage({
-                    type: 'warning',
-                    message: '安全负责人姓名格式有误',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(verifyPhone(projectDialogState.projectForm.safeLiabilityUserPhone) == false || verifyPhone(projectDialogState.projectForm.liabilityUserPhone) == false){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请输入正确的手机号',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(projectDialogState.projectForm.siteList.length === 0){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请至少添加一处实验场所',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(projectDialogState.projectForm.stuffList.length === 0){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请至少选择一种试剂/材料',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(projectDialogState.projectForm.deviceList.length === 0){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请至少选择一种仪器/设备',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(projectDialogState.projectForm.persons.length === 0){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请至少添加一名实验人员',
-                    duration: 1000
-                  });
-                  return
-                }
-                projectDialogState.projectForm.emergencyList = selectEmergencyRef.value.dataList
-                projectDialogState.projectForm.persons = selectPersonRef.value.dataList
-                projectDialogState.projectForm.hazardousWasteList = selectDangerRef.value.dataList
-                const roomList = selectRoomRef.value.dataList
-                projectDialogState.projectForm.siteList = roomList.map(({siteId}) => ({siteId}))
-                projectDialogState.projectForm.stuffList = selectMaterialRef.value.dataList
-                projectDialogState.projectForm.deviceList = selectEquipmentRef.value.dataList
-                let res = await projectApi().addDevelop(projectDialogState.projectForm);
-                if(res.data.code === 100){
-                    emit('refresh')
-                    projectDialogState.projectDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                projectDialogState.projectForm.siteList = selectRoomRef.value.dataList.map(({siteId}) => ({siteId}))
-                projectDialogState.projectForm.hazardousWasteList = selectDangerRef.value.dataList.map(obj => ({classify:obj.classify,wasteStorage:obj.wasteStorage,handAmount:obj.handAmount}))
-                let res = await projectApi().modProject(projectDialogState.projectForm)
-                if(res.data.code === 100){
-                  emit('refresh')
-                  projectDialogState.projectDialogVisible = false;
-                  ElMessage({
-                    type: 'success',
-                    message: '整改已提交'
-                  })
-                }else{
-                  ElMessage({
-                    type: 'warning',
-                    message: res.data.msg,
-                  });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const getPersonList = async () => {
-    let res = await userApi().getUserList({
-        pageIndex: 1,
-        pageSize: 99999,
-        searchParams:{
-          roleId: null,
-          name: '',
-          realName: ''
-        }
-    });
-    if(res.data.code === 100){
-        projectDialogState.systemPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const getAllPersonList = async () => {
-    let res = await personApi().getAllPerson();
-    if(res.data.code === 100){
-        projectDialogState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const emit = defineEmits(['refresh']);
-
-defineExpose({
-    showDevelopDialog,
-});
-
-onMounted(() => {
-    getAllPersonList();
-    getPersonList();
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-th {
-    padding: 10px 0;
-    border: 1px solid #337ecc;
-    border-left: none;
-}
-
-tr {
-    width: 100%;
-    height: 44px;
-    line-height: 42px;
-    border-bottom: 1px solid #ccc;
-
-&:last-of-type {
-     border-bottom: none;
- }
-
-td {
-    border-right: 1px solid #ccc;
-    display: inline-block;
-    height: 44px;
-    vertical-align: middle;
-    text-align: center;
-    line-height: 42px;
-
-  :deep(.el-input__wrapper ){
-    box-shadow: none;
-    margin-top: 6px;
-  }
-
-&:last-of-type {
-     border-right: none;
- }
-
-&.required {
-  &::before {
-    content: "*";
-    display: inline-block;
-    color: red;
-  }
-}
-
-&.w-14 {
-     width: calc((100/7)/100 * 100%);
- }
-
-&.w-16 {
-     width: calc((100/6)/100 * 100%);
- }
-
-&.w-18 {
-     width: 16.59%;
- }
-
-&.w-20 {
-     width: 20%;
- }
-
-&.w-25 {
-     width: 25%;
- }
-
-&.w-50 {
-     width: 50%;
- }
-
-&.w-75 {
-     width: 75%;
- }
-
-.ant-input {
-    height: 100%;
-    border: none;
-    background: #f5f7fa;
-}
-
-.ant-picker {
-    width: 100%;
-    height: 100%;
-}
-}
-}
-
-.b-font {
-    font-size: 16px;
-    font-weight: bolder;
-}
-}
-
-.m-color {
-    color: #0c4995;
-}
-::v-deep(.el-form-item){
-  height: 100%;
-  display: flex;
-  justify-content: center;
-  .el-form-item__content{
-    display: flex;
-    justify-content: center;
-  }
-}
-.roomSelect{
-  ::v-deep(.el-popper){
-    .el-select-dropdown__item{
-      height: auto;
-      padding: 0;
-
-      .roomTable{
-        width: 100%;
-        display: flex;
-        border-bottom: 1px solid #ebeef5;
-
-        &:last-of-type{
-          border-bottom: none;
-        }
-
-        &>div{
-          width: 25%;
-          border-right: 1px dashed #ebeef5;
-          &:last-of-type{
-            border-right: none;
-          }
-
-          div{
-            width: 100%;
-          }
-          .roomTit{
-            border-bottom: 1px solid #ebeef5;
-          }
-        }
-      }
-    }
-    .el-select-dropdown__item.selected{
-      .roomTit{
-        color: #606266;
-        font-weight: normal;
-      }
-    }
-  }
-}
-
-:deep(.el-dialog__footer){
-    padding-top: 20px;
-    display: flex;
-    justify-content: center;
-}
-
-
-</style>
diff --git a/src/views/experiment/developing/components/selectDanger.vue b/src/views/experiment/developing/components/selectDanger.vue
deleted file mode 100644
index 8ef010c..0000000
--- a/src/views/experiment/developing/components/selectDanger.vue
+++ /dev/null
@@ -1,184 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">危废情况</tr>
-    <tr>
-        <td class="w-20 m-color">序号</td>
-        <td class="w-20 m-color">废弃物分类</td>
-        <td class="w-20 m-color">存储方式</td>
-        <td class="w-20 m-color">预估处理量</td>
-        <td class="w-20 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectDangerState.wasteList" :key="index">
-        <td class="w-20">
-            {{ index + 1 }}
-        </td>
-        <td class="w-20">
-            <el-select :disabled="selectDangerState.disabled" v-model="item.classify" clearable filterable>
-                <el-option v-for="item in selectDangerState.classifyList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-            </el-select>
-        </td>
-        <td class="w-20">
-            <el-select :disabled="selectDangerState.disabled" v-model="item.wasteStorage" clearable filterable>
-                <el-option v-for="item in selectDangerState.wasteStorageList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-            </el-select>
-        </td>
-        <td class="w-20">
-            <el-input type="number" v-model="item.handAmount"></el-input>
-        </td>
-        <td class="w-20">
-            <el-button :disabled="selectDangerState.disabled" type="danger" @click="deleteDangerItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectDangerState.disabled" type="primary" shape="round" @click="addDangerItem()">
-            添加行
-        </el-button>
-    </tr>
-</template>
-
-<script setup lang="ts">
-import {reactive, watchEffect} from "vue";
-
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<WasteType>
-});
-
-const selectDangerState = reactive<SelectDangerType>({
-    disabled: false,
-    wasteList: [
-    ],
-    classifyList:[
-        {id:1, name: '有机'},
-        {id:2, name: '酸'},
-        {id:3, name: '碱性'},
-        {id:4, name: '固体废弃物'},
-        {id:5, name: '医疗废弃物'},
-        {id:6, name: '过期化学品'},
-        {id:7, name: '其他'}
-    ],
-    wasteStorageList: [
-        {id:1, name: '吨袋'},
-        {id:2, name: '吨桶'},
-        {id:3, name: '小桶'},
-        {id:4, name: '托盘'},
-        {id:5, name: '其他'},
-    ]
-})
-
-watchEffect(() => {
-    selectDangerState.wasteList = props.data as Array<WasteType>
-    selectDangerState.disabled = props.disabled
-});
-
-const addDangerItem = () => {
-    selectDangerState.wasteList.push({classify: null, wasteStorage: null, handAmount: null,});
-};
-
-const deleteDangerItem = (index: number) => {
-    selectDangerState.wasteList.splice(index,1);
-};
-
-const formatList = (formatList: Array<WasteType>) => {
-    selectDangerState.wasteList = formatList
-}
-
-defineExpose({
-    formatList,
-    dataList: selectDangerState.wasteList,
-});
-
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-:deep(.el-input__wrapper ){
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/experiment/developing/components/selectEquipment.vue b/src/views/experiment/developing/components/selectEquipment.vue
deleted file mode 100644
index fb9db03..0000000
--- a/src/views/experiment/developing/components/selectEquipment.vue
+++ /dev/null
@@ -1,208 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">实验所用的仪器/设备</tr>
-    <tr>
-        <td class="w-16 m-color">设备名称</td>
-        <td class="w-16 m-color">编号</td>
-        <td class="w-16 m-color">额定功率</td>
-        <td class="w-16 m-color">是否特种</td>
-        <td class="w-16 m-color">设备数量</td>
-        <td class="w-16 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectEquipmentState.equipmentList" :key="index">
-        <td class="w-16">
-            <el-select :disabled="selectEquipmentState.disabled" filterable v-model="item.deviceId" @change="giveOtherEquipmentValue($event, index)">
-                <el-option
-                    v-for="item in selectEquipmentState.allEquipmentList"
-                    :key="item.id"
-                    :value="item.id"
-                    :label="item.deviceName"
-                >
-                </el-option>
-            </el-select>
-        </td>
-        <td class="w-16">
-            <el-input :disabled="selectEquipmentState.disabled" v-model="item.deviceCode" placeholder="请输入数量" />
-        </td>
-        <td class="w-16">
-            <el-input :disabled="selectEquipmentState.disabled" v-model="item.devicePower" />
-        </td>
-        <td class="w-16">
-            <el-radio-group :disabled="selectEquipmentState.disabled" v-model="item.specialDevice">
-                <el-radio :label="1">是</el-radio>
-                <el-radio :label="2">否</el-radio>
-            </el-radio-group>
-        </td>
-        <td class="w-16">
-            <el-input type="number" v-model="item.deviceUseCount" />
-        </td>
-        <td class="w-16">
-            <el-button :disabled="selectEquipmentState.disabled" type="danger" @click="deleteEquipmentItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectEquipmentState.disabled" type="primary" shape="round" @click="addEquipmentItem()">
-            选择实验仪器
-        </el-button>
-    </tr>
-</template>
-
-<script setup lang="ts">
-import {onMounted, reactive, watchEffect} from "vue";
-import {ElMessage} from "element-plus";
-import { equipmentApi } from "/@/api/basic/equipement";
-
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<AllEquipmentListType>
-});
-
-const selectEquipmentState = reactive<SelectEquipmentType>({
-    disabled: false,
-    equipmentList: [],
-    allEquipmentList: [],
-});
-
-watchEffect(() => {
-    selectEquipmentState.equipmentList = props.data as Array<AllEquipmentListType>
-    selectEquipmentState.disabled = props.disabled
-});
-
-const addEquipmentItem = () => {
-    selectEquipmentState.equipmentList.push({deviceId: null, deviceUseCount: null, deviceCode: '', deviceName: '', devicePower: '', specialDevice: '',});
-};
-
-const deleteEquipmentItem = (index: number) => {
-    selectEquipmentState.equipmentList.splice(index,1);
-};
-
-const getAllEquipmentList = async () => {
-    let res = await equipmentApi().getAllEquipment();
-    if(res.data.code === 100){
-        selectEquipmentState.allEquipmentList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const giveOtherEquipmentValue = (value: number, index:number) => {
-    const data = selectEquipmentState.allEquipmentList.find(item => item.id === value) as AllEquipmentListType
-    selectEquipmentState.equipmentList[index] = {
-        deviceId: data.id,
-        deviceUseCount: null,
-        deviceCode: data.deviceCode,
-        deviceName: data.deviceName,
-        devicePower: data.devicePower,
-        specialDevice: data.specialDevice
-    }
-};
-
-const formatList = (formatList: Array<AllEquipmentListType>) => {
-    selectEquipmentState.equipmentList = formatList
-}
-
-defineExpose({
-    dataList: selectEquipmentState.equipmentList,
-    formatList
-});
-
-onMounted(() => {
-    getAllEquipmentList();
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-:deep(.el-input__wrapper ){
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/experiment/developing/components/selectMaterial.vue b/src/views/experiment/developing/components/selectMaterial.vue
deleted file mode 100644
index bb29d5f..0000000
--- a/src/views/experiment/developing/components/selectMaterial.vue
+++ /dev/null
@@ -1,210 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">实验所用的试剂或材料</tr>
-    <tr>
-        <td class="w-14 m-color">实验材料</td>
-        <td class="w-14 m-color">耗材ID</td>
-        <td class="w-14 m-color">材料类型</td>
-        <td class="w-14 m-color">材料储存</td>
-        <td class="w-14 m-color">计量单位</td>
-        <td class="w-14 m-color">使用数量</td>
-        <td class="w-14 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectMaterialState.materialList" :key="index">
-        <td class="w-14">
-            <el-select :disabled="selectMaterialState.disabled" filterable v-model="item.stuffId" @change="giveOtherMaterialValue($event, index)">
-                <el-option
-                    v-for="item in selectMaterialState.allMaterialList"
-                    :key="item.id"
-                    :value="item.id"
-                    :label="item.stuffName"
-                >
-                </el-option>
-            </el-select>
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectMaterialState.disabled" v-model="item.stuffCode" />
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectMaterialState.disabled" v-model="item.stuffType" />
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectMaterialState.disabled" v-model="item.stuffStorage" />
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectMaterialState.disabled" v-model="item.stuffUnit" />
-        </td>
-        <td class="w-14">
-            <el-input type="number" v-model="item.stuffUseCount" />
-        </td>
-        <td class="w-14">
-            <el-button type="danger" :disabled="selectMaterialState.disabled" @click="deleteMaterialItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectMaterialState.disabled" type="primary" shape="round" @click="addMaterialItem()">
-            选择实验材料
-        </el-button>
-    </tr>
-</template>
-
-<script setup lang="ts">
-import {onMounted, reactive, watchEffect} from "vue";
-import { materialApi } from "/@/api/basic/material";
-import {ElMessage} from "element-plus";
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<AllMaterialListType>
-});
-
-const selectMaterialState = reactive<SelectMaterialType>({
-    disabled: false,
-    materialList: [],
-    allMaterialList: [],
-})
-
-const addMaterialItem = () => {
-    selectMaterialState.materialList.push({stuffId: null, stuffUseCount: null, stuffName: '',stuffCode:'',stuffType: '', stuffStorage: '', stuffUnit: ''});
-};
-
-watchEffect(() => {
-    selectMaterialState.materialList = props.data as Array<AllMaterialListType>
-    selectMaterialState.disabled = props.disabled
-});
-
-const deleteMaterialItem = (index: number) => {
-    selectMaterialState.materialList.splice(index,1);
-};
-
-const getAllPersonList = async () => {
-    let res = await materialApi().getAllMaterial();
-    if(res.data.code === 100){
-        selectMaterialState.allMaterialList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const giveOtherMaterialValue = (value: number, index:number) => {
-    const data = selectMaterialState.allMaterialList.find(item => item.id === value) as AllMaterialListType
-    selectMaterialState.materialList[index] = {
-        stuffId: data.id,
-        stuffUseCount: data.stuffUseCount,
-        stuffName: data.stuffName,
-        stuffCode: data.stuffCode,
-        stuffType: data.stuffType,
-        stuffStorage: data.stuffStorage,
-        stuffUnit: data.stuffUnit
-    };
-};
-
-const formatList = (formatList: Array<AllMaterialListType>) => {
-    selectMaterialState.materialList = formatList
-};
-
-defineExpose({
-    dataList: selectMaterialState.materialList,
-    formatList
-});
-
-
-onMounted(() => {
-    getAllPersonList();
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-:deep(.el-input__wrapper ){
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/experiment/developing/components/selectPerson.vue b/src/views/experiment/developing/components/selectPerson.vue
deleted file mode 100644
index e0359b8..0000000
--- a/src/views/experiment/developing/components/selectPerson.vue
+++ /dev/null
@@ -1,218 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">实验人员</tr>
-    <tr>
-        <td class="w-14 m-color">姓名</td>
-        <td class="w-14 m-color">年龄</td>
-        <td class="w-14 m-color">性别</td>
-        <td class="w-14 m-color">专业</td>
-        <td class="w-14 m-color">部门</td>
-        <td class="w-14 m-color">相关资质</td>
-        <td class="w-14 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectPersonState.personList" :key="index">
-        <td class="w-14">
-            <el-select filterable :disabled="selectPersonState.disabled" v-model="item.personId" @change="giveOtherPersonValue($event, index)">
-                <el-option
-                v-for="item in selectPersonState.allPersonList"
-                :key="item.id"
-                :value="item.id"
-                :label="item.personName"
-                >
-                </el-option>
-            </el-select>
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectPersonState.disabled" v-model="item.personAge" />
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectPersonState.disabled" v-model="item.personGender" />
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectPersonState.disabled" v-model="item.personMajor" />
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectPersonState.disabled" v-model="item.depName" />
-        </td>
-        <td class="w-14">
-            <el-input :disabled="selectPersonState.disabled" v-model="item.aptitude" />
-        </td>
-        <td class="w-14">
-            <el-button type="danger" :disabled="selectPersonState.disabled" @click="deletePersonItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectPersonState.disabled" type="primary" shape="round" @click="addPersonItem()">
-            选择实验人员
-        </el-button>
-    </tr>
-</template>
-
-<script setup lang="ts">
-import {nextTick, onMounted, reactive, watchEffect} from "vue";
-import { personApi } from "/@/api/basic/person";
-import {ElMessage} from "element-plus";
-
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<AllPersonListType>
-
-});
-
-const selectPersonState = reactive<SelectPersonType>({
-    disabled: false,
-    personList: [],
-    allPersonList: [
-    ],
-});
-
-watchEffect(() => {
-    selectPersonState.personList = props.data as Array<AllPersonListType>
-    selectPersonState.disabled = props.disabled
-});
-
-const addPersonItem = () => {
-    selectPersonState.personList.push({personId: null, personName: null, personAge: null, personGender:'',personMajor:'',depName:'',phone:'',aptitude:'',training:''});
-};
-
-const deletePersonItem = (index: number) => {
-    selectPersonState.personList.splice(index,1);
-};
-
-const getAllPersonList = async () => {
-    let res = await personApi().getAllPerson();
-    if(res.data.code === 100){
-        selectPersonState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const giveOtherPersonValue = (value: number, index:number) => {
-    // selectPersonState.personList[index] = selectPersonState.allPersonList.find(item => item.id === value) as AllPersonListType
-    const data = selectPersonState.allPersonList.find(item => item.id === value) as AllPersonListType
-    selectPersonState.personList[index] = {
-        personId: data.id,
-        personName: data.personName,
-        personAge: data.personAge,
-        personGender: data.personGender,
-        personMajor: data.personMajor,
-        depName: data.depName,
-        phone: data.phone,
-        aptitude: data.aptitude,
-        training: data.training,
-    };
-};
-
-const formatList = (formatList: Array<AllPersonListType>) => {
-    nextTick(() => {
-        selectPersonState.personList = formatList
-    })
-
-};
-
-defineExpose({
-    formatList,
-    dataList: selectPersonState.personList,
-});
-
-onMounted(() => {
-    getAllPersonList();
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-:deep(.el-input__wrapper ){
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/experiment/developing/index.vue b/src/views/experiment/developing/index.vue
deleted file mode 100644
index a88ac4b..0000000
--- a/src/views/experiment/developing/index.vue
+++ /dev/null
@@ -1,424 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>实验名称:</span>
-                    <el-input v-model="developState.searchQuery.searchParams.experimentName" clearable filterable class="input-box" placeholder="实验名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>实验类型:</span>
-                    <el-select v-model="developState.searchQuery.searchParams.experimentType" clearable filterable class="input-box" placeholder="实验类型">
-                        <el-option v-for="item in developState.experimentTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getdevelopData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openProjectDialog('新增', {})">录入实验信息</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="developState.developData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="experimentCode" label="实验编号"/>
-                        <el-table-column prop="experimentName" label="实验名称"/>
-                        <el-table-column prop="createExperimentTime" label="立项时间">
-                          <template #default="scope">
-                            <span>{{scope.row.createExperimentTime?scope.row.createExperimentTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="startTime" label="开展时间" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.startTime?scope.row.startTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="liabilityUser" label="负责人"/>
-                        <el-table-column prop="siteList" label="实验场所" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.siteList.map(i=>i.siteName).join(',')}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="experimentType" label="实验类别">
-                          <template #default="scope">
-                            <span>{{developState.experimentTypeList.find(i=>i.id == scope.row.experimentType)?.name}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="status" label="评估申请">
-                          <template #default="scope">
-                            <span>{{scope.row.status == 1?'未申请':scope.row.status == 2?'已申请':'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="status" label="评估申请时间" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.assessApplyTime?scope.row.assessApplyTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="stage" label="评估状态">
-                          <template #default="scope">
-                            <el-tag :type="scope.row.stage == 4?'success':scope.row.stage == 1?'info':''">
-                              {{scope.row.stage == 1?'未评估':scope.row.stage == 2?'评估中':scope.row.stage == 3?'评估完成':scope.row.stage == 4?'生成报告':'--'}}
-                            </el-tag>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="assessLevel" label="风险等级">
-                          <template #default="scope">
-                            <el-tag :type="scope.row.assessLevel == 4?'danger':scope.row.assessLevel == 3 || scope.row.assessLevel == 2?'warning':''">
-                              {{scope.row.assessLevel == 1?'重大风险':scope.row.assessLevel == 2?'较大风险':scope.row.assessLevel == 3?'一般风险':scope.row.assessLevel == 4?'低风险':'--'}}
-                            </el-tag>
-                          </template>
-                        </el-table-column>
-<!--                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>-->
-<!--                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>-->
-<!--                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>-->
-<!--                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>-->
-                        <el-table-column label="操作" width="250" fixed="right">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" :icon="View" @click="openProjectDialog('查看', scope.row)">查看</el-button>
-                                <el-button size="small" text type="primary" :icon="View" v-if="scope.row.stage == 4" @click="openReportDialog('查看',scope.row)">查看评估报告</el-button>
-                                <el-button size="small" :disabled="scope.row.status == 2 ? true : false" text type="primary" :icon="Edit" @click="applyAccess( scope.row)">申请评估</el-button>
-                                <el-button size="small" :disabled="(scope.row.status == 2 && scope.row.stage == 1) ? false : true" text type="warning" :icon="RefreshLeft" @click="cancelAccess( scope.row)">撤销评估</el-button>
-                                <el-button size="small" type="warning" v-if="scope.row.rectifyStatus == 1" text :icon="Edit" @click="openProjectDialog('整改', scope.row)">整改</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="developState.searchQuery.pageIndex" background v-model:page-size="developState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="developState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <develop-dialog ref="DevelopDialogRef" @refresh="getdevelopData"></develop-dialog>
-<!--        <apply-start ref="ApplyStartRef"></apply-start>-->
-        <test ref="ApplyStartRef" @refresh="getdevelopData"></test>
-        <report-dialog ref="ReportDialogRef"></report-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {projectApi} from "/@/api/experiment/project";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { View,Edit, Plus, RefreshLeft } from '@element-plus/icons-vue';
-import {roomApi} from "/@/api/basic/room";
-const ReportDialog = defineAsyncComponent(() => import('../../analyse/assessApply/components/reportDialog.vue'));
-const DevelopDialog = defineAsyncComponent(() => import('./components/developDialog.vue'));
-const Test = defineAsyncComponent(() => import('./components/applyDialog.vue'))
-
-const DevelopDialogRef = ref()
-const ApplyStartRef = ref()
-const ReportDialogRef = ref()
-const developState = reactive<ProjectStateType>({
-    developData: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        searchParams: {
-            experimentName: '',
-            experimentType: null,
-        }
-    },
-    total: 0,
-    experimentTypeList: [
-        {id: 1, name: '化学类'},
-        {id: 2, name: '生物类'},
-        {id: 3, name: '辐射类'},
-        {id: 4, name: '机电类'},
-        {id: 5, name: '特种设备类'},
-        {id: 6, name: '其它类'},
-    ],
-    allRoomList: []
-})
-
-const getdevelopData = async () => {
-    let res = await projectApi().getDevelopByList(developState.searchQuery);
-    if(res.data.code === 100){
-        developState.developData = res.data.data;
-        developState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const openProjectDialog = (title: string, value: ProjectType) => {
-    DevelopDialogRef.value.showDevelopDialog(title, value, developState.allRoomList);
-};
-
-const openReportDialog = (title: string,value: ProjectType) =>{
-  ReportDialogRef.value.showReportDialog(title, value, developState.allRoomList);
-}
-
-const applyAccess = (val: ProjectType) => {
-    ElMessageBox.confirm(`此操作将申请评估该实验:“${val.experimentName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await projectApi().accessProject([val.id]);
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '申请成功'
-                });
-                await getdevelopData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const cancelAccess = (val: ProjectType) => {
-  ElMessageBox.confirm(`此操作将撤销评估该实验:“${val.experimentName}”,是否继续?`, '提示', {
-    confirmButtonText: '确认',
-    cancelButtonText: '取消',
-    type: 'warning'
-  })
-      .then(async () => {
-        let res = await projectApi().cancelProject([val.id]);
-        if (res.data.code === 100) {
-          ElMessage({
-            type: 'success',
-            duration: 2000,
-            message: '撤销成功'
-          });
-          await getdevelopData();
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      })
-      .catch((error) => {
-      });
-}
-
-const onDelProject = (val: ProjectType) => {
-    ElMessageBox.confirm(`此操作将永久删除该实验:“${val.experimentCode}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            debugger
-            let res = await projectApi().deleteProjectById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getdevelopData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    developState.searchQuery.pageSize = val;
-    getdevelopData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    developState.searchQuery.pageIndex = val;
-    getdevelopData();
-};
-
-const reset = () => {
-    developState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        searchParams: {
-            experimentName: '',
-            experimentType: null,
-        }
-    }
-};
-
-const getRoomData = async () => {
-    let res = await roomApi().getAllRoom();
-    if(res.data.code === 100){
-        developState.allRoomList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-onMounted(() => {
-    getdevelopData();
-    getRoomData();
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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);
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/experiment/project/components/applyDialog.vue b/src/views/experiment/project/components/applyDialog.vue
deleted file mode 100644
index 404c391..0000000
--- a/src/views/experiment/project/components/applyDialog.vue
+++ /dev/null
@@ -1,107 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="applyStartDialogState.title" v-model="applyStartDialogState.applyStartDialogVisible" width="600px">
-            <el-form ref="applyStartFormRef" :rules="applyStartDialogState.applyStartFormRules" :model="applyStartDialogState.applyStartForm" size="default" label-width="160px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="实验开始时间" prop="startTime">
-                            <el-date-picker type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="applyStartDialogState.applyStartForm.startTime" class="input-length"/>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="是否使用安全信息化系统" prop="sisStatus">
-                            <el-radio-group v-model="applyStartDialogState.applyStartForm.sisStatus">
-                                <el-radio :label="1">是</el-radio>
-                                <el-radio :label="2">否</el-radio>
-                            </el-radio-group>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-if="applyStartDialogState.applyStartForm.sisStatus==1">
-                        <el-form-item label="安全信息化系统名称" prop="safeInformationSystem">
-                            <el-input v-model="applyStartDialogState.applyStartForm.safeInformationSystem" placeholder="材料类型" class="input-length">
-                            </el-input>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="applyStartDialogState.applyStartDialogVisible = !applyStartDialogState.applyStartDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitApplyStart" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-
-const applyStartFormRef = ref()
-
-const applyStartDialogState = reactive<ApplyStartDialogType>({
-    title: '转为已开展',
-    applyStartDialogVisible: false,
-    applyStartForm: {
-        id: null,
-        sisStatus: null,
-        safeInformationSystem: '',
-        startTime: '',
-    },
-    applyStartFormRules: {
-
-    },
-})
-
-const showApplyStartDialog = (value: ProjectType) => {
-    applyStartDialogState.applyStartDialogVisible = true;
-    applyStartDialogState.applyStartForm = {
-      id: null,
-      sisStatus: null,
-      safeInformationSystem: '',
-      startTime: ''
-    },
-    applyStartDialogState.applyStartForm.id = <number>value.id
-};
-
-const onSubmitApplyStart = () => {
-    applyStartFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(applyStartDialogState.applyStartForm.sisStatus == 2){
-              applyStartDialogState.applyStartForm.safeInformationSystem = ''
-            }
-            let res = await projectApi().applyProject([applyStartDialogState.applyStartForm]);
-            if(res.data.code === 100){
-                emit('refresh')
-                applyStartDialogState.applyStartDialogVisible = false;
-                ElMessage({
-                    type: 'success',
-                    message: '申请开展成功'
-                })
-            }else{
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg,
-                });
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showApplyStartDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/experiment/project/components/applyStart.vue b/src/views/experiment/project/components/applyStart.vue
deleted file mode 100644
index 8906f6e..0000000
--- a/src/views/experiment/project/components/applyStart.vue
+++ /dev/null
@@ -1,101 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="applyStartDialogState.title" v-model="applyStartDialogState.applyStartDialogVisible" width="600px">
-            <el-form ref="applyStartFormRef" :rules="applyStartDialogState.applyStartFormRules" :model="applyStartDialogState.applyStartForm" size="default" label-width="120px">
-                <el-row :gutter="35">
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="实验材料" prop="stuffName">
-                            <el-date-picker type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="applyStartDialogState.applyStartForm.startTime" class="input-length"/>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="编号" prop="sisStatus">
-                            <el-radio-group v-model="applyStartDialogState.applyStartForm.sisStatus">
-                                <el-radio :label="1">是</el-radio>
-                                <el-radio :label="2">否</el-radio>
-                            </el-radio-group>
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                        <el-form-item label="材料类型" prop="stuffType">
-                            <el-select v-model="applyStartDialogState.applyStartForm.safeInformationSystem" placeholder="材料类型" class="input-length">
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer">
-					<el-button @click="applyStartDialogState.applyStartDialogVisible = !applyStartDialogState.applyStartDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmitApplyStart" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import { reactive, ref } from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-
-const applyStartFormRef = ref()
-
-const applyStartDialogState = reactive<ApplyStartDialogType>({
-    title: '',
-    applyStartDialogVisible: false,
-    applyStartForm: {
-        id: null,
-        sisStatus: null,
-        safeInformationSystem: '',
-        startTime: '',
-    },
-    applyStartFormRules: {
-        stuffCode: [{ required: true, message: '请填写实验材料', trigger: 'blur' }],
-        stuffName: [{ required: true, message: '请填写编号', trigger: 'blur' }],
-        stuffStorage: [{ required: true, message: '请选择材料类型', trigger: 'change' }],
-        stuffType: [{ required: true, message: '请选择材料储存', trigger: 'change' }],
-        stuffUnit: [{ required: true, message: '请选择计量单位', trigger: 'change' }]
-    },
-})
-
-const showApplyStartDialog = (value: ProjectType) => {
-    applyStartDialogState.applyStartDialogVisible = true;
-};
-
-const onSubmitApplyStart = () => {
-    applyStartFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            let res = await projectApi().applyProject(applyStartDialogState.applyStartForm);
-            if(res.data.code === 100){
-                emit('refresh')
-                applyStartDialogState.applyStartDialogVisible = false;
-                ElMessage({
-                    type: 'success',
-                    message: '申请开展成功'
-                })
-            }else{
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg,
-                });
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const emit = defineEmits(['refresh'])
-
-defineExpose({
-    showApplyStartDialog
-})
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/experiment/project/components/projectDialog.vue b/src/views/experiment/project/components/projectDialog.vue
deleted file mode 100644
index e34c4a4..0000000
--- a/src/views/experiment/project/components/projectDialog.vue
+++ /dev/null
@@ -1,775 +0,0 @@
-<template>
-    <div class="system-menu-dialog-container">
-        <el-dialog :title="projectDialogState.title" v-model="projectDialogState.projectDialogVisible" width="80%">
-            <el-form ref="ProjectFormRef" :rules="projectDialogState.projectFormRules" :model="projectDialogState.projectForm" size="default" label-width="0">
-                <table class="report-table">
-                  <th class="m-color b-font" style="text-align: center">***研究所/***大学<br />科学研究实验项目安全风险基础信息录入表(新立项)(带<span style="color: red">*</span>为必填项)</th>
-                    <tr>
-                        <td class="w-25 m-color required">实验名称</td>
-                        <td class="w-75 m-color">
-                            <el-form-item prop="experimentName">
-                                <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.experimentName" placeholder="请输入实验名称" />
-                            </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验类型</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="experimentType" style="display: flex;justify-content: center">
-                            <el-radio-group style="text-align: center" :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.experimentType">
-                                <el-radio :label="1">化学类</el-radio>
-                                <el-radio :label="2">生物类</el-radio>
-                                <el-radio :label="3">辐射类</el-radio>
-                                <el-radio :label="4">机电类</el-radio>
-                                <el-radio :label="5">特种设备类</el-radio>
-                                <el-radio :label="6">其他类</el-radio>
-                            </el-radio-group>
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">部门</td>
-                        <td class="w-25 m-color">
-                          <el-form-item prop="dep">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.dep" />
-                          </el-form-item>
-                        </td>
-                        <td class="w-25 m-color required">立项时间</td>
-                        <td class="w-25 m-color">
-                          <el-form-item prop="createExperimentTime">
-                            <el-date-picker :disabled="projectDialogState.disabled"  type="datetime" format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" v-model="projectDialogState.projectForm.createExperimentTime" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">负责人</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="liabilityUserId">
-<!--                          <el-select style="width: 100%" v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable @change="getLiabilityUserPhone($event)">-->
-<!--                            <el-option-->
-<!--                                v-for="item in projectDialogState.systemPersonList"-->
-<!--                                :key="item.id"-->
-<!--                                :value="item.id"-->
-<!--                                :label="item.realName"-->
-<!--                            ></el-option>-->
-<!--                          </el-select>-->
-                          <el-select style="width: 100%" disabled v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable>
-                            <el-option :key="userInfos.uid" :value="userInfos.uid" :label="userInfos.userName"></el-option>
-                          </el-select>
-                        </el-form-item>
-<!--                        <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.liabilityUserId"/>-->
-                      </td>
-                      <td class="w-25 m-color required">电话</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="liabilityUserPhone">
-                          <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.liabilityUserPhone" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">安全负责人</td>
-                      <td class="w-25 m-color">
-<!--                        <el-select style="width: 100%" :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeLiabilityUser" @change="getSafeLiabilityUserPhone($event)" clearable filterable>-->
-<!--                          <el-option-->
-<!--                              v-for="item in projectDialogState.allPersonList"-->
-<!--                              :key="item.id"-->
-<!--                              :value="item.id"-->
-<!--                              :label="item.personName"-->
-<!--                          ></el-option>-->
-<!--                        </el-select>-->
-                        <el-form-item prop="safeLiabilityUser">
-                          <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeLiabilityUser" />
-                        </el-form-item>
-                      </td>
-                      <td class="w-25 m-color required">电话</td>
-                      <td class="w-25 m-color">
-                        <el-form-item prop="safeLiabilityUserPhone">
-                        <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeLiabilityUserPhone" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <select-room ref="selectRoomRef" v-model:disabled="projectDialogState.disabled" v-model:data="projectDialogState.projectForm.siteList"></select-room>
-                    <select-material ref="selectMaterialRef" v-model:disabled="projectDialogState.disabled" v-model:data="projectDialogState.projectForm.stuffList"></select-material>
-                    <select-equipment ref="selectEquipmentRef" v-model:disabled="projectDialogState.disabled" v-model:data="projectDialogState.projectForm.deviceList"></select-equipment>
-                    <tr>
-                        <td class="w-25 m-color required">实验步骤</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="experimentStep">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.experimentStep" placeholder="请输入实验步骤" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">操作方法</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="experimentMethod">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.experimentMethod" placeholder="请输入操作方法" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">工艺过程</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="process">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.process" placeholder="请输入工艺过程" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">特殊/关键过程</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="keyProcess">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.keyProcess" placeholder="请输入特殊/关键过程" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                      <td class="w-25 m-color required">预防措施</td>
-                      <td class="w-75 m-color">
-                        <el-form-item prop="measure">
-                        <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.measure" placeholder="请输入预防措施" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">是否存在过夜、老化实验</td>
-                        <td class="w-25 m-color">
-                          <el-form-item prop="timeout">
-                            <el-radio-group :disabled="projectDialogState.disabled"  v-model="projectDialogState.projectForm.timeout">
-                                <el-radio :label="1">存在</el-radio>
-                                <el-radio :label="2">不存在</el-radio>
-                            </el-radio-group>
-                          </el-form-item>
-                        </td>
-                        <td class="w-25 m-color required" v-if="projectDialogState.projectForm.timeout === 1">过夜、老化保障措施</td>
-                        <td class="w-25 m-color" v-if="projectDialogState.projectForm.timeout === 1">
-                          <el-form-item prop="timeoutManager">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.timeoutManager" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">是否在封闭条件下</td>
-                        <td class="w-25 m-color">
-                          <el-form-item prop="closed">
-                            <el-radio-group :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.closed">
-                                <el-radio :label="1">存在</el-radio>
-                                <el-radio :label="2">不存在</el-radio>
-                            </el-radio-group>
-                          </el-form-item>
-                        </td>
-                        <td class="w-25 m-color required" v-if="projectDialogState.projectForm.closed === 1">封闭条件保障措施</td>
-                        <td class="w-25 m-color" v-if="projectDialogState.projectForm.closed === 1">
-                          <el-form-item prop="unclosedManager">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.unclosedManager"/>
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验场所防爆措施条件和设施情况</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="explosionProof">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.explosionProof" placeholder="请输入" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验场所防火措施条件和设施情况</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="fireProof">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.fireProof" placeholder="请输入" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验场所防中毒措施条件和设施情况</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="poisonProof">
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.poisonProof" placeholder="请输入" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-
-
-                    <select-danger ref="selectDangerRef" v-model:data="projectDialogState.projectForm.hazardousWasteList" v-model:disabled="projectDialogState.disabled"></select-danger>
-                    <select-person ref="selectPersonRef" v-model:data="projectDialogState.projectForm.persons" v-model:disabled="projectDialogState.disabled"></select-person>
-
-
-<!--                    <tr>-->
-<!--                        <td class="w-25 m-color">安全信息化系统使用情况</td>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                            <el-radio-group v-model="projectDialogState.projectForm.useIT">-->
-<!--                                <el-radio value="1">是</el-radio>-->
-<!--                                <el-radio value="2">否</el-radio>-->
-<!--                            </el-radio-group>-->
-<!--                        </td>-->
-<!--                        <td class="w-25 m-color">系统名称</td>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                            <el-input v-model="projectDialogState.projectForm.systemName" placeholder="请输入" />-->
-<!--                        </td>-->
-<!--                    </tr>-->
-<!--                    <tr class="m-color b-font" style="text-align: center">应急预案/应急演练</tr>-->
-<!--                    <tr>-->
-<!--                        <td class="w-25 m-color required">有无预案</td>-->
-<!--                        <td class="w-25 m-color required">预案名称</td>-->
-<!--                        <td class="w-25 m-color required">是否演练</td>-->
-<!--                        <td class="w-25 m-color required">演练情况</td>-->
-<!--                    </tr>-->
-<!--                    <tr>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                          <el-form-item prop="emergencyPlan">-->
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.emergencyPlan" />-->
-<!--                          </el-form-item>-->
-<!--                        </td>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                          <el-form-item prop="emergencyPlanName">-->
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.emergencyPlanName" />-->
-<!--                          </el-form-item>-->
-<!--                        </td>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                          <el-form-item prop="emergencyDrillStatus">-->
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.emergencyDrillStatus" />-->
-<!--                          </el-form-item>-->
-<!--                        </td>-->
-<!--                        <td class="w-25 m-color">-->
-<!--                          <el-form-item prop="emergencyDrill">-->
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.emergencyDrill" />-->
-<!--                          </el-form-item>-->
-<!--                        </td>-->
-<!--                    </tr>-->
-                    <select-emergency ref="selectEmergencyRef" v-model:disabled="projectDialogState.disabled" v-model:data="projectDialogState.projectForm.emergencyList"></select-emergency>
-                    <tr>
-                      <td class="w-25 m-color required">安全管理制度</td>
-                      <td class="w-75 m-color">
-                        <el-form-item prop="safeManagerMethod">
-                          <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeManagerMethod" placeholder="请输入" />
-                        </el-form-item>
-                      </td>
-                    </tr>
-                    <tr class="m-color b-font" style="  text-align: center">其他信息</tr>
-                    <tr>
-                        <td class="w-25 m-color required">实验场所是否需要分区隔断</td>
-                        <td class="w-75 m-color">
-                          <el-form-item prop="partitionCondition">
-<!--                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.partitionCondition" placeholder="请输入" />-->
-                            <el-radio-group :disabled="projectDialogState.disabled"  v-model="projectDialogState.projectForm.partitionCondition">
-                              <el-radio :label="0">是</el-radio>
-                              <el-radio :label="1">否</el-radio>
-                            </el-radio-group>
-                          </el-form-item>
-                        </td>
-                    </tr>
-                    <tr>
-                        <td class="w-25 m-color">其它基础信息(详细描述)</td>
-                        <td class="w-75 m-color">
-                          <el-form-item>
-                            <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.note" placeholder="请输入" />
-                          </el-form-item>
-                        </td>
-                    </tr>
-                </table>
-            </el-form>
-            <template #footer>
-				<span class="dialog-footer" style="padding-top:10px;text-align: center !important;">
-					<el-button @click="projectDialogState.projectDialogVisible = !projectDialogState.projectDialogVisible" size="default">取 消</el-button>
-					<el-button type="primary" v-if="!projectDialogState.disabled" @click="onSubmitProject" size="default">确定</el-button>
-				</span>
-            </template>
-        </el-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, nextTick, onMounted, reactive, ref} from "vue";
-import {ElMessage} from "element-plus";
-import {projectApi} from "/@/api/experiment/project";
-import {personApi} from "/@/api/basic/person";
-import {userApi} from "/@/api/systemManage/user";
-import {useUserInfo} from "/@/stores/userInfo";
-import {storeToRefs} from "pinia";
-import {checkChineseName, verifyPhone} from "/@/utils/toolsValidate";
-
-const SelectEquipment = defineAsyncComponent(() => import('./selectEquipment.vue'))
-const SelectMaterial = defineAsyncComponent(() => import('./selectMaterial.vue'))
-const SelectEmergency = defineAsyncComponent(() => import('./selectEmergency.vue'))
-const SelectDanger = defineAsyncComponent(() => import('./selectDanger.vue'))
-const SelectPerson = defineAsyncComponent(() => import('./selectPerson.vue'))
-const SelectRoom = defineAsyncComponent(() => import('./selectRoom.vue'))
-const ProjectFormRef = ref()
-const selectPersonRef = ref()
-const selectEquipmentRef = ref()
-const selectRoomRef = ref()
-const selectMaterialRef = ref()
-const selectEmergencyRef = ref()
-const selectDangerRef = ref()
-
-const userInfo = useUserInfo();
-const { userInfos } = storeToRefs(userInfo);
-
-const projectDialogState = reactive<ProjectDialogType>({
-    title: '',
-    disabled: false,
-    projectDialogVisible: false,
-    projectForm:   {
-        id: null,
-        experimentName: "",
-        experimentType: null,
-        liabilityUserId: Number(userInfos.value.uid),
-        liabilityUserPhone: '',
-        safeLiabilityUser: '',
-        safeLiabilityUserPhone: '',
-        dep: "",
-        experimentStep: "",
-        experimentMethod: "",
-        process: "",
-        keyProcess: "",
-        measure: "",
-        timeout: null,
-        timeoutManager: "",
-        closed: null,
-        unclosedManager: "",
-        explosionProof: "",
-        fireProof: "",
-        poisonProof: "",
-        safeManagerMethod: "",
-        emergencyList: [],
-        partitionCondition: null,
-        note: "",
-        createExperimentTime: '',
-        persons: [],
-        siteList: [],
-        deviceList: [],
-        stuffList: [],
-        hazardousWasteList: []
-    },
-    projectFormRules: {
-      experimentName: [{ required: true, message: '', trigger: 'blur' }],
-      experimentType: [{ required: true, message: '', trigger: 'blur' }],
-      liabilityUserId: [{ required: true, message: '', trigger: 'blur' }],
-      liabilityUserPhone: [{ required: true, message: '', trigger: 'blur' }],
-      safeLiabilityUser: [{ required: true, message: '', trigger: 'blur' }],
-      safeLiabilityUserPhone: [{ required: true, message: '', trigger: 'blur' }],
-      dep: [{ required: true, message: '', trigger: 'blur' }],
-      experimentStep: [{ required: true, message: '', trigger: 'blur' }],
-      experimentMethod: [{ required: true, message: '', trigger: 'blur' }],
-      process: [{ required: true, message: '', trigger: 'blur' }],
-      keyProcess: [{ required: true, message: '', trigger: 'blur' }],
-      measure: [{ required: true, message: '', trigger: 'blur' }],
-      timeout: [{ required: true, message: '', trigger: 'blur' }],
-      timeoutManager: [{ required: true, message: '', trigger: 'blur' }],
-      closed: [{ required: true, message: '', trigger: 'blur' }],
-      unclosedManager: [{ required: true, message: '', trigger: 'blur' }],
-      explosionProof: [{ required: true, message: '', trigger: 'blur' }],
-      fireProof: [{ required: true, message: '', trigger: 'blur' }],
-      poisonProof: [{ required: true, message: '', trigger: 'blur' }],
-      safeManagerMethod: [{ required: true, message: '', trigger: 'blur' }],
-      emergencyList: [{ required: true, message: '', trigger: 'blur' }],
-      partitionCondition: [{ required: true, message: '', trigger: 'blur' }],
-      createExperimentTime: [{ required: true, message: '', trigger: 'blur' }]
-    },
-    allPersonList: [],
-    allRoomList: [],
-    systemPersonList: [],
-})
-
-const getLiabilityUserPhone = (value: number)=>{
-  const data = projectDialogState.systemPersonList.find(item => item.id === value) as AllPersonListType
-  projectDialogState.projectForm.liabilityUserPhone = data.phone
-}
-
-// const getSafeLiabilityUserPhone = (value: number)=>{
-//   const data = projectDialogState.allPersonList.find(item => item.id === value) as AllPersonListType
-//   projectDialogState.projectForm.safeLiabilityUserPhone = data.phone
-// }
-
-const showProjectDialog = (title: string, value: ProjectType, allRoomList: RoomType []) => {
-    projectDialogState.projectDialogVisible = true;
-    projectDialogState.allRoomList = allRoomList
-    setTimeout(() => {
-        ProjectFormRef.value.clearValidate();
-    });
-    if(title === '新增'){
-        projectDialogState.disabled = false
-        projectDialogState.title = '新增';
-        projectDialogState.projectForm = {
-            id: null,
-            experimentName: "",
-            experimentType: null,
-            liabilityUserId: Number(userInfos.value.uid),
-            liabilityUserPhone: '',
-            safeLiabilityUser: '',
-            safeLiabilityUserPhone: '',
-            dep: "",
-            experimentStep: "",
-            experimentMethod: "",
-            process: "",
-            keyProcess: "",
-            measure: "",
-            timeout: null,
-            timeoutManager: "",
-            closed: null,
-            unclosedManager: "",
-            explosionProof: "",
-            fireProof: "",
-            poisonProof: "",
-            safeManagerMethod: "",
-            emergencyList: [],
-            partitionCondition: null,
-            note: "",
-            createExperimentTime: '',
-            persons: [],
-            siteList: [],
-            deviceList: [],
-            stuffList: [],
-            hazardousWasteList: []
-        };
-    }else if(title === '整改'){
-      projectDialogState.title = '整改';
-      projectDialogState.disabled = false
-      for(let i in projectDialogState.projectForm) {
-        if(isValidKey(i, projectDialogState.projectForm)) {
-          projectDialogState.projectForm[i] = value[i];
-        }
-      }
-    }else{
-        projectDialogState.title = '查看';
-        projectDialogState.disabled = true
-        for(let i in projectDialogState.projectForm) {
-            if(isValidKey(i, projectDialogState.projectForm)) {
-                projectDialogState.projectForm[i] = value[i];
-            }
-        }
-    }
-};
-
-const isValidKey = (key: string | number | symbol, object:object): key is keyof typeof object =>{
-    return key in object;
-};
-
-const onSubmitProject = async() => {
-    ProjectFormRef.value.validate(async(valid: boolean) => {
-        if(valid){
-            if(projectDialogState.projectForm.timeout === 2){
-              projectDialogState.projectForm.timeoutManager = ''
-            }else{
-              if(projectDialogState.projectForm.timeoutManager == ''){
-                ElMessage({
-                  type: 'warning',
-                  message: '请填写过夜、老化保障措施',
-                  duration: 1000
-                });
-                return
-              }
-            }
-            if(projectDialogState.projectForm.closed === 2){
-              projectDialogState.projectForm.unclosedManager = ""
-            }else{
-              if(projectDialogState.projectForm.unclosedManager == ''){
-                ElMessage({
-                  type: 'warning',
-                  message: '请填写封闭条件保障措施',
-                  duration: 1000
-                });
-                return
-              }
-            }
-            if(projectDialogState.title === '新增'){
-                if(checkChineseName(projectDialogState.projectForm.safeLiabilityUser) == false){
-                  ElMessage({
-                    type: 'warning',
-                    message: '安全负责人姓名格式有误',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(verifyPhone(projectDialogState.projectForm.safeLiabilityUserPhone) == false || verifyPhone(projectDialogState.projectForm.liabilityUserPhone) == false){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请输入正确的手机号',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(projectDialogState.projectForm.siteList.length === 0){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请至少添加一处实验场所',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(projectDialogState.projectForm.stuffList.length === 0){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请至少选择一种试剂/材料',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(projectDialogState.projectForm.deviceList.length === 0){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请至少选择一种仪器/设备',
-                    duration: 1000
-                  });
-                  return
-                }
-                if(projectDialogState.projectForm.persons.length === 0){
-                  ElMessage({
-                    type: 'warning',
-                    message: '请至少添加一名实验人员',
-                    duration: 1000
-                  });
-                  return
-                }
-                projectDialogState.projectForm.emergencyList = selectEmergencyRef.value.dataList
-                projectDialogState.projectForm.persons = selectPersonRef.value.dataList
-                const roomList = selectRoomRef.value.dataList
-                projectDialogState.projectForm.siteList = roomList.map(({siteId}) => ({siteId}))
-                projectDialogState.projectForm.stuffList = selectMaterialRef.value.dataList
-                projectDialogState.projectForm.deviceList = selectEquipmentRef.value.dataList
-                let res = await projectApi().addProject(projectDialogState.projectForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    projectDialogState.projectDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                projectDialogState.projectForm.siteList = selectRoomRef.value.dataList.map(obj => ({siteId:obj.siteId}))
-                projectDialogState.projectForm.hazardousWasteList = selectDangerRef.value.dataList.map(obj => ({classify:obj.classify,wasteStorage:obj.wasteStorage,handAmount:obj.handAmount}))
-                let res = await projectApi().modProject(projectDialogState.projectForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    projectDialogState.projectDialogVisible = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '整改已提交'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const getPersonList = async () => {
-    let res = await userApi().getUserList({
-      pageIndex: 1,
-      pageSize: 99999,
-      searchParams:{
-        roleId: null,
-        name: '',
-        realName: ''
-      }
-    });
-    if(res.data.code === 100){
-        projectDialogState.systemPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const getAllPersonList = async () => {
-    let res = await personApi().getAllPerson();
-    if(res.data.code === 100){
-        projectDialogState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const emit = defineEmits(['refresh']);
-
-defineExpose({
-    showProjectDialog,
-});
-
-onMounted(() => {
-    getAllPersonList();
-    getPersonList();
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-th {
-    padding: 10px 0;
-    border: 1px solid #337ecc;
-    border-left: none;
-}
-
-tr {
-    width: 100%;
-    height: 44px;
-    line-height: 42px;
-    border-bottom: 1px solid #ccc;
-
-&:last-of-type {
-     border-bottom: none;
- }
-
-td {
-    border-right: 1px solid #ccc;
-    display: inline-block;
-    height: 44px;
-    vertical-align: middle;
-    text-align: center;
-    line-height: 42px;
-
-  :deep(.el-input__wrapper ){
-    box-shadow: none;
-    margin-top: 6px;
-  }
-
-&:last-of-type {
-     border-right: none;
- }
-
-&.required {
-  &::before {
-    content: "*";
-    display: inline-block;
-    color: red;
-  }
-}
-
-&.w-14 {
-     width: calc((100/7)/100 * 100%);
- }
-
-&.w-16 {
-     width: calc((100/6)/100 * 100%);
- }
-
-&.w-18 {
-     width: 16.59%;
- }
-
-&.w-20 {
-     width: 20%;
- }
-
-&.w-25 {
-     width: 25%;
- }
-
-&.w-50 {
-     width: 50%;
- }
-
-&.w-75 {
-     width: 75%;
- }
-
-.ant-input {
-    height: 100%;
-    border: none;
-    background: #f5f7fa;
-}
-
-.ant-picker {
-    width: 100%;
-    height: 100%;
-}
-}
-}
-
-.b-font {
-    font-size: 16px;
-    font-weight: bolder;
-}
-}
-
-.m-color {
-    color: #0c4995;
-}
-::v-deep(.el-form-item){
-  height: 100%;
-  display: flex;
-  justify-content: center;
-  .el-form-item__content{
-    display: flex;
-    justify-content: center;
-  }
-}
-.roomSelect{
-  ::v-deep(.el-popper){
-    .el-select-dropdown__item{
-      height: auto;
-      padding: 0;
-
-      .roomTable{
-        width: 100%;
-        display: flex;
-        border-bottom: 1px solid #ebeef5;
-
-        &:last-of-type{
-          border-bottom: none;
-        }
-
-        &>div{
-          width: 25%;
-          border-right: 1px dashed #ebeef5;
-          &:last-of-type{
-            border-right: none;
-          }
-
-          div{
-            width: 100%;
-          }
-          .roomTit{
-            border-bottom: 1px solid #ebeef5;
-          }
-        }
-      }
-    }
-    .el-select-dropdown__item.selected{
-      .roomTit{
-        color: #606266;
-        font-weight: normal;
-      }
-    }
-  }
-}
-
-:deep(.el-dialog__footer){
-    padding-top: 20px;
-    display: flex;
-    justify-content: center;
-}
-
-
-</style>
diff --git a/src/views/experiment/project/components/selectDanger.vue b/src/views/experiment/project/components/selectDanger.vue
deleted file mode 100644
index 26ade11..0000000
--- a/src/views/experiment/project/components/selectDanger.vue
+++ /dev/null
@@ -1,192 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">危废情况</tr>
-    <tr>
-        <td class="w-20 m-color">序号</td>
-        <td class="w-20 m-color">废弃物分类</td>
-        <td class="w-20 m-color">存储方式</td>
-        <td class="w-20 m-color">预估处理量</td>
-        <td class="w-20 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectDangerState.wasteList" :key="index">
-        <td class="w-20">
-            {{ index + 1 }}
-        </td>
-        <td class="w-20">
-            <el-select :disabled="selectDangerState.disabled" v-model="item.classify" clearable filterable>
-                <el-option v-for="item in selectDangerState.classifyList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-            </el-select>
-        </td>
-        <td class="w-20">
-            <el-select :disabled="selectDangerState.disabled" v-model="item.wasteStorage" clearable filterable>
-                <el-option v-for="item in selectDangerState.wasteStorageList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-            </el-select>
-        </td>
-        <td class="w-20">
-            <el-input type="number" v-model="item.handAmount"></el-input>
-        </td>
-        <td class="w-20">
-            <el-button :disabled="selectDangerState.disabled" type="danger" @click="deleteDangerItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectDangerState.disabled" type="primary" shape="round" @click="addDangerItem()">
-            添加行
-        </el-button>
-    </tr>
-</template>
-
-<script setup lang="ts">
-import {reactive, watchEffect} from "vue";
-
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<WasteType>
-});
-
-const selectDangerState = reactive<SelectDangerType>({
-    disabled: false,
-    wasteList: [
-    ],
-    classifyList:[
-        {id:1, name: '有机'},
-        {id:2, name: '酸'},
-        {id:3, name: '碱性'},
-        {id:4, name: '固体废弃物'},
-        {id:5, name: '医疗废弃物'},
-        {id:6, name: '过期化学品'},
-        {id:7, name: '其他'}
-    ],
-    wasteStorageList: [
-        {id:1, name: '吨袋'},
-        {id:2, name: '吨桶'},
-        {id:3, name: '小桶'},
-        {id:4, name: '托盘'},
-        {id:5, name: '其他'},
-    ]
-})
-
-watchEffect(() => {
-    selectDangerState.wasteList = props.data as Array<WasteType>
-    selectDangerState.disabled = props.disabled
-});
-
-const addDangerItem = () => {
-    selectDangerState.wasteList.push({classify: null, wasteStorage: null, handAmount: null,});
-};
-
-const deleteDangerItem = (index: number) => {
-    selectDangerState.wasteList.splice(index,1);
-};
-
-const formatList = (formatList: Array<WasteType>) => {
-    selectDangerState.wasteList = formatList
-}
-
-defineExpose({
-    formatList,
-    dataList: selectDangerState.wasteList,
-});
-
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.required {
-              &::before {
-                content: "*";
-                display: inline-block;
-                color: red;
-              }
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-:deep(.el-input__wrapper ){
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/experiment/project/components/selectEmergency.vue b/src/views/experiment/project/components/selectEmergency.vue
deleted file mode 100644
index 50a3993..0000000
--- a/src/views/experiment/project/components/selectEmergency.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">应急预案/应急演练</tr>
-    <tr>
-      <td class="w-20 m-color">预案名称</td>
-      <td class="w-20 m-color">是否演练</td>
-      <td class="w-20 m-color">演练情况</td>
-      <td class="w-20 m-color">是否备案</td>
-      <td class="w-20 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectEmergencyState.emergencyList" :key="index">
-        <td class="w-20">
-            <el-input :disabled="selectEmergencyState.disabled" v-model="item.emergencyPlanName" />
-        </td>
-        <td class="w-20">
-            <el-radio-group :disabled="selectEmergencyState.disabled"  v-model="item.emergencyDrillStatus">
-              <el-radio label="是">是</el-radio>
-              <el-radio label="否">否</el-radio>
-            </el-radio-group>
-        </td>
-        <td class="w-20">
-            <el-input :disabled="selectEmergencyState.disabled" v-model="item.emergencyDrill" placeholder="未演练则填“无”"/>
-        </td>
-        <td class="w-20">
-            <el-radio-group :disabled="selectEmergencyState.disabled"  v-model="item.emergencyPlan">
-              <el-radio label="是">是</el-radio>
-              <el-radio label="否">否</el-radio>
-            </el-radio-group>
-        </td>
-        <td class="w-20">
-          <el-button :disabled="selectEmergencyState.disabled" type="danger" @click="deleteEmergencyItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectEmergencyState.disabled" type="primary" shape="round" @click="addEmergencyItem()">
-            添加一条
-        </el-button>
-    </tr>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref, watchEffect} from "vue";
-import {ElMessage} from "element-plus";
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<emergencyListType>
-});
-
-const selectEmergencyState = reactive<SelectEmergencyType>({
-    disabled: false,
-    emergencyList: []
-})
-
-const addEmergencyItem = () => {
-    selectEmergencyState.emergencyList.push({ emergencyPlanName: '', emergencyDrillStatus: '', emergencyDrill: '', emergencyPlan: '' });
-};
-
-watchEffect(() => {
-    selectEmergencyState.emergencyList = props.data as Array<emergencyListType>
-    selectEmergencyState.disabled = props.disabled
-});
-
-const deleteEmergencyItem = (index: number) => {
-    selectEmergencyState.emergencyList.splice(index,1);
-};
-
-const formatList = (formatList: Array<emergencyListType>) => {
-    selectEmergencyState.emergencyList = formatList
-};
-
-defineExpose({
-    dataList: selectEmergencyState.emergencyList,
-    formatList
-});
-
-
-onMounted(() => {
-
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.required {
-              &::before {
-                content: "*";
-                display: inline-block;
-                color: red;
-              }
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-            :deep(.el-input__wrapper ){
-              box-shadow: none;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-</style>
diff --git a/src/views/experiment/project/components/selectEquipment.vue b/src/views/experiment/project/components/selectEquipment.vue
deleted file mode 100644
index 7ddf0b9..0000000
--- a/src/views/experiment/project/components/selectEquipment.vue
+++ /dev/null
@@ -1,247 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">实验所用的仪器/设备</tr>
-    <tr>
-        <td class="w-16 m-color required">设备名称</td>
-        <td class="w-16 m-color">编号</td>
-        <td class="w-16 m-color">额定功率</td>
-        <td class="w-16 m-color">是否特种</td>
-        <td class="w-16 m-color required">设备数量</td>
-        <td class="w-16 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectEquipmentState.equipmentList" :key="index">
-        <td class="w-16">
-            <el-select :disabled="selectEquipmentState.disabled" filterable v-model="item.deviceId" @change="giveOtherEquipmentValue($event, index)" @focus="checkAllEquipment($event, index)">
-                <el-option
-                    v-for="item in selectEquipmentState.allEquipmentList"
-                    :key="item.id"
-                    :value="item.id"
-                    :label="item.deviceName"
-                >
-                </el-option>
-            </el-select>
-        </td>
-        <td class="w-16">
-            <el-input disabled v-model="item.deviceCode"/>
-        </td>
-        <td class="w-16">
-            <el-input disabled v-model="item.devicePower" />
-        </td>
-        <td class="w-16">
-<!--            <el-radio-group disabled v-model="item.specialDevice">-->
-<!--                <el-radio :label="1">是</el-radio>-->
-<!--                <el-radio :label="2">否</el-radio>-->
-<!--            </el-radio-group>-->
-          <div>{{item.specialDevice == 1 ? '是' : item.specialDevice == 2 ? '否' : ''}}</div>
-        </td>
-        <td class="w-16">
-            <el-input :disabled="selectEquipmentState.disabled" type="number" v-model="item.deviceUseCount" />
-        </td>
-        <td class="w-16">
-            <el-button :disabled="selectEquipmentState.disabled" type="danger" @click="deleteEquipmentItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectEquipmentState.disabled" type="primary" shape="round" @click="addEquipmentItem()">
-            添加现有实验仪器/设备
-        </el-button>
-        <el-button :disabled="selectEquipmentState.disabled" shape="round" @click="addNewEquipment('新增', {})">
-            新增实验仪器/设备配置
-        </el-button>
-    </tr>
-    <equipment-dialog ref="equipmentDialogRef" :equipmentTypeList="selectEquipmentState.equipmentTypeList"></equipment-dialog>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref, watchEffect} from "vue";
-import {ElMessage} from "element-plus";
-import { equipmentApi } from "/@/api/basic/equipement";
-
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<AllEquipmentListType>
-});
-const equipmentDialog = defineAsyncComponent(() => import('/@/views/basic/equipment/components/equipmentDialog.vue'));
-const selectEquipmentState = reactive<SelectEquipmentType>({
-    disabled: false,
-    equipmentList: [],
-    allEquipmentList: [],
-    equipmentTypeList: [],
-    specialDeviceList: [
-      {id: 1, name: '是'},
-      {id:2, name: '否'}
-    ]
-});
-
-watchEffect(() => {
-    selectEquipmentState.equipmentList = props.data as Array<AllEquipmentListType>
-    selectEquipmentState.disabled = props.disabled
-});
-
-const equipmentDialogRef = ref();
-
-const getAllType = async ()=>{
-  const res = await equipmentApi().getAllType();
-  if(res.data.code === 100){
-    selectEquipmentState.equipmentTypeList = res.data.data
-  }
-}
-
-const checkAllEquipment = () => {
-  getAllEquipmentList()
-}
-
-const addEquipmentItem = () => {
-    selectEquipmentState.equipmentList.push({deviceId: null, deviceUseCount: null, deviceCode: '', deviceName: '', devicePower: '', specialDevice: '',deviceUnit: null, safeProtect: null});
-};
-
-const addNewEquipment = (title: string, value: EquipmentType) => {
-  equipmentDialogRef.value.showEquipmentDialog(title, value, selectEquipmentState.specialDeviceList);
-}
-
-const deleteEquipmentItem = (index: number) => {
-    selectEquipmentState.equipmentList.splice(index,1);
-};
-
-const getAllEquipmentList = async () => {
-    let res = await equipmentApi().getAllEquipment();
-    if(res.data.code === 100){
-        selectEquipmentState.allEquipmentList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const giveOtherEquipmentValue = (value: number, index:number) => {
-    const data = selectEquipmentState.allEquipmentList.find(item => item.id === value) as AllEquipmentListType
-    selectEquipmentState.equipmentList[index] = {
-        deviceId: data.id,
-        deviceUseCount: null,
-        deviceCode: data.deviceCode,
-        deviceName: data.deviceName,
-        devicePower: data.devicePower,
-        specialDevice: data.specialDevice,
-        deviceUnit: data.deviceUnit,
-        safeProtect: data.safeProtect,
-    }
-};
-
-const formatList = (formatList: Array<AllEquipmentListType>) => {
-    selectEquipmentState.equipmentList = formatList
-}
-
-defineExpose({
-    dataList: selectEquipmentState.equipmentList,
-    formatList
-});
-
-onMounted(() => {
-    getAllType();
-    getAllEquipmentList();
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            :deep(.el-input__wrapper ){
-              box-shadow: none;
-            }
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.required {
-              &::before {
-                content: "*";
-                display: inline-block;
-                color: red;
-              }
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-</style>
diff --git a/src/views/experiment/project/components/selectMaterial.vue b/src/views/experiment/project/components/selectMaterial.vue
deleted file mode 100644
index 8017fb3..0000000
--- a/src/views/experiment/project/components/selectMaterial.vue
+++ /dev/null
@@ -1,248 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">实验所用的试剂或材料</tr>
-    <tr>
-        <td class="w-14 m-color required">实验材料</td>
-        <td class="w-14 m-color">耗材ID</td>
-        <td class="w-14 m-color">材料类型</td>
-        <td class="w-14 m-color">材料储存</td>
-        <td class="w-14 m-color">计量单位</td>
-        <td class="w-14 m-color required">使用数量</td>
-        <td class="w-14 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectMaterialState.materialList" :key="index">
-        <td class="w-14">
-            <el-select :disabled="selectMaterialState.disabled" filterable v-model="item.stuffId" @change="giveOtherMaterialValue($event, index)" @focus="checkAllMaterial($event, index)">
-                <el-option
-                    v-for="item in selectMaterialState.allMaterialList"
-                    :key="item.id"
-                    :value="item.id"
-                    :label="item.stuffName"
-                >
-                </el-option>
-            </el-select>
-        </td>
-        <td class="w-14">
-            <el-input disabled v-model="item.stuffCode" />
-        </td>
-        <td class="w-14">
-<!--            <el-input :disabled="selectMaterialState.disabled" v-model="item.stuffType" />-->
-            <div>{{selectMaterialState.stuffTypeList.find(i=>i.id == item.stuffType)?.name}}</div>
-        </td>
-        <td class="w-14">
-<!--            <el-input :disabled="selectMaterialState.disabled" v-model="item.stuffStorage" />-->
-            <div>{{selectMaterialState.stuffStorageList.find(i=>i.id == item.stuffStorage)?.name}}</div>
-        </td>
-        <td class="w-14">
-<!--            <el-input :disabled="selectMaterialState.disabled" v-model="item.stuffUnit" />-->
-            <div>{{selectMaterialState.stuffUnitList.find(i=>i.id == item.stuffUnit)?.name}}</div>
-        </td>
-        <td class="w-14">
-            <el-input type="number" :disabled="selectMaterialState.disabled" v-model="item.stuffUseCount" />
-        </td>
-        <td class="w-14">
-            <el-button type="danger" :disabled="selectMaterialState.disabled" @click="deleteMaterialItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectMaterialState.disabled" type="primary" shape="round" @click="addMaterialItem()">
-            添加现有实验材料
-        </el-button>
-        <el-button :disabled="selectMaterialState.disabled" shape="round" @click="addNewMaterial('新增', {})">
-            新增实验材料配置
-        </el-button>
-    </tr>
-    <material-dialog ref="materialDialogRef"></material-dialog>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref, watchEffect} from "vue";
-import { materialApi } from "/@/api/basic/material";
-import {ElMessage} from "element-plus";
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<AllMaterialListType>
-});
-const MaterialDialog = defineAsyncComponent(() => import('/@/views/basic/material/components/materialDialog.vue'));
-const selectMaterialState = reactive<SelectMaterialType>({
-    disabled: false,
-    materialList: [],
-    allMaterialList: [],
-    stuffTypeList: [
-      {id: 1, name: '化学试剂'},
-      {id:2, name: '基础材料'}
-    ],
-    stuffStorageList: [
-      {id:1, name: '智能试剂柜'},
-      {id:2, name: '普通储存柜'},
-    ],
-    stuffUnitList: [
-      {id:1, name: 'g'},
-      {id:2, name: 'kg'},
-      {id:3, name: 'ml'},
-      {id:4, name: 'l'},
-    ]
-})
-const materialDialogRef = ref();
-
-const addMaterialItem = () => {
-    selectMaterialState.materialList.push({stuffId: null, stuffUseCount: null, stuffName: '',stuffCode:'',stuffType: '', stuffStorage: '', stuffUnit: ''});
-};
-
-watchEffect(() => {
-    selectMaterialState.materialList = props.data as Array<AllMaterialListType>
-    selectMaterialState.disabled = props.disabled
-});
-
-const deleteMaterialItem = (index: number) => {
-    selectMaterialState.materialList.splice(index,1);
-};
-
-const addNewMaterial = (title: string, value: MaterialType) => {
-  materialDialogRef.value.showMaterialDialog(title, value);
-}
-
-const checkAllMaterial = () => {
-  getAllMaterial()
-}
-
-const getAllMaterial = async () => {
-    let res = await materialApi().getAllMaterial();
-    if(res.data.code === 100){
-        selectMaterialState.allMaterialList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const giveOtherMaterialValue = (value: number, index:number) => {
-    const data = selectMaterialState.allMaterialList.find(item => item.id === value) as AllMaterialListType
-    selectMaterialState.materialList[index] = {
-        stuffId: data.id,
-        stuffUseCount: data.stuffUseCount,
-        stuffName: data.stuffName,
-        stuffCode: data.stuffCode,
-        stuffType: data.stuffType,
-        stuffStorage: data.stuffStorage,
-        stuffUnit: data.stuffUnit
-    };
-};
-
-const formatList = (formatList: Array<AllMaterialListType>) => {
-    selectMaterialState.materialList = formatList
-};
-
-defineExpose({
-    dataList: selectMaterialState.materialList,
-    formatList
-});
-
-
-onMounted(() => {
-    getAllMaterial();
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.required {
-              &::before {
-                content: "*";
-                display: inline-block;
-                color: red;
-              }
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-            :deep(.el-input__wrapper ){
-              box-shadow: none;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-</style>
diff --git a/src/views/experiment/project/components/selectPerson.vue b/src/views/experiment/project/components/selectPerson.vue
deleted file mode 100644
index 6677595..0000000
--- a/src/views/experiment/project/components/selectPerson.vue
+++ /dev/null
@@ -1,244 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">实验人员</tr>
-    <tr>
-        <td class="w-14 m-color required">姓名</td>
-        <td class="w-14 m-color">年龄</td>
-        <td class="w-14 m-color">性别</td>
-        <td class="w-14 m-color">专业</td>
-        <td class="w-14 m-color">部门</td>
-        <td class="w-14 m-color">相关资质</td>
-        <td class="w-14 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectPersonState.personList" :key="index">
-        <td class="w-14">
-            <el-select filterable :disabled="selectPersonState.disabled" v-model="item.personId" @change="giveOtherPersonValue($event, index)" @focus="checkAllPerson($event, index)">
-                <el-option
-                v-for="item in selectPersonState.allPersonList"
-                :key="item.id"
-                :value="item.id"
-                :label="item.personName"
-                >
-                </el-option>
-            </el-select>
-        </td>
-        <td class="w-14">
-            <el-input disabled v-model="item.personAge" />
-        </td>
-        <td class="w-14">
-<!--            <el-input disabled v-model="item.personGender" />-->
-          <div>{{item.personGender == 1 ? '男' : item.personGender == 2 ? '女' : ''}}</div>
-        </td>
-        <td class="w-14">
-            <el-input disabled v-model="item.personMajor" />
-        </td>
-        <td class="w-14">
-            <el-input disabled v-model="item.depName" />
-        </td>
-        <td class="w-14">
-            <el-input disabled v-model="item.aptitude" />
-        </td>
-        <td class="w-14">
-            <el-button type="danger" :disabled="selectPersonState.disabled" @click="deletePersonItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectPersonState.disabled" type="primary" shape="round" @click="addPersonItem()">
-            添加现有实验人员
-        </el-button>
-        <el-button :disabled="selectPersonState.disabled" shape="round" @click="addNewPerson('新增', {})">
-            新增实验人员配置
-        </el-button>
-    </tr>
-    <person-dialog ref="personDialogRef"></person-dialog>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, nextTick, onMounted, reactive, ref, watchEffect} from "vue";
-import { personApi } from "/@/api/basic/person";
-import {ElMessage} from "element-plus";
-
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<AllPersonListType>
-
-});
-
-const personDialog = defineAsyncComponent(() => import('/@/views/basic/person/components/personDialog.vue'));
-
-const selectPersonState = reactive<SelectPersonType>({
-    disabled: false,
-    personList: [],
-    allPersonList: [
-    ],
-});
-
-const personDialogRef = ref();
-
-watchEffect(() => {
-    selectPersonState.personList = props.data as Array<AllPersonListType>
-    selectPersonState.disabled = props.disabled
-});
-
-const addPersonItem = () => {
-    selectPersonState.personList.push({personId: null, personName: null, personAge: null, personGender:'',personMajor:'',depName:'',phone:'',aptitude:'',training:''});
-};
-
-const addNewPerson = (title: string, value: PersonType) => {
-  personDialogRef.value.showPersonDialog(title, value);
-}
-
-const checkAllPerson = () => {
-  getAllPersonList()
-}
-
-const deletePersonItem = (index: number) => {
-    selectPersonState.personList.splice(index,1);
-};
-
-const getAllPersonList = async () => {
-    let res = await personApi().getAllPerson();
-    if(res.data.code === 100){
-        selectPersonState.allPersonList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const giveOtherPersonValue = (value: number, index:number) => {
-    // selectPersonState.personList[index] = selectPersonState.allPersonList.find(item => item.id === value) as AllPersonListType
-    const data = selectPersonState.allPersonList.find(item => item.id === value) as AllPersonListType
-    selectPersonState.personList[index] = {
-        personId: data.id,
-        personName: data.personName,
-        personAge: data.personAge,
-        personGender: data.personGender,
-        personMajor: data.personMajor,
-        depName: data.depName,
-        phone: data.phone,
-        aptitude: data.aptitude,
-        training: data.training,
-    };
-};
-
-const formatList = (formatList: Array<AllPersonListType>) => {
-    nextTick(() => {
-        selectPersonState.personList = formatList
-    })
-
-};
-
-defineExpose({
-    formatList,
-    dataList: selectPersonState.personList,
-});
-
-onMounted(() => {
-    getAllPersonList();
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.required {
-              &::before {
-                content: "*";
-                display: inline-block;
-                color: red;
-              }
-            }
-
-            :deep(.el-input__wrapper ){
-              box-shadow: none;
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-</style>
diff --git a/src/views/experiment/project/components/selectRoom.vue b/src/views/experiment/project/components/selectRoom.vue
deleted file mode 100644
index f2a9cc3..0000000
--- a/src/views/experiment/project/components/selectRoom.vue
+++ /dev/null
@@ -1,268 +0,0 @@
-<template>
-    <tr class="m-color b-font" style="text-align: center">实验场所</tr>
-    <tr>
-        <td class="w-14 m-color required">场所名称</td>
-        <td class="w-14 m-color">所在楼栋</td>
-        <td class="w-14 m-color">房间</td>
-        <td class="w-14 m-color">有无消防设施</td>
-        <td class="w-14 m-color">有无隔断</td>
-        <td class="w-14 m-color">场所性质</td>
-        <td class="w-14 m-color">操作</td>
-    </tr>
-    <tr v-for="(item,index) in selectRoomState.roomList" :key="index">
-        <td class="w-14">
-            <el-select :disabled="selectRoomState.disabled" filterable v-model="item.siteId" @change="giveOtherRoomValue($event, index)" @focus="checkAllRoom($event, index)">
-                <el-option
-                    v-for="item in selectRoomState.allRoomList"
-                    :key="item.id"
-                    :value="item.id"
-                    :label="item.siteName"
-                >
-                </el-option>
-            </el-select>
-        </td>
-        <td class="w-14">
-            <el-input disabled v-model="item.floor" />
-        </td>
-        <td class="w-14">
-            <el-input disabled v-model="item.room" />
-        </td>
-        <td class="w-14">
-<!--            <el-input :disabled="selectRoomState.disabled" v-model="item.stuffStorage" />-->
-            <div>{{item.fireFacilities== 1 ? '有' : item.fireFacilities== 2 ? '无' : ''}}</div>
-        </td>
-        <td class="w-14">
-<!--            <el-input :disabled="selectRoomState.disabled" v-model="item.stuffUnit" />-->
-            <div>{{item.partitionStatus == 1 ? '有' : item.partitionStatus == 2 ? '无' : ''}}</div>
-        </td>
-        <td class="w-14">
-<!--            <el-input type="number" :disabled="selectRoomState.disabled" v-model="item.stuffUseCount" />-->
-            <div>{{item.siteType}}</div>
-        </td>
-        <td class="w-14">
-            <el-button type="danger" :disabled="selectRoomState.disabled" @click="deleteRoomItem(index)">删除</el-button>
-        </td>
-    </tr>
-    <tr style="text-align: center">
-        <el-button :disabled="selectRoomState.disabled" type="primary" shape="round" @click="addMaterialItem()">
-            添加现有实验场所
-        </el-button>
-        <el-button :disabled="selectRoomState.disabled" shape="round" @click="addNewRoom('新增', {})">
-            新增实验场所配置
-        </el-button>
-    </tr>
-    <room-dialog ref="roomDialogRef" :memberList="selectRoomState.memberList" :typeList="selectRoomState.typeList"></room-dialog>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref, watchEffect} from "vue";
-import { materialApi } from "/@/api/basic/material";
-import {ElMessage} from "element-plus";
-import {roomApi} from "/@/api/basic/room";
-import {personApi} from "/@/api/basic/person";
-let props = defineProps({
-    disabled: Boolean,
-    data: Array<roomListType>
-});
-const roomDialog = defineAsyncComponent(() => import('/@/views/basic/room/components/roomDialog.vue'));
-const selectRoomState = reactive<SelectRoomType>({
-    disabled: false,
-    roomList: [],
-    allRoomList: [],
-    memberList: [],
-    typeList: [],
-    specialDeviceList: [
-      {id: 1, name: '是'},
-      {id:2, name: '否'}
-    ],
-    stuffStorageList: [
-      {id:1, name: '智能试剂柜'},
-      {id:2, name: '普通储存柜'},
-    ],
-    stuffUnitList: [
-      {id:1, name: 'g'},
-      {id:2, name: 'kg'},
-      {id:3, name: 'ml'},
-      {id:4, name: 'l'},
-    ]
-})
-const roomDialogRef = ref();
-
-const getAllMember = async ()=>{
-  const res = await personApi().getAllPerson();
-  if(res.data.code === 100){
-    selectRoomState.memberList = res.data.data
-  }
-}
-
-const getAllType = async ()=>{
-  const res = await roomApi().getAllType();
-  if(res.data.code === 100){
-    selectRoomState.typeList = res.data.data
-  }
-}
-
-const addMaterialItem = () => {
-    selectRoomState.roomList.push({siteId: null, siteName: '', floor: '',room:'',fireFacilities: null, partitionStatus: null, siteType: ''});
-};
-
-watchEffect(() => {
-    selectRoomState.roomList = props.data as Array<roomListType>
-    selectRoomState.disabled = props.disabled
-});
-
-const deleteRoomItem = (index: number) => {
-    selectRoomState.roomList.splice(index,1);
-};
-
-const addNewRoom = (title: string, value: RoomType) => {
-  roomDialogRef.value.showroomDialog(title, value, selectRoomState.specialDeviceList);
-}
-
-const checkAllRoom = () => {
-  getAllRoom()
-}
-
-const getAllRoom = async () => {
-    let res = await roomApi().getAllRoom();
-    if(res.data.code === 100){
-        selectRoomState.allRoomList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        })
-    }
-};
-
-const giveOtherRoomValue = (value: number, index:number) => {
-    const data = selectRoomState.allRoomList.find(item => item.id === value) as allRoomListType
-    selectRoomState.roomList[index] = {
-        siteId: data.id,
-        siteName: data.siteName,
-        floor: data.floor,
-        room: data.room,
-        fireFacilities: data.fireFacilities,
-        partitionStatus: data.partitionStatus,
-        siteType: data.siteType
-    };
-};
-
-const formatList = (formatList: Array<roomListType>) => {
-    selectRoomState.roomList = formatList
-};
-
-defineExpose({
-    dataList: selectRoomState.roomList,
-    formatList
-});
-
-
-onMounted(() => {
-    getAllMember()
-    getAllType()
-    getAllRoom()
-});
-</script>
-
-<style scoped lang="scss">
-.site-layout-background {
-    background: #fff;
-}
-
-.report-table {
-    width: 100%;
-    border-collapse: collapse;
-    border: 1px solid #337ecc;
-    margin: 20px 0;
-
-    th {
-        padding: 10px 0;
-        border: 1px solid #337ecc;
-        border-left: none;
-    }
-
-    tr {
-        width: 100%;
-        height: 44px;
-        line-height: 42px;
-        border-bottom: 1px solid #ccc;
-
-        &:last-of-type {
-            border-bottom: none;
-        }
-
-        td {
-            border-right: 1px solid #ccc;
-            display: inline-block;
-            height: 44px;
-            vertical-align: middle;
-            text-align: center;
-            line-height: 42px;
-
-            &:last-of-type {
-                border-right: none;
-            }
-
-            &.required {
-              &::before {
-                content: "*";
-                display: inline-block;
-                color: red;
-              }
-            }
-
-            &.w-14 {
-                width: calc((100/7)/100 * 100%);
-            }
-
-            &.w-16 {
-                width: calc((100/6)/100 * 100%);
-            }
-
-            &.w-18 {
-                width: 16.59%;
-            }
-
-            &.w-20 {
-                width: 20%;
-            }
-
-            &.w-25 {
-                width: 25%;
-            }
-
-            &.w-50 {
-                width: 50%;
-            }
-
-            &.w-75 {
-                width: 75%;
-            }
-
-            .ant-input {
-                height: 100%;
-                border: none;
-                background: #f5f7fa;
-            }
-
-            .ant-picker {
-                width: 100%;
-                height: 100%;
-            }
-            :deep(.el-input__wrapper ){
-              box-shadow: none;
-            }
-        }
-    }
-
-    .b-font {
-        font-size: 16px;
-        font-weight: bolder;
-    }
-}
-
-.m-color {
-    color: #0c4995;
-}
-</style>
diff --git a/src/views/experiment/project/index.ts b/src/views/experiment/project/index.ts
deleted file mode 100644
index 5235c46..0000000
--- a/src/views/experiment/project/index.ts
+++ /dev/null
@@ -1,222 +0,0 @@
-declare interface ProjectStateType {
-	projectData?: Array<ProjectType>
-	developData?: Array<ProjectType>
-	searchQuery: {
-		pageIndex: number,
-		pageSize: number,
-		searchParams: {
-			experimentName: string,
-			experimentType: null | number,
-		}
-	},
-	total: 0,
-	experimentTypeList: Type []
-	allRoomList: RoomType []
-}
-
-declare interface ProjectType {
-	id?: number | null,
-	liabilityUserId?: number | null,
-	experimentCode: string,
-	experimentName: string,
-}
-
-
-declare interface Type {
-	id: number,
-	name: string,
-}
-
-declare interface ProjectDialogType {
-	title: string,
-	disabled: boolean,
-	projectDialogVisible: boolean,
-	projectForm: {
-		id: null | number,
-		experimentName: string,
-		experimentType: null | number,
-		liabilityUserId: null | number,
-		safeLiabilityUser: string
-		liabilityUserPhone: string,
-		safeLiabilityUserPhone: string,
-		sisStatus?: null | number,
-		safeInformationSystem?: string,
-		dep: string,
-		experimentStep: string,
-		experimentMethod: string,
-		process: string,
-		keyProcess: string,
-		measure: string,
-		timeout: null | number,
-		timeoutManager: string,
-		closed: null | number,
-		unclosedManager: string,
-		explosionProof: string,
-		fireProof: string,
-		poisonProof: string,
-		safeManagerMethod: string,
-		emergencyList: Array<emergencyListType>,
-		partitionCondition: null | number,
-		note: string,
-		startTime?: string,
-		createExperimentTime: string
-		persons: SelectPersonType [],
-		siteList: SelectRoomType [],
-		deviceList: SelectEquipmentType [],
-		stuffList: SelectMaterialType [],
-		hazardousWasteList: SelectDangerType []
-	},
-	projectFormRules: {
-
-	},
-	allPersonList: Array<AllPersonListType>
-	systemPersonList: Array<AllPersonListType>
-	allRoomList: Array<RoomType>
-}
-
-declare interface SelectDangerType {
-	disabled: boolean
-	wasteList: Array<WasteType>
-	classifyList: Array<Type>
-	wasteStorageList: Array<Type>
-}
-
-declare interface WasteType {
-	classify: null | number,
-	wasteStorage: null | number,
-	handAmount: null | number,
-}
-
-
-declare interface SelectPersonType {
-	disabled: boolean
-	personList: Array<AllPersonListType>
-	allPersonList: Array<AllPersonListType>
-}
-
-declare interface AllPersonListType {
-	id?: null | number,
-	personId?: null | number,
-	personName: null,
-	personAge: null,
-	personGender:'',
-	personMajor:'',
-	depName:'',
-	phone:'',
-	aptitude:'',
-	training:''
-}
-
-declare interface NewPersonListType {
-	depId: number | null
-	depName: string
-	id: number
-	idSerial: string
-	idType: number | null
-	name: string
-	phone: string
-	realName: string
-}
-
-declare interface SelectEquipmentType {
-	disabled: boolean
-	equipmentList: Array<AllEquipmentListType>,
-	allEquipmentList: Array<AllEquipmentListType>,
-	equipmentTypeList: Array<any>,
-	specialDeviceList: Array<Type>
-}
-
-declare interface AllEquipmentListType {
-	id?: null | number,
-	deviceId?: null | number,
-	deviceUseCount: null | number,
-	deviceCode: string,
-	deviceName: string,
-	devicePower: string,
-	specialDevice: string,
-	deviceUnit?: null | number,
-	safeProtect?: null | number
-}
-
-
-declare interface SelectMaterialType {
-	disabled: boolean
-	materialList: Array<AllMaterialListType>,
-	allMaterialList: Array<AllMaterialListType>,
-	stuffTypeList: Array<stuffType>
-	stuffStorageList: Array<stuffType>
-	stuffUnitList: Array<stuffType>
-}
-
-declare interface SelectEmergencyType {
-	disabled: boolean
-	emergencyList: Array<emergencyListType>
-}
-
-declare interface emergencyListType {
-	emergencyPlanName: string,
-	emergencyDrillStatus: string,
-	emergencyDrill: string,
-	emergencyPlan: string
-}
-
-declare interface SelectRoomType {
-	disabled: boolean
-	roomList: Array<roomListType>,
-	allRoomList: Array<allRoomListType>,
-	specialDeviceList: Array<stuffType>
-	memberList: Array<any>
-	typeList: Array<any>
-	stuffStorageList: Array<stuffType>
-	stuffUnitList: Array<stuffType>
-}
-
-declare interface roomListType {
-	siteId: null | number,
-	siteName: string,
-	floor: string,
-	room: string,
-	fireFacilities: null | number,
-	partitionStatus: null | number,
-	siteType: string,
-}
-
-declare interface allRoomListType {
-	id: null | number,
-	siteName: string,
-	floor: string,
-	room: string,
-	fireFacilities: null | number,
-	partitionStatus: null | number,
-	siteType: string,
-}
-
-declare interface stuffType {
-	id: null | number,
-	name: string
-}
-
-declare interface AllMaterialListType {
-	id?: null | number,
-	stuffId?: null | number,
-	stuffUseCount: null | number,
-	stuffName: string,
-	stuffCode:string,
-	stuffType: string,
-	stuffStorage: string,
-	stuffUnit: string
-}
-
-declare interface ApplyStartDialogType {
-	title: string,
-	applyStartDialogVisible: boolean,
-	applyStartForm: {
-		id: number | null,
-		sisStatus: number | null,
-		safeInformationSystem: string,
-		startTime: string,
-	},
-	applyStartFormRules: {
-
-	},
-}
diff --git a/src/views/experiment/project/index.vue b/src/views/experiment/project/index.vue
deleted file mode 100644
index 2918ffa..0000000
--- a/src/views/experiment/project/index.vue
+++ /dev/null
@@ -1,401 +0,0 @@
-<template>
-    <div class="home-container">
-        <div style="height: 100%">
-            <el-row class="homeCard">
-                <div class="basic-line">
-                    <span>实验名称:</span>
-                    <el-input v-model="projectState.searchQuery.searchParams.experimentName" clearable filterable class="input-box" placeholder="实验名称">
-                    </el-input>
-                </div>
-                <div class="basic-line">
-                    <span>实验类型:</span>
-                    <el-select v-model="projectState.searchQuery.searchParams.experimentType" clearable filterable class="input-box" placeholder="实验类型">
-                        <el-option v-for="item in projectState.experimentTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </div>
-                <div style="padding-bottom: 10px">
-                    <el-button type="primary" @click="getProjectData">查询</el-button>
-                    <el-button plain @click="reset">重置</el-button>
-                </div>
-            </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="openProjectDialog('新增', {})">录入实验信息</el-button>
-                            <!--                            <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>-->
-                        </el-col>
-<!--                        <el-button type="primary" :icon="Refresh" size="default" />-->
-                    </el-row>
-                    <el-table ref="multipleTableRef" :data="projectState.projectData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                        <el-table-column prop="experimentCode" label="实验编号"/>
-                        <el-table-column prop="experimentName" label="实验名称"/>
-                        <el-table-column prop="createExperimentTime" label="立项时间" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.createExperimentTime?scope.row.createExperimentTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-<!--                        <el-table-column prop="startTime" label="开展时间" show-overflow-tooltip>-->
-<!--                          <template #default="scope">-->
-<!--                            <span>{{scope.row.startTime?scope.row.startTime.substring(0,16):'&#45;&#45;'}}</span>-->
-<!--                          </template>-->
-<!--                        </el-table-column>-->
-                        <el-table-column prop="liabilityUser" label="负责人"/>
-                        <el-table-column prop="siteList" label="实验场所" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.siteList.map(i=>i.siteName).join(',')}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="experimentType" label="实验类别">
-                          <template #default="scope">
-                            <span>{{projectState.experimentTypeList.find(i=>i.id == scope.row.experimentType)?.name}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="status" label="评估申请">
-                          <template #default="scope">
-                            <span>{{scope.row.status == 1?'未申请':scope.row.status == 2?'已申请':'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="status" label="评估申请时间" show-overflow-tooltip>
-                          <template #default="scope">
-                            <span>{{scope.row.assessApplyTime?scope.row.assessApplyTime.substring(0,16):'--'}}</span>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="stage" label="评估状态">
-                          <template #default="scope">
-                            <el-tag :type="scope.row.stage == 4?'success':scope.row.stage == 1?'info':''">
-                              {{scope.row.stage == 1?'未评估':scope.row.stage == 2?'评估中':scope.row.stage == 3?'评估完成':scope.row.stage == 4?'生成报告':'--'}}
-                            </el-tag>
-                          </template>
-                        </el-table-column>
-                        <el-table-column prop="assessLevel" label="风险等级">
-                          <template #default="scope">
-                            <el-tag :type="scope.row.assessLevel == 4?'danger':scope.row.assessLevel == 3 || scope.row.assessLevel == 2?'warning':''">
-                              {{scope.row.assessLevel == 1?'重大风险':scope.row.assessLevel == 2?'较大风险':scope.row.assessLevel == 3?'一般风险':scope.row.assessLevel == 4?'低风险':'--'}}
-                            </el-tag>
-                          </template>
-                        </el-table-column>
-<!--                        <el-table-column prop="createTime" label="创建时间" show-overflow-tooltip></el-table-column>-->
-<!--                        <el-table-column prop="createByUserName" label="创建人" show-overflow-tooltip></el-table-column>-->
-<!--                        <el-table-column prop="updateTime" label="最后修改时间" show-overflow-tooltip></el-table-column>-->
-<!--                        <el-table-column prop="updateByUserName" label="最后修改人" show-overflow-tooltip></el-table-column>-->
-                        <el-table-column label="操作" width="250" fixed="right">
-                            <template #default="scope">
-                                <el-button size="small" text type="primary" :icon="View" @click="openProjectDialog('查看', scope.row)">查看</el-button>
-                                <el-button size="small" text type="primary" :icon="View" v-if="scope.row.stage == 4" @click="openReportDialog('查看',scope.row)">查看评估报告</el-button>
-                                <el-button size="small" text type="primary" :icon="Edit" @click="applyStart('申请开展', scope.row)">转为已开展</el-button>
-                                <el-button size="small" :disabled="scope.row.status == 2 ? true : false" text type="primary" :icon="Edit" @click="applyAccess( scope.row)">申请评估</el-button>
-                                <el-button size="small" type="warning" v-if="scope.row.rectifyStatus == 1" text :icon="Edit" @click="openProjectDialog('整改', scope.row)">整改</el-button>
-                                <el-button size="small" text type="danger" :icon="Delete" :disabled="scope.row.stage !== 1" @click="onDelProject(scope.row)">删除</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <div class="pageBtn">
-                        <el-pagination @size-change="onHandleSizeChange" @current-change="onHandleCurrentChange" :pager-count="5" :page-sizes="[10, 20, 30]" v-model:current-page="projectState.searchQuery.pageIndex" background v-model:page-size="projectState.searchQuery.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="projectState.total" class="page-position"> </el-pagination>
-                    </div>
-                </div>
-            </div>
-        </div>
-        <project-dialog ref="ProjectDialogRef" @refresh="getProjectData"></project-dialog>
-<!--        <apply-start ref="ApplyStartRef"></apply-start>-->
-        <test ref="ApplyStartRef" @refresh="getProjectData"></test>
-        <report-dialog ref="ReportDialogRef"></report-dialog>
-    </div>
-</template>
-
-<script setup lang="ts">
-import {defineAsyncComponent, onMounted, reactive, ref} from "vue";
-import {projectApi} from "/@/api/experiment/project";
-import {ElMessage, ElMessageBox} from "element-plus";
-import { View,Edit, Plus, Delete } from '@element-plus/icons-vue';
-import {roomApi} from "/@/api/basic/room";
-const ReportDialog = defineAsyncComponent(() => import('../../analyse/assessApply/components/reportDialog.vue'));
-const ProjectDialog = defineAsyncComponent(() => import('./components/projectDialog.vue'));
-const Test = defineAsyncComponent(() => import('./components/applyDialog.vue'))
-const ProjectDialogRef = ref()
-const ApplyStartRef = ref()
-const ReportDialogRef = ref()
-const projectState = reactive<ProjectStateType>({
-    projectData: [],
-    searchQuery: {
-        pageIndex: 1,
-        pageSize: 10,
-        searchParams: {
-            experimentName: '',
-            experimentType: null,
-        }
-    },
-    total: 0,
-    experimentTypeList: [
-        {id: 1, name: '化学类'},
-        {id: 2, name: '生物类'},
-        {id: 3, name: '辐射类'},
-        {id: 4, name: '机电类'},
-        {id: 5, name: '特种设备类'},
-        {id: 6, name: '其它类'},
-    ],
-    allRoomList: []
-})
-
-const getProjectData = async () => {
-    let res = await projectApi().getProjectByList(projectState.searchQuery);
-    if(res.data.code === 100){
-        projectState.projectData = res.data.data;
-        projectState.total = res.data.total;
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-const openProjectDialog = (title: string, value: ProjectType) => {
-    ProjectDialogRef.value.showProjectDialog(title, value, projectState.allRoomList);
-};
-
-const openReportDialog = (title: string,value: ProjectType) =>{
-  ReportDialogRef.value.showReportDialog(title, value, projectState.allRoomList);
-}
-
-const applyStart = (title: string, value: ProjectType) => {
-    ApplyStartRef.value.showApplyStartDialog(value);
-};
-
-const applyAccess = (val: ProjectType) => {
-  ElMessageBox.confirm(`此操作将申请评估该实验:“${val.experimentName}”,是否继续?`, '提示', {
-    confirmButtonText: '确认',
-    cancelButtonText: '取消',
-    type: 'warning'
-  })
-      .then(async () => {
-        let res = await projectApi().accessProject([val.id]);
-        if (res.data.code === 100) {
-          ElMessage({
-            type: 'success',
-            duration: 2000,
-            message: '申请成功'
-          });
-          await getProjectData();
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      })
-      .catch((error) => {
-      });
-}
-
-const onDelProject = (val: ProjectType) => {
-    ElMessageBox.confirm(`此操作将永久删除该实验:“${val.experimentName}”,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await projectApi().deleteProjectById({ id: val.id });
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getProjectData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-        });
-}
-
-const onHandleSizeChange = (val: number) => {
-    projectState.searchQuery.pageSize = val;
-    getProjectData();
-};
-
-const onHandleCurrentChange = (val: number) => {
-    projectState.searchQuery.pageIndex = val;
-    getProjectData();
-};
-
-const reset = () => {
-    projectState.searchQuery = {
-        pageIndex: 1,
-        pageSize: 10,
-        searchParams: {
-            experimentName: '',
-            experimentType: null,
-        }
-    }
-};
-
-const getRoomData = async () => {
-    let res = await roomApi().getAllRoom();
-    if(res.data.code === 100){
-        projectState.allRoomList = JSON.parse(JSON.stringify(res.data.data));
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-
-onMounted(() => {
-    getProjectData();
-    getRoomData();
-})
-
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-    height: calc(100vh - 144px);
-    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;
-            }
-        }
-    }
-}
-.stepItem {
-    width: 100%;
-    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: 1px solid #999;
-        line-height: 28px;
-        text-align: center;
-        margin-right: 10px;
-        margin-left: -16px;
-        margin-top: -30px;
-    }
-    .stepCard {
-        width: 100%;
-        margin-top: -30px;
-
-        .box-card {
-            width: 100%;
-            &:deep(.el-card__header) {
-                padding: 10px 15px;
-            }
-            .card-header {
-                width: 100%;
-                display: flex;
-                justify-content: space-between;
-                align-items: center;
-                & > div:first-of-type {
-                    margin-right: 80px;
-                    font-size: 18px;
-                    font-weight: bold;
-                }
-            }
-        }
-    }
-    &:hover .card-header {
-        color: #0098f5;
-    }
-    &:hover .stepNum {
-        border: 2px solid #0098f5;
-        color: #0098f5;
-    }
-}
-
-:deep(.el-date-editor) {
-    width: 100%;
-}
-.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);
-    box-shadow: none;
-}
-</style>
diff --git a/src/views/home/dialog.vue b/src/views/home/dialog.vue
deleted file mode 100644
index b1da6ca..0000000
--- a/src/views/home/dialog.vue
+++ /dev/null
@@ -1,272 +0,0 @@
-<template>
-	<div class="system-menu-dialog-container">
-		<el-dialog :title="state.dialog.title" v-model="state.dialog.isShowDialog" width="769px">
-			<el-form ref="menuDialogFormRef" :model="state.ruleForm" size="default" label-width="80px">
-				<el-row :gutter="35">
-					<el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-						<el-form-item label="上级菜单">
-                            <el-cascader
-                                :options="state.menuData"
-                                :props="{ emitPath: false, checkStrictly: true, value: 'id', label: 'title' }"
-                                placeholder="请选择上级菜单"
-                                clearable
-                                class="w100"
-                                @change="test"
-                                v-model="state.ruleForm.parentId">
-                            </el-cascader>
-						</el-form-item>
-					</el-col>
-					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-						<el-form-item label="菜单名称">
-							<el-input v-model="state.ruleForm.meta.title" placeholder="格式:message.router.xxx" clearable></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="路由名称">
-                            <el-input v-model="state.ruleForm.name" placeholder="路由中的 name 值" clearable></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="路由路径">
-                            <el-input v-model="state.ruleForm.path" placeholder="路由中的 path 值" clearable></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="重定向">
-                            <el-input v-model="state.ruleForm.redirect" placeholder="请输入路由重定向" clearable></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="菜单图标">
-                            <IconSelector placeholder="请输入菜单图标" v-model="state.ruleForm.meta.icon" />
-                        </el-form-item>
-                    </el-col>
-                    <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-                        <el-form-item label="组件路径">
-                            <el-input v-model="state.ruleForm.component" placeholder="组件路径" clearable></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="链接地址">
-                            <el-input
-                                v-model="state.ruleForm.meta.isLink"
-                                placeholder="外链/内嵌时链接地址(http:xxx.com)"
-                                clearable
-                            >
-                            </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="权限标识">
-                            <el-select v-model="state.ruleForm.meta.roles" multiple placeholder="取角色管理" clearable class="w100">
-                                <el-option v-for="item in state.roleList" :key="item.id" :value="item.id" :label="item.name"></el-option>
-                            </el-select>
-                        </el-form-item>
-                    </el-col>
-					<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-						<el-form-item label="菜单排序">
-							<el-input-number v-model="state.ruleForm.priority" controls-position="right" placeholder="请输入排序" class="w100" />
-						</el-form-item>
-					</el-col>
-						<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-							<el-form-item label="是否隐藏">
-								<el-radio-group v-model="state.ruleForm.meta.isHide">
-									<el-radio :label="true">隐藏</el-radio>
-									<el-radio :label="false">不隐藏</el-radio>
-								</el-radio-group>
-							</el-form-item>
-						</el-col>
-				</el-row>
-			</el-form>
-			<template #footer>
-				<span class="dialog-footer">
-					<el-button @click="onCancel" size="default">取 消</el-button>
-					<el-button type="primary" @click="onSubmit" size="default">{{ state.dialog.submitTxt }}</el-button>
-				</span>
-			</template>
-		</el-dialog>
-	</div>
-</template>
-
-<script setup lang="ts" name="systemMenuDialog">
-import { defineAsyncComponent, reactive, onMounted, ref } from 'vue';
-import { storeToRefs } from 'pinia';
-import { useRoutesList } from '/@/stores/routesList';
-import { i18n } from '/@/i18n/index';
-import {ElMessage} from "element-plus";
-import { useMenuApi } from "/@/api/systemManage/menu";
-import {useRoleApi} from "/@/api/systemManage/role";
-// import { setBackEndControlRefreshRoutes } from "/@/router/backEnd";
-
-// 定义子组件向父组件传值/事件
-const emit = defineEmits(['refresh']);
-
-// 引入组件
-const IconSelector = defineAsyncComponent(() => import('/@/components/iconSelector/index.vue'));
-
-// 定义变量内容
-const menuDialogFormRef = ref();
-const stores = useRoutesList();
-const { routesList } = storeToRefs(stores);
-const state = reactive({
-    roleList:[],
-	// 参数请参考 `/src/router/route.ts` 中的 `dynamicRoutes` 路由菜单格式
-	ruleForm: {
-        id: null,
-        parentId: null,
-        description: '',
-        name: '',
-        component: '',
-        priority: 0,
-        path: '',
-        redirect: '',
-        publicable: null,
-		meta: {
-			title: '',
-			icon: '',
-			isHide: false,
-			isKeepAlive: true,
-			isAffix: false,
-			isLink: '',
-			isIframe: false,
-			roles: '',
-		},
-	},
-	menuData: [] as RouteItems [], // 上级菜单数据
-	dialog: {
-		isShowDialog: false,
-		type: '',
-		title: '',
-		submitTxt: '',
-	},
-});
-
-const test = () => {
-    console.log(state.menuData)
-}
-
-// 获取 pinia 中的路由
-const getMenuData = (routes: RouteItems) => {
-	const arr: RouteItems = [];
-	routes.map((val: RouteItem) => {
-		val['title'] = i18n.global.t(val.meta?.title as string);
-		arr.push({ ...val });
-		if (val.children) getMenuData(val.children);
-	});
-	return arr;
-};
-// 打开弹窗
-const openDialog = (type: string, row?: any) => {
-	if (type === 'edit') {
-        for(let i in state.ruleForm){
-            state.ruleForm[i] = row[i]
-        }
-		state.dialog.title = '修改菜单';
-		state.dialog.submitTxt = '修 改';
-	} else {
-		state.dialog.title = '新增菜单';
-		state.dialog.submitTxt = '新 增';
-        state.ruleForm = {
-            id: null,
-            parentId: null,
-            description: '',
-            name: '',
-            component: '',
-            priority: 0,
-            path: '',
-            redirect: '',
-            publicable: null,
-            meta: {
-                title: '',
-                icon: '',
-                isHide: false,
-                isKeepAlive: true,
-                isAffix: false,
-                isLink: '',
-                isIframe: false,
-                roles: '',
-            },
-        }
-		// 清空表单,此项需加表单验证才能使用
-		// nextTick(() => {
-		// 	menuDialogFormRef.value.resetFields();
-		// });
-	}
-	state.dialog.type = type;
-	state.dialog.isShowDialog = true;
-};
-// 关闭弹窗
-const closeDialog = () => {
-	state.dialog.isShowDialog = false;
-};
-
-// 取消
-const onCancel = () => {
-	closeDialog();
-};
-// 提交
-const onSubmit = () => {
-    menuDialogFormRef.value.validate(async (valid: boolean) => {
-        if(valid){
-            if(state.dialog.title === '新增菜单'){
-                let res = await useMenuApi().addMenu(state.ruleForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    state.dialog.isShowDialog = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '新增成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }else{
-                let res = await useMenuApi().modMenu(state.ruleForm)
-                if(res.data.code === 100){
-                    emit('refresh')
-                    state.dialog.isShowDialog = false;
-                    ElMessage({
-                        type: 'success',
-                        message: '编辑成功'
-                    })
-                }else{
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg,
-                    });
-                }
-            }
-        }else{
-            ElMessage({
-                type: 'warning',
-                message: '请完善基本信息',
-            });
-        }
-    })
-};
-
-const getRoles = async () => {
-    let res = await useRoleApi().getRoleList()
-    if(res.data.code === 100){
-       state.roleList = res.data.data
-    }else{
-        ElMessage({
-            type: 'warning',
-            message: res.data.message
-        })
-    }
-}
-// 页面加载时
-onMounted(() => {
-	state.menuData = getMenuData(routesList.value);
-    getRoles()
-});
-
-// 暴露变量
-defineExpose({
-	openDialog,
-});
-</script>
diff --git a/src/views/home/index.ts b/src/views/home/index.ts
deleted file mode 100644
index 9742bbb..0000000
--- a/src/views/home/index.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-interface EquipmentStateType {
-
-}
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
deleted file mode 100644
index 91d40aa..0000000
--- a/src/views/home/index.vue
+++ /dev/null
@@ -1,144 +0,0 @@
-<template>
-	<div class="system-menu-container layout-pd">
-		<el-card shadow="hover">
-			<div class="system-menu-search mb15">
-				<el-input size="default" placeholder="请输入菜单名称" style="max-width: 180px"> </el-input>
-				<el-button size="default" type="primary" class="ml10">
-					<el-icon>
-						<ele-Search />
-					</el-icon>
-					查询
-				</el-button>
-				<el-button size="default" type="success" class="ml10" @click="onOpenAddMenu">
-					<el-icon>
-						<ele-FolderAdd />
-					</el-icon>
-					新增菜单
-				</el-button>
-			</div>
-			<el-table
-				:data="state.tableData.data"
-				v-loading="state.tableData.loading"
-				style="width: 100%"
-				row-key="path"
-				:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
-			>
-				<el-table-column label="菜单名称" show-overflow-tooltip>
-					<template #default="scope">
-						<SvgIcon :name="scope.row.meta.icon" />
-						<span class="ml10">{{ $t(scope.row.meta.title) }}</span>
-					</template>
-				</el-table-column>
-				<el-table-column prop="path" label="路由路径" show-overflow-tooltip></el-table-column>
-				<el-table-column label="组件路径" show-overflow-tooltip>
-					<template #default="scope">
-						<span>{{ scope.row.component }}</span>
-					</template>
-				</el-table-column>
-				<el-table-column label="权限标识" show-overflow-tooltip>
-					<template #default="scope">
-						<span>{{ scope.row.meta.roles }}</span>
-					</template>
-				</el-table-column>
-				<el-table-column label="排序" show-overflow-tooltip width="80">
-					<template #default="scope">
-						{{ scope.$index }}
-					</template>
-				</el-table-column>
-				<el-table-column label="类型" show-overflow-tooltip width="80">
-					<template #default="scope">
-						<el-tag type="success" size="small">{{ scope.row.xx }}菜单</el-tag>
-					</template>
-				</el-table-column>
-				<el-table-column label="操作" show-overflow-tooltip width="140">
-					<template #default="scope">
-						<el-button size="small" text type="primary" @click="onOpenAddMenu('add')">新增</el-button>
-						<el-button size="small" text type="primary" @click="onOpenEditMenu('edit', scope.row)">修改</el-button>
-						<el-button size="small" text type="primary" @click="onTabelRowDel(scope.row)">删除</el-button>
-					</template>
-				</el-table-column>
-			</el-table>
-		</el-card>
-		<MenuDialog ref="menuDialogRef" @refresh="getTableData()" />
-	</div>
-</template>
-
-<script setup lang="ts" name="systemMenu">
-import { defineAsyncComponent, ref, onMounted, reactive } from 'vue';
-import { RouteRecordRaw } from 'vue-router';
-import { ElMessageBox, ElMessage } from 'element-plus';
-import { storeToRefs } from 'pinia';
-import { useRoutesList } from '/@/stores/routesList';
-import { useMenuApi } from "/@/api/systemManage/menu";
-import { initBackEndControlRoutes } from "/@/router/backEnd";
-import {roomApi} from "/@/api/basic/room";
-// import { setBackEndControlRefreshRoutes } from "/@/router/backEnd";
-
-// 引入组件
-const MenuDialog = defineAsyncComponent(() => import('/@/views/home/dialog.vue'));
-
-// 定义变量内容
-const stores = useRoutesList();
-const { routesList } = storeToRefs(stores);
-const menuDialogRef = ref();
-const state = reactive({
-	tableData: {
-        data: [] as RouteRecordRaw[],
-		loading: false,
-	},
-});
-
-// 获取路由数据,真实请从接口获取
-const getTableData = async () => {
-    let res = await useMenuApi().getMenuAdmin();
-    if (res.data.code === 100) {
-        state.tableData.data = res.data.data;
-        await initBackEndControlRoutes()
-    } else {
-        ElMessage({
-            type: 'warning',
-            message: res.data.msg
-        });
-    }
-};
-// 打开新增菜单弹窗
-const onOpenAddMenu = (type: string) => {
-	menuDialogRef.value.openDialog(type);
-};
-// 打开编辑菜单弹窗
-const onOpenEditMenu = (type: string, row: RouteRecordRaw) => {
-	menuDialogRef.value.openDialog(type, row);
-};
-// 删除当前行
-const onTabelRowDel = (row: RouteRecordRaw) => {
-    ElMessageBox.confirm(`此操作将永久删除该菜单,是否继续?`, '提示', {
-        confirmButtonText: '确认',
-        cancelButtonText: '取消',
-        type: 'warning'
-    })
-        .then(async () => {
-            let res = await useMenuApi().deleteMenu(row.id );
-            if (res.data.code === 100) {
-                ElMessage({
-                    type: 'success',
-                    duration: 2000,
-                    message: '删除成功'
-                });
-                await getTableData();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        })
-        .catch((error) => {
-
-        });
-}
-
-// 页面加载时
-onMounted(() => {
-	getTableData();
-});
-</script>
diff --git a/src/views/layoutPage/index.vue b/src/views/layoutPage/index.vue
deleted file mode 100644
index 549c2a3..0000000
--- a/src/views/layoutPage/index.vue
+++ /dev/null
@@ -1,182 +0,0 @@
-<template>
-	<div class="home-container">
-		<el-row :gutter="15" class="home-card-one mb15">
-			<el-col
-				:xs="24"
-				:sm="12"
-				:md="12"
-				:lg="4"
-				:xl="4"
-				v-for="(v, k) in homeOne"
-				:key="k"
-				:class="{ 'home-media home-media-lg': k > 1, 'home-media-sm': k === 1 }"
-			>
-				<div class="home-card-item flex" >
-					<el-button @click="renderMenu(v.id)">{{v.name}}</el-button>
-				</div>
-			</el-col>
-		</el-row>
-		<el-row :gutter="15" class="home-card-two mb15">
-			<el-col :xs="24" :sm="14" :md="14" :lg="16" :xl="16">
-				<div class="home-card-item">
-					<div style="height: 100%">
-						<el-button @click="renderMenu('6')">{{'应急管理系统'}}</el-button>
-					</div>
-				</div>
-			</el-col>
-			<el-col :xs="24" :sm="10" :md="10" :lg="8" :xl="8" class="home-media">
-				<div class="home-card-item">
-					<div style="height: 100%">
-						<el-button @click="renderMenu('7')">{{'目标责任管理系统'}}</el-button>
-					</div>
-				</div>
-			</el-col>
-		</el-row>
-		<el-row :gutter="15" class="home-card-three">
-			<el-col :xs="24" :sm="10" :md="10" :lg="8" :xl="8">
-				<div class="home-card-item">
-					<el-button @click="renderMenu('8')">{{'事故管理系统'}}</el-button>
-				</div>
-			</el-col>
-			<el-col :xs="24" :sm="14" :md="14" :lg="16" :xl="16" class="home-media">
-				<div class="home-card-item">
-					<div style="height: 100%">
-						<el-button @click="renderMenu('9')">{{'设备综合管控系统'}}</el-button>
-					</div>
-				</div>
-			</el-col>
-		</el-row>
-	</div>
-</template>
-
-<script lang="ts">
-import { toRefs, reactive, defineComponent, } from 'vue';
-import { storeToRefs } from 'pinia';
-import { initBackEndControlRoutes } from '/@/router/backEnd';
-import {useUserInfo} from "/@/stores/userInfo";
-import { Session } from '/@/utils/storage';
-let global: any = {
-	homeChartOne: null,
-	homeChartTwo: null,
-	homeCharThree: null,
-	dispose: [null, '', undefined],
-};
-
-interface stateType {
-	homeOne: Array <type>
-}
-interface type {
-	id:number,
-	name: string
-}
-export default defineComponent({
-	name: 'layoutPage',
-	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 renderMenu = async (value: string) => {
-		    Session.set('projectId',value)
-			userInfos.value.projectId = value
-			await initBackEndControlRoutes();
-		};
-		return {
-			renderMenu,
-			...toRefs(state),
-		};
-	},
-});
-</script>
-
-<style scoped lang="scss">
-$homeNavLengh: 8;
-.home-container {
-	overflow: hidden;
-	.home-card-one,
-	.home-card-two,
-	.home-card-three {
-		.home-card-item {
-			width: 100%;
-			height: 130px;
-			border-radius: 4px;
-			transition: all ease 0.3s;
-			padding: 20px;
-			overflow: hidden;
-			background: var(--el-color-white);
-			color: var(--el-text-color-primary);
-			border: 1px solid var(--next-border-color-light);
-			&:hover {
-				box-shadow: 0 2px 12px var(--next-color-dark-hover);
-				transition: all ease 0.3s;
-			}
-			&-icon {
-				width: 70px;
-				height: 70px;
-				border-radius: 100%;
-				flex-shrink: 1;
-				i {
-					color: var(--el-text-color-placeholder);
-				}
-			}
-			&-title {
-				font-size: 15px;
-				font-weight: bold;
-				height: 30px;
-			}
-		}
-	}
-	.home-card-one {
-		@for $i from 0 through 3 {
-			.home-one-animation#{$i} {
-				opacity: 0;
-				animation-name: error-num;
-				animation-duration: 0.5s;
-				animation-fill-mode: forwards;
-				animation-delay: calc($i/10) + s;
-			}
-		}
-	}
-	.home-card-two,
-	.home-card-three {
-		.home-card-item {
-			height: 400px;
-			width: 100%;
-			overflow: hidden;
-			.home-monitor {
-				height: 100%;
-				.flex-warp-item {
-					width: 25%;
-					height: 111px;
-					display: flex;
-					.flex-warp-item-box {
-						margin: auto;
-						text-align: center;
-						color: var(--el-text-color-primary);
-						display: flex;
-						border-radius: 5px;
-						background: var(--next-bg-color);
-						cursor: pointer;
-						transition: all 0.3s ease;
-						&:hover {
-							background: var(--el-color-primary-light-9);
-							transition: all 0.3s ease;
-						}
-					}
-					@for $i from 0 through $homeNavLengh {
-						.home-animation#{$i} {
-							opacity: 0;
-							animation-name: error-num;
-							animation-duration: 0.5s;
-							animation-fill-mode: forwards;
-							animation-delay: calc($i/10) + s;
-						}
-					}
-				}
-			}
-		}
-	}
-}
-</style>
diff --git a/src/views/loginPage/component/accountLogin.vue b/src/views/loginPage/component/accountLogin.vue
index cf4d1c8..7ba377c 100644
--- a/src/views/loginPage/component/accountLogin.vue
+++ b/src/views/loginPage/component/accountLogin.vue
@@ -190,6 +190,7 @@
             state.loading.signIn = true;
             // 存储 token 到浏览器缓存
             let res = await useLoginApi().signIn(state.ruleForm);
+          console.log(res)
             if (res.data.code === 100) {
                 await userInfo.setUserInfos(res.data.data);
                 Cookies.set('token', res.data.data.tk);
@@ -230,7 +231,8 @@
         let res = await useMenuApi().getMenuAdmin();
         if (res.data.code === 100) {
           state.menu = JSON.parse(JSON.stringify(res.data.data))
-          router.push(state.menu[0].children[0].path);
+          console.log(state.menu,'menu')
+          router.push(state.menu[0].path);
         } else {
           ElMessage({
             type: 'warning',
@@ -332,6 +334,9 @@
         border-radius: 2px;
         padding: 0 30px;
         border: 1px solid rgba(17,254,238,.4);
+        .el-input__inner{
+          color: #fff;
+        }
         &:focus-within {
             border: 1px solid #11FEEE;
         }
diff --git a/src/views/newHome/index.vue b/src/views/newHome/index.vue
deleted file mode 100644
index 8450675..0000000
--- a/src/views/newHome/index.vue
+++ /dev/null
@@ -1,967 +0,0 @@
-<template>
-    <div class="login-container" :key="once">
-        <div class="topPanel"></div>
-        <div class="topPanelBg"></div>
-        <div class="topPanelCont">
-            <div class="topLogo">
-                <img src="../../assets/newMenu/toplogo.png" />
-            </div>
-            <div class="userInfo">
-                <div @click="onScreenfullClick" style="margin-right: 15px; cursor: pointer">
-                    <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')" :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i>
-                </div>
-                <div class="loginOut" @click="onLoginOut">退出登录</div>
-                <span></span>
-                <div class="avator">
-                    <img src="../../assets/menu/admin.png" />
-                    <div>{{userName}}</div>
-                </div>
-            </div>
-        </div>
-        <div class="leftCont"></div>
-        <div class="topCont">
-            <div class="topInfo">
-                <div class="topTit">新疆国泰新华<br />安全风险预警监测系统(试运行)</div>
-                <div class="topTime">
-                    <div class="time">
-                        {{ time }}
-                    </div>
-                    <span></span>
-                    <div class="today">
-                        <div>{{ date }}</div>
-                        <div>
-                            <span>{{ weekDay }}</span
-                            ><span>{{ dayTime }}</span>
-                        </div>
-                    </div>
-                </div>
-            </div>
-            <div class="line"></div>
-        </div>
-        <div class="menuGrid">
-            <div class="gridCont">
-                <div class="grid-content grid-content-1 cont-bg-1" v-throttle @click="toRiskPlatform">
-                    <div class="toplayer">
-                        <div>
-                            <img class="iconImg" src="../../assets/newMenu/icon1.png" />
-                            <div>
-                                <div class="itemTit1">智能安全风险综合预警<br />预报平台</div>
-                                <div class="enTit1">Intelligent Security Risk Comprehensive Forewarning and Forecasting Platform</div>
-                            </div>
-                        </div>
-                    </div>
-                    <img class="bgImg1" src="../../assets/newMenu/card-1.png" />
-                </div>
-                <div class="grid-content cont-bg-1" v-throttle @click="toDoublePrevent">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon2.png" />
-                        <div>
-                            <div class="itemTit">智能安全双重预防系统</div>
-                            <div class="enTit">Intelligent Security Dual Prevention System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-4.png" />
-                </div>
-                <div class="grid-content cont-bg-1" v-throttle @click="render('4')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon3.png" />
-                        <div>
-                            <div class="itemTit">智能安全巡检系统</div>
-                            <div class="enTit">Intelligent Security Patrol System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-8.png" />
-                </div>
-                <div class="grid-content cont-bg-1" v-throttle @click="render('3')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon4.png" />
-                        <div>
-                            <div class="itemTit">智能安全特殊作业系统</div>
-                            <div class="enTit">Intelligent Security Special Operating System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-7.png" />
-                </div>
-                <div class="grid-content cont-bg-1" v-throttle @click="render('7')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon5.png" />
-                        <div>
-                            <div class="itemTit">安全目标责任管理系统</div>
-                            <div class="enTit">Security Target Responsibility Management System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-2.png" />
-                </div>
-                <div class="grid-content cont-bg-2" v-throttle @click="render('10')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon6.png" />
-                        <div>
-                            <div class="itemTit">安全知识图谱系统</div>
-                            <div class="enTit">Security Knowledge Graph System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-3.png" />
-                </div>
-                <div class="grid-content cont-bg-2" v-throttle @click="render('9')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon7.png" />
-                        <div>
-                            <div class="itemTit">设备综合管控系统</div>
-                            <div class="enTit">Equipment Integrated Management and Control System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-9.png" />
-                </div>
-                <div class="grid-content cont-bg-2" v-throttle @click="render('6')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon8.png" />
-                        <div>
-                            <div class="itemTit">应急管理系统</div>
-                            <div class="enTit">Emergency Management System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-5.png" />
-                </div>
-                <div class="grid-content cont-bg-2" v-throttle @click="renderToNew('11')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon9.png" />
-                        <div>
-                            <div class="itemTit">智能安全危险化学品全生命周期管控系统</div>
-                            <div class="enTit">Intelligent Security Hazardous Chemicals Life Cycle Safety Management System </div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-10.png" />
-                </div>
-                <div class="grid-content cont-bg-2" v-throttle @click="render('8')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon10.png" />
-                        <div>
-                            <div class="itemTit">安全事故管理系统</div>
-                            <div class="enTit">Security Incident Management System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-6.png" />
-                </div>
-                <div class="grid-content cont-bg-2" @click="render('1')">
-                    <div class="toplayer">
-                        <img class="iconImg" src="../../assets/newMenu/icon11.png" />
-                        <div>
-                            <div class="itemTit">安全基础信息系统</div>
-                            <div class="enTit">Basic Security Information System</div>
-                        </div>
-                    </div>
-                    <img class="bgImg" src="../../assets/newMenu/card-11.png" />
-                </div>
-            </div>
-        </div>
-        <div class="bot-rights">
-            <img src="../../assets/newMenu/pic_line1.png" />
-            <div>技术支持:苏州国科鸿宇智能科技有限公司</div>
-            <img src="../../assets/newMenu/pic_line2.png" />
-        </div>
-    </div>
-</template>
-
-<script lang="ts">
-import { toRefs, reactive, computed, defineComponent, onMounted } from 'vue';
-import { storeToRefs } from 'pinia';
-import { useThemeConfig } from '/@/stores/themeConfig';
-import logoMini from '/@/assets/logo-mini.svg';
-import loginIconTwo from '/@/assets/login-icon-two.svg';
-import { NextLoading } from '/@/utils/loading';
-import { Session } from '/@/utils/storage';
-import { useRoute, useRouter } from 'vue-router';
-import { initBackEndControlRoutes } from '/@/router/backEnd';
-import { useUserInfo } from '/@/stores/userInfo';
-import { useRoutesList } from '/@/stores/routesList';
-import pinia from '/@/stores';
-import { useTagsViewRoutes } from '/@/stores/tagsViewRoutes';
-import { ElMessage } from 'element-plus';
-import { ElMessageBox } from 'element-plus/es';
-import { useLoginApi } from '/@/api/login';
-import { useI18n } from 'vue-i18n';
-import screenfull from 'screenfull';
-import router from '../../router';
-import Cookies from 'js-cookie';
-
-// 定义接口来定义对象的类型
-interface LoginState {
-    tabsActiveName: string;
-    isScan: boolean;
-    count: number;
-    projectId: string;
-    once: number;
-    isScreenfull: boolean;
-    time: string;
-    date: string;
-    weekDay: string;
-    dayTime: string;
-}
-
-export default defineComponent({
-    name: 'loginIndex',
-    components: {},
-    setup() {
-        const { t } = useI18n();
-        const router = useRouter();
-        const userInfo = useUserInfo();
-        const { userInfos } = storeToRefs(userInfo);
-        const routeToStore = useRoutesList(pinia);
-        const { routesList } = storeToRefs(routeToStore);
-        const storesThemeConfig = useThemeConfig();
-        const { themeConfig } = storeToRefs(storesThemeConfig);
-        // 时间格式化
-        const timeForm = {
-            hour12: false,
-            year: 'numeric',
-            month: '2-digit',
-            day: '2-digit',
-            hour: '2-digit',
-            minute: '2-digit',
-            second: '2-digit'
-        };
-        const state = reactive<LoginState>({
-            tabsActiveName: 'account',
-            isScan: false,
-            count: 0,
-            projectId: '1',
-            once: 0,
-            time: '',
-            date: '',
-            weekDay: '',
-            dayTime: '',
-            isScreenfull: false
-        });
-
-        const userName = computed(() =>{
-            return userInfos.value.userName
-        })
-        // 获取布局配置信息
-        const getThemeConfig = computed(() => {
-            return themeConfig.value;
-        });
-
-        // 当前时间
-        const getDateTime = () => {
-            const curTime = new Date().toLocaleString('zh', timeForm).replace(/\//g, '-');
-            state.time = curTime.slice(10, 16);
-            state.date = curTime.slice(0, 10);
-            let week = ['日', '一', '二', '三', '四', '五', '六'];
-            let day = new Date().getDay();
-            state.weekDay = '星期' + week[day];
-            let curHour = Number(curTime.slice(10, 13));
-            if (curHour >= 5 && curHour <= 10) {
-                state.dayTime = '上午';
-            }
-            if (curHour > 10 && curHour <= 12) {
-                state.dayTime = '中午';
-            }
-            if (curHour > 12 && curHour <= 18) {
-                state.dayTime = '下午';
-            }
-            if (curHour > 18 && curHour <= 22) {
-                state.dayTime = '晚上';
-            }
-            if (curHour > 22) {
-                state.dayTime = '午夜';
-            }
-        };
-        // 下拉菜单点击时
-        const onLoginOut = () => {
-            ElMessageBox({
-                closeOnClickModal: false,
-                closeOnPressEscape: false,
-                title: t('message.user.logOutTitle'),
-                message: t('message.user.logOutMessage'),
-                showCancelButton: true,
-                confirmButtonText: t('message.user.logOutConfirm'),
-                cancelButtonText: t('message.user.logOutCancel'),
-                buttonSize: 'default',
-                beforeClose: (action, instance, done) => {
-                    if (action === 'confirm') {
-                        instance.confirmButtonLoading = true;
-                        instance.confirmButtonText = t('message.user.logOutExit');
-                        setTimeout(() => {
-                            done();
-                            setTimeout(() => {
-                                instance.confirmButtonLoading = false;
-                            }, 300);
-                        }, 700);
-                    } else {
-                        done();
-                    }
-                }
-            })
-                .then(async () => {
-                    let res = await useLoginApi().signOut();
-                    if (res.data.code === '200') {
-                        Session.clear(); // 清除缓存/token等
-                        // 使用 reload 时,不需要调用 resetRoute() 重置路由
-                        window.location.reload();
-                    } else {
-                        ElMessage({
-                            type: 'warning',
-                            message: res.data.msg
-                        });
-                    }
-                })
-                .catch(() => {});
-        };
-        //选择菜单
-        const render = (value: string) => {
-            state.projectId = value;
-            renderMenu();
-        };
-
-        // 全屏点击时
-        const onScreenfullClick = () => {
-            if (!screenfull.isEnabled) {
-                ElMessage.warning('暂不不支持全屏');
-                return false;
-            }
-            screenfull.toggle();
-            screenfull.on('change', () => {
-                if (screenfull.isFullscreen) state.isScreenfull = true;
-                else state.isScreenfull = false;
-            });
-        };
-        // 去风险大屏
-        const toRiskPlatform = () => {
-            // router.push({
-            //     name: "warningScreen"
-            // });
-            window.open('http://39.104.85.193:8585/');
-        };
-
-        const toDoublePrevent = () => {
-           window.open('http://121.239.169.27:6801');
-        };
-        const throttle = (renderMenu: any, delay: number) => {
-            let flag = true;
-            let count = 0;
-            return function () {
-                if (!flag) return;
-                flag = false;
-                if (count === 0) {
-                    renderMenu.apply();
-                    count++;
-                    flag = true;
-                } else {
-                    setTimeout(() => {
-                        renderMenu.apply();
-                        flag = true;
-                    }, delay);
-                }
-            };
-        };
-
-        //调用菜单方法
-        const renderMenu = throttle(() => {
-            renderFun();
-        }, 2000);
-
-        //调后台菜单接口
-        const renderFun = async () => {
-            Cookies.set('projectId', state.projectId);
-            userInfos.value.projectId = state.projectId;
-            await initBackEndControlRoutes().then(() => {
-                let linkToMenu = [...routesList.value];
-                if (linkToMenu && linkToMenu.length > 1) {
-                    router.push(linkToFirstMenu(JSON.parse(JSON.stringify(linkToMenu))[1]));
-                } else {
-                    ElMessage({ type: 'warning', message: '你没有该子系统的权限' });
-                }
-            });
-        };
-
-        const linkToFirstMenu: any = (value: any) => {
-            let returnMenu = value;
-            if (returnMenu.children?.length > 0) {
-                return linkToFirstMenu(returnMenu.children[0]);
-            } else {
-                return returnMenu.path;
-            }
-        };
-
-        const renderToNew = () => {
-            window.open('http://222.92.213.22:18001/smartlab/', '_blank');
-        };
-        // //点击进入特殊作业
-        // const toSpecialWorkSys = () => {
-        // 	router.push('/layoutPage');
-        // };
-        // 页面加载时
-        onMounted(() => {
-            state.once += 1;
-            NextLoading.done();
-            getDateTime();
-            setInterval(() => {
-                getDateTime();
-            }, 1000);
-            // loginBg();
-            // loginApp()
-        });
-        return {
-            render,
-            userName,
-            logoMini,
-            onLoginOut,
-            getDateTime,
-            renderToNew,
-            toRiskPlatform,
-            toDoublePrevent,
-            onScreenfullClick,
-            loginIconTwo,
-            getThemeConfig,
-            ...toRefs(state)
-        };
-    }
-});
-</script>
-
-<style scoped lang="scss">
-    @keyframes showDown {
-        100% {
-            position: absolute;
-            top: 60px;
-        }
-    }
-    @keyframes moveDown {
-        100% {
-            position: absolute;
-            top: 0;
-        }
-    }
-    @keyframes moveRight {
-        100% {
-            position: absolute;
-            left: 0;
-        }
-    }
-    @keyframes upDown {
-        50% {
-            -webkit-transform: translateY(-8px);
-            -ms-transform: translateY(-8px);
-            -o-transform: translateY(-8px);
-            transform: translateY(-8px);
-        }
-        100% {
-            -webkit-transform: translateY(0);
-            -ms-transform: translateY(0);
-            -o-transform: translateY(0);
-            transform: translateY(0);
-        }
-    }
-@media screen and (min-width: 1600px) {
-    .gridCont {
-        width: 100%;
-        height: 100%;
-        display: grid;
-        grid-gap: 20px;
-        grid-template-columns: repeat(3, 1fr);
-        grid-auto-flow: row;
-        justify-content: center;
-        .toplayer {
-            width: 100%;
-            height: 100%;
-            position: absolute;
-            left: 0;
-            top: 0;
-            display: flex;
-            align-items: center;
-            padding: 0 20px;
-            z-index: 99;
-
-            .itemTit {
-                font-size: 28px;
-                line-height: 34px;
-                margin-bottom: 2px;
-                height: 40%;
-                color: #072270;
-            }
-            .enTit {
-                font-size: 16px;
-                line-height: 20px;
-                color: #072270;
-            }
-
-            .iconImg {
-                width: 88px;
-                height: 88px;
-                margin-right: 20px;
-            }
-        }
-        .bgImg {
-            position: absolute;
-            width: 30%;
-            height: auto;
-            right: -10px;
-            top: 15px;
-        }
-    }
-
-    .grid-content-1 {
-        grid-row-start: 1;
-        grid-row-end: 3;
-
-        .toplayer {
-            width: 100%;
-            height: 100%;
-            position: absolute;
-            left: 0;
-            top: 0;
-            display: flex;
-            align-items: center;
-            z-index: 99;
-
-            & > div {
-                display: flex;
-                align-items: flex-start;
-            }
-
-            .itemTit1 {
-                font-size: 32px;
-                line-height: 42px;
-                height: 40%;
-                letter-spacing: 1px;
-                color: #072270;
-                margin-bottom: 12px;
-            }
-            .enTit1 {
-                font-size: 18px;
-                line-height: 24px;
-                color: #072270;
-            }
-        }
-        .bgImg1 {
-            position: absolute;
-            width: 45%;
-            height: auto;
-            right: -20px;
-            top: 30%;
-        }
-    }
-
-    .bot-rights {
-        font-size: 18px;
-        color: #333;
-    }
-}
-
-@media screen and (min-width: 1200px) and (max-width: 1600px) {
-    .gridCont {
-        width: 100%;
-        height: 100%;
-        display: grid;
-        grid-gap: 15px;
-        grid-template-columns: repeat(3, 1fr);
-        grid-auto-flow: row;
-        justify-content: center;
-
-        .toplayer {
-            width: 100%;
-            height: 100%;
-            position: absolute;
-            left: 0;
-            top: 0;
-            display: flex;
-            align-items: center;
-            padding: 0 20px;
-            z-index: 99;
-
-            .itemTit {
-                font-size: 22px;
-                line-height: 30px;
-                height: 40%;
-                color: #072270;
-                margin-bottom: 2px;
-            }
-            .enTit {
-                font-size: 12px;
-                color: #072270;
-            }
-
-            .iconImg {
-                width: 44px;
-                height: 44px;
-                margin-right: 10px;
-            }
-        }
-        .bgImg {
-            position: absolute;
-            width: 30%;
-            height: auto;
-            right: -10px;
-            top: 15px;
-        }
-    }
-
-    .grid-content-1 {
-        grid-row-start: 1;
-        grid-row-end: 3;
-
-        .toplayer {
-            width: 100%;
-            height: 100%;
-            position: absolute;
-            left: 0;
-            top: 0;
-            display: flex;
-            align-items: center;
-            z-index: 99;
-
-            & > div {
-                display: flex;
-                align-items: flex-start;
-            }
-
-            .itemTit1 {
-                font-size: 24px;
-                line-height: 36px;
-                height: 40%;
-                letter-spacing: 1px;
-                color: #072270;
-                margin-bottom: 12px;
-            }
-            .enTit1 {
-                font-size: 14px;
-                color: #072270;
-            }
-        }
-        .bgImg1 {
-            position: absolute;
-            width: 45%;
-            height: auto;
-            right: -20px;
-            top: 30%;
-        }
-    }
-    .bot-rights {
-        font-size: 15px;
-        color: #333;
-    }
-}
-@media screen and (max-width: 1200px) {
-    .gridCont {
-        width: 100%;
-        height: 100%;
-        display: grid;
-        grid-gap: 10px;
-        grid-template-columns: repeat(3, 1fr);
-        grid-auto-flow: row;
-        justify-content: center;
-
-        .toplayer {
-            width: 100%;
-            height: 100%;
-            position: absolute;
-            left: 0;
-            top: 0;
-            display: flex;
-            align-items: center;
-            padding: 0 15px;
-            z-index: 99;
-
-            .itemTit {
-                font-size: 14px;
-                line-height: 22px;
-                color: #072270;
-            }
-            .enTit {
-                font-size: 10px;
-                line-height: 14px;
-                color: #072270;
-            }
-
-            .iconImg {
-                width: 32px;
-                height: 32px;
-                margin-right: 10px;
-            }
-        }
-        .bgImg {
-            position: absolute;
-            width: 45%;
-            height: auto;
-            right: -10px;
-            top: 15px;
-        }
-    }
-
-    .grid-content-1 {
-        grid-row-start: 1;
-        grid-row-end: 3;
-
-        .toplayer {
-            width: 100%;
-            height: 100%;
-            position: absolute;
-            left: 0;
-            top: 0;
-            display: flex;
-            align-items: center;
-            z-index: 99;
-
-            & > div {
-                display: flex;
-                align-items: flex-start;
-            }
-
-            .itemTit1 {
-                font-size: 16px;
-                line-height: 36px;
-                height: 40%;
-                letter-spacing: 1px;
-                color: #072270;
-                margin-bottom: 12px;
-            }
-            .enTit1 {
-                font-size: 12px;
-                color: #072270;
-            }
-        }
-        .bgImg1 {
-            position: absolute;
-            width: 45%;
-            height: auto;
-            right: -20px;
-            top: 30%;
-        }
-    }
-    .bot-rights {
-        font-size: 12px;
-        color: #333;
-    }
-}
-.login-container {
-    width: 100%;
-    height: 100%;
-    position: relative;
-    background: #fff;
-    .topPanel {
-        width: 100%;
-        height: 260px;
-        background: url('../../assets/newMenu/topbg.jpg') no-repeat center;
-        background-size: 100% 100%;
-        display: flex;
-        justify-content: center;
-        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
-    }
-    .topPanelBg {
-        position: absolute;
-        width: 100%;
-        height: 60px;
-        top: -60px;
-        left: 0;
-        background: rgba(255, 255, 255, 0.8);
-        z-index: 9;
-        animation: moveDown 0.6s 1 ease forwards;
-    }
-    .topPanelCont {
-        position: absolute;
-        width: 100%;
-        height: 60px;
-        padding: 0 50px;
-        top: -60px;
-        left: 0;
-        display: flex;
-        align-items: center;
-        justify-content: space-between;
-        z-index: 999;
-        animation: moveDown 0.6s 1 ease forwards;
-
-        .topLogo {
-            display: flex;
-            align-items: center;
-
-            img {
-                width: 146px;
-                height: auto;
-            }
-        }
-
-        .userInfo {
-            display: flex;
-            align-items: center;
-
-            .avator {
-                display: flex;
-                justify-content: right;
-
-                img {
-                    width: 20px;
-                    height: 20px;
-                    border-radius: 10px;
-                }
-                div {
-                    font-size: 15px;
-                    color: #333333;
-                    line-height: 20px;
-                    margin-left: 6px;
-                }
-            }
-            span {
-                width: 1px;
-                height: 20px;
-                background: #999;
-                margin: 0 15px;
-            }
-            .loginOut {
-                font-size: 15px;
-                color: #333;
-                line-height: 20px;
-                cursor: pointer;
-
-                &:hover {
-                    color: #006df5;
-                }
-            }
-        }
-    }
-    .leftCont {
-        position: absolute;
-        left: -100px;
-        top: 0;
-        width: 220px;
-        height: 100%;
-        z-index: 99;
-        background: url('../../assets/newMenu/leftbg.png') no-repeat center;
-        background-size: 100% 100%;
-        animation: moveRight .8s 1 ease forwards;
-    }
-    .topCont {
-        position: absolute;
-        width: 100%;
-        height: 200px;
-        left: 0;
-        top: 30px;
-        padding: 0 40px 0 120px;
-        z-index: 99999;
-        display: flex;
-        flex-direction: column;
-        justify-content: center;
-        align-items: flex-start;
-        animation: showDown 0.6s 1 ease forwards;
-
-        .topInfo {
-            width: 100%;
-            display: flex;
-            align-items: center;
-            justify-content: space-between;
-            margin-bottom: 10px;
-
-            .topTit {
-                font-size: 44px;
-                font-weight: bolder;
-                text-align: left;
-                color: #fff;
-                text-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
-            }
-
-            .topTime {
-                padding: 15px 10px;
-                box-sizing: border-box;
-                background: rgba(6, 64, 195, 0.8);
-                border-radius: 8px;
-                color: #fff;
-                font-family: 'PingFang SC';
-                font-weight: 600;
-                font-size: 16px;
-                display: flex;
-                align-items: center;
-
-                .time {
-                    font-size: 48px;
-                }
-                & > span {
-                    width: 1px;
-                    height: 40px;
-                    margin: 0 15px;
-                    background: #fff;
-                }
-                .today {
-                    display: flex;
-                    flex-direction: column;
-                    align-items: flex-start;
-
-                    span {
-                        font-size: 14px;
-                    }
-
-                    span:first-of-type {
-                        margin-right: 10px;
-                    }
-                }
-            }
-        }
-        .line {
-            width: 120px;
-            height: 6px;
-            background: #00eeff;
-        }
-    }
-    .menuGrid {
-        width: calc(100vw - 220px);
-        height: calc(100vh - 320px);
-        padding: 20px 20px 0;
-        position: absolute;
-        top: 260px;
-        left: 220px;
-        .gridCont {
-            .grid-content {
-                border-radius: 16px;
-                position: relative;
-                overflow: hidden;
-                cursor: pointer;
-                transition: 0.3s;
-                border: 2px solid rgba(255,255,255,0);
-
-                &:hover {
-                    border-radius: 16px;
-                    background-image: radial-gradient(ellipse farthest-side at 50% 100%, #48a3ff 0%, #fff 120%);
-                    box-shadow: -8px -8px 24px rgba(20, 97, 234, 0.2), 8px 8px 24px rgba(20, 97, 234, 0.2);
-                    border: 2px solid #fff;
-
-                    .iconImg{
-                        animation: upDown 0.3s 1 ease-in-out forwards;
-                        filter: drop-shadow(0 0 12px rgba(20, 97, 234, 0.4));
-                    }
-                }
-            }
-            .cont-bg-1 {
-                background: #d9eaff;
-            }
-            .cont-bg-2 {
-                background: #cdd6ff;
-            }
-
-            /*.grid-content-2{*/
-            /*	background-image: linear-gradient(135deg,#0098F5,#1461EA);*/
-            /*}*/
-
-            /*.grid-content-3{*/
-            /*	background-image: linear-gradient(135deg,#006DF5,#1450EA);*/
-            /*}*/
-        }
-    }
-    .bot-rights {
-        width: calc(100vw - 240px);
-        height: 60px;
-        position: absolute;
-        bottom: 0;
-        left: 240px;
-        z-index: 9999;
-        display: flex;
-        align-items: center;
-        justify-content: center;
-
-        img {
-            width: 248px;
-            height: 8px;
-        }
-        div {
-            margin: 0 20px;
-        }
-    }
-}
-</style>
diff --git a/src/views/system/home/index.vue b/src/views/system/home/index.vue
index b49c1c8..e27bde7 100644
--- a/src/views/system/home/index.vue
+++ b/src/views/system/home/index.vue
@@ -76,7 +76,7 @@
 // import { setBackEndControlRefreshRoutes } from "/@/router/backEnd";
 
 // 引入组件
-const MenuDialog = defineAsyncComponent(() => import('/@/views/home/dialog.vue'));
+const MenuDialog = defineAsyncComponent(() => import('./dialog.vue'));
 
 // 定义变量内容
 const stores = useRoutesList();
diff --git a/src/views/system/role/index.vue b/src/views/system/role/index.vue
index f9b3ded..3e0a041 100644
--- a/src/views/system/role/index.vue
+++ b/src/views/system/role/index.vue
@@ -9,12 +9,12 @@
 <!--                    </el-icon>-->
 <!--                    查询-->
 <!--                </el-button>-->
-<!--                <el-button size="default" type="success" class="ml10" @click="onOpenDialogRef('新增', '')">-->
-<!--                    <el-icon>-->
-<!--                        <ele-FolderAdd />-->
-<!--                    </el-icon>-->
-<!--                    新增角色-->
-<!--                </el-button>-->
+            <el-button size="default" type="success" class="ml10" @click="onOpenDialogRef('新增', '')">
+                <el-icon>
+                    <ele-FolderAdd />
+                </el-icon>
+                新增角色
+            </el-button>
             </div>
             <el-table :data="tableData.data" style="width: 100%">
                 <el-table-column type="index" label="序号" width="60" />
@@ -101,7 +101,7 @@
                 type: 'warning'
             })
                 .then(async () => {
-                    let res = await useRoleApi().deleteRole({ roleId: row.roleId });
+                    let res = await useRoleApi().deleteRole({ roleId: row.id });
                     if (res.data.code === 100) {
                         ElMessage({
                             type: 'success',
diff --git a/src/views/system/user/component/userDialog.vue b/src/views/system/user/component/userDialog.vue
index 12f8b32..fd755e0 100644
--- a/src/views/system/user/component/userDialog.vue
+++ b/src/views/system/user/component/userDialog.vue
@@ -36,43 +36,11 @@
                             <el-input v-model.trim="userForm.phone" placeholder="手机号" clearable></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="identityStatus">
-                      <el-radio-group v-model="userForm.identityStatus">
-                        <el-radio :label="0">是</el-radio>
-                        <el-radio :label="1">否</el-radio>
-                      </el-radio-group>
-                    </el-form-item>
-                  </el-col>
-                  <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" v-if="userForm.identityStatus == 0">
-                    <el-form-item label="专家类型" prop="identityIds">
-                      <el-select v-model="userForm.identityIds" placeholder="专家类型" clearable class="w100" multiple>
-                        <el-option v-for="item in expData" :key="item.id" :label="item.identity" :value="item.id"> </el-option>
-                      </el-select>
-                    </el-form-item>
-                  </el-col>
-                    <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
-                      <el-form-item label="证件类型" prop="idType">
-                        <el-select v-model="userForm.idType" placeholder="证件类型" clearable class="w100">
-                          <el-option :key="1" label="身份证" :value="1"> </el-option>
-                        </el-select>
-                      </el-form-item>
-                    </el-col>
                     <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20">
                         <el-form-item label="证件号码" prop="idSerial">
                             <el-input v-model.trim="userForm.idSerial" placeholder="证件号码" clearable></el-input>
                         </el-form-item>
                     </el-col>
-                  <el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12" class="mb20" v-if="userForm.identityStatus == 0">
-                    <el-form-item label="资质证书" prop="">
-                      <el-upload accept="image/*" :action="uploadUrl" :headers="header" method="post" :data="{module: 'accountPath'}" :on-success="handleAvatarSuccess" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='imgLimit' v-model:file-list="fileList" list-type="picture-card" :before-upload="picSize" :on-remove="handleRemove" :before-remove="beforeRemove">
-                        <el-icon><Plus /></el-icon>
-                        <template #tip>
-                          <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div>
-                        </template>
-                      </el-upload>
-                    </el-form-item>
-                  </el-col>
                 </el-row>
             </el-form>
             <template #footer>
@@ -112,12 +80,8 @@
         roleIds: Array<any>
         depId: number | null;
         phone: string;
-        identityStatus:number|null;
-        identityIds: Array<any>
         pwd: string;
-        idType: number | null;
         idSerial: string;
-      qualificationAttId: number | null;
     };
     userFormRules:{},
     departmentData: Array<DeptData>;
@@ -150,11 +114,7 @@
                 roleIds: [], // 关联角色
                 depId: null, // 部门
                 phone: '', // 手机号
-                identityStatus: null,
-                identityIds: [],
-                idType: 1,
                 idSerial: '',
-              qualificationAttId: null
             },
             userFormRules:{
                 name: [{ required: true, message: '请填写用户名', trigger: 'blur' }],
@@ -162,9 +122,6 @@
                 roleIds: [{ required: true, message: '请选择用户角色', trigger: 'change' }],
                 depId: [{ required: true, message: '请选择部门', trigger: 'change' }],
                 phone: [{ required: true, message: '请填写手机号', trigger: 'blur' }],
-                identityStatus: [{ required: true, message: '请选择是否为专家', trigger: 'change' }],
-                identityIds: [{ required: true, message: '请选择专家类型', trigger: 'change' }],
-                idType: [{ required: true, message: '请选择证件类型', trigger: 'blur' }],
                 pwd: [{ required: true, message: '请输入账户密码', trigger: 'blur' }],
             },
             departmentData: [], // 部门数据
@@ -197,19 +154,14 @@
                     roleIds: [],
                     depId: null,
                     phone: '',
-                    identityStatus: null,
-                    identityIds: [],
-                    idType: 1,
                     idSerial: '',
                     pwd: '',
-                  qualificationAttId: null
                 };
             } else {
                 state.title = '修改用户';
                 state.isAdd = false
                 state.userForm = JSON.parse(JSON.stringify(value));
                 state.userForm.roleIds = JSON.parse(JSON.stringify(value)).roles.map(i=>i.roleId)
-                state.userForm.identityIds = JSON.parse(JSON.stringify(value)).userIdentities.map(i=>i.userIdentityId)
             }
         };
 
@@ -241,10 +193,6 @@
                       });
                       return
                     }
-                    if(state.userForm.identityStatus == 1){
-                      state.userForm.identityIds = []
-                      state.userForm.qualificationAttId = null
-                    }
                     if (state.title === '新增用户') {
                         let res = await userApi().addUser(state.userForm);
                         if (res.data.code === 100) {
@@ -262,8 +210,8 @@
                             });
                         }
                     } else {
-                        const {name, realName, roleIds, depId, phone, idType, idSerial, id, identityStatus, identityIds, qualificationAttId} = state.userForm
-                        const data = {name, realName, roleIds, depId, phone, idType, idSerial,id, identityStatus, identityIds, qualificationAttId}
+                        const {name, realName, roleIds, depId, phone, idSerial, id} = state.userForm
+                        const data = {name, realName, roleIds, depId, phone, idSerial,id}
                         let res = await userApi().modUser(data);
                         if (res.data.code === 100) {
                             ElMessage({
@@ -338,44 +286,6 @@
           state.userForm.qualificationAttId = res.data.id
         }
       }
-
-      // const beforeRemove = (file: {}, fileList: []) => {
-      //   const result = new Promise((resolve, reject) => {
-      //     if(!state.isOverSize){
-      //       ElMessageBox.confirm('此操作将删除该图片, 是否继续?', '提示', {
-      //         confirmButtonText: '确定',
-      //         cancelButtonText: '取消',
-      //         type: 'warning'
-      //       })
-      //           .then(() => {
-      //             // console.log(state.workDetail.gbPath,'path')
-      //             const list = JSON.parse(JSON.stringify(state.form.workDetail.gbPath))
-      //             fileList.map((item,index)=>{
-      //               if(item.uid === file.uid){
-      //                 fileList.splice(index,1)
-      //                 state.form.workDetail.gbPath.splice(index,1)
-      //                 // 请求删除接口
-      //                 deletePic(false,list[index])
-      //               }
-      //             })
-      //           })
-      //           .catch(() => {
-      //             reject(false);
-      //           });
-      //     }else{
-      //       const list = JSON.parse(JSON.stringify(state.form.workDetail.gbPath))
-      //       fileList.map((item,index)=>{
-      //         if(item.uid === file.uid){
-      //           fileList.splice(index,1)
-      //           state.form.workDetail.gbPath.splice(index,1)
-      //           deletePic(true,list[index])
-      //         }
-      //       })
-      //       state.isOverSize = false
-      //     }
-      //   });
-      //   return result;
-      // };
 
         // 页面加载时
         onMounted(() => {
diff --git a/src/views/system/user/index.vue b/src/views/system/user/index.vue
index 473f805..b662ae7 100644
--- a/src/views/system/user/index.vue
+++ b/src/views/system/user/index.vue
@@ -36,11 +36,6 @@
                     <span>{{ scope.row.roles.map(obj => obj.roleName).join('、') }}</span>
                   </template>
                 </el-table-column>
-                <el-table-column prop="idType" label="证件类型">
-                  <template #default="scope">
-                    <span>{{idTypeList.find(item=>item.id == scope.row.idType)?.name}}</span>
-                  </template>
-                </el-table-column>
                 <el-table-column prop="idSerial" label="证件号码"></el-table-column>
                 <el-table-column label="操作" width="100">
                     <template #default="scope">
@@ -102,7 +97,6 @@
             }
         };
     };
-    idTypeList: Array<idType>
     depList: [];
     roleList: [];
     expList: [];
@@ -130,12 +124,6 @@
                   }
                 }
             },
-            idTypeList:[
-              {
-                id: 1,
-                name: '身份证'
-              }
-            ],
             depList: [],
             roleList: [],
             expList: [],

--
Gitblit v1.9.2