From 807d02b7a650c6450c313dd728848e02f74a1b78 Mon Sep 17 00:00:00 2001 From: Admin <978517621@qq.com> Date: 星期一, 28 十一月 2022 15:15:34 +0800 Subject: [PATCH] 添加提示 --- src/views/layout/components/Sidebar/index.vue | 108 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 105 insertions(+), 3 deletions(-) diff --git a/src/views/layout/components/Sidebar/index.vue b/src/views/layout/components/Sidebar/index.vue index 9ccb651..1890b89 100644 --- a/src/views/layout/components/Sidebar/index.vue +++ b/src/views/layout/components/Sidebar/index.vue @@ -19,7 +19,10 @@ import { mapGetters } from 'vuex' import SidebarItem from './SidebarItem' import variables from '@/styles/variables.scss' - +import { getCheckUnitType, getSpecialCheckTask } from "@/api/specialCheck" +import { getUnDoneCheckTask } from '@/api/selfCheck' +import lazyLoading from "../../../../utils/lazyLoading"; +import {initRouterNode} from "../../../../utils/router"; export default { components: { SidebarItem }, computed: { @@ -35,10 +38,109 @@ }, data() { return { - isCollapse: false + isCollapse: false, + unitType: null, + deadline: '' } }, - methods: { + created() { + const t = this + t.getCheckUnitType() + }, + methods: { + async getCheckUnitType(){ + const t = this + const constRoutes = [] + let res = await getCheckUnitType() + if(res.data.code === "200"){ + t.unitType = res.data.result.checkUnitType + if(t.unitType>0){ + t.getSpecialCheckTask().then((res)=>{ + const date = new Date(res); + if(date.getTime() > Date.now()){ + for (let index in t.permission_routes){ + if(t.permission_routes[index].title && t.permission_routes[index].title == '安全专项检查'){ + t.permission_routes[index].title = t.permission_routes[index].title + '(1)' + } + } + t.initRouterNode(constRoutes, t.permission_routes) + t.$store.commit('SET_ROUTES', constRoutes.filter(item => item.children.length > 0)) + } + }) + } + }else{ + t.getUncheckList().then((res)=>{ + if(res[0].selfcheckStatus == 0 || (res[0].selfcheckStatus == 1 && res[0].rectifyStatus ==0)){ + for (let index in t.permission_routes){ + if(t.permission_routes[index].title && t.permission_routes[index].title == '专项检查'){ + t.permission_routes[index].title = t.permission_routes[index].title + '(1)' + } + } + t.initRouterNode(constRoutes, t.permission_routes) + t.$store.commit('SET_ROUTES', constRoutes.filter(item => item.children.length > 0)) + } + }) + } + }, + + async getSpecialCheckTask(){ + const t = this + const res = await getSpecialCheckTask() + if(res.data.code === "200"){ + if(res.data.result.specialCheckTaskSimplifyInfos.length>0){ + return res.data.result.specialCheckTaskSimplifyInfos[0].deadline + } + }else{ + t.$message({ + type:'warning', + message:res.data.message + }) + } + }, + + async getUncheckList(){ + const t = this + let data = {pageIndex: 1,pageSize: 10} + let res = await getUnDoneCheckTask(data) + if(res.data.code === "200"){ + if(res.data.result.records.length>0){ + return res.data.result.records + } + }else{ + t.$message({ + type:'warning', + message:res.data.message + }) + } + }, + + initRouterNode(routers, data) { + for (var item of data) { + if (item.type !== 1) { + continue + } + const menu = Object.assign({}, item) + + // menu.component = import(`@/views/${menu.component}.vue`) + + menu.component = lazyLoading(menu.component) + + if (item.children && item.children.length > 0) { + menu.children = [] + initRouterNode(menu.children, item.children) + } + + const meta = {} + // 给页面添加权限、标题、第三方网页链接 + meta.permTypes = menu.permTypes ? menu.permTypes : null + meta.title = menu.title ? menu.title : null + meta.url = menu.url ? menu.url : null + if (menu.icon) { meta.icon = menu.icon } + menu.meta = meta + + routers.push(menu) + } + } } } </script> -- Gitblit v1.9.2