quanyawei
2024-06-17 afb9e7c8c9865be6a73d19e35819b5aa6b8afbdd
src/router/dynamicRouter.js
@@ -56,13 +56,13 @@
  path: 'charts/contrast',
  name: 'contrast',
  component: () => import('@/views/contrast/index'),
  meta: { title: '监测因子对比', icon: 'example' }
  meta: { title: '监测因子相关性对比', icon: 'example' }
}
const averageContrast = {
  path: 'charts/averageContrast',
  name: 'averageContrast',
  component: () => import('@/views/averageContrast/index'),
  component: () => import('@/views/averageContrast/index'),
  meta: { title: '监测因子均值对比', icon: 'example' }
}
@@ -79,6 +79,19 @@
  component: () => import('@/views/airPollutionCalendar/index'),
  meta: { title: '空气质量污染日历', icon: 'example' }
}
const heatMap = {
  path: 'charts/heatMap',
  name: 'heatMap',
  component: () => import('@/views/hotMap/index'),
  meta: { title: '区域热力图', icon: 'example' }
}
// const PM5PM10ForecastChart = {
//   path: 'charts/PM5PM10ForecastChart',
//   name: 'PM5PM10ForecastChart',
//   component: () => import('@/views/PM5PM10ForecastChart/index'),
//   meta: { title: 'PM5PM10预测图', icon: 'example' }
// }
// 报表管理
const showMpData = {
@@ -94,6 +107,18 @@
  component: () => import('@/views/govReport/index'),
  meta: { title: '国控站小时报表显示', icon: 'example' }
}
const hand = {
  path: 'report/hand',
  name: 'hand',
  component: () => import('@/views/hand/index'),
  meta: { title: '手持设备', icon: 'example' }
}
const statement = {
  path: 'report/statement',
  name: 'statement',
  component: () => import('@/views/statement/index'),
  meta: { title: '空气质量日报表显示', icon: 'example' }
}
// 空气质量小时播报
const airQualityReportDisplay = {
  path: 'report/airQualityReportDisplay',
@@ -107,15 +132,28 @@
  component: () => import('@/views/Monitoringstation/index'),
  meta: { title: '监测站点数据', icon: 'example' }
}
const Equipment = {
  path: 'report/Equipment',
  name: 'Equipment',
  component: () => import('@/views/Equipment/index'),
  meta: { title: '设备数据', icon: 'example' }
const Listdata = {
  path: 'report/Listdata',
  name: 'Listdata',
  component: () => import('@/views/Listdata/index'),
  meta: { title: '列表数据导出', icon: 'example' }
}
// const Equipment = {
//   path: 'report/Equipment',
//   name: 'Equipment',
//   component: () => import('@/views/Equipment/index'),
//   meta: { title: '设备数据', icon: 'example' }
// }
// const Equidata = {
//   path: 'report/Equidata',
//   name: 'Equidata',
//   component: () => import('@/views/Equidata/index'),
//   meta: { title: '设备数据导出', icon: 'example' }
// }
// 综合分析
// 城市空气质量排行
const cityAirRank = {
const cityAirRank = {
  path: 'analyse/cityAirRank',
  name: 'cityAirRank',
  component: () => import('@/views/cityAirRank/index'),
@@ -134,6 +172,12 @@
  name: 'levelStatistic',
  component: () => import('@/views/levelStatistic/index'),
  meta: { title: '城市优良天统计', icon: 'example' }
}
const onlineRate = {
  path: 'analyse/onlineRate',
  name: 'onlineRate',
  component: () => import('@/views/onlineRate/index'),
  meta: { title: '断线统计', icon: 'example' }
}
const industryContributionRate = {
@@ -155,6 +199,13 @@
  component: () => import('@/views/surveyReport/index'),
  meta: { title: '现场勘察报告', icon: 'example' }
}
const sectionReport = {
  path: 'analyse/sectionReport',
  name: 'sectionReport',
  component: () => import('@/views/sectionReport/index'),
  meta: { title: '道路尘负荷走航报告', icon: 'example' }
}
// analyse/air
const air = {
  path: 'analyse/air',
@@ -169,8 +220,26 @@
  component: () => import('@/views/dailyreport/index'),
  meta: { title: '走航监测日报', icon: 'example' }
}
// 业务交办
const summaryPage = {
  path: 'toCarryOutLegislativeReforms/summaryPage',
  name: 'summaryPage',
  component: () =>
    import('@/views/toCarryOutLegislativeReforms/summaryPage/index'),
  meta: { title: '业务汇总', icon: 'example' }
}
const reform = {
  path: 'toCarryOutLegislativeReforms/reform',
  name: 'reform',
  component: () => import('@/views/toCarryOutLegislativeReforms/reform/index'),
  meta: { title: '立行立改', icon: 'example' }
}
const delay = {
  path: 'toCarryOutLegislativeReforms/delay',
  name: 'delay',
  component: () => import('@/views/toCarryOutLegislativeReforms/delay/index'),
  meta: { title: '延期申请', icon: 'example' }
}
// 映射路由,存入对象
const ruleMapping = {
@@ -183,11 +252,15 @@
  showMpData: showMpData,
  staffManagement: staffManagement,
  showGovHourData: showGovHourData,
  hand: hand,
  statement: statement,
  cityAirRank: cityAirRank,
  levelStatistic: levelStatistic,
  onlineRate: onlineRate,
  heatmap: heatmap,
  hexagon: hexagon,
  airPollutionCalendar: airPollutionCalendar,
  heatMap: heatMap,
  averageContrast: averageContrast,
  industryContributionRate,
  regionalContributionRate,
@@ -196,9 +269,14 @@
  air,
  airQualityReportDisplay,
  Monitoringstation,
  Equipment,
  dailyreport,
  // Equipment,
  dailyreport,
  sectionReport,
  Listdata,
  summaryPage,
  reform,
  delay
  // Equidata
}
// 网络请求,第一次登陆只有4个路由,所以要添加路由,页面刷新的时候,判断大于4个路由,就不会重新添加。
@@ -212,9 +290,12 @@
// 导出路由菜单
export function routerMenus() {
  console.log('user.menus', JSON.parse(store.state.user.menus))
  const routersMenu = JSON.parse(store.state.user.menus)
  // 路由分两块,左侧列表, 最右侧员工下拉菜单
  const currentRoutes = router.options.routes
  console.log('routersMenu', routersMenu)
  let currentRoutes = []
  currentRoutes = router.options.routes
  if (routersMenu.length > 0) {
    routersMenu.forEach(item => {
      if (item.url === 'dropDown') {
@@ -235,7 +316,7 @@
          if (temp !== undefined) {
            currentRoutes[currentRoutes.length - 1].children.push(temp)
          } else {
            console.log('存在菜单配置给该用户,但是代码中无该组件')
            console.log('存在菜单配置给该用户,但是代码中无该组件1')
          }
        })
      } else {
@@ -272,5 +353,6 @@
    // }
    // currentRoutes.splice(currentRoutes.length, 0, notFound)
  }
  console.log('currentRoutes', currentRoutes)
  router.addRoutes(currentRoutes)
}