From 1b9fea7d4af68d8f933b2dc42bf6084b9646f64c Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: 星期二, 04 三月 2025 08:39:55 +0800
Subject: [PATCH] 修改作业等级名称

---
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue  |    4 
 src/views/newSpecialWorkSystem/workTicket/zysq/index.vue                    |    2 
 src/views/newSpecialWorkSystem/workTicket/zysq/components/fire.vue          |    5 
 src/views/specialWorkSystem/foundationSet/goods/index.vue                   |    2 
 src/views/newHome/index.vue                                                 | 1960 ++++++++--------
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue    |    4 
 src/views/specialWorkSystem/specialIndex/index.vue                          |    7 
 src/views/system/menu/index.vue                                             |   20 
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue  |    4 
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue   |    4 
 src/views/newSpecialWorkSystem/workTicket/zysq/components/hoist.vue         |    5 
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue    |    2 
 src/views/specialWorkSystem/flow/ruleofApp/components/approveRuleDialog.vue |    2 
 src/views/intellectInspect/inspectIndex/index.vue                           |    1 
 src/layout/navBars/breadcrumb/user.vue                                      | 1005 ++++----
 src/views/newSpecialWorkSystem/workTicket/wdsq/index.vue                    | 1721 +++++++-------
 src/views/specialWorkSystem/flow/ruleofApp/index.vue                        |    2 
 src/views/newSpecialWorkSystem/workTicket/sqjl/index.vue                    | 2270 +++++++++---------
 src/views/newSpecialWorkSystem/workTicket/zysq/components/broken.vue        |    5 
 src/views/newSpecialWorkSystem/workTicket/zysq/components/height.vue        |    7 
 src/views/newSpecialWorkSystem/workTicket/zysq/components/open.vue          |    5 
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue  |    6 
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue   |    4 
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue   |    2 
 src/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue   |    4 
 src/views/newSpecialWorkSystem/workTicket/zysq/components/plate.vue         |    5 
 src/views/newSpecialWorkSystem/workTicket/sbtj/index.vue                    |    2 
 src/views/newSpecialWorkSystem/workTicket/zysq/components/space.vue         |    5 
 src/views/newSpecialWorkSystem/workTicket/zysq/components/power.vue         |    5 
 src/views/newSpecialWorkSystem/workTicket/zysq/components/ground.vue        |    5 
 30 files changed, 3,646 insertions(+), 3,429 deletions(-)

diff --git a/src/layout/navBars/breadcrumb/user.vue b/src/layout/navBars/breadcrumb/user.vue
index 9c7cc17..826a1bf 100644
--- a/src/layout/navBars/breadcrumb/user.vue
+++ b/src/layout/navBars/breadcrumb/user.vue
@@ -1,520 +1,581 @@
 <template>
-    <div class="layout-navbars-breadcrumb-user pr15" :style="{ flex: layoutUserFlexNum }">
-        <div class="logo">
-            <img src="../../../assets/menu/companyLogo.png" />
-            <span>{{ systemName }}</span>
+  <div class="layout-navbars-breadcrumb-user pr15" :style="{ flex: layoutUserFlexNum }">
+    <div class="logo">
+      <!--            <img src="../../../assets/menu/companyLogo.png" />-->
+      <h2>智能安全数字化平台</h2>
+      <span>{{ systemName }}</span>
+    </div>
+    <div style="display: flex; align-items: center; padding-right: 5px">
+      <div @click="backToMenu()" class="backBtn">返回首页</div>
+      <el-dropdown :show-timeout="70" :hide-timeout="50" trigger="click" @command="onComponentSizeChange">
+        <div class="layout-navbars-breadcrumb-user-icon">
+          <i class="iconfont icon-ziti" :title="$t('message.user.title0')"></i>
         </div>
-        <div style="display: flex; align-items: center; padding-right: 5px">
-            <div @click="backToMenu()" class="backBtn">返回首页</div>
-            <el-dropdown :show-timeout="70" :hide-timeout="50" trigger="click" @command="onComponentSizeChange">
-                <div class="layout-navbars-breadcrumb-user-icon">
-                    <i class="iconfont icon-ziti" :title="$t('message.user.title0')"></i>
-                </div>
-                <template #dropdown>
-                    <el-dropdown-menu>
-                        <el-dropdown-item command="large" :disabled="disabledSize === 'large'">{{ $t('message.user.dropdownLarge') }}</el-dropdown-item>
-                        <el-dropdown-item command="default" :disabled="disabledSize === 'default'">{{ $t('message.user.dropdownDefault') }}</el-dropdown-item>
-                        <el-dropdown-item command="small" :disabled="disabledSize === 'small'">{{ $t('message.user.dropdownSmall') }}</el-dropdown-item>
-                    </el-dropdown-menu>
-                </template>
-            </el-dropdown>
-            <!--        <el-dropdown :show-timeout="70" :hide-timeout="50" trigger="click" @command="onLanguageChange">-->
-            <!--            <div class="layout-navbars-breadcrumb-user-icon">-->
-            <!--                <i class="iconfont" :class="disabledI18n === 'en' ? 'icon-fuhao-yingwen' : 'icon-fuhao-zhongwen'" :title="$t('message.user.title1')"></i>-->
-            <!--            </div>-->
-            <!--            <template #dropdown>-->
-            <!--                <el-dropdown-menu>-->
-            <!--                    <el-dropdown-item command="zh-cn" :disabled="disabledI18n === 'zh-cn'">简体中文</el-dropdown-item>-->
-            <!--                    <el-dropdown-item command="en" :disabled="disabledI18n === 'en'">English</el-dropdown-item>-->
-            <!--                    <el-dropdown-item command="zh-tw" :disabled="disabledI18n === 'zh-tw'">繁體中文</el-dropdown-item>-->
-            <!--                </el-dropdown-menu>-->
-            <!--            </template>-->
-            <!--        </el-dropdown>-->
-            <!--        <div class="layout-navbars-breadcrumb-user-icon" @click="onSearchClick">-->
-            <!--            <el-icon :title="$t('message.user.title2')">-->
-            <!--                <ele-Search />-->
-            <!--            </el-icon>-->
-            <!--        </div>-->
-            <!--        <div class="layout-navbars-breadcrumb-user-icon" @click="onLayoutSetingClick">-->
-            <!--            <i class="icon-skin iconfont" :title="$t('message.user.title3')"></i>-->
-            <!--        </div>-->
-            <!--        <div class="layout-navbars-breadcrumb-user-icon">-->
-            <!--            <el-popover placement="bottom" trigger="click" transition="el-zoom-in-top" :width="300" :persistent="false">-->
-            <!--                <template #reference>-->
-            <!--                    <el-badge :is-dot="true">-->
-            <!--                        <el-icon :title="$t('message.user.title4')">-->
-            <!--                            <ele-Bell />-->
-            <!--                        </el-icon>-->
-            <!--                    </el-badge>-->
-            <!--                </template>-->
-            <!--                <template #default>-->
-            <!--                    <UserNews />-->
-            <!--                </template>-->
-            <!--            </el-popover>-->
-            <!--        </div>-->
-            <div class="layout-navbars-breadcrumb-user-icon mr10" @click="onScreenfullClick">
-                <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')" :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i>
-            </div>
-            <el-dropdown :show-timeout="70" :hide-timeout="50" @command="onHandleCommandClick">
+        <template #dropdown>
+          <el-dropdown-menu>
+            <el-dropdown-item command="large" :disabled="disabledSize === 'large'">{{
+                $t('message.user.dropdownLarge')
+              }}
+            </el-dropdown-item>
+            <el-dropdown-item command="default" :disabled="disabledSize === 'default'">
+              {{ $t('message.user.dropdownDefault') }}
+            </el-dropdown-item>
+            <el-dropdown-item command="small" :disabled="disabledSize === 'small'">{{
+                $t('message.user.dropdownSmall')
+              }}
+            </el-dropdown-item>
+          </el-dropdown-menu>
+        </template>
+      </el-dropdown>
+      <!--        <el-dropdown :show-timeout="70" :hide-timeout="50" trigger="click" @command="onLanguageChange">-->
+      <!--            <div class="layout-navbars-breadcrumb-user-icon">-->
+      <!--                <i class="iconfont" :class="disabledI18n === 'en' ? 'icon-fuhao-yingwen' : 'icon-fuhao-zhongwen'" :title="$t('message.user.title1')"></i>-->
+      <!--            </div>-->
+      <!--            <template #dropdown>-->
+      <!--                <el-dropdown-menu>-->
+      <!--                    <el-dropdown-item command="zh-cn" :disabled="disabledI18n === 'zh-cn'">简体中文</el-dropdown-item>-->
+      <!--                    <el-dropdown-item command="en" :disabled="disabledI18n === 'en'">English</el-dropdown-item>-->
+      <!--                    <el-dropdown-item command="zh-tw" :disabled="disabledI18n === 'zh-tw'">繁體中文</el-dropdown-item>-->
+      <!--                </el-dropdown-menu>-->
+      <!--            </template>-->
+      <!--        </el-dropdown>-->
+      <!--        <div class="layout-navbars-breadcrumb-user-icon" @click="onSearchClick">-->
+      <!--            <el-icon :title="$t('message.user.title2')">-->
+      <!--                <ele-Search />-->
+      <!--            </el-icon>-->
+      <!--        </div>-->
+      <!--        <div class="layout-navbars-breadcrumb-user-icon" @click="onLayoutSetingClick">-->
+      <!--            <i class="icon-skin iconfont" :title="$t('message.user.title3')"></i>-->
+      <!--        </div>-->
+      <!--        <div class="layout-navbars-breadcrumb-user-icon">-->
+      <!--            <el-popover placement="bottom" trigger="click" transition="el-zoom-in-top" :width="300" :persistent="false">-->
+      <!--                <template #reference>-->
+      <!--                    <el-badge :is-dot="true">-->
+      <!--                        <el-icon :title="$t('message.user.title4')">-->
+      <!--                            <ele-Bell />-->
+      <!--                        </el-icon>-->
+      <!--                    </el-badge>-->
+      <!--                </template>-->
+      <!--                <template #default>-->
+      <!--                    <UserNews />-->
+      <!--                </template>-->
+      <!--            </el-popover>-->
+      <!--        </div>-->
+      <div class="layout-navbars-breadcrumb-user-icon mr10" @click="onScreenfullClick">
+        <i class="iconfont" :title="isScreenfull ? $t('message.user.title6') : $t('message.user.title5')"
+           :class="!isScreenfull ? 'icon-fullscreen' : 'icon-tuichuquanping'"></i>
+      </div>
+      <el-dropdown :show-timeout="70" :hide-timeout="50" @command="onHandleCommandClick">
                 <span class="layout-navbars-breadcrumb-user-link">
-                    <img src="../../../assets/avator.png" class="layout-navbars-breadcrumb-user-link-photo mr5" style="width: 24px;height: 24px"/>
+                    <img src="../../../assets/avator.png" class="layout-navbars-breadcrumb-user-link-photo mr5"
+                         style="width: 24px;height: 24px"/>
                     {{ userInfos.userName }}
                     <el-icon class="el-icon--right">
-                        <ele-ArrowDown />
+                        <ele-ArrowDown/>
                     </el-icon>
                 </span>
-                <template #dropdown>
-                    <el-dropdown-menu>
-                        <el-dropdown-item command="/newMenu">{{ $t('message.user.dropdown1') }}</el-dropdown-item>
-                        <el-dropdown-item @click="showPwdDialog = true">修改密码</el-dropdown-item>
-                        <!--                    <el-dropdown-item command="wareHouse">{{ $t('message.user.dropdown6') }}</el-dropdown-item>-->
-                        <!--                    <el-dropdown-item command="/personal">{{ $t('message.user.dropdown2') }}</el-dropdown-item>-->
-                        <!--					<el-dropdown-item command="/404">{{ $t('message.user.dropdown3') }}</el-dropdown-item>-->
-                        <!--					<el-dropdown-item command="/401">{{ $t('message.user.dropdown4') }}</el-dropdown-item>-->
-                        <el-dropdown-item divided command="logOut">{{ $t('message.user.dropdown5') }}</el-dropdown-item>
-                    </el-dropdown-menu>
-                </template>
-            </el-dropdown>
-          <el-dialog title="修改密码" v-model="showPwdDialog" width="500px">
-            <el-form :model="pwdForm" size="default" ref="pwdRef" :rules="pwdFormRules" label-width="110px">
-              <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
-                <el-form-item label="新密码" prop="newPassword">
-                  <el-input v-model.trim="pwdForm.newPassword" placeholder="请输入" type="password" show-password>
-                  </el-input>
-                </el-form-item>
-                <el-form-item label="确认新密码" prop="rePassword">
-                  <el-input v-model.trim="pwdForm.rePassword" placeholder="请输入" type="password" show-password>
-                  </el-input>
-                </el-form-item>
-              </el-col>
-            </el-form>
-            <template #footer>
+        <template #dropdown>
+          <el-dropdown-menu>
+            <el-dropdown-item command="/newMenu">{{ $t('message.user.dropdown1') }}</el-dropdown-item>
+            <el-dropdown-item @click="showPwdDialog = true">修改密码</el-dropdown-item>
+            <!--                    <el-dropdown-item command="wareHouse">{{ $t('message.user.dropdown6') }}</el-dropdown-item>-->
+            <!--                    <el-dropdown-item command="/personal">{{ $t('message.user.dropdown2') }}</el-dropdown-item>-->
+            <!--					<el-dropdown-item command="/404">{{ $t('message.user.dropdown3') }}</el-dropdown-item>-->
+            <!--					<el-dropdown-item command="/401">{{ $t('message.user.dropdown4') }}</el-dropdown-item>-->
+            <el-dropdown-item divided command="logOut">{{ $t('message.user.dropdown5') }}</el-dropdown-item>
+          </el-dropdown-menu>
+        </template>
+      </el-dropdown>
+      <el-dialog title="修改密码" v-model="showPwdDialog" width="500px">
+        <el-form :model="pwdForm" size="default" ref="pwdRef" :rules="pwdFormRules" label-width="110px">
+          <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20">
+            <el-form-item label="新密码" prop="newPassword">
+              <el-input v-model.trim="pwdForm.newPassword" placeholder="请输入" type="password" show-password>
+              </el-input>
+            </el-form-item>
+            <el-form-item label="确认新密码" prop="rePassword">
+              <el-input v-model.trim="pwdForm.rePassword" placeholder="请输入" type="password" show-password>
+              </el-input>
+            </el-form-item>
+          </el-col>
+        </el-form>
+        <template #footer>
                 <span class="dialog-footer">
                     <el-button @click="showPwdDialog = !showPwdDialog" size="default">取 消</el-button>
                     <el-button type="primary" v-throttle @click="onPwdSubmit" size="default">确 定</el-button>
                 </span>
-            </template>
-          </el-dialog>
-            <Search ref="searchRef" />
-        </div>
+        </template>
+      </el-dialog>
+      <Search ref="searchRef"/>
     </div>
+  </div>
 </template>
 
 <script lang="ts">
-import { ref, getCurrentInstance, computed, reactive, toRefs, onMounted, defineComponent } from 'vue';
-import { useRouter } from 'vue-router';
-import { ElMessageBox, ElMessage } from 'element-plus';
+import {ref, getCurrentInstance, computed, reactive, toRefs, onMounted, defineComponent} from 'vue';
+import {useRouter} from 'vue-router';
+import {ElMessageBox, ElMessage} from 'element-plus';
 import screenfull from 'screenfull';
-import { useI18n } from 'vue-i18n';
-import { storeToRefs } from 'pinia';
-import { useUserInfo } from '/@/stores/userInfo';
-import { useThemeConfig } from '/@/stores/themeConfig';
+import {useI18n} from 'vue-i18n';
+import {storeToRefs} from 'pinia';
+import {useUserInfo} from '/@/stores/userInfo';
+import {useThemeConfig} from '/@/stores/themeConfig';
 import other from '/@/utils/other';
-import { Session, Local } from '/@/utils/storage';
+import {Session, Local} from '/@/utils/storage';
 import UserNews from '/@/layout/navBars/breadcrumb/userNews.vue';
 import Search from '/@/layout/navBars/breadcrumb/search.vue';
-import { useLoginApi } from '/@/api/login';
-import { useMenuApi } from '/@/api/systemManage/menu/index';
+import {useLoginApi} from '/@/api/login';
+import {useMenuApi} from '/@/api/systemManage/menu/index';
 
 const menuApi = useMenuApi();
-import { backEndComponent, getBackEndControlRoutes, initBackEndControlRoutes, setAddRoute, setFilterMenuAndCacheTagsViewRoutes } from '../../../router/backEnd';
-import { NextLoading } from '/@/utils/loading';
-import { useRequestOldRoutes } from '/@/stores/requestOldRoutes';
-import { dynamicRoutes } from '/@/router/route';
+import {
+  backEndComponent,
+  getBackEndControlRoutes,
+  initBackEndControlRoutes,
+  setAddRoute,
+  setFilterMenuAndCacheTagsViewRoutes
+} from '../../../router/backEnd';
+import {NextLoading} from '/@/utils/loading';
+import {useRequestOldRoutes} from '/@/stores/requestOldRoutes';
+import {dynamicRoutes} from '/@/router/route';
 import Cookies from 'js-cookie';
 import {useRoutesList} from "/@/stores/routesList";
 import {verifyPwd} from "/@/utils/toolsValidate";
 import {userApi} from "/@/api/systemManage/user";
 
 export default defineComponent({
-    name: 'layoutBreadcrumbUser',
-    components: { UserNews, Search },
-    setup() {
-        const { t } = useI18n();
-        const { proxy } = <any>getCurrentInstance();
-        const router = useRouter();
-        const stores = useUserInfo();
-        const routeList = storeToRefs(useRoutesList())
-        const storesThemeConfig = useThemeConfig();
-        const { userInfos } = storeToRefs(stores);
-        const { themeConfig } = storeToRefs(storesThemeConfig);
-        const searchRef = ref();
-      const pwdRef = ref();
-      const validatePwd = (rule: any, value: any, callback: any)=>{
-        if(value === ''){
-          callback(new Error('请输入密码'))
-        }else{
-          if(!verifyPwd(value)){
-            callback(new Error('密码须包含字母、数字、特殊字符,长度在6-16之间'))
-          }else{
-            callback()
-          }
+  name: 'layoutBreadcrumbUser',
+  components: {UserNews, Search},
+  setup() {
+    const {t} = useI18n();
+    const {proxy} = <any>getCurrentInstance();
+    const router = useRouter();
+    const stores = useUserInfo();
+    const routeList = storeToRefs(useRoutesList())
+    const storesThemeConfig = useThemeConfig();
+    const {userInfos} = storeToRefs(stores);
+    const {themeConfig} = storeToRefs(storesThemeConfig);
+    const searchRef = ref();
+    const pwdRef = ref();
+    const validatePwd = (rule: any, value: any, callback: any) => {
+      if (value === '') {
+        callback(new Error('请输入密码'))
+      } else {
+        if (!verifyPwd(value)) {
+          callback(new Error('密码须包含字母、数字、特殊字符,长度在6-16之间'))
+        } else {
+          callback()
         }
       }
-      const equalToPassword = (rule: any, value: any, callback: any) => {
-        if(value == ''){
-          callback(new Error("请再次确认密码"))
-        }else if (state.pwdForm.newPassword !== value) {
-          callback(new Error("两次输入的密码不一致"))
-        } else {
-          callback();
-        }
-      };
-        const state = reactive({
-            isScreenfull: false,
-            disabledI18n: 'zh-cn',
-            disabledSize: 'large',
-            systemName: '',
-          showPwdDialog: false,
-          pwdForm: {
-            uid: Cookies.get('uid'),
-            newPassword: '',
-            rePassword: ''
-          },
-          pwdFormRules: {
-            newPassword: [{ required: true, validator: validatePwd, trigger: 'blur' }],
-            rePassword: [{ required: true, validator: equalToPassword, trigger: "blur" }]
-          }
-        });
-        // 设置分割样式
-        const layoutUserFlexNum = computed(() => {
-            let num: string | number = '';
-            const { layout, isClassicSplitMenu } = themeConfig.value;
-            const layoutArr: string[] = ['defaults', 'columns'];
-            if (layoutArr.includes(layout) || (layout === 'classic' && !isClassicSplitMenu)) num = '1';
-            else num = '';
-            return num;
-        });
+    }
+    const equalToPassword = (rule: any, value: any, callback: any) => {
+      if (value == '') {
+        callback(new Error("请再次确认密码"))
+      } else if (state.pwdForm.newPassword !== value) {
+        callback(new Error("两次输入的密码不一致"))
+      } else {
+        callback();
+      }
+    };
+    const state = reactive({
+      isScreenfull: false,
+      disabledI18n: 'zh-cn',
+      disabledSize: 'large',
+      systemName: '',
+      showPwdDialog: false,
+      pwdForm: {
+        uid: Cookies.get('uid'),
+        newPassword: '',
+        rePassword: ''
+      },
+      pwdFormRules: {
+        newPassword: [{required: true, validator: validatePwd, trigger: 'blur'}],
+        rePassword: [{required: true, validator: equalToPassword, trigger: "blur"}]
+      }
+    });
+    // 设置分割样式
+    const layoutUserFlexNum = computed(() => {
+      let num: string | number = '';
+      const {layout, isClassicSplitMenu} = themeConfig.value;
+      const layoutArr: string[] = ['defaults', 'columns'];
+      if (layoutArr.includes(layout) || (layout === 'classic' && !isClassicSplitMenu)) num = '1';
+      else num = '';
+      return num;
+    });
 
-      const onPwdSubmit = async () => {
-        pwdRef.value.validate(async (valid:Boolean) => {
-          if(valid){
-            const {rePassword,...data} = state.pwdForm
-            let res = await userApi().pwdModSelf(data);
-            if (res.data.code === '200') {
-              state.showPwdDialog = false
-              ElMessage({
-                type: 'success',
-                message: '密码修改成功,请重新登录',
-                duration: 2000
-              })
-              setTimeout(()=>{
-                useLoginApi()
-                    .signOut()
-                    .then(() => {
-                      Session.clear()
-                      window.location.href = '/'
-                    })
-              },2000)
-            } else {
-              ElMessage({
-                type: 'warning',
-                message: res.data.msg
-              });
-            }
-          }else{
+    const onPwdSubmit = async () => {
+      pwdRef.value.validate(async (valid: Boolean) => {
+        if (valid) {
+          const {rePassword, ...data} = state.pwdForm
+          let res = await userApi().pwdModSelf(data);
+          if (res.data.code === '200') {
+            state.showPwdDialog = false
             ElMessage({
-              type:'warning',
-              message:'请完善信息'
+              type: 'success',
+              message: '密码修改成功,请重新登录',
+              duration: 2000
             })
+            setTimeout(() => {
+              useLoginApi()
+                  .signOut()
+                  .then(() => {
+                    Session.clear()
+                    window.location.href = '/'
+                  })
+            }, 2000)
+          } else {
+            ElMessage({
+              type: 'warning',
+              message: res.data.msg
+            });
+          }
+        } else {
+          ElMessage({
+            type: 'warning',
+            message: '请完善信息'
+          })
+        }
+      })
+    }
+
+    // 全屏点击时
+    const onScreenfullClick = () => {
+      if (!screenfull.isEnabled) {
+        ElMessage.warning('暂不不支持全屏');
+        return false;
+      }
+      screenfull.toggle();
+      screenfull.on('change', () => {
+        if (screenfull.isFullscreen) state.isScreenfull = true;
+        else state.isScreenfull = false;
+      });
+    };
+    // 布局配置 icon 点击时
+    const onLayoutSetingClick = () => {
+      proxy.mittBus.emit('openSetingsDrawer');
+    };
+    // 下拉菜单点击时
+    const onHandleCommandClick = (path: string) => {
+      if (path === 'logOut') {
+        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();
+            }
           }
         })
-      }
-
-        // 全屏点击时
-        const onScreenfullClick = () => {
-            if (!screenfull.isEnabled) {
-                ElMessage.warning('暂不不支持全屏');
-                return false;
-            }
-            screenfull.toggle();
-            screenfull.on('change', () => {
-                if (screenfull.isFullscreen) state.isScreenfull = true;
-                else state.isScreenfull = false;
-            });
-        };
-        // 布局配置 icon 点击时
-        const onLayoutSetingClick = () => {
-            proxy.mittBus.emit('openSetingsDrawer');
-        };
-        // 下拉菜单点击时
-        const onHandleCommandClick = (path: string) => {
-            if (path === 'logOut') {
-                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(() => {});
-            } else if (path === 'wareHouse') {
-                window.open('https://gitee.com/lyt-top/vue-next-admin');
-            } else {
-                router.push(path);
-            }
-        };
-        // 菜单搜索点击
-        const onSearchClick = () => {
-            searchRef.value.openSearch();
-        };
-        // 组件大小改变
-        const onComponentSizeChange = (size: string) => {
-            Local.remove('themeConfig');
-            themeConfig.value.globalComponentSize = size;
-            Local.set('themeConfig', themeConfig.value);
-            initComponentSize();
-            window.location.reload();
-        };
-        // 语言切换
-        const onLanguageChange = (lang: string) => {
-            Local.remove('themeConfig');
-            themeConfig.value.globalI18n = lang;
-            Local.set('themeConfig', themeConfig.value);
-            proxy.$i18n.locale = lang;
-            initI18n();
-            other.useTitle();
-        };
-        // 设置 element plus 组件的国际化
-        const setI18nConfig = (locale: string) => {
-            proxy.mittBus.emit('getI18nConfig', proxy.$i18n.messages[locale]);
-        };
-        // 初始化言语国际化
-        const initI18n = () => {
-            switch (Local.get('themeConfig').globalI18n) {
-                case 'zh-cn':
-                    state.disabledI18n = 'zh-cn';
-                    setI18nConfig('zh-cn');
-                    break;
-                case 'en':
-                    state.disabledI18n = 'en';
-                    setI18nConfig('en');
-                    break;
-                case 'zh-tw':
-                    state.disabledI18n = 'zh-tw';
-                    setI18nConfig('zh-tw');
-                    break;
-            }
-        };
-        // 初始化全局组件大小
-        const initComponentSize = () => {
-            switch (Local.get('themeConfig').globalComponentSize) {
-                case 'large':
-                    state.disabledSize = 'large';
-                    break;
-                case 'default':
-                    state.disabledSize = 'default';
-                    break;
-                case 'small':
-                    state.disabledSize = 'small';
-                    break;
-            }
-        };
-
-        const getSysName = async () => {
-            if (window.nextLoading === undefined) NextLoading.start();
-            if (!Cookies.get('token')) return false;
-            const res = await menuApi.getMenuAdmin(Cookies.get('projectId') === null ? '' : Cookies.get('projectId'));
-            if (res.data.code === '200') {
-              if(res.data.data && res.data.data[0]){
-                state.systemName = res.data.data[0].project.projectName;
-              }else{
-                state.systemName = ''
+            .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
+                });
               }
-            } else {
-                console.log('有问题');
-            }
-        };
-        const backToMenu = () => {
-            router.push({ path: 'newMenu' }).then(()=>{
-                routeList.routesList.value = []
+            })
+            .catch(() => {
             });
-        };
-        // const toHome = () => {
-        //     router.push({ path: 'newMenu' });
-        // };
-        // 页面加载时
-        onMounted(() => {
-            if (Local.get('themeConfig')) {
-                initI18n();
-                initComponentSize();
-            }
-            getSysName();
-        });
-        return {
-            userInfos,
-          pwdRef,
-          onPwdSubmit,
-            backToMenu,
-            onLayoutSetingClick,
-            onHandleCommandClick,
-            onScreenfullClick,
-            onSearchClick,
-            onComponentSizeChange,
-            onLanguageChange,
-            searchRef,
-            layoutUserFlexNum,
-            ...toRefs(state)
-        };
-    }
+      } else if (path === 'wareHouse') {
+        window.open('https://gitee.com/lyt-top/vue-next-admin');
+      } else {
+        router.push(path);
+      }
+    };
+    // 菜单搜索点击
+    const onSearchClick = () => {
+      searchRef.value.openSearch();
+    };
+    // 组件大小改变
+    const onComponentSizeChange = (size: string) => {
+      Local.remove('themeConfig');
+      themeConfig.value.globalComponentSize = size;
+      Local.set('themeConfig', themeConfig.value);
+      initComponentSize();
+      window.location.reload();
+    };
+    // 语言切换
+    const onLanguageChange = (lang: string) => {
+      Local.remove('themeConfig');
+      themeConfig.value.globalI18n = lang;
+      Local.set('themeConfig', themeConfig.value);
+      proxy.$i18n.locale = lang;
+      initI18n();
+      other.useTitle();
+    };
+    // 设置 element plus 组件的国际化
+    const setI18nConfig = (locale: string) => {
+      proxy.mittBus.emit('getI18nConfig', proxy.$i18n.messages[locale]);
+    };
+    // 初始化言语国际化
+    const initI18n = () => {
+      switch (Local.get('themeConfig').globalI18n) {
+        case 'zh-cn':
+          state.disabledI18n = 'zh-cn';
+          setI18nConfig('zh-cn');
+          break;
+        case 'en':
+          state.disabledI18n = 'en';
+          setI18nConfig('en');
+          break;
+        case 'zh-tw':
+          state.disabledI18n = 'zh-tw';
+          setI18nConfig('zh-tw');
+          break;
+      }
+    };
+    // 初始化全局组件大小
+    const initComponentSize = () => {
+      switch (Local.get('themeConfig').globalComponentSize) {
+        case 'large':
+          state.disabledSize = 'large';
+          break;
+        case 'default':
+          state.disabledSize = 'default';
+          break;
+        case 'small':
+          state.disabledSize = 'small';
+          break;
+      }
+    };
+
+    const getSysName = async () => {
+      if (window.nextLoading === undefined) NextLoading.start();
+      if (!Cookies.get('token')) return false;
+      const res = await menuApi.getMenuAdmin(Cookies.get('projectId') === null ? '' : Cookies.get('projectId'));
+      if (res.data.code === '200') {
+        if (res.data.data && res.data.data[0]) {
+          state.systemName = res.data.data[0].project.projectName;
+        } else {
+          state.systemName = ''
+        }
+      } else {
+        console.log('有问题');
+      }
+    };
+    const backToMenu = () => {
+      router.push({path: 'newMenu'}).then(() => {
+        routeList.routesList.value = []
+      });
+    };
+    // const toHome = () => {
+    //     router.push({ path: 'newMenu' });
+    // };
+    // 页面加载时
+    onMounted(() => {
+      if (Local.get('themeConfig')) {
+        initI18n();
+        initComponentSize();
+      }
+      getSysName();
+    });
+    return {
+      userInfos,
+      pwdRef,
+      onPwdSubmit,
+      backToMenu,
+      onLayoutSetingClick,
+      onHandleCommandClick,
+      onScreenfullClick,
+      onSearchClick,
+      onComponentSizeChange,
+      onLanguageChange,
+      searchRef,
+      layoutUserFlexNum,
+      ...toRefs(state)
+    };
+  }
 });
 </script>
 
 <style scoped lang="scss">
-    @media screen and (min-width: 1400px) {
-        .logo{
-            img {
-                height: 100%;
-            }
-            span{
-                font-size: 32px;
-                color: #409eff;
-                font-weight: bolder;
-                border-left: 2px solid #409eff;
-                padding-left: 10px
-            }
-        }
-        .backBtn {
-            font-size: 16px;
-            cursor: pointer;
-            margin-right: 20px;
-
-            &:hover {
-                color: #409eff;
-                font-weight: bolder;
-            }
-        }
+@media screen and (min-width: 1400px) {
+  .logo {
+    display: flex;
+    align-items: center;
+    img {
+      height: 100%;
     }
-    @media screen and (min-width: 1200px) and (max-width: 1400px) {
-        .logo{
-            img {
-                height: 90%;
-            }
-            span{
-                font-size: 28px;
-                color: #409eff;
-                font-weight: bolder;
-                border-left: 2px solid #409eff;
-                padding-left: 10px
-            }
-        }
-        .backBtn {
-            font-size: 14px;
-            cursor: pointer;
-            margin-right: 20px;
 
-            &:hover {
-                color: #409eff;
-                font-weight: bolder;
-            }
-        }
+    h2 {
+      width: 220px;
+      font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
+      font-weight: bolder;
+      text-align: center;
+      color: #409eff;
     }
-    @media screen and (max-width: 1024px) {
-        .logo{
-            img {
-                width: 60%;
-                height: auto;
-            }
-            span{
-                font-size: 22px;
-                color: #409eff;
-                font-weight: bolder;
-                border-left: 2px solid #409eff;
-                padding-left: 10px
-            }
-        }
-        .backBtn {
-            font-size: 12px;
-            cursor: pointer;
-            margin-right: 20px;
 
-            &:hover {
-                color: #409eff;
-                font-weight: bolder;
-            }
-        }
+    span {
+      font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
+      color: #333;
+      font-weight: bolder;
+      border-left: 2px solid #409eff;
+      padding-left: 15px
     }
-    .layout-navbars-breadcrumb-user {
-        display: flex;
-        align-items: center;
-        justify-content: space-between;
+  }
+  .backBtn {
+    font-size: 16px;
+    cursor: pointer;
+    margin-right: 20px;
 
-        .logo {
-            height: 75%;
-            padding: 5px 10px;
-            display: flex;
-            align-items: center;
-            overflow: hidden;
-            box-sizing: border-box;
-        }
-        &-link {
-            height: 100%;
-            display: flex;
-            align-items: center;
-            white-space: nowrap;
-            &-photo {
-                width: 25px;
-                height: 25px;
-                border-radius: 100%;
-            }
-        }
-        &-icon {
-            padding: 0 10px;
-            cursor: pointer;
-            color: var(--next-bg-topBarColor);
-            height: 80px;
-            line-height: 80px;
-            display: flex;
-            align-items: center;
-            &:hover {
-                background: var(--next-color-user-hover);
-                i {
-                    display: inline-block;
-                    animation: logoAnimation 0.3s ease-in-out;
-                }
-            }
-        }
-        ::v-deep(.el-dropdown) {
-            color: var(--next-bg-topBarColor);
-        }
-        ::v-deep(.el-badge) {
-            height: 40px;
-            line-height: 40px;
-            display: flex;
-            align-items: center;
-        }
-        ::v-deep(.el-badge__content.is-fixed) {
-            top: 12px;
-        }
+    &:hover {
+      color: #409eff;
+      font-weight: bolder;
     }
+  }
+}
+
+@media screen and (min-width: 1200px) and (max-width: 1400px) {
+  .logo {
+    display: flex;
+    align-items: center;
+    img {
+      height: 100%;
+    }
+
+    h2 {
+      width: 220px;
+      font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
+      font-weight: bolder;
+      text-align: center;
+      color: #409eff;
+    }
+
+    span {
+      font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
+      color: #333;
+      font-weight: bolder;
+      border-left: 2px solid #409eff;
+      padding-left: 15px
+    }
+  }
+  .backBtn {
+    font-size: 14px;
+    cursor: pointer;
+    margin-right: 20px;
+
+    &:hover {
+      color: #409eff;
+      font-weight: bolder;
+    }
+  }
+}
+
+@media screen and (max-width: 1024px) {
+  .logo {
+    display: flex;
+    align-items: center;
+    img {
+      height: 100%;
+    }
+
+    h2 {
+      width: 220px;
+      font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
+      font-weight: bolder;
+      text-align: center;
+      color: #409eff;
+    }
+
+    span {
+      font-size: clamp(1.25rem, 0.833rem + 0.56vw, 1.5rem);
+      color: #333;
+      font-weight: bolder;
+      border-left: 2px solid #409eff;
+      padding-left: 15px
+    }
+  }
+  .backBtn {
+    font-size: 12px;
+    cursor: pointer;
+    margin-right: 20px;
+
+    &:hover {
+      color: #409eff;
+      font-weight: bolder;
+    }
+  }
+}
+
+.layout-navbars-breadcrumb-user {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+
+  .logo {
+    height: 75%;
+    padding: 5px 0;
+    display: flex;
+    align-items: center;
+    overflow: hidden;
+    box-sizing: border-box;
+  }
+
+  &-link {
+    height: 100%;
+    display: flex;
+    align-items: center;
+    white-space: nowrap;
+
+    &-photo {
+      width: 25px;
+      height: 25px;
+      border-radius: 100%;
+    }
+  }
+
+  &-icon {
+    padding: 0 10px;
+    cursor: pointer;
+    color: var(--next-bg-topBarColor);
+    height: 80px;
+    line-height: 80px;
+    display: flex;
+    align-items: center;
+
+    &:hover {
+      background: var(--next-color-user-hover);
+
+      i {
+        display: inline-block;
+        animation: logoAnimation 0.3s ease-in-out;
+      }
+    }
+  }
+
+  ::v-deep(.el-dropdown) {
+    color: var(--next-bg-topBarColor);
+  }
+
+  ::v-deep(.el-badge) {
+    height: 40px;
+    line-height: 40px;
+    display: flex;
+    align-items: center;
+  }
+
+  ::v-deep(.el-badge__content.is-fixed) {
+    top: 12px;
+  }
+}
 </style>
diff --git a/src/views/intellectInspect/inspectIndex/index.vue b/src/views/intellectInspect/inspectIndex/index.vue
index 43b8aae..b9a2fd9 100644
--- a/src/views/intellectInspect/inspectIndex/index.vue
+++ b/src/views/intellectInspect/inspectIndex/index.vue
@@ -667,7 +667,6 @@
                   }
                 }
                 state.depList = newList
-                console.log(state.depList,'3434')
             } else {
                 ElMessage({
                     type: 'warning',
diff --git a/src/views/newHome/index.vue b/src/views/newHome/index.vue
index 4382f35..0acc77e 100644
--- a/src/views/newHome/index.vue
+++ b/src/views/newHome/index.vue
@@ -1,1023 +1,1067 @@
 <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 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" />-->
+        <span style="font-size: 18px;color: #fff">智能安全数字化平台</span>
+      </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="leftCont"></div>
-        <div class="topCont">
-            <div class="topInfo">
-                <div class="topTit">智能安全数字化平台</div>
-                <div class="topTime">
-                    <div class="time">
-                        {{ time }}
-                    </div>
-                    <span></span>
-                    <div class="today">
-                        <div>{{ date }}</div>
-                        <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">智能安全数字化平台</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>
-        <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="toManLocation">-->
-<!--                  <div class="toplayer">-->
-<!--                    <img class="iconImg" src="../../assets/newMenu/icon12.png" />-->
-<!--                    <div>-->
-<!--                      <div class="itemTit">人员定位系统</div>-->
-<!--                      <div class="enTit">Personnel Positioning System</div>-->
-<!--                    </div>-->
-<!--                  </div>-->
-<!--                  <img class="bgImg" src="../../assets/newMenu/card-12.png" />-->
-<!--                </div>-->
-<!--                <div class="grid-content cont-bg-2" v-throttle @click="render('12')">-->
-<!--                  <div class="toplayer">-->
-<!--                    <img class="iconImg" src="../../assets/newMenu/icon14.png" />-->
-<!--                    <div>-->
-<!--                      <div class="itemTit">监管数据融合互通系统</div>-->
-<!--                      <div class="enTit">Regulatory Data Integration and Interoperability System</div>-->
-<!--                    </div>-->
-<!--                  </div>-->
-<!--                  <img class="bgImg" src="../../assets/newMenu/card-14.png" />-->
-<!--                </div>-->
-<!--                <div class="grid-content cont-bg-2" 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>-->
-<!--&lt;!&ndash;                            <div class="itemTit">智能安全危险化学品全生命周期管控系统</div>&ndash;&gt;-->
-<!--&lt;!&ndash;                            <div class="enTit">Intelligent Security Hazardous Chemicals Life Cycle Safety Management System</div>&ndash;&gt;-->
-<!--                            <div class="itemTit">安全教育考试系统</div>-->
-<!--                            <div class="enTit">Safety Education Examination 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" v-throttle @click="toSmartFactory">-->
-<!--                  <div class="toplayer">-->
-<!--                    <img class="iconImg" src="../../assets/newMenu/icon13.png" />-->
-<!--                    <div>-->
-<!--                      <div class="itemTit">智能工厂系统</div>-->
-<!--                      <div class="enTit">Intelligent Factory System</div>-->
-<!--                    </div>-->
-<!--                  </div>-->
-<!--                  <img class="bgImg" src="../../assets/newMenu/card-13.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>
+      <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="toManLocation">-->
+        <!--                  <div class="toplayer">-->
+        <!--                    <img class="iconImg" src="../../assets/newMenu/icon12.png" />-->
+        <!--                    <div>-->
+        <!--                      <div class="itemTit">人员定位系统</div>-->
+        <!--                      <div class="enTit">Personnel Positioning System</div>-->
+        <!--                    </div>-->
+        <!--                  </div>-->
+        <!--                  <img class="bgImg" src="../../assets/newMenu/card-12.png" />-->
+        <!--                </div>-->
+        <!--                <div class="grid-content cont-bg-2" v-throttle @click="render('12')">-->
+        <!--                  <div class="toplayer">-->
+        <!--                    <img class="iconImg" src="../../assets/newMenu/icon14.png" />-->
+        <!--                    <div>-->
+        <!--                      <div class="itemTit">监管数据融合互通系统</div>-->
+        <!--                      <div class="enTit">Regulatory Data Integration and Interoperability System</div>-->
+        <!--                    </div>-->
+        <!--                  </div>-->
+        <!--                  <img class="bgImg" src="../../assets/newMenu/card-14.png" />-->
+        <!--                </div>-->
+        <!--                <div class="grid-content cont-bg-2" 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>-->
+        <!--&lt;!&ndash;                            <div class="itemTit">智能安全危险化学品全生命周期管控系统</div>&ndash;&gt;-->
+        <!--&lt;!&ndash;                            <div class="enTit">Intelligent Security Hazardous Chemicals Life Cycle Safety Management System</div>&ndash;&gt;-->
+        <!--                            <div class="itemTit">安全教育考试系统</div>-->
+        <!--                            <div class="enTit">Safety Education Examination 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" v-throttle @click="toSmartFactory">-->
+        <!--                  <div class="toplayer">-->
+        <!--                    <img class="iconImg" src="../../assets/newMenu/icon13.png" />-->
+        <!--                    <div>-->
+        <!--                      <div class="itemTit">智能工厂系统</div>-->
+        <!--                      <div class="enTit">Intelligent Factory System</div>-->
+        <!--                    </div>-->
+        <!--                  </div>-->
+        <!--                  <img class="bgImg" src="../../assets/newMenu/card-13.png" />-->
+        <!--                </div>-->
+        <div class="grid-content cont-bg-1" @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, onUnmounted} from 'vue';
-import { storeToRefs } from 'pinia';
-import { useThemeConfig } from '/@/stores/themeConfig';
+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 {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 {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;
-    timer: null | any
+  tabsActiveName: string;
+  isScan: boolean;
+  count: number;
+  projectId: string;
+  once: number;
+  isScreenfull: boolean;
+  time: string;
+  date: string;
+  weekDay: string;
+  dayTime: string;
+  timer: null | any
 }
 
 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,
-              timer: null
-        });
+  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,
+      timer: null
+    });
 
-        const userName = computed(() =>{
-            return userInfos.value.userName
-        })
-        // 获取布局配置信息
-        const getThemeConfig = computed(() => {
-            return themeConfig.value;
-        });
+    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 = async() => {
-            // router.push({
-            //     name: "warningScreen"
-            // });
-          const routePath = '/warningScreen';
-          const resolvedRoute = router.resolve(routePath);
-          const fullPath = resolvedRoute.href
-          window.open(fullPath, '_blank');
-
-            // window.open('http://39.104.85.193:8585/');
-        };
-
-        const toDoublePrevent = () => {
-           window.open('http://8.137.115.153:6801/login');
-        };
-        const toSmartFactory = () =>{
-          window.open('http://117.190.40.54:5522/#/login');
+    // 当前时间
+    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();
+          }
         }
-        const toManLocation = () =>{
-          window.open('http://117.190.40.54:8081/location_system_5.4.9/login/login.html?company=GUOTAI&version=5.4.9');
-        }
-        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(() => {
-          // debugger
-            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 > 0) {
-                    router.push(linkToFirstMenu(JSON.parse(JSON.stringify(linkToMenu))[0]));
-                } else {
-                    ElMessage({ type: 'warning', message: '你没有该子系统的权限' });
-                }
-            });
-        };
-
-        const linkToFirstMenu: any = (value: any) => {
-            let returnMenu = value;
-            if (returnMenu.children?.length > 0) {
-                return linkToFirstMenu(returnMenu.children[0]);
+      })
+          .then(async () => {
+            let res = await useLoginApi().signOut();
+            if (res.data.code === '200') {
+              Session.clear(); // 清除缓存/token等
+              // 使用 reload 时,不需要调用 resetRoute() 重置路由
+              window.location.reload();
             } else {
-                return returnMenu.path;
+              ElMessage({
+                type: 'warning',
+                message: res.data.msg
+              });
             }
-        };
+          })
+          .catch(() => {
+          });
+    };
+    //选择菜单
+    const render = (value: string) => {
+      state.projectId = value;
+      renderMenu();
+    };
 
-        const renderToNew = () => {
-            // window.open('http://222.92.213.22:18001/smartlab/', '_blank');
-          window.open('http://47.108.222.15:8000/', '_blank');
-        };
-        // //点击进入特殊作业
-        // const toSpecialWorkSys = () => {
-        // 	router.push('/layoutPage');
-        // };
-        // 页面加载时
-        onMounted(() => {
-            state.once += 1;
-            NextLoading.done();
-            getDateTime();
-            state.timer = setInterval(() => {
-                getDateTime();
-            }, 30000);
-            // loginBg();
-            // loginApp()
-        })
-
-      onUnmounted(() => {
-        clearInterval(state.timer)
+    // 全屏点击时
+    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 = async () => {
+      // router.push({
+      //     name: "warningScreen"
+      // });
+      const routePath = '/warningScreen';
+      const resolvedRoute = router.resolve(routePath);
+      const fullPath = resolvedRoute.href
+      window.open(fullPath, '_blank');
 
-        return {
-            render,
-            userName,
-            logoMini,
-            onLoginOut,
-            getDateTime,
-            renderToNew,
-            toRiskPlatform,
-            toDoublePrevent,
-            toSmartFactory,
-            toManLocation,
-            onScreenfullClick,
-            loginIconTwo,
-            getThemeConfig,
-            ...toRefs(state)
-        };
+      // window.open('http://39.104.85.193:8585/');
+    };
+
+    const toDoublePrevent = () => {
+      window.open('http://8.137.115.153:6801/login');
+    };
+    const toSmartFactory = () => {
+      window.open('http://117.190.40.54:5522/#/login');
     }
+    const toManLocation = () => {
+      window.open('http://117.190.40.54:8081/location_system_5.4.9/login/login.html?company=GUOTAI&version=5.4.9');
+    }
+    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(() => {
+      // debugger
+      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 > 0) {
+          router.push(linkToFirstMenu(JSON.parse(JSON.stringify(linkToMenu))[0]));
+        } 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');
+      window.open('http://47.108.222.15:8000/', '_blank');
+    };
+    // //点击进入特殊作业
+    // const toSpecialWorkSys = () => {
+    // 	router.push('/layoutPage');
+    // };
+    // 页面加载时
+    onMounted(() => {
+      state.once += 1;
+      NextLoading.done();
+      getDateTime();
+      state.timer = setInterval(() => {
+        getDateTime();
+      }, 30000);
+      // loginBg();
+      // loginApp()
+    })
+
+    onUnmounted(() => {
+      clearInterval(state.timer)
+    });
+
+    return {
+      render,
+      userName,
+      logoMini,
+      onLoginOut,
+      getDateTime,
+      renderToNew,
+      toRiskPlatform,
+      toDoublePrevent,
+      toSmartFactory,
+      toManLocation,
+      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);
-        }
-    }
+@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%;
-        display: grid;
-        grid-gap: 20px;
-        grid-template-columns: repeat(3, 1fr);
-        grid-template-rows: repeat(5, 200px);
-        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;
+  .gridCont {
+    width: 100%;
+    display: grid;
+    grid-gap: 20px;
+    grid-template-columns: repeat(2, 1fr);
+    grid-template-rows: repeat(5, 200px);
+    grid-auto-flow: row;
+    justify-content: center;
 
-            .itemTit {
-                font-size: 28px;
-                line-height: 34px;
-                margin-bottom: 2px;
-                height: 40%;
-                color: #072270;
-            }
-            .enTit {
-                font-size: 16px;
-                line-height: 20px;
-                color: #072270;
-            }
+    .toplayer {
+      width: 100%;
+      height: 100%;
+      position: absolute;
+      left: 0;
+      top: 0;
+      display: flex;
+      align-items: center;
+      padding: 0 20px;
+      z-index: 99;
 
-            .iconImg {
-                width: 88px;
-                height: 88px;
-                margin-right: 20px;
-            }
-        }
-        .bgImg {
-            position: absolute;
-            width: 30%;
-            height: auto;
-            right: -10px;
-            top: 15px;
-        }
+      .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;
+      }
     }
 
-    .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%;
-        }
+    .bgImg {
+      position: absolute;
+      width: 30%;
+      height: auto;
+      right: -10px;
+      top: 15px;
     }
+  }
 
-    .bot-rights {
+  .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;
-        color: #333;
+        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%;
-        display: grid;
-        grid-gap: 15px;
-        grid-template-columns: repeat(3, 1fr);
-        grid-template-rows: repeat(5, 120px);
-        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%;
-        display: grid;
-        grid-gap: 10px;
-        grid-template-columns: repeat(3, 1fr);
-        grid-template-rows: repeat(5, 96px);
-        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 {
+  .gridCont {
     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: grid;
+    grid-gap: 15px;
+    grid-template-columns: repeat(2, 1fr);
+    grid-template-rows: repeat(5, 120px);
+    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;
-        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;
+      .itemTit1 {
+        font-size: 24px;
+        line-height: 36px;
+        height: 40%;
+        letter-spacing: 1px;
+        color: #072270;
+        margin-bottom: 12px;
+      }
 
-            .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;
-        }
+      .enTit1 {
+        font-size: 14px;
+        color: #072270;
+      }
     }
-    .menuGrid {
-        width: calc(100vw - 220px);
-        height: calc(100vh - 320px);
-        padding: 20px 20px 0;
-        position: absolute;
-        top: 260px;
-        left: 220px;
-      overflow: hidden;
-      overflow-y: scroll;
-        .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);*/
-            /*}*/
-        }
+    .bgImg1 {
+      position: absolute;
+      width: 45%;
+      height: auto;
+      right: -20px;
+      top: 30%;
     }
-    .bot-rights {
-        width: calc(100vw - 240px);
-        height: 60px;
-        position: absolute;
-        bottom: 0;
-        left: 240px;
-        z-index: 9999;
+  }
+  .bot-rights {
+    font-size: 15px;
+    color: #333;
+  }
+}
+
+@media screen and (max-width: 1200px) {
+  .gridCont {
+    width: 100%;
+    display: grid;
+    grid-gap: 10px;
+    grid-template-columns: repeat(2, 1fr);
+    grid-template-rows: repeat(5, 96px);
+    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: center;
-        justify-content: center;
+        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 0 0;
+    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;
+      width: 220px;
+
+
+      img {
+        width: 146px;
+        height: auto;
+      }
+
+      span {
+        width: 100%;
+        text-align: center;
+      }
+    }
+
+    .userInfo {
+      display: flex;
+      align-items: center;
+
+      .avator {
+        display: flex;
+        justify-content: right;
 
         img {
-            width: 248px;
-            height: 8px;
+          width: 20px;
+          height: 20px;
+          border-radius: 10px;
         }
+
         div {
-            margin: 0 20px;
+          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: 8px;
+        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/newSpecialWorkSystem/workTicket/sbtj/index.vue b/src/views/newSpecialWorkSystem/workTicket/sbtj/index.vue
index 0088649..aeb8f59 100644
--- a/src/views/newSpecialWorkSystem/workTicket/sbtj/index.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/sbtj/index.vue
@@ -31,7 +31,7 @@
                   </div>
                 </div>
                 <el-table :data="tableData" style="width: 100%" :header-cell-style="{ background: '#fafafa' }">
-                  <el-table-column property="seDepName" label="事业部" align="center"/>
+                  <el-table-column property="seDepName" label="部门" align="center"/>
                   <el-table-column property="totalCount" label="总数" align="center"/>
                   <el-table-column v-for="workType in workTypes" :key="workType.workType" :label="workType.workTypeDesc" :prop="`list.${workType.workType - 1}.count`"></el-table-column>
                 </el-table>
diff --git a/src/views/newSpecialWorkSystem/workTicket/sqjl/index.vue b/src/views/newSpecialWorkSystem/workTicket/sqjl/index.vue
index 8764d1a..045d4e7 100644
--- a/src/views/newSpecialWorkSystem/workTicket/sqjl/index.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/sqjl/index.vue
@@ -1,1165 +1,1243 @@
 <template>
-    <div class="home-container">
-<!--        <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">-->
-<!--            <el-tab-pane label="申请中" name="1">-->
-                <div style="height: 100%">
-                    <el-row class="homeCard">
-                     <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
-                        <span>时间筛选:</span>
-                        <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime()" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间" />
-                      </div>
-                      <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
-                        <span>负责人:</span>
-                        <el-input v-model.trim="searPara.headUserName" placeholder="负责人"/>
-                      </div>
-                      <div class="basic-line">
-                        <span>事业部:</span>
-                        <el-select v-model="searPara.secondDepId">
-                          <el-option
-                              v-for="item in dep4List"
-                              :key="item.id"
-                              :label="item.name"
-                              :value="item.id"
-                          />
-                        </el-select>
-                      </div>
-                      <div class="basic-line">
-                        <span>作业类型:</span>
-                        <el-select v-model="searPara.workType">
-                          <el-option
-                              v-for="item in workType"
-                              :key="item.id"
-                              :label="item.name"
-                              :value="item.id"
-                          />
-                        </el-select>
-                      </div>
-                      <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
-                        <span>作业票编号:</span>
-                        <el-input
-                            v-model.trim="searPara.workPermitNo"
-                            placeholder="请输入作业票编号"
-                        />
-                      </div>
-                      <div style="margin-left: 20px">
-                        <el-button type="primary" @click="searchRecord">查询</el-button>
-                        <el-button plain @click="clearSearch">重置</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="toApply()">新增申报</el-button>
-                                    <!--									<el-button type="danger" :icon="Delete" size="default">删除</el-button>-->
-                                    <!--									<el-button type="success" size="default">设置分类</el-button>-->
-                                </el-col>
-                                <el-button type="primary" :icon="Refresh" size="default" @click="reLoadData()" />
-                            </el-row>
-                            <el-table ref="multipleTableRef" :data="applyData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                              <el-table-column property="workPermitNo" label="作业编号" align="center">
-                                <template #default="scope">
-                                  {{scope.row.workPermitNo?scope.row.workPermitNo:'—'}}
-                                </template>
-                              </el-table-column>
-                                <el-table-column property="seDepName" label="事业部" align="center"/>
-                                <el-table-column property="applyDepName" label="作业所在车间" align="center"/>
-                                <el-table-column property="workContent" label="作业内容" align="center"/>
-                                <el-table-column property="workTypeDesc" label="作业类型" align="center"/>
-                                <el-table-column label="作业单位" align="center">
-                                  <template #default="scope">
-                                    <span v-if="scope.row.workDepList && scope.row.workDepList.length>0">{{scope.row.workDepList.map(i=>i.workDepName).join(',')}}</span>
-                                    <span v-else>{{scope.row.workDepName }}</span>
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="headList" label="负责人及电话" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.headList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="operatorList" label="作业人及电话" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.operatorList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="guardianList" label="监护人及电话" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.guardianList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="expStartTime" label="作业开始时间" align="center"/>
-                                <el-table-column property="expEndTime" label="预计完成时间" align="center"/>
-                                <el-table-column label="执法仪编号" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.workApprovalDeviceList.map(i=>i.deviceNo).join(',')}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column label="作业人数" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.operatorList.length}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column label="监护人数" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.guardianList.length}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column label="作业状态" align="center">
-                                    <template #default="scope">
-                                        <el-tag>{{ statusList.find(i=>i.value === scope.row.status)?.label }}</el-tag>
-                                    </template>
-                                </el-table-column>
-                                <el-table-column fixed="right" label="操作" align="center" width="300">
-                                    <template #default="scope">
-<!--                                        <el-button link type="danger" size="small" :icon="Delete" @click="deleteRecordBtn(scope.row)">作废</el-button>-->
-                                        <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button>
-                                        <el-button v-if="(scope.row.working?.workAllStatus == 3 || scope.row.working?.workAllStatus == 4 || scope.row.working?.workAllStatus == 5)&&!scope.row.renewalWorkApplyId" link type="primary" size="small" :icon="Edit" @click="continueRecord(scope.row)">一键续票</el-button>
-<!--                                        <el-button link type="success" size="small" :icon="Finished">修改</el-button>-->
-<!--                                        <el-button link type="success" size="small" :icon="Download">正式办票</el-button>-->
-                                        <el-button link type="primary" size="small" :icon="Download" @click="downLoadRecord(scope.row)">作业票预览</el-button>
-                                    </template>
-                                </el-table-column>
-                            </el-table>
-                            <div class="pageBtn">
-                                <el-pagination v-model:currentPage="pageIndex1" v-model:page-size="pageSize1" :page-sizes="[10, 15]" small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize1" @size-change="handleSizeChange1" @current-change="handleCurrentChange1" />
-                            </div>
-                        </div>
-                    </div>
-                </div>
-                <el-dialog v-model="dialogDetails" title="作业申请详情" center>
-<!--                    <fire v-if="dialogType == 1" :details = details></fire>-->
-<!--                    <space v-else-if="dialogType == 2" :details = details></space>-->
-<!--                    <hoist v-else-if="dialogType == 3" :details = details></hoist>-->
-<!--                    <ground v-else-if="dialogType == 4" :details = details></ground>-->
-<!--                    <broken v-else-if="dialogType == 5" :details = details></broken>-->
-<!--                    <height v-else-if="dialogType == 6" :details = details></height>-->
-<!--                    <power v-else-if="dialogType == 7" :details = details></power>-->
-<!--                    <plate v-else :details = details></plate>-->
-                  <detail-log :type=dialogType :statusList=statusList :details = details></detail-log>
-                    <template #footer>
+  <div class="home-container">
+    <!--        <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">-->
+    <!--            <el-tab-pane label="申请中" name="1">-->
+    <div style="height: 100%">
+      <el-row class="homeCard">
+        <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
+          <span>时间筛选:</span>
+          <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime()"
+                          range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间"/>
+        </div>
+        <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
+          <span>负责人:</span>
+          <el-input v-model.trim="searPara.headUserName" placeholder="负责人"/>
+        </div>
+        <div class="basic-line">
+          <span>部门:</span>
+          <!--                        <el-select v-model="searPara.secondDepId">-->
+          <!--                          <el-option-->
+          <!--                              v-for="item in dep4List"-->
+          <!--                              :key="item.id"-->
+          <!--                              :label="item.name"-->
+          <!--                              :value="item.id"-->
+          <!--                          />-->
+          <!--                        </el-select>-->
+          <el-cascader :teleported="false" v-model="searPara.secondDepId" :options="departmentList" :props="casProps"
+                       :show-all-levels="false"/>
+        </div>
+        <div class="basic-line">
+          <span>作业类型:</span>
+          <el-select v-model="searPara.workType">
+            <el-option
+                v-for="item in workType"
+                :key="item.id"
+                :label="item.name"
+                :value="item.id"
+            />
+          </el-select>
+        </div>
+        <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
+          <span>作业票编号:</span>
+          <el-input
+              v-model.trim="searPara.workPermitNo"
+              placeholder="请输入作业票编号"
+          />
+        </div>
+        <div style="margin-left: 20px">
+          <el-button type="primary" @click="searchRecord">查询</el-button>
+          <el-button plain @click="clearSearch">重置</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="toApply()">新增申报</el-button>
+              <!--									<el-button type="danger" :icon="Delete" size="default">删除</el-button>-->
+              <!--									<el-button type="success" size="default">设置分类</el-button>-->
+            </el-col>
+            <el-button type="primary" :icon="Refresh" size="default" @click="reLoadData()"/>
+          </el-row>
+          <el-table ref="multipleTableRef" :data="applyData" style="width: 100%" height="calc(100% - 100px)"
+                    :header-cell-style="{ background: '#fafafa' }">
+            <el-table-column property="workPermitNo" label="作业编号" align="center">
+              <template #default="scope">
+                {{ scope.row.workPermitNo ? scope.row.workPermitNo : '—' }}
+              </template>
+            </el-table-column>
+            <el-table-column property="seDepName" label="事业部" align="center"/>
+            <el-table-column property="applyDepName" label="作业所在车间" align="center"/>
+            <el-table-column property="workContent" label="作业内容" align="center"/>
+            <el-table-column property="workTypeDesc" label="作业类型" align="center"/>
+            <el-table-column label="作业单位" align="center">
+              <template #default="scope">
+                <span
+                    v-if="scope.row.workDepList && scope.row.workDepList.length>0">{{ scope.row.workDepList.map(i => i.workDepName).join(',') }}</span>
+                <span v-else>{{ scope.row.workDepName }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column property="headList" label="负责人及电话" align="center">
+              <template #default="scope">
+                {{
+                  scope.row.headList.map(i => {
+                    return i.userName + '(' + i.phone + ')'
+                  }).join(',')
+                }}
+              </template>
+            </el-table-column>
+            <el-table-column property="operatorList" label="作业人及电话" align="center">
+              <template #default="scope">
+                {{
+                  scope.row.operatorList.map(i => {
+                    return i.userName + '(' + i.phone + ')'
+                  }).join(',')
+                }}
+              </template>
+            </el-table-column>
+            <el-table-column property="guardianList" label="监护人及电话" align="center">
+              <template #default="scope">
+                {{
+                  scope.row.guardianList.map(i => {
+                    return i.userName + '(' + i.phone + ')'
+                  }).join(',')
+                }}
+              </template>
+            </el-table-column>
+            <el-table-column property="expStartTime" label="作业开始时间" align="center"/>
+            <el-table-column property="expEndTime" label="预计完成时间" align="center"/>
+            <el-table-column label="执法仪编号" align="center">
+              <template #default="scope">
+                {{ scope.row.workApprovalDeviceList.map(i => i.deviceNo).join(',') }}
+              </template>
+            </el-table-column>
+            <el-table-column label="作业人数" align="center">
+              <template #default="scope">
+                {{ scope.row.operatorList.length }}
+              </template>
+            </el-table-column>
+            <el-table-column label="监护人数" align="center">
+              <template #default="scope">
+                {{ scope.row.guardianList.length }}
+              </template>
+            </el-table-column>
+            <el-table-column label="作业状态" align="center">
+              <template #default="scope">
+                <el-tag>{{ statusList.find(i => i.value === scope.row.status)?.label }}</el-tag>
+              </template>
+            </el-table-column>
+            <el-table-column fixed="right" label="操作" align="center" width="300">
+              <template #default="scope">
+                <!--                                        <el-button link type="danger" size="small" :icon="Delete" @click="deleteRecordBtn(scope.row)">作废</el-button>-->
+                <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button>
+                <el-button
+                    v-if="(scope.row.working?.workAllStatus == 3 || scope.row.working?.workAllStatus == 4 || scope.row.working?.workAllStatus == 5)&&!scope.row.renewalWorkApplyId"
+                    link type="primary" size="small" :icon="Edit" @click="continueRecord(scope.row)">一键续票
+                </el-button>
+                <!--                                        <el-button link type="success" size="small" :icon="Finished">修改</el-button>-->
+                <!--                                        <el-button link type="success" size="small" :icon="Download">正式办票</el-button>-->
+                <el-button link type="primary" size="small" :icon="Download" @click="downLoadRecord(scope.row)">
+                  作业票预览
+                </el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+          <div class="pageBtn">
+            <el-pagination v-model:currentPage="pageIndex1" v-model:page-size="pageSize1" :page-sizes="[10, 15]"
+                           small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize1"
+                           @size-change="handleSizeChange1" @current-change="handleCurrentChange1"/>
+          </div>
+        </div>
+      </div>
+    </div>
+    <el-dialog v-model="dialogDetails" title="作业申请详情" center>
+      <!--                    <fire v-if="dialogType == 1" :details = details></fire>-->
+      <!--                    <space v-else-if="dialogType == 2" :details = details></space>-->
+      <!--                    <hoist v-else-if="dialogType == 3" :details = details></hoist>-->
+      <!--                    <ground v-else-if="dialogType == 4" :details = details></ground>-->
+      <!--                    <broken v-else-if="dialogType == 5" :details = details></broken>-->
+      <!--                    <height v-else-if="dialogType == 6" :details = details></height>-->
+      <!--                    <power v-else-if="dialogType == 7" :details = details></power>-->
+      <!--                    <plate v-else :details = details></plate>-->
+      <detail-log :type=dialogType :statusList=statusList :details=details></detail-log>
+      <template #footer>
                       <span class="dialog-footer">
                         <el-button type="primary" @click="dialogDetails = false"
                         >确认</el-button
                         >
                       </span>
-                    </template>
-                </el-dialog>
-                <el-dialog v-model="dialogStatus" title="作业申请进度" width="60%">
-                    <el-form v-if="approveInfo.operators.length > 0" style="margin-bottom: 40px">
-                        <el-form-item label="申请作业人">
-                            <el-input v-model="approveInfo.operators" readonly type="textarea" />
-                        </el-form-item>
-                    </el-form>
-                    <div style="display: flex; flex-direction: column-reverse">
-                        <div v-for="(item, index) in approveInfo.approvalSteps" class="stepItem">
-                            <div class="stepNum">{{ item.stepSerial }}</div>
-                            <div class="stepCard">
-                                <el-card class="box-card" shadow="always">
-                                    <div class="text">
-                                        审批结果:<span class="bold-text">{{ item.approvalResultDesc }}</span>
-                                    </div>
-                                    <div class="text">
-                                        审批类型:<span class="bold-text">{{ item.typeDesc }}</span>
-                                    </div>
-                                    <div class="text" v-if="item.auditTypeDesc">
-                                        审批类型:<span class="bold-text">{{ item.auditTypeDesc }}</span>
-                                    </div>
-                                    <div class="text" v-show="item.startApprovalTime != null">
-                                        开始时间:<span>{{ item.startApprovalTime }}</span>
-                                    </div>
-                                    <div class="approveUnit">
-                                        <div class="item-tit"><span>审批人</span><span>审批状态</span></div>
-                                        <div class="item-cont" v-for="i in item.stepUnits">
+      </template>
+    </el-dialog>
+    <el-dialog v-model="dialogStatus" title="作业申请进度" width="60%">
+      <el-form v-if="approveInfo.operators.length > 0" style="margin-bottom: 40px">
+        <el-form-item label="申请作业人">
+          <el-input v-model="approveInfo.operators" readonly type="textarea"/>
+        </el-form-item>
+      </el-form>
+      <div style="display: flex; flex-direction: column-reverse">
+        <div v-for="(item, index) in approveInfo.approvalSteps" class="stepItem">
+          <div class="stepNum">{{ item.stepSerial }}</div>
+          <div class="stepCard">
+            <el-card class="box-card" shadow="always">
+              <div class="text">
+                审批结果:<span class="bold-text">{{ item.approvalResultDesc }}</span>
+              </div>
+              <div class="text">
+                审批类型:<span class="bold-text">{{ item.typeDesc }}</span>
+              </div>
+              <div class="text" v-if="item.auditTypeDesc">
+                审批类型:<span class="bold-text">{{ item.auditTypeDesc }}</span>
+              </div>
+              <div class="text" v-show="item.startApprovalTime != null">
+                开始时间:<span>{{ item.startApprovalTime }}</span>
+              </div>
+              <div class="approveUnit">
+                <div class="item-tit"><span>审批人</span><span>审批状态</span></div>
+                <div class="item-cont" v-for="i in item.stepUnits">
                                             <span>{{ i.approvalUname }}</span
                                             ><span>{{ i.resultDesc }}</span>
-                                        </div>
-                                    </div>
-                                    <div class="approveItem">
-                                        <div class="item-tit">
-                                            <span>审批项目</span>
-<!--                                            <span>类型</span>-->
-                                            <div>措施标准</div>
-                                        </div>
-                                        <div class="item-cont" v-for="i in item.stepItems">
-                                            <span>{{ i.itemName }}</span>
-<!--                                            <span>{{ i.typeDesc }}</span>-->
-                                            <div v-if="i.measure !== null">
-                                                <div>
-                                                    <span>作业类型:</span><span>{{ i.measure.workTypeDesc }}</span>
-                                                </div>
-                                                <div>
-                                                    <span>措施内容:</span><span>{{ i.measure.context }}</span>
-                                                </div>
-                                            </div>
-                                            <div v-if="i.stand !== null">
-                                                <div>
-                                                    <span>标题名称:</span><span>{{ i.stand.title }}</span>
-                                                </div>
-                                                <div>
-                                                    <span>标准内容:</span><span>{{ i.stand.typeDesc }}</span>
-                                                </div>
-                                            </div>
-                                        </div>
-                                    </div>
-                                    <div class="text" v-show="item.expFinishApprovalTime && item.expFinishApprovalTime != null">
-                                        期望结束时间:<span>{{ item.expFinishApprovalTime }}</span>
-                                    </div>
-                                    <div class="text" v-show="item.finishApprovalTime != null">
-                                        结束时间:<span>{{ item.finishApprovalTime }}</span>
-                                    </div>
-                                </el-card>
-                            </div>
-                        </div>
+                </div>
+              </div>
+              <div class="approveItem">
+                <div class="item-tit">
+                  <span>审批项目</span>
+                  <!--                                            <span>类型</span>-->
+                  <div>措施标准</div>
+                </div>
+                <div class="item-cont" v-for="i in item.stepItems">
+                  <span>{{ i.itemName }}</span>
+                  <!--                                            <span>{{ i.typeDesc }}</span>-->
+                  <div v-if="i.measure !== null">
+                    <div>
+                      <span>作业类型:</span><span>{{ i.measure.workTypeDesc }}</span>
                     </div>
-                </el-dialog>
-                <el-dialog v-model="deleteDialog" title="提示" width="30%" center>
-                    <span>您确定要取消该条申请吗?</span>
-                    <template #footer>
+                    <div>
+                      <span>措施内容:</span><span>{{ i.measure.context }}</span>
+                    </div>
+                  </div>
+                  <div v-if="i.stand !== null">
+                    <div>
+                      <span>标题名称:</span><span>{{ i.stand.title }}</span>
+                    </div>
+                    <div>
+                      <span>标准内容:</span><span>{{ i.stand.typeDesc }}</span>
+                    </div>
+                  </div>
+                </div>
+              </div>
+              <div class="text" v-show="item.expFinishApprovalTime && item.expFinishApprovalTime != null">
+                期望结束时间:<span>{{ item.expFinishApprovalTime }}</span>
+              </div>
+              <div class="text" v-show="item.finishApprovalTime != null">
+                结束时间:<span>{{ item.finishApprovalTime }}</span>
+              </div>
+            </el-card>
+          </div>
+        </div>
+      </div>
+    </el-dialog>
+    <el-dialog v-model="deleteDialog" title="提示" width="30%" center>
+      <span>您确定要取消该条申请吗?</span>
+      <template #footer>
                         <span class="dialog-footer">
                             <el-button @click="deleteDialog = false" size="default">取消</el-button>
                             <el-button type="primary" @click="conFirmDelete" size="default">确认</el-button>
                         </span>
-                    </template>
-                </el-dialog>
-                <fire-dialog ref="fireRef" :lists="lists" @refresh="getListByPage"></fire-dialog>
-                <plate-dialog ref="plateRef" :lists="lists" @refresh="getListByPage"></plate-dialog>
-                <space-dialog ref="spaceRef" :lists="lists" @refresh="getListByPage"></space-dialog>
-                <hoist-dialog ref="hoistRef" :lists="lists" @refresh="getListByPage"></hoist-dialog>
-                <ground-dialog ref="groundRef" :lists="lists" @refresh="getListByPage"></ground-dialog>
-                <broken-dialog ref="brokenRef" :lists="lists" @refresh="getListByPage"></broken-dialog>
-                <height-dialog ref="heightRef" :lists="lists" @refresh="getListByPage"></height-dialog>
-                <power-dialog ref="powerRef" :lists="lists" @refresh="getListByPage"></power-dialog>
-                <open-dialog ref="openRef" :lists="lists" @refresh="getListByPage"></open-dialog>
-<!--                <el-dialog v-model="downLoadDialog" title="提示" width="30%" center>-->
-<!--                    <span>您确定要导出该条记录吗?</span>-->
-<!--                    <template #footer>-->
-<!--                                <span class="dialog-footer">-->
-<!--                                    <el-button @click="downLoadDialog = false" size="default">取消</el-button>-->
-<!--                                    <el-button type="primary" @click="conFirmDownLoad" size="default">确认</el-button>-->
-<!--                                </span>-->
-<!--                    </template>-->
-<!--                </el-dialog>-->
-<!--            </el-tab-pane>-->
-<!--            <el-tab-pane label="已通过" name="2">-->
-<!--                <div style="height: 100%">-->
-<!--                    <el-row class="homeCard">-->
-<!--                        <el-col :span="8">-->
-<!--                            <div class="grid-content topInfo">-->
-<!--                                <el-input v-model="searchWord" placeholder="作业证名称"></el-input>-->
-<!--                                <el-button type="primary">查询</el-button>-->
-<!--                                <el-button plain>重置</el-button>-->
-<!--                            </div>-->
-<!--                        </el-col>-->
-<!--                    </el-row>-->
-<!--                    <div class="homeCard">-->
-<!--                        <div class="main-card">-->
-<!--                            <el-table ref="multipleTableRef" :data="passedData" style="width: 100%" height="calc(100% - 48px)" :header-cell-style="{ background: '#fafafa' }" @selection-change="handleSelectionChange">-->
-<!--                                <el-table-column type="selection" width="55" />-->
-<!--                                <el-table-column type="index" label="编号" width="200" />-->
-<!--                                <el-table-column property="level" label="作业证等级" width="180" sortable />-->
-<!--                                <el-table-column property="applyDate" label="申请日期" sortable />-->
-<!--                                <el-table-column property="name" label="申请人" width="180" />-->
-<!--                                <el-table-column property="department" label="申请部门" width="180" />-->
-<!--                                <el-table-column label="申请状态" width="180">-->
-<!--                                    <template #default="scope">-->
-<!--                                        <el-tag type="success">{{ scope.row.status }}</el-tag>-->
-<!--                                    </template>-->
-<!--                                </el-table-column>-->
-<!--                            </el-table>-->
-<!--                            <div class="pageBtn">-->
-<!--                                <el-pagination v-model:currentPage="pageIndex2" v-model:page-size="pageSize2" :page-sizes="[10, 15]" small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize2" @size-change="handleSizeChange2" @current-change="handleCurrentChange2" />-->
-<!--                            </div>-->
-<!--                        </div>-->
-<!--                    </div>-->
-<!--                </div>-->
-<!--            </el-tab-pane>-->
-<!--        </el-tabs>-->
-    </div>
+      </template>
+    </el-dialog>
+    <fire-dialog ref="fireRef" :lists="lists" @refresh="getListByPage"></fire-dialog>
+    <plate-dialog ref="plateRef" :lists="lists" @refresh="getListByPage"></plate-dialog>
+    <space-dialog ref="spaceRef" :lists="lists" @refresh="getListByPage"></space-dialog>
+    <hoist-dialog ref="hoistRef" :lists="lists" @refresh="getListByPage"></hoist-dialog>
+    <ground-dialog ref="groundRef" :lists="lists" @refresh="getListByPage"></ground-dialog>
+    <broken-dialog ref="brokenRef" :lists="lists" @refresh="getListByPage"></broken-dialog>
+    <height-dialog ref="heightRef" :lists="lists" @refresh="getListByPage"></height-dialog>
+    <power-dialog ref="powerRef" :lists="lists" @refresh="getListByPage"></power-dialog>
+    <open-dialog ref="openRef" :lists="lists" @refresh="getListByPage"></open-dialog>
+    <!--                <el-dialog v-model="downLoadDialog" title="提示" width="30%" center>-->
+    <!--                    <span>您确定要导出该条记录吗?</span>-->
+    <!--                    <template #footer>-->
+    <!--                                <span class="dialog-footer">-->
+    <!--                                    <el-button @click="downLoadDialog = false" size="default">取消</el-button>-->
+    <!--                                    <el-button type="primary" @click="conFirmDownLoad" size="default">确认</el-button>-->
+    <!--                                </span>-->
+    <!--                    </template>-->
+    <!--                </el-dialog>-->
+    <!--            </el-tab-pane>-->
+    <!--            <el-tab-pane label="已通过" name="2">-->
+    <!--                <div style="height: 100%">-->
+    <!--                    <el-row class="homeCard">-->
+    <!--                        <el-col :span="8">-->
+    <!--                            <div class="grid-content topInfo">-->
+    <!--                                <el-input v-model="searchWord" placeholder="作业证名称"></el-input>-->
+    <!--                                <el-button type="primary">查询</el-button>-->
+    <!--                                <el-button plain>重置</el-button>-->
+    <!--                            </div>-->
+    <!--                        </el-col>-->
+    <!--                    </el-row>-->
+    <!--                    <div class="homeCard">-->
+    <!--                        <div class="main-card">-->
+    <!--                            <el-table ref="multipleTableRef" :data="passedData" style="width: 100%" height="calc(100% - 48px)" :header-cell-style="{ background: '#fafafa' }" @selection-change="handleSelectionChange">-->
+    <!--                                <el-table-column type="selection" width="55" />-->
+    <!--                                <el-table-column type="index" label="编号" width="200" />-->
+    <!--                                <el-table-column property="level" label="作业证等级" width="180" sortable />-->
+    <!--                                <el-table-column property="applyDate" label="申请日期" sortable />-->
+    <!--                                <el-table-column property="name" label="申请人" width="180" />-->
+    <!--                                <el-table-column property="department" label="申请部门" width="180" />-->
+    <!--                                <el-table-column label="申请状态" width="180">-->
+    <!--                                    <template #default="scope">-->
+    <!--                                        <el-tag type="success">{{ scope.row.status }}</el-tag>-->
+    <!--                                    </template>-->
+    <!--                                </el-table-column>-->
+    <!--                            </el-table>-->
+    <!--                            <div class="pageBtn">-->
+    <!--                                <el-pagination v-model:currentPage="pageIndex2" v-model:page-size="pageSize2" :page-sizes="[10, 15]" small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize2" @size-change="handleSizeChange2" @current-change="handleCurrentChange2" />-->
+    <!--                            </div>-->
+    <!--                        </div>-->
+    <!--                    </div>-->
+    <!--                </div>-->
+    <!--            </el-tab-pane>-->
+    <!--        </el-tabs>-->
+  </div>
 </template>
 
 <script lang="ts">
 import {toRefs, reactive, defineComponent, ref, onMounted, defineAsyncComponent} from 'vue';
-import { storeToRefs } from 'pinia';
-import { initBackEndControlRoutes } from '/@/router/backEnd';
-import { useUserInfo } from '/@/stores/userInfo';
-import { Session } from '/@/utils/storage';
-import { useRouter } from 'vue-router';
-import { Edit, View, Plus, Delete, Refresh, Search, Finished, Download } from '@element-plus/icons-vue';
-import { ElTable } from 'element-plus';
-import { FormInstance, FormRules, ElMessage } from 'element-plus';
-import { workApplyApi } from '/@/api/specialWorkSystem/workApply';
-import type { TabsPaneContext } from 'element-plus';
+import {storeToRefs} from 'pinia';
+import {initBackEndControlRoutes} from '/@/router/backEnd';
+import {useUserInfo} from '/@/stores/userInfo';
+import {Session} from '/@/utils/storage';
+import {useRouter} from 'vue-router';
+import {Edit, View, Plus, Delete, Refresh, Search, Finished, Download} from '@element-plus/icons-vue';
+import {ElTable} from 'element-plus';
+import {FormInstance, FormRules, ElMessage} from 'element-plus';
+import {workApplyApi} from '/@/api/specialWorkSystem/workApply';
+import type {TabsPaneContext} from 'element-plus';
 import {teamManageApi} from "/@/api/systemManage/basicDateManage/personShiftManage/teamManage";
 import Cookies from 'js-cookie';
 import axios from 'axios';
 
 // 定义接口来定义对象的类型
 interface stateType {
-    applyData: Array<string>;
-    workTimeList: Array<string>;
-    multipleSelection: Array<any>;
-    deleteArr: Array<any>;
-    approveInfo: Object;
-    dialogDetails: boolean;
-    dialogStatus: boolean;
-    deleteDialog: boolean;
-    pageIndex1: number;
-    pageSize1: number;
-    chosenIndex: null | number;
-    deleteId: null | number;
-    totalSize1: number;
-    activeName: string;
-    addRecord: {};
-    details: {};
-    statusInfo: {};
-    workType: Array<type>;
-    dialogType: number | null;
-    departmentList: Array<any>;
-    departmentRecursionList: Array<DepartmentState>;
-    statusList: Array<any>;
-    dep4List: Array<type>;
-    searPara: {}
-    timeRange: Array<string>;
-    lists: {}
+  applyData: Array<string>;
+  workTimeList: Array<string>;
+  multipleSelection: Array<any>;
+  deleteArr: Array<any>;
+  approveInfo: Object;
+  dialogDetails: boolean;
+  dialogStatus: boolean;
+  deleteDialog: boolean;
+  pageIndex1: number;
+  pageSize1: number;
+  chosenIndex: null | number;
+  deleteId: null | number;
+  totalSize1: number;
+  activeName: string;
+  addRecord: {};
+  details: {};
+  statusInfo: {};
+  workType: Array<type>;
+  dialogType: number | null;
+  departmentList: Array<any>;
+  departmentRecursionList: Array<DepartmentState>;
+  statusList: Array<any>;
+  dep4List: Array<type>;
+  searPara: {}
+  timeRange: Array<string>;
+  lists: {}
+  casProps: {}
 }
+
 interface type {
-    id: number;
-    name: string;
+  id: number;
+  name: string;
 }
+
 interface DepartmentState {
-    depId: number;
-    depName: string;
+  depId: number;
+  depName: string;
 }
+
 export default defineComponent({
-    name: 'applys',
-    components: {
-      detailLog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/detailLog.vue')),
-      fireDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue')),
-      plateDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue')),
-      spaceDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue')),
-      hoistDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue')),
-      groundDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue')),
-      brokenDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue')),
-      heightDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue')),
-      powerDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue')),
-      openDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue'))
-    },
-    setup() {
-        const userInfo = useUserInfo();
-        const { userInfos } = storeToRefs(userInfo);
-        const router = useRouter();
-        const state = reactive<stateType>({
-            lists: {
-              workerList: [],
-              departList: [],
-              departList2: [],
-              deviceList: [],
-              otherWorks: [],
-              spList: [],
-              riskList: []
-            },
-            pageIndex1: 1,
-            pageSize1: 10,
-            totalSize1: 0,
-            dialogType: null,
-            activeName: '1',
-            departmentList: [],
-            departmentRecursionList: [],
-            chosenIndex: null,
-            searPara:{
-              startTime: '',
-              endTime: '',
-              workPermitNo: '',
-              workType: null,
-              headUserName: '',
-              secondDepId: null
-            },
-            applyData: [],
-            workTimeList: [],
-            multipleSelection: [],
-            approveInfo: {
-                approvalSteps: [],
-                operators: []
-            },
-            dialogDetails: false,
-            dialogStatus: false,
-            deleteDialog: false,
-            addRecord: {},
-            details: {},
-            statusInfo: {},
-            deleteId: null,
-            deleteArr: [],
-            dep4List: [
-              {id:49,name:'电石事业部'},
-              {id:50,name:'电力事业部'},
-              {id:48,name:'有机化工事业部'},
-              {id:32,name:'甲醇事业部'},
-              {id:10,name:'后勤中心'},
-              {id:41,name:'安全环保部'},
-              {id:46,name:'供销中心'},
-              {id:47,name:'技术中心'}
-            ],
-            workType: [
-              { id: 1, name: '动火作业' },
-              { id: 2, name: '受限空间作业' },
-              { id: 3, name: '吊装作业' },
-              { id: 4, name: '动土作业' },
-              { id: 5, name: '断路作业' },
-              { id: 6, name: '高处作业' },
-              { id: 7, name: '临时用电作业' },
-              { id: 8, name: '盲板抽堵作业' }
-            ],
-          statusList: [
-            {
-              value: 0,
-              label: '风险研判'
-            },
-            {
-              value: 1,
-              label: '票证办理'
-            },
-            {
-              value: 2,
-              label: '气体分析'
-            },
-            {
-              value: 3,
-              label: '安全措施确认,培训交底'
-            },
-            {
-              value: 4,
-              label: '安全措施确认'
-            },
-            {
-              value: 5,
-              label: '培训交底'
-            },
-            {
-              value: 6,
-              label: '部门审批'
-            },
-            {
-              value: 7,
-              label: '作业票填报结束'
-            },
-            {
-              value: 8,
-              label: '作业气体分析不合格'
-            },
-            {
-              value: 9,
-              label: '审批未通过'
-            },
-            {
-              value: 10,
-              label: '开始'
-            },
-            {
-              value: 11,
-              label: '监护'
-            },
-            {
-              value: 12,
-              label: '结束'
-            },
-            {
-              value: 13,
-              label: '待验收'
-            },
-            {
-              value: 14,
-              label: '验收完成'
-            },
-            {
-              value: 15,
-              label: '取消'
-            },
-            {
-              value: 16,
-              label: '废止作业票'
-            }
-          ],
-          timeRange: []
-        });
-      const fireRef = ref()
-      const plateRef = ref()
-      const spaceRef = ref()
-      const hoistRef = ref()
-      const groundRef = ref()
-      const brokenRef = ref()
-      const heightRef = ref()
-      const powerRef = ref()
-      const openRef = ref()
-      // 页面载入时执行方法
-      onMounted(() => {
-        getListByPage();
-        getAllDepartment()
-        spWorker()
-        getOpList()
-        getAll()
-        getAllDevice()
-        getAllRisks()
-        getOtherWork()
+  name: 'applys',
+  components: {
+    detailLog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/detailLog.vue')),
+    fireDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue')),
+    plateDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue')),
+    spaceDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue')),
+    hoistDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue')),
+    groundDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue')),
+    brokenDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue')),
+    heightDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue')),
+    powerDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue')),
+    openDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue'))
+  },
+  setup() {
+    const userInfo = useUserInfo();
+    const {userInfos} = storeToRefs(userInfo);
+    const router = useRouter();
+    const state = reactive<stateType>({
+      lists: {
+        workerList: [],
+        departList: [],
+        deviceList: [],
+        otherWorks: [],
+        spList: [],
+        riskList: []
+      },
+      casProps: {
+        emitPath: false,
+        value: 'depId',
+        label: 'depName',
+        checkStrictly: true
+      },
+      pageIndex1: 1,
+      pageSize1: 10,
+      totalSize1: 0,
+      dialogType: null,
+      activeName: '1',
+      departmentList: [],
+      departmentRecursionList: [],
+      chosenIndex: null,
+      searPara: {
+        startTime: '',
+        endTime: '',
+        workPermitNo: '',
+        workType: null,
+        headUserName: '',
+        secondDepId: null
+      },
+      applyData: [],
+      workTimeList: [],
+      multipleSelection: [],
+      approveInfo: {
+        approvalSteps: [],
+        operators: []
+      },
+      dialogDetails: false,
+      dialogStatus: false,
+      deleteDialog: false,
+      addRecord: {},
+      details: {},
+      statusInfo: {},
+      deleteId: null,
+      deleteArr: [],
+      dep4List: [
+        {id: 49, name: '电石事业部'},
+        {id: 50, name: '电力事业部'},
+        {id: 48, name: '有机化工事业部'},
+        {id: 32, name: '甲醇事业部'},
+        {id: 10, name: '后勤中心'},
+        {id: 41, name: '安全环保部'},
+        {id: 46, name: '供销中心'},
+        {id: 47, name: '技术中心'}
+      ],
+      workType: [
+        {id: 1, name: '动火作业'},
+        {id: 2, name: '受限空间作业'},
+        {id: 3, name: '吊装作业'},
+        {id: 4, name: '动土作业'},
+        {id: 5, name: '断路作业'},
+        {id: 6, name: '高处作业'},
+        {id: 7, name: '临时用电作业'},
+        {id: 8, name: '盲板抽堵作业'}
+      ],
+      statusList: [
+        {
+          value: 0,
+          label: '风险研判'
+        },
+        {
+          value: 1,
+          label: '票证办理'
+        },
+        {
+          value: 2,
+          label: '气体分析'
+        },
+        {
+          value: 3,
+          label: '安全措施确认,培训交底'
+        },
+        {
+          value: 4,
+          label: '安全措施确认'
+        },
+        {
+          value: 5,
+          label: '培训交底'
+        },
+        {
+          value: 6,
+          label: '部门审批'
+        },
+        {
+          value: 7,
+          label: '作业票填报结束'
+        },
+        {
+          value: 8,
+          label: '作业气体分析不合格'
+        },
+        {
+          value: 9,
+          label: '审批未通过'
+        },
+        {
+          value: 10,
+          label: '开始'
+        },
+        {
+          value: 11,
+          label: '监护'
+        },
+        {
+          value: 12,
+          label: '结束'
+        },
+        {
+          value: 13,
+          label: '待验收'
+        },
+        {
+          value: 14,
+          label: '验收完成'
+        },
+        {
+          value: 15,
+          label: '取消'
+        },
+        {
+          value: 16,
+          label: '废止作业票'
+        }
+      ],
+      timeRange: []
+    });
+    const fireRef = ref()
+    const plateRef = ref()
+    const spaceRef = ref()
+    const hoistRef = ref()
+    const groundRef = ref()
+    const brokenRef = ref()
+    const heightRef = ref()
+    const powerRef = ref()
+    const openRef = ref()
+    // 页面载入时执行方法
+    onMounted(() => {
+      getListByPage();
+      getAllDepartment()
+      spWorker()
+      getOpList()
+      getAll()
+      getAllDevice()
+      getAllRisks()
+      getOtherWork()
+    });
+    const giveTime = () => {
+      if (state.timeRange && state.timeRange !== null) {
+        state.searPara.startTime = state.timeRange[0];
+        state.searPara.endTime = state.timeRange[1];
+      } else {
+        state.searPara.startTime = '';
+        state.searPara.endTime = '';
+      }
+    };
+
+    const continueRecord = (row) => {
+      if (row.workType == 1) {
+        fireRef.value.openDialog(row, 'continue')
+      }
+      if (row.workType == 2) {
+        spaceRef.value.openDialog(row, 'continue')
+      }
+      if (row.workType == 3) {
+        hoistRef.value.openDialog(row, 'continue')
+      }
+      if (row.workType == 4) {
+        groundRef.value.openDialog(row, 'continue')
+      }
+      if (row.workType == 5) {
+        brokenRef.value.openDialog(row, 'continue')
+      }
+      if (row.workType == 6) {
+        heightRef.value.openDialog(row, 'continue')
+      }
+      if (row.workType == 7) {
+        powerRef.value.openDialog(row, 'continue')
+      }
+      if (row.workType == 8) {
+        plateRef.value.openDialog(row, 'continue')
+      }
+      if (row.workType == 9) {
+        openRef.value.openDialog(row, 'continue')
+      }
+    }
+
+    // 刷新
+    const reLoadData = async () => {
+      getListByPage();
+    };
+
+    // 填写表单
+    const toApply = () => {
+      router.push({
+        path: 'zysq'
       });
-      const giveTime = () => {
-        if (state.timeRange && state.timeRange !== null) {
-          state.searPara.startTime = state.timeRange[0];
-          state.searPara.endTime = state.timeRange[1];
+    };
+
+    const handleClick = (tab: TabsPaneContext, event: Event) => {
+    };
+
+    // 获取部门列表
+    const getAllDepartment = async () => {
+      let res = await teamManageApi().getAllDepartment();
+      if (res.data.code === '200') {
+        state.departmentList = JSON.parse(JSON.stringify(res.data.data))
+        recursion(state.departmentList);
+        state.lists.departList = state.departmentList
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    const recursion = (value: any) => {
+      for (let i of value) {
+        if (i.children.length !== 0) {
+          state.departmentRecursionList.push(i);
+          recursion(i.children);
         } else {
-          state.searPara.startTime = '';
-          state.searPara.endTime = '';
-        }
-      };
-
-      const continueRecord = (row)=>{
-        if(row.workType == 1){
-          fireRef.value.openDialog(row,'continue')
-        }
-        if(row.workType == 2){
-          spaceRef.value.openDialog(row,'continue')
-        }
-        if(row.workType == 3){
-          hoistRef.value.openDialog(row,'continue')
-        }
-        if(row.workType == 4){
-          groundRef.value.openDialog(row,'continue')
-        }
-        if(row.workType == 5){
-          brokenRef.value.openDialog(row,'continue')
-        }
-        if(row.workType == 6){
-          heightRef.value.openDialog(row,'continue')
-        }
-        if(row.workType == 7){
-          powerRef.value.openDialog(row,'continue')
-        }
-        if(row.workType == 8){
-          plateRef.value.openDialog(row,'continue')
-        }
-        if(row.workType == 9){
-          openRef.value.openDialog(row,'continue')
+          state.departmentRecursionList.push(i);
         }
       }
+    };
 
-        // 刷新
-        const reLoadData = async () => {
-            getListByPage();
-        };
+    // 分页获取
+    const getListByPage = async () => {
+      const data = {pageSize: state.pageSize1, pageIndex: state.pageIndex1, searchParams: state.searPara};
+      let res = await workApplyApi().getAllNewApplyListPage(data);
+      if (res.data.code === '200') {
+        state.applyData = JSON.parse(JSON.stringify(res.data.data));
+        state.applyData = state.applyData.map((item) => {
+          if (item.operators == null || item.operators == []) {
+            item.operators = [];
+          } else {
+            item.operators = Array.from(item.operators, ({operatorUname}) => operatorUname);
+          }
+          return item;
+        });
+        state.totalSize1 = res.data.total;
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
 
-        // 填写表单
-        const toApply = () => {
-            router.push({
-                path: 'zysq'
+    // 表格数据格式化
+    const toNames = (row, column, cellValue, index) => {
+      if (row.list == []) {
+        return [];
+      } else {
+        const nameList = [];
+        for (let i = 0; i < row.list.length; i++) {
+          for (let t = 0; t < state.workTimeList.length; t++) {
+            if (row.list[i] == state.workTimeList[t].id) {
+              nameList.push(state.workTimeList[t].name);
+            }
+          }
+        }
+        return nameList.join();
+      }
+    };
+
+    const spWorker = async () => {
+      for (let id of ['18', '19']) {
+        const res = await workApplyApi().getSpList({roleId: id})
+        if (id == '18') {
+          if (res.data.code === '200') {
+            state.lists.spList.jhList = JSON.parse(JSON.stringify(res.data.data))
+          } else {
+            ElMessage({
+              type: 'warning',
+              message: res.data.msg
             });
-        };
-
-        const handleClick = (tab: TabsPaneContext, event: Event) => {
-        };
-
-        // 获取部门列表
-        const getAllDepartment = async () => {
-            let res = await teamManageApi().getAllDepartment();
-            if (res.data.code === '200') {
-                state.departmentList = JSON.parse(JSON.stringify(res.data.data))
-                recursion(state.departmentList);
-                state.lists.departList = state.departmentList
-                state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47)
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        };
-
-        const recursion = (value: any) => {
-            for (let i of value) {
-                if (i.children.length !== 0) {
-                    state.departmentRecursionList.push(i);
-                    recursion(i.children);
-                } else {
-                    state.departmentRecursionList.push(i);
-                }
-            }
-        };
-
-        // 分页获取
-        const getListByPage = async () => {
-            const data = { pageSize: state.pageSize1, pageIndex: state.pageIndex1, searchParams: state.searPara };
-            let res = await workApplyApi().getAllNewApplyListPage(data);
-            if (res.data.code === '200') {
-                state.applyData = JSON.parse(JSON.stringify(res.data.data));
-                state.applyData = state.applyData.map((item) => {
-                    if (item.operators == null || item.operators == []) {
-                        item.operators = [];
-                    } else {
-                        item.operators = Array.from(item.operators, ({ operatorUname }) => operatorUname);
-                    }
-                    return item;
-                });
-                state.totalSize1 = res.data.total;
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        };
-
-        // 表格数据格式化
-        const toNames = (row, column, cellValue, index) => {
-            if (row.list == []) {
-                return [];
-            } else {
-                const nameList = [];
-                for (let i = 0; i < row.list.length; i++) {
-                    for (let t = 0; t < state.workTimeList.length; t++) {
-                        if (row.list[i] == state.workTimeList[t].id) {
-                            nameList.push(state.workTimeList[t].name);
-                        }
-                    }
-                }
-                return nameList.join();
-            }
-        };
-
-      const spWorker = async ()=>{
-        for(let id of ['18','19']){
-          const res = await workApplyApi().getSpList({roleId: id})
-          if(id == '18'){
-            if (res.data.code === '200') {
-              state.lists.spList.jhList = JSON.parse(JSON.stringify(res.data.data))
-            } else {
-              ElMessage({
-                type: 'warning',
-                message: res.data.msg
-              });
-            }
           }
-          if(id == '19'){
-            if (res.data.code === '200') {
-              state.lists.spList.sfList = JSON.parse(JSON.stringify(res.data.data))
-            } else {
-              ElMessage({
-                type: 'warning',
-                message: res.data.msg
-              });
-            }
+        }
+        if (id == '19') {
+          if (res.data.code === '200') {
+            state.lists.spList.sfList = JSON.parse(JSON.stringify(res.data.data))
+          } else {
+            ElMessage({
+              type: 'warning',
+              message: res.data.msg
+            });
           }
         }
       }
+    }
 
-      const getOpList = async()=>{
-        const res = await workApplyApi().getOpList()
-        if(res.data.code == '200'){
-          if(res.data.data && res.data.data.length>0){
-            state.lists.spList.opList = JSON.parse(JSON.stringify(res.data.data)).map(i=>{
-              if(i.certList && i.certList.length>0){
-                i.certList = i.certList.map(item=>{
-                  item['realName'] = i.realName + '(' + item.certTypeName +':'+ item.certExpiredAt + ')'
-                  item['uid'] = item.certNo + ',' + item.certExpiredAt
-                  return item
-                })
-              }
-              return i
-            })
-          }
-        }else{
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
+    const getOpList = async () => {
+      const res = await workApplyApi().getOpList()
+      if (res.data.code == '200') {
+        if (res.data.data && res.data.data.length > 0) {
+          state.lists.spList.opList = JSON.parse(JSON.stringify(res.data.data)).map(i => {
+            if (i.certList && i.certList.length > 0) {
+              i.certList = i.certList.map(item => {
+                item['realName'] = i.realName + '(' + item.certTypeName + ':' + item.certExpiredAt + ')'
+                item['uid'] = item.certNo + ',' + item.certExpiredAt
+                return item
+              })
+            }
+            return i
           })
         }
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        })
       }
-
-      // 获取用户列表
-      const getAll = async ()=>{
-        const res = await workApplyApi().getAllUsers()
-        if (res.data.code === '200') {
-          state.lists.workerList = JSON.parse(JSON.stringify(res.data.data))
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      };
-
-      // 获取设备列表
-      const getAllDevice = async ()=>{
-        const res = await workApplyApi().getAllDevices()
-        if (res.data.code === '200') {
-          state.lists.deviceList = JSON.parse(JSON.stringify(res.data.data))
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      }
-
-      // 获取设备列表
-      const getAllRisks = async ()=>{
-        const res = await workApplyApi().getAllRiskIdentity()
-        if (res.data.code === '200') {
-          // state.allDevices = JSON.parse(JSON.stringify(res.data.data))
-          state.lists.riskList = JSON.parse(JSON.stringify(res.data.data))
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      }
-
-      const getOtherWork = async () => {
-        let res = await workApplyApi().getOtherWork({pageSize: 999, pageIndex: 1, searchParams: {workPermitNo: '', workType: null}})
-        if (res.data.code === '200') {
-          state.lists.otherWorks = JSON.parse(JSON.stringify(res.data.data))
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      };
-
-        // 关键词查询记录
-        const searchRecord = async () => {
-            state.pageIndex1 = 1
-            getListByPage();
-        };
-        // 重置搜索
-        const clearSearch = async () => {
-            state.timeRange = []
-            state.searPara = {
-              startTime: '',
-              endTime: '',
-              workPermitNo: '',
-              workType: null,
-              headUserName: '',
-              secondDepId: null
-            };
-            state.pageIndex1 = 1
-            getListByPage();
-        };
-
-        // 查看进度
-        const viewStatus = (row) => {
-            getStatus({ workApplyId: row.workApplyId });
-            state.dialogStatus = true;
-        };
-
-        // 查询进度方法
-        const getStatus = async (data: any) => {
-            let res = await workApplyApi().getStatus(data);
-            if (res.data.code === '200') {
-                state.approveInfo = JSON.parse(JSON.stringify(res.data.data));
-                state.approveInfo.operators = Array.from(state.approveInfo.operators, ({ operatorUname }) => operatorUname);
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        };
-
-        const deleteRecordBtn = (row) => {
-            state.deleteId = row.workApplyId;
-            state.deleteDialog = true;
-        };
-
-        // 取消申请方法
-        const deleteRecord = async (data: any) => {
-            let res = await workApplyApi().cancelApply(data);
-            if (res.data.code === '200') {
-                ElMessage({
-                    type: 'success',
-                    message: '删除成功!'
-                });
-                getListByPage();
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        };
-
-        const conFirmDelete = () => {
-            deleteRecord({ workApplyId: state.deleteId });
-            state.deleteDialog = false;
-        };
-
-
-        // 导出方法
-        const downLoadRecord = (row: any) => {
-            // let res = await workApplyApi().postPrinting(data);
-            axios.post(import.meta.env.VITE_API_URL + `/specialwork9step/work/down/load/pdf`,{ id: row.id},{headers:{'Content-Type': 'application/json','Authorization': `${Cookies.get('token')}`,'uid':`${Cookies.get('uid')}`},responseType: 'blob'}).then(res=>{
-                if (res) {
-                    const link = document.createElement('a')
-                    let blob = new Blob([res.data],{type: 'application/pdf'})
-                    link.style.display = "none";
-                    link.href = URL.createObjectURL(blob); // 创建URL
-                    link.setAttribute("download", row.workTypeDesc + row.workPermitNo + "作业证.pdf");
-                    document.body.appendChild(link)
-                    window.open(link.href)
-                    document.body.removeChild(link)
-                } else {
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg
-                    });
-                }
-            })
-
-        };
-
-        const handleSizeChange1 = (val: number) => {
-            state.pageSize1 = val;
-            getListByPage();
-        };
-        const handleCurrentChange1 = (val: number) => {
-            state.pageIndex1 = val;
-            getListByPage();
-        };
-
-        // 查看记录
-        const viewRecord = (row: any) => {
-            state.dialogType = row.workType
-            state.details = JSON.parse(JSON.stringify(row));
-            state.dialogDetails = true;
-        };
-
-        // 折线图
-        const renderMenu = async (value: string) => {
-            Session.set('projectId', value);
-            userInfos.value.projectId = value;
-            await initBackEndControlRoutes();
-        };
-
-        return {
-            View,
-            Edit,
-            Delete,
-            Refresh,
-            Plus,
-            Finished,
-            Download,
-            fireRef,
-            plateRef,
-            spaceRef,
-            hoistRef,
-            groundRef,
-            brokenRef,
-            heightRef,
-            powerRef,
-            openRef,
-          continueRecord,
-            giveTime,
-            reLoadData,
-            toApply,
-            handleClick,
-            toNames,
-            searchRecord,
-            clearSearch,
-            viewRecord,
-            viewStatus,
-            deleteRecordBtn,
-            downLoadRecord,
-            conFirmDelete,
-            getListByPage,
-            handleSizeChange1,
-            handleCurrentChange1,
-            ...toRefs(state)
-        };
     }
+
+    // 获取用户列表
+    const getAll = async () => {
+      const res = await workApplyApi().getAllUsers()
+      if (res.data.code === '200') {
+        state.lists.workerList = JSON.parse(JSON.stringify(res.data.data))
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    // 获取设备列表
+    const getAllDevice = async () => {
+      const res = await workApplyApi().getAllDevices()
+      if (res.data.code === '200') {
+        state.lists.deviceList = JSON.parse(JSON.stringify(res.data.data))
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    }
+
+    // 获取设备列表
+    const getAllRisks = async () => {
+      const res = await workApplyApi().getAllRiskIdentity()
+      if (res.data.code === '200') {
+        // state.allDevices = JSON.parse(JSON.stringify(res.data.data))
+        state.lists.riskList = JSON.parse(JSON.stringify(res.data.data))
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    }
+
+    const getOtherWork = async () => {
+      let res = await workApplyApi().getOtherWork({
+        pageSize: 999,
+        pageIndex: 1,
+        searchParams: {workPermitNo: '', workType: null}
+      })
+      if (res.data.code === '200') {
+        state.lists.otherWorks = JSON.parse(JSON.stringify(res.data.data))
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    // 关键词查询记录
+    const searchRecord = async () => {
+      state.pageIndex1 = 1
+      getListByPage();
+    };
+    // 重置搜索
+    const clearSearch = async () => {
+      state.timeRange = []
+      state.searPara = {
+        startTime: '',
+        endTime: '',
+        workPermitNo: '',
+        workType: null,
+        headUserName: '',
+        secondDepId: null
+      };
+      state.pageIndex1 = 1
+      getListByPage();
+    };
+
+    // 查看进度
+    const viewStatus = (row) => {
+      getStatus({workApplyId: row.workApplyId});
+      state.dialogStatus = true;
+    };
+
+    // 查询进度方法
+    const getStatus = async (data: any) => {
+      let res = await workApplyApi().getStatus(data);
+      if (res.data.code === '200') {
+        state.approveInfo = JSON.parse(JSON.stringify(res.data.data));
+        state.approveInfo.operators = Array.from(state.approveInfo.operators, ({operatorUname}) => operatorUname);
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    const deleteRecordBtn = (row) => {
+      state.deleteId = row.workApplyId;
+      state.deleteDialog = true;
+    };
+
+    // 取消申请方法
+    const deleteRecord = async (data: any) => {
+      let res = await workApplyApi().cancelApply(data);
+      if (res.data.code === '200') {
+        ElMessage({
+          type: 'success',
+          message: '删除成功!'
+        });
+        getListByPage();
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    const conFirmDelete = () => {
+      deleteRecord({workApplyId: state.deleteId});
+      state.deleteDialog = false;
+    };
+
+
+    // 导出方法
+    const downLoadRecord = (row: any) => {
+      // let res = await workApplyApi().postPrinting(data);
+      axios.post(import.meta.env.VITE_API_URL + `/specialwork9step/work/down/load/pdf`, {id: row.id}, {
+        headers: {
+          'Content-Type': 'application/json',
+          'Authorization': `${Cookies.get('token')}`,
+          'uid': `${Cookies.get('uid')}`
+        }, responseType: 'blob'
+      }).then(res => {
+        if (res) {
+          const link = document.createElement('a')
+          let blob = new Blob([res.data], {type: 'application/pdf'})
+          link.style.display = "none";
+          link.href = URL.createObjectURL(blob); // 创建URL
+          link.setAttribute("download", row.workTypeDesc + row.workPermitNo + "作业证.pdf");
+          document.body.appendChild(link)
+          window.open(link.href)
+          document.body.removeChild(link)
+        } else {
+          ElMessage({
+            type: 'warning',
+            message: res.data.msg
+          });
+        }
+      })
+
+    };
+
+    const handleSizeChange1 = (val: number) => {
+      state.pageSize1 = val;
+      getListByPage();
+    };
+    const handleCurrentChange1 = (val: number) => {
+      state.pageIndex1 = val;
+      getListByPage();
+    };
+
+    // 查看记录
+    const viewRecord = (row: any) => {
+      state.dialogType = row.workType
+      state.details = JSON.parse(JSON.stringify(row));
+      state.dialogDetails = true;
+    };
+
+    // 折线图
+    const renderMenu = async (value: string) => {
+      Session.set('projectId', value);
+      userInfos.value.projectId = value;
+      await initBackEndControlRoutes();
+    };
+
+    return {
+      View,
+      Edit,
+      Delete,
+      Refresh,
+      Plus,
+      Finished,
+      Download,
+      fireRef,
+      plateRef,
+      spaceRef,
+      hoistRef,
+      groundRef,
+      brokenRef,
+      heightRef,
+      powerRef,
+      openRef,
+      continueRecord,
+      giveTime,
+      reLoadData,
+      toApply,
+      handleClick,
+      toNames,
+      searchRecord,
+      clearSearch,
+      viewRecord,
+      viewStatus,
+      deleteRecordBtn,
+      downLoadRecord,
+      conFirmDelete,
+      getListByPage,
+      handleSizeChange1,
+      handleCurrentChange1,
+      ...toRefs(state)
+    };
+  }
 });
 </script>
 
 <style scoped lang="scss">
 $homeNavLengh: 8;
 .home-container {
-    height: calc(100vh - 144px);
+  height: calc(100vh - 144px);
+  box-sizing: border-box;
+  overflow: hidden;
+
+  .demo-tabs {
+    width: 100%;
+    height: 100%;
+
+    &::v-deep(.el-tabs__content) {
+      height: calc(100% - 60px);
+    }
+
+    .el-tab-pane {
+      height: 100%;
+    }
+  }
+
+  .homeCard {
+    width: 100%;
+    padding: 20px;
     box-sizing: border-box;
-    overflow: hidden;
-    .demo-tabs {
-        width: 100%;
-        height: 100%;
+    background: #fff;
+    border-radius: 4px;
 
-        &::v-deep(.el-tabs__content) {
-            height: calc(100% - 60px);
-        }
+    .main-card {
+      width: 100%;
+      height: 100%;
 
-        .el-tab-pane {
-            height: 100%;
-        }
-    }
-    .homeCard {
-        width: 100%;
-        padding: 20px;
-        box-sizing: border-box;
-        background: #fff;
-        border-radius: 4px;
-
-        .main-card {
-            width: 100%;
-            height: 100%;
-            .cardTop {
-                display: flex;
-                align-items: center;
-                justify-content: space-between;
-                margin-bottom: 20px;
-                .mainCardBtn {
-                    margin: 0;
-                }
-            }
-            .pageBtn {
-                height: 60px;
-                display: flex;
-                align-items: center;
-                justify-content: right;
-
-                .demo-pagination-block + .demo-pagination-block {
-                    margin-top: 10px;
-                }
-                .demo-pagination-block .demonstration {
-                    margin-bottom: 16px;
-                }
-            }
-        }
-        &:last-of-type {
-            height: calc(100% - 130px);
-        }
-    }
-    .stepItem {
-        display: flex;
-        align-items: flex-start;
-        margin-top: 30px;
-        margin-left: 30px;
-        padding-bottom: 30px;
-        padding-left: 40px;
-        border-left: 1px solid #a0cfff;
-        position: relative;
-        &:first-of-type {
-            margin-top: 30px;
-        }
-        &:first-of-type {
-            margin-bottom: 0;
-            border-left: none;
-        }
-        .stepNum {
-            position: absolute;
-            width: 40px;
-            height: 40px;
-            border-radius: 20px;
-            box-sizing: border-box;
-            font-size: 18px;
-            color: #333;
-            border: 1px solid #a0cfff;
-            line-height: 38px;
-            text-align: center;
-            left: -20px;
-            top: -30px;
-            background: #d9ecff;
-        }
-        .stepCard {
-            width: 100%;
-            margin-top: -30px;
-
-            .box-card {
-                width: 100%;
-
-                .card-header {
-                    display: flex;
-                    justify-content: space-between;
-                    align-items: center;
-
-                    span {
-                        font-weight: bold;
-                        margin-left: 10px;
-                    }
-                }
-
-                .text {
-                    width: 100%;
-                    font-size: 14px;
-                    margin-bottom: 10px;
-                    padding-left: 10px;
-
-                    span {
-                        color: #409eff;
-                    }
-
-                    .bold-text{
-                        font-weight: bolder;
-                    }
-
-                    &:last-of-type {
-                        margin-bottom: 0;
-                    }
-                }
-                .approveUnit {
-                    width: 100%;
-                    font-size: 14px;
-                    margin-bottom: 20px;
-                    padding: 10px 15px;
-                    border: 1px solid #fff;
-                    background: #ecf8ff;
-                    border-radius: 6px;
-                    .item-tit {
-                        width: 100%;
-                        display: flex;
-                        color: #409eff;
-                        align-items: flex-start;
-                        justify-content: space-between;
-                        padding-bottom: 10px;
-                        border-bottom: 1px solid #a0cfff;
-
-                        & > span {
-                            flex: 1;
-                            &:last-of-type{
-                                text-align: center;
-                            }
-                        }
-                        & > div {
-                            flex: 1;
-                            text-align: center;
-                        }
-                    }
-                    .item-cont {
-                        width: 100%;
-                        display: flex;
-                        align-items: center;
-                        justify-content: space-between;
-                        padding: 10px 0;
-                        border-bottom: 1px solid #c6e2ff;
-
-                        & > span {
-                            flex: 1;
-                            &:last-of-type{
-                                text-align: center;
-                            }
-                        }
-                        & > div {
-                            flex: 1;
-                            text-align: center;
-
-                            & > div {
-                                text-align: left;
-                                width: 100%;
-                                display: flex;
-                                justify-content: center;
-                                align-items: center;
-                                span {
-                                    width: 45%;
-                                    &:first-of-type {
-                                        width: 30%;
-                                    }
-                                }
-                            }
-                        }
-                        &:last-of-type {
-                            border-bottom: 0;
-                        }
-                    }
-                }
-                .approveItem {
-                    width: 100%;
-                    font-size: 14px;
-                    margin-bottom: 20px;
-                    padding: 10px 15px;
-                    background: #ecf8ff;
-                    border: 1px solid #fff;
-                    border-radius: 6px;
-                    .item-tit {
-                        width: 100%;
-                        display: flex;
-                        color: #409eff;
-                        align-items: flex-start;
-                        justify-content: space-between;
-                        padding-bottom: 10px;
-                        border-bottom: 1px solid #a0cfff;
-
-                        & > span {
-                            flex: 1;
-                        }
-                        & > div {
-                            flex: 2;
-                            text-align: center;
-                        }
-                    }
-                    .item-cont {
-                        width: 100%;
-                        display: flex;
-                        align-items: center;
-                        justify-content: space-between;
-                        padding: 10px 0;
-                        border-bottom: 1px solid #c6e2ff;
-
-                        & > span {
-                            flex: 1;
-                        }
-                        & > div {
-                            flex: 2;
-                            text-align: center;
-
-                            & > div {
-                                text-align: left;
-                                width: 100%;
-                                display: flex;
-                                justify-content: center;
-                                align-items: flex-start;
-                                margin-bottom: 10px;
-                                span {
-                                    width: 50%;
-                                    &:first-of-type {
-                                        width: 25%;
-                                    }
-                                }
-                            }
-                        }
-                        &:last-of-type {
-                            border-bottom: 0;
-                        }
-                    }
-                }
-            }
-        }
-        &:hover .card-header {
-            color: #0098f5;
-        }
-        &:hover .stepNum {
-            border: 2px solid #0098f5;
-            color: #0098f5;
-        }
-    }
-    .el-row {
+      .cardTop {
         display: flex;
         align-items: center;
+        justify-content: space-between;
         margin-bottom: 20px;
-        &:last-child {
-            margin-bottom: 0;
+
+        .mainCardBtn {
+          margin: 0;
         }
-        .grid-content {
-            align-items: center;
-            min-height: 36px;
+      }
+
+      .pageBtn {
+        height: 60px;
+        display: flex;
+        align-items: center;
+        justify-content: right;
+
+        .demo-pagination-block + .demo-pagination-block {
+          margin-top: 10px;
         }
 
-        .topInfo {
-            display: flex;
-            align-items: center;
-            font-size: 16px;
+        .demo-pagination-block .demonstration {
+          margin-bottom: 16px;
+        }
+      }
+    }
+
+    &:last-of-type {
+      height: calc(100% - 130px);
+    }
+  }
+
+  .stepItem {
+    display: flex;
+    align-items: flex-start;
+    margin-top: 30px;
+    margin-left: 30px;
+    padding-bottom: 30px;
+    padding-left: 40px;
+    border-left: 1px solid #a0cfff;
+    position: relative;
+
+    &:first-of-type {
+      margin-top: 30px;
+    }
+
+    &:first-of-type {
+      margin-bottom: 0;
+      border-left: none;
+    }
+
+    .stepNum {
+      position: absolute;
+      width: 40px;
+      height: 40px;
+      border-radius: 20px;
+      box-sizing: border-box;
+      font-size: 18px;
+      color: #333;
+      border: 1px solid #a0cfff;
+      line-height: 38px;
+      text-align: center;
+      left: -20px;
+      top: -30px;
+      background: #d9ecff;
+    }
+
+    .stepCard {
+      width: 100%;
+      margin-top: -30px;
+
+      .box-card {
+        width: 100%;
+
+        .card-header {
+          display: flex;
+          justify-content: space-between;
+          align-items: center;
+
+          span {
             font-weight: bold;
+            margin-left: 10px;
+          }
+        }
+
+        .text {
+          width: 100%;
+          font-size: 14px;
+          margin-bottom: 10px;
+          padding-left: 10px;
+
+          span {
+            color: #409eff;
+          }
+
+          .bold-text {
+            font-weight: bolder;
+          }
+
+          &:last-of-type {
+            margin-bottom: 0;
+          }
+        }
+
+        .approveUnit {
+          width: 100%;
+          font-size: 14px;
+          margin-bottom: 20px;
+          padding: 10px 15px;
+          border: 1px solid #fff;
+          background: #ecf8ff;
+          border-radius: 6px;
+
+          .item-tit {
+            width: 100%;
+            display: flex;
+            color: #409eff;
+            align-items: flex-start;
+            justify-content: space-between;
+            padding-bottom: 10px;
+            border-bottom: 1px solid #a0cfff;
+
+            & > span {
+              flex: 1;
+
+              &:last-of-type {
+                text-align: center;
+              }
+            }
 
             & > div {
-                white-space: nowrap;
-                margin-right: 20px;
+              flex: 1;
+              text-align: center;
             }
+          }
+
+          .item-cont {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            justify-content: space-between;
+            padding: 10px 0;
+            border-bottom: 1px solid #c6e2ff;
+
+            & > span {
+              flex: 1;
+
+              &:last-of-type {
+                text-align: center;
+              }
+            }
+
+            & > div {
+              flex: 1;
+              text-align: center;
+
+              & > div {
+                text-align: left;
+                width: 100%;
+                display: flex;
+                justify-content: center;
+                align-items: center;
+
+                span {
+                  width: 45%;
+
+                  &:first-of-type {
+                    width: 30%;
+                  }
+                }
+              }
+            }
+
+            &:last-of-type {
+              border-bottom: 0;
+            }
+          }
         }
+
+        .approveItem {
+          width: 100%;
+          font-size: 14px;
+          margin-bottom: 20px;
+          padding: 10px 15px;
+          background: #ecf8ff;
+          border: 1px solid #fff;
+          border-radius: 6px;
+
+          .item-tit {
+            width: 100%;
+            display: flex;
+            color: #409eff;
+            align-items: flex-start;
+            justify-content: space-between;
+            padding-bottom: 10px;
+            border-bottom: 1px solid #a0cfff;
+
+            & > span {
+              flex: 1;
+            }
+
+            & > div {
+              flex: 2;
+              text-align: center;
+            }
+          }
+
+          .item-cont {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            justify-content: space-between;
+            padding: 10px 0;
+            border-bottom: 1px solid #c6e2ff;
+
+            & > span {
+              flex: 1;
+            }
+
+            & > div {
+              flex: 2;
+              text-align: center;
+
+              & > div {
+                text-align: left;
+                width: 100%;
+                display: flex;
+                justify-content: center;
+                align-items: flex-start;
+                margin-bottom: 10px;
+
+                span {
+                  width: 50%;
+
+                  &:first-of-type {
+                    width: 25%;
+                  }
+                }
+              }
+            }
+
+            &:last-of-type {
+              border-bottom: 0;
+            }
+          }
+        }
+      }
     }
-    .el-card {
-        border: 0;
+
+    &:hover .card-header {
+      color: #0098f5;
     }
+
+    &:hover .stepNum {
+      border: 2px solid #0098f5;
+      color: #0098f5;
+    }
+  }
+
+  .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;
+      }
+    }
+  }
+
+  .el-card {
+    border: 0;
+  }
 }
 </style>
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue
index e576f8e..915f8db 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue
@@ -6,7 +6,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="applyDepId">
-            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
@@ -645,7 +645,7 @@
       }
 
       const findParent = ()=>{
-        state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId)
+        state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId)
       }
 
       function findTopLevelId(tree, targetId) {
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue
index 9c43bdb..b722490 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue
@@ -6,7 +6,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="applyDepId">
-            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
         <el-col :span="12">
@@ -680,7 +680,7 @@
       const findParent = ()=>{
         // state.form.applyDepId = state.form.depIdList[state.form.depIdList.length - 1]
         // state.form.seDepId = state.form.depIdList[0]
-        state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId)
+        state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId)
       }
 
       const singleSelect=(value,type)=>{
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue
index 8c378d1..231d416 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue
@@ -6,7 +6,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="applyDepId">
-            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
@@ -610,7 +610,7 @@
       }
 
       const findParent = ()=>{
-        state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId)
+        state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId)
       }
 
       function findTopLevelId(tree, targetId) {
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue
index ac98510..3e83015 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue
@@ -6,7 +6,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="applyDepId">
-            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
         <el-col :span="12">
@@ -365,7 +365,7 @@
             value: 6
           },
           {
-            label: "特级高处作业",
+            label: "四级高处作业",
             value: 7
           }
         ],
@@ -544,7 +544,7 @@
       }
 
       const findParent = ()=>{
-        state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId)
+        state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId)
       }
 
       function findTopLevelId(tree, targetId) {
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue
index c3a6f9b..e2d8cbf 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue
@@ -6,7 +6,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="applyDepId">
-            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
         <el-col :span="12">
@@ -615,7 +615,7 @@
       }
 
       const findParent = ()=>{
-        state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId)
+        state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId)
       }
 
       function findTopLevelId(tree, targetId) {
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue
index 9550fbe..8d83647 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue
@@ -6,7 +6,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="applyDepId">
-            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue
index 653ebfc..d43a83c 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue
@@ -6,7 +6,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="applyDepId">
-            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
         <el-col :span="12">
@@ -692,7 +692,7 @@
       }
 
       const findParent = ()=>{
-        state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId)
+        state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId)
       }
 
       function findTopLevelId(tree, targetId) {
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue
index 4003686..e625316 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue
@@ -657,7 +657,7 @@
       }
 
       const findParent = ()=>{
-        state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId)
+        state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId)
       }
 
       function findTopLevelId(tree, targetId) {
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue
index c810af8..2d86728 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue
@@ -6,7 +6,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="applyDepId">
-            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.applyDepId" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
@@ -552,7 +552,7 @@
       }
 
       const findParent = ()=>{
-        state.form.seDepId = findTopLevelId(props.lists.departList2,state.form.applyDepId)
+        state.form.seDepId = findTopLevelId(props.lists.departList,state.form.applyDepId)
       }
 
       function findTopLevelId(tree, targetId) {
diff --git a/src/views/newSpecialWorkSystem/workTicket/wdsq/index.vue b/src/views/newSpecialWorkSystem/workTicket/wdsq/index.vue
index e036b00..ef25aba 100644
--- a/src/views/newSpecialWorkSystem/workTicket/wdsq/index.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/wdsq/index.vue
@@ -1,893 +1,942 @@
 <template>
-    <div class="home-container">
-<!--        <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">-->
-<!--            <el-tab-pane label="申请中" name="1">-->
-                <div style="height: 100%">
-                    <el-row class="homeCard">
-                      <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
-                        <span>时间筛选:</span>
-                        <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime" range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间" />
-                      </div>
-                      <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
-                        <span>负责人:</span>
-                        <el-input v-model="searPara.headUserName" placeholder="负责人"/>
-                      </div>
-                      <div class="basic-line">
-                        <span>事业部:</span>
-                        <el-select v-model="searPara.secondDepId">
-                          <el-option
-                              v-for="item in dep4List"
-                              :key="item.id"
-                              :label="item.name"
-                              :value="item.id"
-                          />
-                        </el-select>
-                      </div>
-                      <div class="basic-line">
-                        <span>作业类型:</span>
-                        <el-select v-model="searPara.workType">
-                          <el-option
-                              v-for="item in workType"
-                              :key="item.id"
-                              :label="item.name"
-                              :value="item.id"
-                          />
-                        </el-select>
-                      </div>
-                      <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
-                        <span>作业票编号:</span>
-                        <el-input
-                            v-model="searPara.workPermitNo"
-                            placeholder="请输入作业票编号"
-                        />
-                      </div>
-                      <div style="margin-left: 20px">
-                        <el-button type="primary" @click="searchRecord">查询</el-button>
-                        <el-button plain @click="clearSearch">重置</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="toApply()">申请</el-button>
-                                    <el-button type="primary" :icon="Download" size="default" @click="exportSheet()">导出记录</el-button>
-                                </el-col>
-                                <el-button type="primary" :icon="Refresh" size="default" @click="reLoadData()" />
-                            </el-row>
-                            <el-table ref="multipleTableRef" :data="applyData" style="width: 100%" height="calc(100% - 100px)" :header-cell-style="{ background: '#fafafa' }">
-                                <el-table-column property="workPermitNo" label="作业编号" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.workPermitNo?scope.row.workPermitNo:'—'}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="seDepName" label="事业部" align="center"/>
-                                <el-table-column property="applyDepName" label="作业所在车间" align="center"/>
-                                <el-table-column property="workContent" label="作业内容" align="center"/>
-                                <el-table-column property="workTypeDesc" label="作业类型" align="center"/>
-                                <el-table-column label="作业单位" align="center">
-                                  <template #default="scope">
-                                    <span v-if="scope.row.workDepList && scope.row.workDepList.length>0">{{scope.row.workDepList.map(i=>i.workDepName).join(',')}}</span>
-                                    <span v-else>{{scope.row.workDepName }}</span>
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="headList" label="负责人及电话" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.headList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="operatorList" label="作业人及电话" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.operatorList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="guardianList" label="监护人及电话" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.guardianList.map(i=>{return i.userName + '(' + i.phone+ ')' }).join(',')}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column property="expStartTime" label="作业开始时间" align="center"/>
-                                <el-table-column property="expEndTime" label="预计完成时间" align="center"/>
-                                <el-table-column label="执法仪编号" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.workApprovalDeviceList.map(i=>i.deviceNo).join(',')}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column label="作业人数" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.operatorList.length}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column label="监护人数" align="center">
-                                  <template #default="scope">
-                                    {{scope.row.guardianList.length}}
-                                  </template>
-                                </el-table-column>
-                                <el-table-column label="风险研判" align="center">
-                                    <template #default="scope">
-                                        <el-button v-if="scope.row.status == 0" link type="primary" size="small" @click="openReport('上传', scope.row)">上传研判报告</el-button>
-                                        <el-tag type="danger" v-else-if="scope.row.status == 15">已取消</el-tag>
-                                        <el-tag type="danger" v-else-if="scope.row.status == 16">已废止</el-tag>
-                                        <el-button v-else link type="primary" size="small" @click="openReport('查看', scope.row)">查看研判报告</el-button>
-                                    </template>
-                                </el-table-column>
-                                <el-table-column fixed="right" label="操作" align="center" width="150">
-                                    <template #default="scope">
-                                        <span v-if="scope.row.status == 16">已废止</span>
-                                        <span v-if="scope.row.status == 15">已取消</span>
-                                        <el-button v-if="scope.row.status == 0 || scope.row.status == 1" link type="danger" size="small" :icon="Delete" @click="abortRecordBtn(scope.row)">取消</el-button>
-                                        <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button>
-                                        <el-button v-if="scope.row.status == 0 || scope.row.status == 1" link type="primary" size="small" v-throttle :icon="Edit" @click="openEdit(scope.row)">修改</el-button>
-                                        <el-button link type="success" v-throttle v-if="scope.row.status == 0 || scope.row.status == 1" size="small" :icon="Download" @click="checkTicket(scope.row)">正式办票</el-button>
-<!--                                        <el-button :disabled="scope.row.status == 7 ? false : true" link type="primary" size="small" :icon="Download" @click="downLoadBtn(scope.row)">导出作业票</el-button>-->
-                                    </template>
-                                </el-table-column>
-                            </el-table>
-                            <div class="pageBtn">
-                                <el-pagination v-model:currentPage="pageIndex1" v-model:page-size="pageSize1" :page-sizes="[10, 15]" small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize1" @size-change="handleSizeChange1" @current-change="handleCurrentChange1" />
-                            </div>
-                        </div>
-                    </div>
-                </div>
-                <el-dialog v-model="dialogDetails" title="作业申请详情" center>
-<!--                    <fire v-if="dialogType == 1" :details = details></fire>-->
-<!--                    <space v-else-if="dialogType == 2" :details = details></space>-->
-<!--                    <hoist v-else-if="dialogType == 3" :details = details></hoist>-->
-<!--                    <ground v-else-if="dialogType == 4" :details = details></ground>-->
-<!--                    <broken v-else-if="dialogType == 5" :details = details></broken>-->
-<!--                    <height v-else-if="dialogType == 6" :details = details></height>-->
-<!--                    <power v-else-if="dialogType == 7" :details = details></power>-->
-<!--                    <plate v-else :details = details></plate>-->
-                  <detail-log :type=dialogType :statusList=statusList :details = details></detail-log>
-                    <template #footer>
+  <div class="home-container">
+    <!--        <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick">-->
+    <!--            <el-tab-pane label="申请中" name="1">-->
+    <div style="height: 100%">
+      <el-row class="homeCard">
+        <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
+          <span>时间筛选:</span>
+          <el-date-picker v-model="timeRange" value-format="YYYY-MM-DD" type="daterange" @change="giveTime"
+                          range-separator="至" start-placeholder="开始时间" end-placeholder="结束时间"/>
+        </div>
+        <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
+          <span>负责人:</span>
+          <el-input v-model="searPara.headUserName" placeholder="负责人"/>
+        </div>
+        <div class="basic-line">
+          <span>部门:</span>
+          <el-cascader :teleported="false" v-model="searPara.secondDepId" :options="departmentList" :props="casProps" :show-all-levels="false"/>
+        </div>
+        <div class="basic-line">
+          <span>作业类型:</span>
+          <el-select v-model="searPara.workType">
+            <el-option
+                v-for="item in workType"
+                :key="item.id"
+                :label="item.name"
+                :value="item.id"
+            />
+          </el-select>
+        </div>
+        <div class="basic-line" style="display:flex;white-space:nowrap;line-height: 40px">
+          <span>作业票编号:</span>
+          <el-input
+              v-model="searPara.workPermitNo"
+              placeholder="请输入作业票编号"
+          />
+        </div>
+        <div style="margin-left: 20px">
+          <el-button type="primary" @click="searchRecord">查询</el-button>
+          <el-button plain @click="clearSearch">重置</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="toApply()">申请</el-button>
+              <el-button type="primary" :icon="Download" size="default" @click="exportSheet()">导出记录</el-button>
+            </el-col>
+            <el-button type="primary" :icon="Refresh" size="default" @click="reLoadData()"/>
+          </el-row>
+          <el-table ref="multipleTableRef" :data="applyData" style="width: 100%" height="calc(100% - 100px)"
+                    :header-cell-style="{ background: '#fafafa' }">
+            <el-table-column property="workPermitNo" label="作业编号" align="center">
+              <template #default="scope">
+                {{ scope.row.workPermitNo ? scope.row.workPermitNo : '—' }}
+              </template>
+            </el-table-column>
+            <el-table-column property="seDepName" label="部门" align="center"/>
+            <el-table-column property="applyDepName" label="作业所在车间" align="center"/>
+            <el-table-column property="workContent" label="作业内容" align="center"/>
+            <el-table-column property="workTypeDesc" label="作业类型" align="center"/>
+            <el-table-column label="作业单位" align="center">
+              <template #default="scope">
+                <span
+                    v-if="scope.row.workDepList && scope.row.workDepList.length>0">{{ scope.row.workDepList.map(i => i.workDepName).join(',') }}</span>
+                <span v-else>{{ scope.row.workDepName }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column property="headList" label="负责人及电话" align="center">
+              <template #default="scope">
+                {{
+                  scope.row.headList.map(i => {
+                    return i.userName + '(' + i.phone + ')'
+                  }).join(',')
+                }}
+              </template>
+            </el-table-column>
+            <el-table-column property="operatorList" label="作业人及电话" align="center">
+              <template #default="scope">
+                {{
+                  scope.row.operatorList.map(i => {
+                    return i.userName + '(' + i.phone + ')'
+                  }).join(',')
+                }}
+              </template>
+            </el-table-column>
+            <el-table-column property="guardianList" label="监护人及电话" align="center">
+              <template #default="scope">
+                {{
+                  scope.row.guardianList.map(i => {
+                    return i.userName + '(' + i.phone + ')'
+                  }).join(',')
+                }}
+              </template>
+            </el-table-column>
+            <el-table-column property="expStartTime" label="作业开始时间" align="center"/>
+            <el-table-column property="expEndTime" label="预计完成时间" align="center"/>
+            <el-table-column label="执法仪编号" align="center">
+              <template #default="scope">
+                {{ scope.row.workApprovalDeviceList.map(i => i.deviceNo).join(',') }}
+              </template>
+            </el-table-column>
+            <el-table-column label="作业人数" align="center">
+              <template #default="scope">
+                {{ scope.row.operatorList.length }}
+              </template>
+            </el-table-column>
+            <el-table-column label="监护人数" align="center">
+              <template #default="scope">
+                {{ scope.row.guardianList.length }}
+              </template>
+            </el-table-column>
+            <el-table-column label="风险研判" align="center">
+              <template #default="scope">
+                <el-button v-if="scope.row.status == 0" link type="primary" size="small"
+                           @click="openReport('上传', scope.row)">上传研判报告
+                </el-button>
+                <el-tag type="danger" v-else-if="scope.row.status == 15">已取消</el-tag>
+                <el-tag type="danger" v-else-if="scope.row.status == 16">已废止</el-tag>
+                <el-button v-else link type="primary" size="small" @click="openReport('查看', scope.row)">查看研判报告
+                </el-button>
+              </template>
+            </el-table-column>
+            <el-table-column fixed="right" label="操作" align="center" width="150">
+              <template #default="scope">
+                <span v-if="scope.row.status == 16">已废止</span>
+                <span v-if="scope.row.status == 15">已取消</span>
+                <el-button v-if="scope.row.status == 0 || scope.row.status == 1" link type="danger" size="small"
+                           :icon="Delete" @click="abortRecordBtn(scope.row)">取消
+                </el-button>
+                <el-button link type="primary" size="small" :icon="View" @click="viewRecord(scope.row)">查看</el-button>
+                <el-button v-if="scope.row.status == 0 || scope.row.status == 1" link type="primary" size="small"
+                           v-throttle :icon="Edit" @click="openEdit(scope.row)">修改
+                </el-button>
+                <el-button link type="success" v-throttle v-if="scope.row.status == 0 || scope.row.status == 1"
+                           size="small" :icon="Download" @click="checkTicket(scope.row)">正式办票
+                </el-button>
+                <!--                                        <el-button :disabled="scope.row.status == 7 ? false : true" link type="primary" size="small" :icon="Download" @click="downLoadBtn(scope.row)">导出作业票</el-button>-->
+              </template>
+            </el-table-column>
+          </el-table>
+          <div class="pageBtn">
+            <el-pagination v-model:currentPage="pageIndex1" v-model:page-size="pageSize1" :page-sizes="[10, 15]"
+                           small="false" background layout="total, sizes, prev, pager, next, jumper" :total="totalSize1"
+                           @size-change="handleSizeChange1" @current-change="handleCurrentChange1"/>
+          </div>
+        </div>
+      </div>
+    </div>
+    <el-dialog v-model="dialogDetails" title="作业申请详情" center>
+      <!--                    <fire v-if="dialogType == 1" :details = details></fire>-->
+      <!--                    <space v-else-if="dialogType == 2" :details = details></space>-->
+      <!--                    <hoist v-else-if="dialogType == 3" :details = details></hoist>-->
+      <!--                    <ground v-else-if="dialogType == 4" :details = details></ground>-->
+      <!--                    <broken v-else-if="dialogType == 5" :details = details></broken>-->
+      <!--                    <height v-else-if="dialogType == 6" :details = details></height>-->
+      <!--                    <power v-else-if="dialogType == 7" :details = details></power>-->
+      <!--                    <plate v-else :details = details></plate>-->
+      <detail-log :type=dialogType :statusList=statusList :details=details></detail-log>
+      <template #footer>
                       <span class="dialog-footer">
                         <el-button type="primary" @click="dialogDetails = false">确认</el-button>
                       </span>
-                    </template>
-                </el-dialog>
-                <report-log ref="reportDialogRef" @refresh="getListByPage"></report-log>
-                <fire-dialog ref="fireRef" :lists="lists" @refresh="getListByPage"></fire-dialog>
-                <plate-dialog ref="plateRef" :lists="lists" @refresh="getListByPage"></plate-dialog>
-                <space-dialog ref="spaceRef" :lists="lists" @refresh="getListByPage"></space-dialog>
-                <hoist-dialog ref="hoistRef" :lists="lists" @refresh="getListByPage"></hoist-dialog>
-                <ground-dialog ref="groundRef" :lists="lists" @refresh="getListByPage"></ground-dialog>
-                <broken-dialog ref="brokenRef" :lists="lists" @refresh="getListByPage"></broken-dialog>
-                <height-dialog ref="heightRef" :lists="lists" @refresh="getListByPage"></height-dialog>
-                <power-dialog ref="powerRef" :lists="lists" @refresh="getListByPage"></power-dialog>
-                <open-dialog ref="openRef" :lists="lists" @refresh="getListByPage"></open-dialog>
-    </div>
+      </template>
+    </el-dialog>
+    <report-log ref="reportDialogRef" @refresh="getListByPage"></report-log>
+    <fire-dialog ref="fireRef" :lists="lists" @refresh="getListByPage"></fire-dialog>
+    <plate-dialog ref="plateRef" :lists="lists" @refresh="getListByPage"></plate-dialog>
+    <space-dialog ref="spaceRef" :lists="lists" @refresh="getListByPage"></space-dialog>
+    <hoist-dialog ref="hoistRef" :lists="lists" @refresh="getListByPage"></hoist-dialog>
+    <ground-dialog ref="groundRef" :lists="lists" @refresh="getListByPage"></ground-dialog>
+    <broken-dialog ref="brokenRef" :lists="lists" @refresh="getListByPage"></broken-dialog>
+    <height-dialog ref="heightRef" :lists="lists" @refresh="getListByPage"></height-dialog>
+    <power-dialog ref="powerRef" :lists="lists" @refresh="getListByPage"></power-dialog>
+    <open-dialog ref="openRef" :lists="lists" @refresh="getListByPage"></open-dialog>
+  </div>
 </template>
 
 <script lang="ts">
 import {toRefs, reactive, defineComponent, ref, onMounted, defineAsyncComponent} from 'vue';
-import { storeToRefs } from 'pinia';
-import { initBackEndControlRoutes } from '/@/router/backEnd';
-import { useUserInfo } from '/@/stores/userInfo';
-import { Session } from '/@/utils/storage';
-import { useRouter } from 'vue-router';
-import { Edit, View, Plus, Delete, Refresh, Search, Finished, Download } from '@element-plus/icons-vue';
-import { ElTable } from 'element-plus';
-import { FormInstance, FormRules, ElMessage, ElMessageBox } from 'element-plus';
-import { workApplyApi } from '/@/api/specialWorkSystem/workApply';
-import type { TabsPaneContext } from 'element-plus';
+import {storeToRefs} from 'pinia';
+import {initBackEndControlRoutes} from '/@/router/backEnd';
+import {useUserInfo} from '/@/stores/userInfo';
+import {Session} from '/@/utils/storage';
+import {useRouter} from 'vue-router';
+import {Edit, View, Plus, Delete, Refresh, Search, Finished, Download} from '@element-plus/icons-vue';
+import {ElTable} from 'element-plus';
+import {FormInstance, FormRules, ElMessage, ElMessageBox} from 'element-plus';
+import {workApplyApi} from '/@/api/specialWorkSystem/workApply';
+import type {TabsPaneContext} from 'element-plus';
 import {teamManageApi} from "/@/api/systemManage/basicDateManage/personShiftManage/teamManage";
 import Cookies from 'js-cookie';
 import axios from 'axios';
 
 // 定义接口来定义对象的类型
 interface stateType {
-    applyData: Array<string>;
-    workTimeList: Array<string>;
-    multipleSelection: Array<any>;
-    deleteArr: Array<any>;
-    approveInfo: Object;
-    dialogDetails: boolean;
-    dialogStatus: boolean;
-    pageIndex1: number;
-    pageSize1: number;
-    chosenIndex: null | number;
-    downLoadId: null | number;
-    downLoadName: string;
-    totalSize1: number;
-    activeName: string;
-    addRecord: {};
-    details: {};
-    statusInfo: {};
-    workType: Array<type>;
-    dialogType: number | null;
-    departmentList: Array<any>;
-    departmentRecursionList: Array<DepartmentState>;
-    statusList: Array<any>;
-    searPara: {}
-    timeRange: Array<string>;
-    dep4List: Array<type>;
-    lists: {}
+  applyData: Array<string>;
+  workTimeList: Array<string>;
+  multipleSelection: Array<any>;
+  deleteArr: Array<any>;
+  approveInfo: Object;
+  dialogDetails: boolean;
+  dialogStatus: boolean;
+  pageIndex1: number;
+  pageSize1: number;
+  chosenIndex: null | number;
+  downLoadId: null | number;
+  downLoadName: string;
+  totalSize1: number;
+  activeName: string;
+  addRecord: {};
+  details: {};
+  statusInfo: {};
+  workType: Array<type>;
+  dialogType: number | null;
+  departmentList: Array<any>;
+  departmentRecursionList: Array<DepartmentState>;
+  statusList: Array<any>;
+  searPara: {}
+  timeRange: Array<string>;
+  dep4List: Array<type>;
+  lists: {}
+  casProps: {}
 }
+
 interface type {
-    id: number;
-    name: string;
+  id: number;
+  name: string;
 }
+
 interface DepartmentState {
-    depId: number;
-    depName: string;
+  depId: number;
+  depName: string;
 }
+
 export default defineComponent({
-    name: 'myApply',
-    components: {
-      detailLog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/detailLog.vue')),
-      reportLog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/jsaReportDialog.vue')),
-      fireDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue')),
-      plateDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue')),
-      spaceDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue')),
-      hoistDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue')),
-      groundDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue')),
-      brokenDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue')),
-      heightDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue')),
-      powerDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue')),
-      openDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue'))
-    },
-    setup() {
-        const userInfo = useUserInfo();
-        const { userInfos } = storeToRefs(userInfo);
-        const router = useRouter();
-        const reportDialogRef = ref();
-        const fireRef = ref()
-        const plateRef = ref()
-        const spaceRef = ref()
-        const hoistRef = ref()
-        const groundRef = ref()
-        const brokenRef = ref()
-        const heightRef = ref()
-        const powerRef = ref()
-        const openRef = ref()
-        const state = reactive<stateType>({
-            pageIndex1: 1,
-            pageSize1: 10,
-            totalSize1: 0,
-            dialogType: null,
-            activeName: '1',
-            departmentList: [],
-            departmentRecursionList: [],
-            chosenIndex: null,
-            searPara:{
-              startTime: '',
-              endTime: '',
-              workPermitNo: '',
-              workType: null,
-              headUserName: '',
-              secondDepId: null
-            },
-            timeRange: [],
-            applyData: [],
-            workTimeList: [],
-            multipleSelection: [],
-            approveInfo: {
-                approvalSteps: [],
-                operators: []
-            },
-            dialogDetails: false,
-            dialogStatus: false,
-            addRecord: {},
-            details: {},
-            statusInfo: {},
-            downLoadId: null,
-            downLoadName: '',
-            deleteArr: [],
-            workType: [
-                { id: 1, name: '动火作业' },
-                { id: 2, name: '受限空间作业' },
-                { id: 3, name: '吊装作业' },
-                { id: 4, name: '动土作业' },
-                { id: 5, name: '断路作业' },
-                { id: 6, name: '高处作业' },
-                { id: 7, name: '临时用电作业' },
-                { id: 8, name: '盲板抽堵作业' },
-                { id: 9, name: '打开作业' }
-            ],
-          lists: {
-            workerList: [],
-            departList: [],
-            departList2: [],
-            deviceList: [],
-            otherWorks: [],
-            spList: [],
-            riskList: []
-          },
-          dep4List: [
-            {id:49,name:'电石事业部'},
-            {id:50,name:'电力事业部'},
-            {id:48,name:'有机化工事业部'},
-            {id:32,name:'甲醇事业部'}
-          ],
-          statusList: [
-            {
-              value: 0,
-              label: '风险研判'
-            },
-            {
-              value: 1,
-              label: '票证办理'
-            },
-            {
-              value: 2,
-              label: '气体分析'
-            },
-            {
-              value: 3,
-              label: '安全措施确认,培训交底'
-            },
-            {
-              value: 4,
-              label: '安全措施确认'
-            },
-            {
-              value: 5,
-              label: '培训交底'
-            },
-            {
-              value: 6,
-              label: '部门审批'
-            },
-            {
-              value: 7,
-              label: '作业票填报结束'
-            },
-            {
-              value: 8,
-              label: '作业气体分析不合格'
-            },
-            {
-              value: 9,
-              label: '审批未通过'
-            },
-            {
-              value: 10,
-              label: '开始'
-            },
-            {
-              value: 11,
-              label: '监护'
-            },
-            {
-              value: 12,
-              label: '结束'
-            },
-            {
-              value: 13,
-              label: '待验收'
-            },
-            {
-              value: 14,
-              label: '验收完成'
-            },
-            {
-              value: 15,
-              label: '取消'
-            },
-            {
-              value: 16,
-              label: '废止作业票'
-            }
-          ]
-        });
-
-      // 页面载入时执行方法
-      onMounted(() => {
-        getListByPage();
-        getAllDepartment()
-        spWorker()
-        getOpList()
-        getAll()
-        getAllDevice()
-        getAllRisks()
-        getOtherWork()
-      });
-
-        const openEdit = (row)=>{
-          if(row.workType == 1){
-            fireRef.value.openDialog(row,'edit')
-          }
-          if(row.workType == 2){
-            spaceRef.value.openDialog(row,'edit')
-          }
-          if(row.workType == 3){
-            hoistRef.value.openDialog(row,'edit')
-          }
-          if(row.workType == 4){
-            groundRef.value.openDialog(row,'edit')
-          }
-          if(row.workType == 5){
-            brokenRef.value.openDialog(row,'edit')
-          }
-          if(row.workType == 6){
-            heightRef.value.openDialog(row,'edit')
-          }
-          if(row.workType == 7){
-            powerRef.value.openDialog(row,'edit')
-          }
-          if(row.workType == 8){
-            plateRef.value.openDialog(row,'edit')
-          }
-          if(row.workType == 9){
-            openRef.value.openDialog(row,'edit')
-          }
+  name: 'myApply',
+  components: {
+    detailLog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/detailLog.vue')),
+    reportLog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/jsaReportDialog.vue')),
+    fireDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/fireDialog.vue')),
+    plateDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/plateDialog.vue')),
+    spaceDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/spaceDialog.vue')),
+    hoistDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/hoistDialog.vue')),
+    groundDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/groundDialog.vue')),
+    brokenDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/brokenDialog.vue')),
+    heightDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/heightDialog.vue')),
+    powerDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/powerDialog.vue')),
+    openDialog: defineAsyncComponent(() => import('/@/views/newSpecialWorkSystem/workTicket/wdsq/components/openDialog.vue'))
+  },
+  setup() {
+    const userInfo = useUserInfo();
+    const {userInfos} = storeToRefs(userInfo);
+    const router = useRouter();
+    const reportDialogRef = ref();
+    const fireRef = ref()
+    const plateRef = ref()
+    const spaceRef = ref()
+    const hoistRef = ref()
+    const groundRef = ref()
+    const brokenRef = ref()
+    const heightRef = ref()
+    const powerRef = ref()
+    const openRef = ref()
+    const state = reactive<stateType>({
+      pageIndex1: 1,
+      pageSize1: 10,
+      totalSize1: 0,
+      dialogType: null,
+      activeName: '1',
+      departmentList: [],
+      departmentRecursionList: [],
+      chosenIndex: null,
+      searPara: {
+        startTime: '',
+        endTime: '',
+        workPermitNo: '',
+        workType: null,
+        headUserName: '',
+        secondDepId: null
+      },
+      casProps: {
+        emitPath: false,
+        value: 'depId',
+        label: 'depName',
+        checkStrictly: true
+      },
+      timeRange: [],
+      applyData: [],
+      workTimeList: [],
+      multipleSelection: [],
+      approveInfo: {
+        approvalSteps: [],
+        operators: []
+      },
+      dialogDetails: false,
+      dialogStatus: false,
+      addRecord: {},
+      details: {},
+      statusInfo: {},
+      downLoadId: null,
+      downLoadName: '',
+      deleteArr: [],
+      workType: [
+        {id: 1, name: '动火作业'},
+        {id: 2, name: '受限空间作业'},
+        {id: 3, name: '吊装作业'},
+        {id: 4, name: '动土作业'},
+        {id: 5, name: '断路作业'},
+        {id: 6, name: '高处作业'},
+        {id: 7, name: '临时用电作业'},
+        {id: 8, name: '盲板抽堵作业'},
+        {id: 9, name: '打开作业'}
+      ],
+      lists: {
+        workerList: [],
+        departList: [],
+        departList2: [],
+        deviceList: [],
+        otherWorks: [],
+        spList: [],
+        riskList: []
+      },
+      dep4List: [],
+      statusList: [
+        {
+          value: 0,
+          label: '风险研判'
+        },
+        {
+          value: 1,
+          label: '票证办理'
+        },
+        {
+          value: 2,
+          label: '气体分析'
+        },
+        {
+          value: 3,
+          label: '安全措施确认,培训交底'
+        },
+        {
+          value: 4,
+          label: '安全措施确认'
+        },
+        {
+          value: 5,
+          label: '培训交底'
+        },
+        {
+          value: 6,
+          label: '部门审批'
+        },
+        {
+          value: 7,
+          label: '作业票填报结束'
+        },
+        {
+          value: 8,
+          label: '作业气体分析不合格'
+        },
+        {
+          value: 9,
+          label: '审批未通过'
+        },
+        {
+          value: 10,
+          label: '开始'
+        },
+        {
+          value: 11,
+          label: '监护'
+        },
+        {
+          value: 12,
+          label: '结束'
+        },
+        {
+          value: 13,
+          label: '待验收'
+        },
+        {
+          value: 14,
+          label: '验收完成'
+        },
+        {
+          value: 15,
+          label: '取消'
+        },
+        {
+          value: 16,
+          label: '废止作业票'
         }
+      ]
+    });
 
-      const spWorker = async ()=>{
-        for(let id of ['18','19']){
-          const res = await workApplyApi().getSpList({roleId: id})
-          if(id == '18'){
-            if (res.data.code === '200') {
-              state.lists.spList.jhList = JSON.parse(JSON.stringify(res.data.data))
-            } else {
-              ElMessage({
-                type: 'warning',
-                message: res.data.msg
-              });
-            }
-          }
-          if(id == '19'){
-            if (res.data.code === '200') {
-              state.lists.spList.sfList = JSON.parse(JSON.stringify(res.data.data))
-            } else {
-              ElMessage({
-                type: 'warning',
-                message: res.data.msg
-              });
-            }
-          }
-        }
+    // 页面载入时执行方法
+    onMounted(() => {
+      getListByPage();
+      getAllDepartment()
+      spWorker()
+      getOpList()
+      getAll()
+      getAllDevice()
+      getAllRisks()
+      getOtherWork()
+    });
+
+    const openEdit = (row) => {
+      if (row.workType == 1) {
+        fireRef.value.openDialog(row, 'edit')
       }
-
-      const getOpList = async()=>{
-        const res = await workApplyApi().getOpList()
-        if(res.data.code == '200'){
-          if(res.data.data && res.data.data.length>0){
-            state.lists.spList.opList = JSON.parse(JSON.stringify(res.data.data)).map(i=>{
-              if(i.certList && i.certList.length>0){
-                i.certList = i.certList.map(item=>{
-                  item['realName'] = i.realName + '(' + item.certTypeName +':'+ item.certExpiredAt + ')'
-                  item['uid'] = item.certNo + ',' + item.certExpiredAt
-                  return item
-                })
-              }
-              return i
-            })
-          }
-        }else{
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          })
-        }
+      if (row.workType == 2) {
+        spaceRef.value.openDialog(row, 'edit')
       }
-
-      // 获取用户列表
-      const getAll = async ()=>{
-        const res = await workApplyApi().getAllUsers()
-        if (res.data.code === '200') {
-          state.lists.workerList = JSON.parse(JSON.stringify(res.data.data))
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
-      };
-
-      // 获取设备列表
-      const getAllDevice = async ()=>{
-        const res = await workApplyApi().getAllDevices()
-        if (res.data.code === '200') {
-          state.lists.deviceList = JSON.parse(JSON.stringify(res.data.data))
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
+      if (row.workType == 3) {
+        hoistRef.value.openDialog(row, 'edit')
       }
-
-      // 获取设备列表
-      const getAllRisks = async ()=>{
-        const res = await workApplyApi().getAllRiskIdentity()
-        if (res.data.code === '200') {
-          // state.allDevices = JSON.parse(JSON.stringify(res.data.data))
-          state.lists.riskList = JSON.parse(JSON.stringify(res.data.data))
-        } else {
-          ElMessage({
-            type: 'warning',
-            message: res.data.msg
-          });
-        }
+      if (row.workType == 4) {
+        groundRef.value.openDialog(row, 'edit')
       }
+      if (row.workType == 5) {
+        brokenRef.value.openDialog(row, 'edit')
+      }
+      if (row.workType == 6) {
+        heightRef.value.openDialog(row, 'edit')
+      }
+      if (row.workType == 7) {
+        powerRef.value.openDialog(row, 'edit')
+      }
+      if (row.workType == 8) {
+        plateRef.value.openDialog(row, 'edit')
+      }
+      if (row.workType == 9) {
+        openRef.value.openDialog(row, 'edit')
+      }
+    }
 
-        const giveTime = () => {
-          if (state.timeRange && state.timeRange !== null) {
-            state.searPara.startTime = state.timeRange[0];
-            state.searPara.endTime = state.timeRange[1]
-          } else {
-            state.searPara.startTime = '';
-            state.searPara.endTime = '';
-          }
-        };
-
-        // 刷新
-        const reLoadData = async () => {
-            getListByPage();
-        };
-
-        // 填写表单
-        const toApply = () => {
-            router.push({
-                path: 'zysq'
-            });
-        };
-
-        const handleClick = (tab: TabsPaneContext, event: Event) => {
-        };
-
-        // 获取部门列表
-        const getAllDepartment = async () => {
-            let res = await teamManageApi().getAllDepartment();
-            if (res.data.code === '200') {
-                state.departmentList = JSON.parse(JSON.stringify(res.data.data))
-                recursion(state.departmentList);
-                state.lists.departList = JSON.parse(JSON.stringify(res.data.data))
-                state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47)
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        };
-        const getOtherWork = async () => {
-          let res = await workApplyApi().getOtherWork({pageSize: 999, pageIndex: 1, searchParams: {workPermitNo: '', workType: null}})
+    const spWorker = async () => {
+      for (let id of ['18', '19']) {
+        const res = await workApplyApi().getSpList({roleId: id})
+        if (id == '18') {
           if (res.data.code === '200') {
-            state.lists.otherWorks = JSON.parse(JSON.stringify(res.data.data))
+            state.lists.spList.jhList = JSON.parse(JSON.stringify(res.data.data))
           } else {
             ElMessage({
               type: 'warning',
               message: res.data.msg
             });
           }
-        };
-
-        const recursion = (value: any) => {
-            for (let i of value) {
-                if (i.children.length !== 0) {
-                    state.departmentRecursionList.push(i);
-                    recursion(i.children);
-                } else {
-                    state.departmentRecursionList.push(i);
-                }
-            }
-        };
-
-        // 分页获取
-        const getListByPage = async () => {
-            const data = { pageSize: state.pageSize1, pageIndex: state.pageIndex1, searchParams: state.searPara };
-            let res = await workApplyApi().getNewApplyListPage(data);
-            if (res.data.code === '200') {
-                state.applyData = JSON.parse(JSON.stringify(res.data.data));
-                state.applyData = state.applyData.map((item) => {
-                    if (item.operators == null || item.operators == []) {
-                        item.operators = [];
-                    } else {
-                        item.operators = Array.from(item.operators, ({ operatorUname }) => operatorUname);
-                    }
-                    return item;
-                });
-                state.totalSize1 = res.data.total;
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        };
-
-        // 表格数据格式化
-        const toNames = (row, column, cellValue, index) => {
-            if (row.list == []) {
-                return [];
-            } else {
-                const nameList = [];
-                for (let i = 0; i < row.list.length; i++) {
-                    for (let t = 0; t < state.workTimeList.length; t++) {
-                        if (row.list[i] == state.workTimeList[t].id) {
-                            nameList.push(state.workTimeList[t].name);
-                        }
-                    }
-                }
-                return nameList.join();
-            }
-        };
-
-        // 关键词查询记录
-        const searchRecord = async () => {
-          state.pageIndex1 = 1
-          getListByPage();
-        };
-        // 重置搜索
-        const clearSearch = async () => {
-          state.timeRange = []
-          state.searPara = {
-            startTime: '',
-            endTime: '',
-            workPermitNo: '',
-            workType: null,
-            headUserName: '',
-            secondDepId: null
-          };
-          state.pageIndex1 = 1
-          getListByPage();
-        };
-
-        // 查看进度
-        const viewStatus = (row) => {
-            getStatus({ workApplyId: row.workApplyId });
-            state.dialogStatus = true;
-        };
-
-        // 查询进度方法
-        const getStatus = async (data: any) => {
-            let res = await workApplyApi().getStatus(data);
-            if (res.data.code === '200') {
-                state.approveInfo = JSON.parse(JSON.stringify(res.data.data));
-                state.approveInfo.operators = Array.from(state.approveInfo.operators, ({ operatorUname }) => operatorUname);
-            } else {
-                ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                });
-            }
-        };
-
-        const abortRecordBtn = (row:object) => {
-          ElMessageBox.confirm(
-              '是否作废该项申报?',
-              '申报作废',
-              {
-                confirmButtonText: '确认',
-                cancelButtonText: '取消'
-              }
-          )
-              .then(async () => {
-                let res = await workApplyApi().abolishTicket({id: row.id});
-                if (res.data.code === '200') {
-                  ElMessage({
-                    type: 'success',
-                    message: '作废成功!'
-                  });
-                  getListByPage();
-                } else {
-                  ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                  });
-                }
-              })
-              .catch(() => {
-                console.log('取消废票')
-              })
-        };
-
-        // 正式办票
-        const checkTicket = (row:object) =>{
-          ElMessageBox.confirm(
-              '是否进行正式办票操作?',
-              '正式办票',
-              {
-                confirmButtonText: '确认',
-                cancelButtonText: '取消'
-              }
-          )
-              .then(async () => {
-                let res = await workApplyApi().checkTicket({id: row.id});
-                if (res.data.code === '200') {
-                  ElMessage({
-                    type: 'success',
-                    message: '办票成功!'
-                  });
-                  getListByPage();
-                } else {
-                  ElMessage({
-                    type: 'warning',
-                    message: res.data.msg
-                  });
-                }
-              })
-              .catch(() => {
-                console.log('取消办票')
-              })
         }
-
-        // 导出图表
-        const downLoadBtn = (row:any) =>{
-            state.downLoadId = row.workApplyId;
-            state.downLoadName = row.workTypeDesc + row.workPermitNo
+        if (id == '19') {
+          if (res.data.code === '200') {
+            state.lists.spList.sfList = JSON.parse(JSON.stringify(res.data.data))
+          } else {
+            ElMessage({
+              type: 'warning',
+              message: res.data.msg
+            });
+          }
         }
-
-        // 导出方法
-        const exportSheet = async () => {
-            // let res = await workApplyApi().postPrinting(data);
-            axios.post(import.meta.env.VITE_API_URL + `/specialwork9step/work/export/excel`,{startTime: state.searPara.startTime,endTime: state.searPara.endTime,secondDepId: state.searPara.secondDepId},{headers:{'Content-Type': 'application/json','Authorization': `${Cookies.get('token')}`,'uid':`${Cookies.get('uid')}`},responseType: 'blob'}).then(res=>{
-                if (res) {
-                    const link = document.createElement('a')
-                    let blob = new Blob([res.data],{type: 'application/excel'})
-                    link.style.display = "none";
-                    link.href = URL.createObjectURL(blob); // 创建URL
-                    if(state.searPara.startTime !== '' && state.searPara.endTime !==''){
-                      link.setAttribute("download", state.searPara.startTime + '—' + state.searPara.endTime +"作业申报记录.xlsx")
-                    }else{
-                      link.setAttribute("download", "作业申报记录.xlsx")
-                    }
-                    document.body.appendChild(link);
-                    link.click();
-                    document.body.removeChild(link);
-                } else {
-                    ElMessage({
-                        type: 'warning',
-                        message: res.data.msg
-                    });
-                }
-            })
-
-        };
-
-        const handleSizeChange1 = (val: number) => {
-            state.pageSize1 = val;
-            getListByPage();
-        };
-        const handleCurrentChange1 = (val: number) => {
-            state.pageIndex1 = val;
-            getListByPage();
-        };
-
-        const openReport = (type: string, value: {}) => {
-          reportDialogRef.value.showReportDialog(type, value);
-        };
-
-        // 查看记录
-        const viewRecord = (row: any) => {
-            state.dialogType = row.workType
-            state.details = JSON.parse(JSON.stringify(row));
-            state.dialogDetails = true;
-        };
-
-        // 折线图
-        const renderMenu = async (value: string) => {
-            Session.set('projectId', value);
-            userInfos.value.projectId = value;
-            await initBackEndControlRoutes();
-        };
-
-        return {
-            View,
-            Edit,
-            Delete,
-            Refresh,
-            Plus,
-            Finished,
-            Download,
-          reportDialogRef,
-          fireRef,
-          plateRef,
-          spaceRef,
-          hoistRef,
-          groundRef,
-          brokenRef,
-          heightRef,
-          powerRef,
-          openRef,
-          openEdit,
-          getAllDepartment,
-          checkTicket,
-            giveTime,
-            reLoadData,
-            toApply,
-            handleClick,
-            toNames,
-            searchRecord,
-            clearSearch,
-            openReport,
-            viewRecord,
-            viewStatus,
-            abortRecordBtn,
-            downLoadBtn,
-            exportSheet,
-            getListByPage,
-            handleSizeChange1,
-            handleCurrentChange1,
-            ...toRefs(state)
-        };
+      }
     }
+
+    const getOpList = async () => {
+      const res = await workApplyApi().getOpList()
+      if (res.data.code == '200') {
+        if (res.data.data && res.data.data.length > 0) {
+          state.lists.spList.opList = JSON.parse(JSON.stringify(res.data.data)).map(i => {
+            if (i.certList && i.certList.length > 0) {
+              i.certList = i.certList.map(item => {
+                item['realName'] = i.realName + '(' + item.certTypeName + ':' + item.certExpiredAt + ')'
+                item['uid'] = item.certNo + ',' + item.certExpiredAt
+                return item
+              })
+            }
+            return i
+          })
+        }
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        })
+      }
+    }
+
+    // 获取用户列表
+    const getAll = async () => {
+      const res = await workApplyApi().getAllUsers()
+      if (res.data.code === '200') {
+        state.lists.workerList = JSON.parse(JSON.stringify(res.data.data))
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    // 获取设备列表
+    const getAllDevice = async () => {
+      const res = await workApplyApi().getAllDevices()
+      if (res.data.code === '200') {
+        state.lists.deviceList = JSON.parse(JSON.stringify(res.data.data))
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    }
+
+    // 获取设备列表
+    const getAllRisks = async () => {
+      const res = await workApplyApi().getAllRiskIdentity()
+      if (res.data.code === '200') {
+        // state.allDevices = JSON.parse(JSON.stringify(res.data.data))
+        state.lists.riskList = JSON.parse(JSON.stringify(res.data.data))
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    }
+
+    const giveTime = () => {
+      if (state.timeRange && state.timeRange !== null) {
+        state.searPara.startTime = state.timeRange[0];
+        state.searPara.endTime = state.timeRange[1]
+      } else {
+        state.searPara.startTime = '';
+        state.searPara.endTime = '';
+      }
+    };
+
+    // 刷新
+    const reLoadData = async () => {
+      getListByPage();
+    };
+
+    // 填写表单
+    const toApply = () => {
+      router.push({
+        path: 'zysq'
+      });
+    };
+
+    const handleClick = (tab: TabsPaneContext, event: Event) => {
+    };
+
+    // 获取部门列表
+    const getAllDepartment = async () => {
+      let res = await teamManageApi().getAllDepartment();
+      if (res.data.code === '200') {
+        state.departmentList = JSON.parse(JSON.stringify(res.data.data))
+        recursion(state.departmentList);
+        state.lists.departList = JSON.parse(JSON.stringify(res.data.data))
+        // state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47)
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+    const getOtherWork = async () => {
+      let res = await workApplyApi().getOtherWork({
+        pageSize: 999,
+        pageIndex: 1,
+        searchParams: {workPermitNo: '', workType: null}
+      })
+      if (res.data.code === '200') {
+        state.lists.otherWorks = JSON.parse(JSON.stringify(res.data.data))
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    const recursion = (value: any) => {
+      for (let i of value) {
+        if (i.children.length !== 0) {
+          state.departmentRecursionList.push(i);
+          recursion(i.children);
+        } else {
+          state.departmentRecursionList.push(i);
+        }
+      }
+    };
+
+    // 分页获取
+    const getListByPage = async () => {
+      const data = {pageSize: state.pageSize1, pageIndex: state.pageIndex1, searchParams: state.searPara};
+      let res = await workApplyApi().getNewApplyListPage(data);
+      if (res.data.code === '200') {
+        state.applyData = JSON.parse(JSON.stringify(res.data.data));
+        state.applyData = state.applyData.map((item) => {
+          if (item.operators == null || item.operators == []) {
+            item.operators = [];
+          } else {
+            item.operators = Array.from(item.operators, ({operatorUname}) => operatorUname);
+          }
+          return item;
+        });
+        state.totalSize1 = res.data.total;
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    // 表格数据格式化
+    const toNames = (row, column, cellValue, index) => {
+      if (row.list == []) {
+        return [];
+      } else {
+        const nameList = [];
+        for (let i = 0; i < row.list.length; i++) {
+          for (let t = 0; t < state.workTimeList.length; t++) {
+            if (row.list[i] == state.workTimeList[t].id) {
+              nameList.push(state.workTimeList[t].name);
+            }
+          }
+        }
+        return nameList.join();
+      }
+    };
+
+    // 关键词查询记录
+    const searchRecord = async () => {
+      state.pageIndex1 = 1
+      getListByPage();
+    };
+    // 重置搜索
+    const clearSearch = async () => {
+      state.timeRange = []
+      state.searPara = {
+        startTime: '',
+        endTime: '',
+        workPermitNo: '',
+        workType: null,
+        headUserName: '',
+        secondDepId: null
+      };
+      state.pageIndex1 = 1
+      getListByPage();
+    };
+
+    // 查看进度
+    const viewStatus = (row) => {
+      getStatus({workApplyId: row.workApplyId});
+      state.dialogStatus = true;
+    };
+
+    // 查询进度方法
+    const getStatus = async (data: any) => {
+      let res = await workApplyApi().getStatus(data);
+      if (res.data.code === '200') {
+        state.approveInfo = JSON.parse(JSON.stringify(res.data.data));
+        state.approveInfo.operators = Array.from(state.approveInfo.operators, ({operatorUname}) => operatorUname);
+      } else {
+        ElMessage({
+          type: 'warning',
+          message: res.data.msg
+        });
+      }
+    };
+
+    const abortRecordBtn = (row: object) => {
+      ElMessageBox.confirm(
+          '是否作废该项申报?',
+          '申报作废',
+          {
+            confirmButtonText: '确认',
+            cancelButtonText: '取消'
+          }
+      )
+          .then(async () => {
+            let res = await workApplyApi().abolishTicket({id: row.id});
+            if (res.data.code === '200') {
+              ElMessage({
+                type: 'success',
+                message: '作废成功!'
+              });
+              getListByPage();
+            } else {
+              ElMessage({
+                type: 'warning',
+                message: res.data.msg
+              });
+            }
+          })
+          .catch(() => {
+            console.log('取消废票')
+          })
+    };
+
+    // 正式办票
+    const checkTicket = (row: object) => {
+      ElMessageBox.confirm(
+          '是否进行正式办票操作?',
+          '正式办票',
+          {
+            confirmButtonText: '确认',
+            cancelButtonText: '取消'
+          }
+      )
+          .then(async () => {
+            let res = await workApplyApi().checkTicket({id: row.id});
+            if (res.data.code === '200') {
+              ElMessage({
+                type: 'success',
+                message: '办票成功!'
+              });
+              getListByPage();
+            } else {
+              ElMessage({
+                type: 'warning',
+                message: res.data.msg
+              });
+            }
+          })
+          .catch(() => {
+            console.log('取消办票')
+          })
+    }
+
+    // 导出图表
+    const downLoadBtn = (row: any) => {
+      state.downLoadId = row.workApplyId;
+      state.downLoadName = row.workTypeDesc + row.workPermitNo
+    }
+
+    // 导出方法
+    const exportSheet = async () => {
+      // let res = await workApplyApi().postPrinting(data);
+      axios.post(import.meta.env.VITE_API_URL + `/specialwork9step/work/export/excel`, {
+        startTime: state.searPara.startTime,
+        endTime: state.searPara.endTime,
+        secondDepId: state.searPara.secondDepId
+      }, {
+        headers: {
+          'Content-Type': 'application/json',
+          'Authorization': `${Cookies.get('token')}`,
+          'uid': `${Cookies.get('uid')}`
+        }, responseType: 'blob'
+      }).then(res => {
+        if (res) {
+          const link = document.createElement('a')
+          let blob = new Blob([res.data], {type: 'application/excel'})
+          link.style.display = "none";
+          link.href = URL.createObjectURL(blob); // 创建URL
+          if (state.searPara.startTime !== '' && state.searPara.endTime !== '') {
+            link.setAttribute("download", state.searPara.startTime + '—' + state.searPara.endTime + "作业申报记录.xlsx")
+          } else {
+            link.setAttribute("download", "作业申报记录.xlsx")
+          }
+          document.body.appendChild(link);
+          link.click();
+          document.body.removeChild(link);
+        } else {
+          ElMessage({
+            type: 'warning',
+            message: res.data.msg
+          });
+        }
+      })
+
+    };
+
+    const handleSizeChange1 = (val: number) => {
+      state.pageSize1 = val;
+      getListByPage();
+    };
+    const handleCurrentChange1 = (val: number) => {
+      state.pageIndex1 = val;
+      getListByPage();
+    };
+
+    const openReport = (type: string, value: {}) => {
+      reportDialogRef.value.showReportDialog(type, value);
+    };
+
+    // 查看记录
+    const viewRecord = (row: any) => {
+      state.dialogType = row.workType
+      state.details = JSON.parse(JSON.stringify(row));
+      state.dialogDetails = true;
+    };
+
+    // 折线图
+    const renderMenu = async (value: string) => {
+      Session.set('projectId', value);
+      userInfos.value.projectId = value;
+      await initBackEndControlRoutes();
+    };
+
+    return {
+      View,
+      Edit,
+      Delete,
+      Refresh,
+      Plus,
+      Finished,
+      Download,
+      reportDialogRef,
+      fireRef,
+      plateRef,
+      spaceRef,
+      hoistRef,
+      groundRef,
+      brokenRef,
+      heightRef,
+      powerRef,
+      openRef,
+      openEdit,
+      getAllDepartment,
+      checkTicket,
+      giveTime,
+      reLoadData,
+      toApply,
+      handleClick,
+      toNames,
+      searchRecord,
+      clearSearch,
+      openReport,
+      viewRecord,
+      viewStatus,
+      abortRecordBtn,
+      downLoadBtn,
+      exportSheet,
+      getListByPage,
+      handleSizeChange1,
+      handleCurrentChange1,
+      ...toRefs(state)
+    };
+  }
 });
 </script>
 
 <style scoped lang="scss">
 $homeNavLengh: 8;
 .home-container {
-    height: calc(100vh - 144px);
+  height: calc(100vh - 144px);
+  box-sizing: border-box;
+  overflow: hidden;
+
+  .demo-tabs {
+    width: 100%;
+    height: 100%;
+
+    &::v-deep(.el-tabs__content) {
+      height: calc(100% - 60px);
+    }
+
+    .el-tab-pane {
+      height: 100%;
+    }
+  }
+
+  .homeCard {
+    width: 100%;
+    padding: 20px;
     box-sizing: border-box;
-    overflow: hidden;
-    .demo-tabs {
-        width: 100%;
-        height: 100%;
+    background: #fff;
+    border-radius: 4px;
 
-        &::v-deep(.el-tabs__content) {
-            height: calc(100% - 60px);
-        }
+    .main-card {
+      width: 100%;
+      height: 100%;
 
-        .el-tab-pane {
-            height: 100%;
-        }
-    }
-    .homeCard {
-        width: 100%;
-        padding: 20px;
-        box-sizing: border-box;
-        background: #fff;
-        border-radius: 4px;
-
-        .main-card {
-            width: 100%;
-            height: 100%;
-            .cardTop {
-                display: flex;
-                align-items: center;
-                justify-content: space-between;
-                margin-bottom: 20px;
-                .mainCardBtn {
-                    margin: 0;
-                }
-            }
-            .pageBtn {
-                height: 60px;
-                display: flex;
-                align-items: center;
-                justify-content: right;
-
-                .demo-pagination-block + .demo-pagination-block {
-                    margin-top: 10px;
-                }
-                .demo-pagination-block .demonstration {
-                    margin-bottom: 16px;
-                }
-            }
-        }
-        &:last-of-type {
-            height: calc(100% - 130px);
-        }
-    }
-    .el-row {
+      .cardTop {
         display: flex;
         align-items: center;
+        justify-content: space-between;
         margin-bottom: 20px;
-        &:last-child {
-            margin-bottom: 0;
+
+        .mainCardBtn {
+          margin: 0;
         }
-        .grid-content {
-            align-items: center;
-            min-height: 36px;
+      }
+
+      .pageBtn {
+        height: 60px;
+        display: flex;
+        align-items: center;
+        justify-content: right;
+
+        .demo-pagination-block + .demo-pagination-block {
+          margin-top: 10px;
         }
 
-        .topInfo {
-            display: flex;
-            align-items: center;
-            font-size: 16px;
-            font-weight: bold;
-
-            & > div {
-                white-space: nowrap;
-                margin-right: 20px;
-            }
+        .demo-pagination-block .demonstration {
+          margin-bottom: 16px;
         }
+      }
     }
-    .el-card {
-        border: 0;
+
+    &:last-of-type {
+      height: calc(100% - 130px);
     }
+  }
+
+  .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;
+      }
+    }
+  }
+
+  .el-card {
+    border: 0;
+  }
 }
 </style>
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/broken.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/broken.vue
index 104bca7..87f8ca2 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/broken.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/broken.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
@@ -114,7 +114,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -566,7 +566,6 @@
         analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/fire.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/fire.vue
index e28aa17..3b6a606 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/fire.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/fire.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
         <el-col :span="12">
@@ -140,7 +140,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -595,7 +595,6 @@
         analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/ground.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/ground.vue
index d0fec06..4888175 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/ground.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/ground.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
@@ -97,7 +97,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -552,7 +552,6 @@
         headUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/height.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/height.vue
index df2f5cd..edc93bf 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/height.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/height.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
         <el-col :span="12">
@@ -120,7 +120,7 @@
       </el-row>
       <el-row>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -359,7 +359,7 @@
             value: 6
           },
           {
-            label: "特级高处作业",
+            label: "四级高处作业",
             value: 7
           }
         ],
@@ -484,7 +484,6 @@
         headUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/hoist.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/hoist.vue
index b39b6b4..9712c0d 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/hoist.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/hoist.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
         <el-col :span="12">
@@ -154,7 +154,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -562,7 +562,6 @@
         analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/open.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/open.vue
index d5a5f10..b903c25 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/open.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/open.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
@@ -97,7 +97,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -534,7 +534,6 @@
         headUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/plate.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/plate.vue
index 0e7ded9..7b3c79c 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/plate.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/plate.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
         <el-col :span="12">
@@ -207,7 +207,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -609,7 +609,6 @@
         headUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/power.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/power.vue
index 77f8d65..4d94b43 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/power.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/power.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
@@ -157,7 +157,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple filterable clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -549,7 +549,6 @@
         analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/components/space.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/components/space.vue
index bab6078..5f63ac3 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/components/space.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/components/space.vue
@@ -5,7 +5,7 @@
       <el-row>
         <el-col :span="12">
           <el-form-item label="作业申请单位" prop="depIdList">
-            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList2" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
+            <el-cascader style="width: 100%" v-model="form.depIdList" :options="lists.departList" :props="props1" :show-all-levels="false" placeholder="明确到具体车间" @change="findParent" clearable/>
           </el-form-item>
         </el-col>
       </el-row>
@@ -126,7 +126,7 @@
           </el-form-item>
         </el-col>
         <el-col :span="12">
-          <el-form-item label="绑定执法仪" prop="cameraIds">
+          <el-form-item label="绑定执法仪">
             <el-select v-model="form.cameraIds" multiple clearable>
               <el-option
                   v-for="item in lists.deviceList"
@@ -487,7 +487,6 @@
         analystUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         guardianUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         riskIdentification: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
-        cameraIds: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expStartTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         expEndTime: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
         safetyMeasureUids: [{ required: true, message: '该内容不能为空', trigger: 'blur' }],
diff --git a/src/views/newSpecialWorkSystem/workTicket/zysq/index.vue b/src/views/newSpecialWorkSystem/workTicket/zysq/index.vue
index 041edbc..bdd495a 100644
--- a/src/views/newSpecialWorkSystem/workTicket/zysq/index.vue
+++ b/src/views/newSpecialWorkSystem/workTicket/zysq/index.vue
@@ -94,7 +94,6 @@
         lists: {
           workerList: [],
           departList: [],
-          departList2: [],
           deviceList: [],
           otherWorks: [],
           spList: [],
@@ -234,7 +233,6 @@
 					// state.departmentList = JSON.parse(JSON.stringify(res.data.data))
           // state.departmentList2 = state.departmentList[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50)
           state.lists.departList = JSON.parse(JSON.stringify(res.data.data))
-          state.lists.departList2 = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47)
 				} else {
 					ElMessage({
 						type: 'warning',
diff --git a/src/views/specialWorkSystem/flow/ruleofApp/components/approveRuleDialog.vue b/src/views/specialWorkSystem/flow/ruleofApp/components/approveRuleDialog.vue
index 8961e4c..c0d68dd 100644
--- a/src/views/specialWorkSystem/flow/ruleofApp/components/approveRuleDialog.vue
+++ b/src/views/specialWorkSystem/flow/ruleofApp/components/approveRuleDialog.vue
@@ -314,7 +314,7 @@
             } else if (data.approveRuleForm.workType === 6) {
                 data.approveRuleForm.workLevel = null;
                 data.workLevelList = [
-                    { id: 7, name: '特级高处作业' },
+                    { id: 7, name: '四级高处作业' },
                     { id: 4, name: '一级高处作业' },
                     { id: 5, name: '二级高处作业' },
                     { id: 6, name: '三级高处作业' },
diff --git a/src/views/specialWorkSystem/flow/ruleofApp/index.vue b/src/views/specialWorkSystem/flow/ruleofApp/index.vue
index ab589da..e8bd936 100644
--- a/src/views/specialWorkSystem/flow/ruleofApp/index.vue
+++ b/src/views/specialWorkSystem/flow/ruleofApp/index.vue
@@ -152,7 +152,7 @@
                 { id: 3, name: '特级动火作业' },
                 { id: 1, name: '一级动火作业' },
                 { id: 2, name: '二级动火作业' },
-                { id: 7, name: '特级高处作业' },
+                { id: 7, name: '四级高处作业' },
                 { id: 4, name: '一级高处作业' },
                 { id: 5, name: '二级高处作业' },
                 { id: 6, name: '三级高处作业' },
diff --git a/src/views/specialWorkSystem/foundationSet/goods/index.vue b/src/views/specialWorkSystem/foundationSet/goods/index.vue
index 5f81e4d..a67c692 100644
--- a/src/views/specialWorkSystem/foundationSet/goods/index.vue
+++ b/src/views/specialWorkSystem/foundationSet/goods/index.vue
@@ -439,7 +439,7 @@
                     value: 6
                 },
                 {
-                    label: "特级高处作业",
+                    label: "四级高处作业",
                     value: 7
                 }
             ],
diff --git a/src/views/specialWorkSystem/specialIndex/index.vue b/src/views/specialWorkSystem/specialIndex/index.vue
index 30ed8e9..04cc888 100644
--- a/src/views/specialWorkSystem/specialIndex/index.vue
+++ b/src/views/specialWorkSystem/specialIndex/index.vue
@@ -123,7 +123,7 @@
           <el-col :span="4" style="display:flex;align-items: center">
             <span style="white-space: nowrap">申请事业部:</span>
             <div class="grid-content topInfo">
-              <el-cascader :teleported="false" v-model="searchParams.seDepId" @change="changeDep4()" :options="depList" :props="casProps" :show-all-levels="false" size="small"/>
+              <el-cascader :teleported="false" v-model="searchParams.seDepId" @change="changeDep4()" :options="departmentList" :props="casProps" :show-all-levels="false" size="small"/>
             </div>
           </el-col>
           <el-button type="primary" style="margin-left: 20px" @click="searchRecord" size="small">查询</el-button>
@@ -335,7 +335,6 @@
   workType1: Array<type>;
   dialogType: number | null;
   departmentList: Array<any>;
-  depList: Array<any>;
   departmentRecursionList: Array<DepartmentState>;
   reviewForm: object;
   reviewRules: object;
@@ -407,7 +406,6 @@
       },
       dialogReview: false,
       departmentList: [],
-      depList: [],
       departmentRecursionList: [],
       searchStatus: null,
       endTime: '',
@@ -861,10 +859,9 @@
       let res = await teamManageApi().getAllDepartment();
       if (res.data.code === '200') {
         state.departmentList = JSON.parse(JSON.stringify(res.data.data))
-        state.depList = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47)
+        // state.depList = JSON.parse(JSON.stringify(res.data.data))[0].children[0].children.filter(i=>i.depId == 32 || i.depId == 48 || i.depId == 49 || i.depId == 50 || i.depId == 10 || i.depId == 41 || i.depId == 46 || i.depId == 47)
         recursion(state.departmentList);
         state.lists.departList = state.departmentList
-        state.lists.departList2 = state.depList
       } else {
         ElMessage({
           type: 'warning',
diff --git a/src/views/system/menu/index.vue b/src/views/system/menu/index.vue
index 1beb8fb..82b89a0 100644
--- a/src/views/system/menu/index.vue
+++ b/src/views/system/menu/index.vue
@@ -92,17 +92,17 @@
             menuTableData: [],
             projectList: [
                 { id: '1', name: '安全基础信息系统', key: 0 },
-                { id: '2', name: '智能安全双重预防系统', key: 1 },
+                // { id: '2', name: '智能安全双重预防系统', key: 1 },
                 { id: '3', name: '智能安全特殊作业系统', key: 2 },
-                { id: '4', name: '智能安全巡检系统', key: 3 },
-                { id: '5', name: '智能安全风险综合预警预报平台', key: 4 },
-                { id: '6', name: '应急管理系统', key: 5 },
-                { id: '12', name: '监管数据融合互通系统', key: 11 },
-                { id: '7', name: '安全目标责任管理系统', key: 6 },
-                { id: '8', name: '安全事故管理系统', key: 7 },
-                { id: '9', name: '设备综合管控系统', key: 8 },
-                { id: '10', name: '安全知识图谱系统', key: 9 },
-                { id: '11', name: '智能安全危险化学品全生命周期管控系统', key: 10 }
+                // { id: '4', name: '智能安全巡检系统', key: 3 },
+                // { id: '5', name: '智能安全风险综合预警预报平台', key: 4 },
+                // { id: '6', name: '应急管理系统', key: 5 },
+                // { id: '12', name: '监管数据融合互通系统', key: 11 },
+                // { id: '7', name: '安全目标责任管理系统', key: 6 },
+                // { id: '8', name: '安全事故管理系统', key: 7 },
+                // { id: '9', name: '设备综合管控系统', key: 8 },
+                // { id: '10', name: '安全知识图谱系统', key: 9 },
+                // { id: '11', name: '智能安全危险化学品全生命周期管控系统', key: 10 }
             ]
         });
         // // 获取 vuex 中的路由

--
Gitblit v1.9.2