feiyu02
2025-09-17 b330e57051e54789eb83d10dc58c4d9d10c608e1
src/router/index.js
@@ -1,244 +1,337 @@
// eslint-disable-next-line no-unused-vars
import { createRouter, createWebHistory, createWebHashHistory } from 'vue-router'
import pinia from '../stores/index'
import { useLoadingStore } from '../stores/loadingStore'
import {
  createRouter,
  createWebHistory,
  createWebHashHistory
} from 'vue-router';
import pinia from '../stores/index';
import { useLoadingStore } from '../stores/loadingStore';
const routes = [
  // {
  //   //整改审核
  //   name: 'changecheck',
  //   path: '/changecheck',
  //   component: () => import('@/views/check/ChangeCheck.vue')
  // },
  /**********************************飞羽监管***********************************************/
  {
    //问题动态跟踪
    name: 'profollow',
    path: '/fysp/data-product/profollow',
    component: () => import('@/views/fysp/data-product/ProdProFollow.vue')
  },
  {
    //问题整改分析
    name: 'proanalysis',
    path: '/fysp/data-product/proanalysis',
    component: () => import('@/views/fysp/data-product/ProdProAnalysis.vue')
  },
  {
    //规范性评估
    name: 'standardjudge',
    path: '/fysp/data-product/standardjudge',
    component: () => import('@/views/fysp/data-product/ProdStandardJudge.vue')
  },
  {
    //日报管理
    name: 'dailyreport',
    path: '/fysp/data-product/dailyreport',
    component: () => import('@/views/fysp/data-product/ProdDailyReport.vue')
  },
  {
    //场景报告
    name: 'scenereport',
    path: '/fysp/data-product/scenereport',
    component: () => import('@/views/fysp/data-product/ProdSceneReport.vue')
  },
  // {
  //   //场景报告-工地
  //   name: 'construction',
  //   path: '/scenereport/construction',
  //   component: () => import('@/views/fysp/scenereport/ConstructionReport.vue')
  // },
  // {
  //   //场景报告-码头
  //   name: 'wharf',
  //   path: '/scenereport/wharf',
  //   component: () => import('@/views/fysp/scenereport/WharfReport.vue')
  // },
  // {
  //   //场景报告-搅拌站
  //   name: 'mixing',
  //   path: '/scenereport/mixing',
  //   component: () => import('@/views/fysp/scenereport/MixingReport.vue')
  // },
  // {
  //   //场景报告-堆场
  //   name: 'storage',
  //   path: '/scenereport/storage',
  //   component: () => import('@/views/fysp/scenereport/StorageReport.vue')
  // },
    name: 'home',
    path: '/',
    component: () => import('@/views/HomePage.vue'),
    children: [
      {
        name: 'fysp',
        path: 'fysp',
        children: [
          // {
          //   //整改审核
          //   name: 'changecheck',
          //   path: '/changecheck',
          //   component: () => import('@/views/check/ChangeCheck.vue')
          // },
          /**********************************飞羽监管***********************************************/
          {
            //问题审核
            name: 'procheck',
            path: 'procheck',
            component: () => import('@/views/fysp/check/ProCheck.vue')
          },
          {
            name: 'data-product',
            path: 'data-product',
            children: [
              {
                //问题动态跟踪
                name: 'profollow',
                path: 'profollow',
                component: () =>
                  import('@/views/fysp/data-product/ProdProFollow.vue')
              },
              {
                //问题整改分析
                name: 'proanalysis',
                path: 'proanalysis',
                component: () =>
                  import('@/views/fysp/data-product/ProdProAnalysis.vue')
              },
              {
                //规范性评估
                name: 'standardjudge',
                path: 'standardjudge',
                component: () =>
                  import('@/views/fysp/data-product/ProdStandardJudge.vue')
              },
              {
                //日报管理
                name: 'dailyreport',
                path: 'dailyreport',
                component: () =>
                  import('@/views/fysp/data-product/ProdDailyReport.vue')
              },
              {
                //场景报告
                name: 'scenereport',
                path: 'scenereport',
                component: () =>
                  import('@/views/fysp/data-product/ProdSceneReport.vue')
              },
              {
                //场景报告
                name: 'lawenforcelist',
                path: 'lawenforcelist',
                component: () =>
                  import('@/views/fysp/data-product/ProdLawEnforceList.vue')
              },
              {
                name: 'dataProdBase',
                path: 'base',
                children: [
                  {
                    // 基础产品-管理
                    name: 'ProdManage',
                    path: 'home',
                    component: () =>
                      import(
                        '@/views/fysp/data-product/base-data-product/ProdManage.vue'
                      ),
                    children: [
                      {
                        // 基础产品-场景清单
                        path: 'scene',
                        name: 'ProdSceneInfo',
                        meta: { keepAlive: true, key: 'ProdManage' },
                        component: () =>
                          import(
                            '@/views/fysp/data-product/base-data-product/ProdSceneInfo.vue'
                          )
                      },
                      {
                        // 基础产品-规范性评估
                        path: 'evaluate',
                        name: 'ProdEvaluationInfo',
                        meta: { keepAlive: true, key: 'ProdManage' },
                        component: () =>
                          import(
                            '@/views/fysp/data-product/base-data-product/ProdEvaluationInfo.vue'
                          )
                      },
                      {
                        // 基础产品-巡查信息
                        path: 'inspection',
                        name: 'ProdInspectionInfo',
                        meta: { keepAlive: true, key: 'ProdManage' },
                        component: () =>
                          import(
                            '@/views/fysp/data-product/base-data-product/ProdInspectionInfo.vue'
                          )
                      },
                      {
                        // 基础产品-监测数据
                        path: 'monitordata',
                        name: 'ProdMonitorDataInfo',
                        meta: { keepAlive: true, key: 'ProdManage' },
                        component: () =>
                          import(
                            '@/views/fysp/data-product/base-data-product/ProdMonitorDataInfo.vue'
                          )
                      }
                    ]
                  },
                  {
                    // 基础产品-问题复发清单
                    name: 'PordProblemRecurrence',
                    path: 'PordProblemRecurrence',
                    component: () =>
                      import(
                        '@/views/fysp/data-product/base-data-product/PordProblemRecurrence.vue'
                      )
                  }
                ]
              }
            ]
          },
          {
            name: 'task',
            path: 'task',
            children: [
              {
                //监管任务
                name: 'taskmanage',
                path: 'manage',
                component: () => import('@/views/fysp/task/TaskManage.vue'),
                meta: { keepAlive: true }
              },
              {
                //监管任务场景编辑
                name: 'monitorObjEdit',
                path: 'edit',
                component: () => import('@/views/fysp/task/MonitorObjEdit.vue')
              },
              {
                name: 'plan',
                path: 'plan',
                children: [
                  {
                    //监管任务计划编辑
                    name: 'monitorPlanEdit',
                    path: 'edit',
                    component: () =>
                      import('@/views/fysp/task/MonitorPlanEdit.vue')
                  }
                ]
              },
  {
    //监管任务
    name: 'taskmanage',
    path: '/fysp/task/manage',
    component: () => import('@/views/fysp/task/TaskManage.vue'),
    meta: { keepAlive: true }
  },
  {
    //监管任务场景编辑
    name: 'monitorObjEdit',
    path: '/fysp/task/edit',
    component: () => import('@/views/fysp/task/MonitorObjEdit.vue')
  },
  {
    //监管任务计划编辑
    name: 'monitorPlanEdit',
    path: '/fysp/task/plan/edit',
    component: () => import('@/views/fysp/task/MonitorPlanEdit.vue')
  },
  {
    //监管任务计划编辑
    name: 'monitorTaskCreate',
    path: '/fysp/task/create',
    component: () => import('@/views/fysp/task/MonitorTaskCreate.vue')
  },
  {
    //问题审核
    name: 'procheck',
    path: '/fysp/procheck',
    component: () => import('@/views/fysp/check/ProCheck.vue')
  },
  // {
  //   //账户管理
  //   name: 'fyspUser',
  //   path: '/fysp/userInfo',
  //   component: () => import('@/views/baseinfo/fysp/user/UserInfo.vue')
  // },
  {
    //监管问题
    name: 'fyspProblemType',
    path: '/fysp/config/problemType',
    component: () => import('@/views/fysp/config/ProblemType.vue')
  },
  {
    //设备匹配
    name: 'fyspDeviceMatch',
    path: '/fysp/config/deviceMatch',
    component: () => import('@/views/fysp/config/DeviceMatch.vue')
  },
  {
    //评估规则管理
    name: 'fyspEvalutationRule',
    path: '/fysp/config/evalutationRule',
    component: () => import('@/views/fysp/config/EvalutationRule.vue')
  },
  {
    //评估数据源
    name: 'fyspEvalutationTask',
    path: '/fysp/evaluation/evalutationTask',
    component: () => import('@/views/fysp/evaluation/EvalutationTask.vue'),
    meta: { keepAlive: false }
  },
  {
    //评估管理
    name: 'fyspEvalutationRecord',
    path: '/fysp/evaluation/evalutationRecord',
    component: () => import('@/views/fysp/evaluation/EvalutationRecord.vue'),
    meta: { keepAlive: true }
  },
  {
    //评估结果详情
    name: 'fyspEvalutationEdit',
    path: '/fysp/evaluation/evalutationEdit/:subTaskId',
    component: () => import('@/views/fysp/evaluation/EvalutationEdit.vue'),
  },
  {
    //场景信息
    name: 'fyspSceneInfo',
    path: '/fysp/sceneInfo',
    component: () => import('@/views/fysp/scene/SceneInfo.vue'),
    meta: { keepAlive: true }
  },
  {
    //场景编辑
    name: 'fyspSceneEdit',
    path: '/fysp/sceneEdit/:sid',
    component: () => import('@/views/fysp/scene/SceneEdit.vue'),
    meta: { transition: 'slide-left' }
  },
  {
    //对外支持
    name: 'fyspSupport',
    path: '/fysp/support',
    component: () => import('@/views/fysp/support/JingAnSupport.vue'),
  },
  {
    // 基础产品-场景清单
    name: 'ProdScenseInfo',
    path: '/fysp/data-product/ProdScenseInfo',
    component: () => import('@/views/fysp/data-product/base-data-product/ProdScenseInfo.vue')
  },
  {
    // 基础产品-监管清单
    name: 'ProdMonitorTaskInfo',
    path: '/fysp/data-product/ProdMonitorTaskInfo',
    component: () => import('@/views/fysp/data-product/base-data-product/ProdMonitorTaskInfo.vue')
  },
  {
    // 基础产品-防治设备清单
    name: 'ProdTreatmentDeviceInfo',
    path: '/fysp/data-product/ProdTreatmentDeviceInfo',
    component: () => import('@/views/fysp/data-product/base-data-product/ProdTreatmentDeviceInfo.vue')
  },
              {
                //监管任务计划编辑
                name: 'monitorTaskCreate',
                path: 'create',
                component: () =>
                  import('@/views/fysp/task/MonitorTaskCreate.vue')
              }
            ]
          },
  /**********************************飞羽环境***********************************************/
  {
    //台账审核
    name: 'ledger',
    path: '/fytz/ledger',
    component: () => import('@/views/fytz/ledger/LedgerManage.vue')
  },
  {
    //通知管理
    name: 'notice',
    path: '/fytz/notice',
    component: () => import('@/views/fytz/notice/NoticeManage.vue')
  },
  {
    //账户管理
    name: 'fytzUser',
    path: '/fytz/userInfo',
    component: () => import('@/views/fytz/user/UserInfo.vue'),
    meta: { keepAlive: true }
  },
  {
    //账户编辑
    name: 'fytzUserEdit',
    path: '/fytz/userEdit/:userId',
    component: () => import('@/views/fytz/user/UserEdit.vue'),
    meta: { transition: 'slide-left' }
  },
  {
    //环保督察案例
    name: 'enforceCase',
    path: '/fytz/enforceCase',
    component: () => import('@/views/fytz/enforce-case/EnforceCase.vue')
  },
          // {
          //   //账户管理
          //   name: 'fyspUser',
          //   path: 'userInfo',
          //   component: () => import('@/views/baseinfo/fysp/user/UserInfo.vue')
          // },
          {
            //监管问题
            name: 'config',
            path: 'config',
            children: [
              {
                //监管问题
                name: 'fyspProblemType',
                path: 'problemType',
                component: () => import('@/views/fysp/config/ProblemType.vue')
              },
              {
                //设备匹配
                name: 'fyspDeviceMatch',
                path: 'deviceMatch',
                component: () => import('@/views/fysp/config/DeviceMatch.vue')
              },
              {
                //评估规则管理
                name: 'fyspEvalutationRule',
                path: 'evalutationRule',
                component: () =>
                  import('@/views/fysp/config/EvalutationRule.vue')
              }
            ]
          },
          {
            //评估数据源
            name: 'evaluation',
            path: 'evaluation',
            children: [
              {
                //评估数据源
                name: 'fyspEvalutationTask',
                path: 'evalutationTask',
                component: () =>
                  import('@/views/fysp/evaluation/EvalutationTask.vue'),
                meta: { keepAlive: false }
              },
              {
                //评估管理
                name: 'fyspEvalutationRecord',
                path: 'evalutationRecord',
                component: () =>
                  import('@/views/fysp/evaluation/EvalutationRecord.vue'),
                meta: { keepAlive: true }
              },
              {
                //评估结果详情
                name: 'fyspEvalutationEdit',
                path: 'evalutationEdit/:subTaskId',
                component: () =>
                  import('@/views/fysp/evaluation/EvalutationEdit.vue')
              }
            ]
          },
  /**********************************通用模块***********************************************/
  {
    //账户匹配
    name: 'userMatch',
    path: '/common/userMatch',
    component: () => import('@/views/common/UserMatch.vue')
  },
  {
    //文档生成测试
    name: 'docTest',
    path: '/common/docTest',
    component: () => import('@/views/DocTest.vue')
          {
            //场景信息
            name: 'fyspSceneInfo',
            path: 'sceneInfo',
            component: () => import('@/views/fysp/scene/SceneInfo.vue'),
            meta: { keepAlive: true }
          },
          {
            //场景编辑
            name: 'fyspSceneEdit',
            path: 'sceneEdit/:sid',
            component: () => import('@/views/fysp/scene/SceneEdit.vue'),
            meta: { transition: 'slide-left' }
          },
          {
            //对外支持
            name: 'fyspSupport',
            path: 'support',
            component: () => import('@/views/fysp/support/JingAnSupport.vue')
          }
        ]
      },
      /**********************************飞羽环境***********************************************/
      {
        //台账审核
        name: 'ledger',
        path: 'fytz/ledger',
        component: () => import('@/views/fytz/ledger/LedgerManage.vue')
      },
      {
        //通知管理
        name: 'notice',
        path: 'fytz/notice',
        component: () => import('@/views/fytz/notice/NoticeManage.vue')
      },
      {
        //账户管理
        name: 'fytzUser',
        path: 'fytz/userInfo',
        component: () => import('@/views/fytz/user/UserInfo.vue'),
        meta: { keepAlive: true }
      },
      {
        //账户编辑
        name: 'fytzUserEdit',
        path: 'fytz/userEdit/:userId',
        component: () => import('@/views/fytz/user/UserEdit.vue'),
        meta: { transition: 'slide-left' }
      },
      {
        //环保督察案例
        name: 'enforceCase',
        path: 'fytz/enforceCase',
        component: () => import('@/views/fytz/enforce-case/EnforceCase.vue')
      },
      /**********************************通用模块***********************************************/
      {
        //账户匹配
        name: 'userMatch',
        path: 'common/userMatch',
        component: () => import('@/views/common/UserMatch.vue')
      },
      {
        //文档生成测试
        name: 'docTest',
        path: 'common/docTest',
        component: () => import('@/views/DocTest.vue')
      }
    ]
  }
]
];
const router = createRouter({
  // history: createWebHistory(import.meta.env.BASE_URL)
  history: createWebHashHistory(),
  history: createWebHistory(import.meta.env.BASE_URL),
  // history: createWebHashHistory(),
  routes: routes
})
});
const loadingStore = useLoadingStore(pinia)
const loadingStore = useLoadingStore(pinia);
// eslint-disable-next-line no-unused-vars
router.afterEach((to, from) => {
  loadingStore.clearLoading()
})
  loadingStore.clearLoading();
});
export { router, routes }
export { router, routes };