import type { RouteRecordRaw } from 'vue-router'

/** 默认布局 */
const Layout = () => import('@/layout/index.vue')

/** 系统路由 */
export const systemRoutes: RouteRecordRaw[] = [
  {
    path: '/login',
    name: 'Login',
    component: () => import('@/views/login/index.vue'),
    meta: { hidden: true },
  },
  // {
  //   path: '/company',
  //   name: 'Company',
  //   component: Layout,
  //   redirect: '/company/overview',
  //   meta: { title: '企业概览', icon: 'company', hidden: false, sort: 1 },
  //   children: [
  //     {
  //       path: '/company/overview',
  //       name: 'CompanyOverview',
  //       component: () => import('@/views/company/overview/index.vue'),
  //       meta: { title: '企业概览', icon: 'dashboard', hidden: false },
  //     }
  //   ],
  // },
  {
    path: '/regulation',
    name: 'Regulation',
    component: Layout,
    redirect: '/regulation/system-regulation',
    meta: { title: '制度管理', icon: 'file-text', hidden: false, sort: 1.5 },
    children: [
      {
        path: '/regulation/system-regulation',
        name: 'SystemRegulation',
        component: () => import('@/views/regulation/repository.vue'),
        meta: { title: '制度公告', icon: 'file-text', hidden: false },
      },
      {
        path: '/regulation/process-management',
        name: 'ProcessManagement',
        component: () => import('@/views/regulation/confirm.vue'),
        meta: { title: '制度公示', icon: 'workflow', hidden: false },
      },
      {
        path: '/regulation/proposal',
        name: 'RegulationProposal',
        component: () => import('@/views/regulation/proposal/index.vue'),
        meta: { title: '制度提案', icon: 'edit', hidden: false },
      },
      {
        path: '/regulation/type',
        name: 'RegulationType',
        component: () => import('@/views/regulation/type/index.vue'),
        meta: { title: '制度类型', icon: 'tag', hidden: false },
      },
      
    ],
  },
  {
    path: '/organization',
    name: 'Organization',
    component: Layout,
    redirect: '/organization/hr/member',
    meta: { title: '组织架构', icon: 'user-group', hidden: false, sort: 2 },
    children: [
      {
        path: '/organization/hr',
        name: 'HRManagement',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/organization/hr/member',
        meta: { title: '人员管理', icon: 'user', hidden: false },
        children: [
          {
            path: '/organization/hr/member',
            name: 'HRMember',
            component: () => import('@/views/system/user/index.vue'),
            meta: { title: '成员', icon: 'user', hidden: false },
          },
          {
            path: '/organization/hr/dept',
            name: 'HRDept',
            component: () => import('@/views/system/dept/index.vue'),
            meta: { title: '部门', icon: 'dept', hidden: false },
          },
          {
            path: '/organization/hr/workload',
            name: 'HRWorkload',
            component: () => import('@/views/hr/workload/index.vue'),
            meta: { title: '任务管理', icon: 'workload', hidden: false },
          },
          {
            path: '/organization/hr/attendance',
            name: 'HRAttendance',
            component: () => import('@/views/hr/attendance/index.vue'),
            meta: { title: '考勤', icon: 'attendance', hidden: false },
          },
          {
            path: '/organization/hr/performance',
            name: 'HRPerformance',
            component: () => import('@/components/ParentView/index.vue'),
            meta: { title: '绩效', icon: 'performance', hidden: false },
            children: [
              {
                path: '/organization/hr/performance/dimention',
                name: 'Dimention',
                component: () => import('@/views/performance/setting/index.vue'),
                meta: { title: '绩效维度', icon: 'performance', hidden: false },

              },
              {
                path: '/organization/hr/performance/rule',
                name: 'Rule',
                component: () => import('@/views/performance/rule.vue'),
                meta: { title: '绩效细则', icon: 'performance', hidden: false },

              },
              {
                path: '/organization/hr/performance/my',
                name: 'MyPerformance',
                component: () => import('@/views/performance/my.vue'),
                meta: { title: '我的绩效', icon: 'performance', hidden: false },

              },
            ],
          },
          {
            path: '/organization/hr/salary',
            name: 'HRSalary',
            component: () => import('@/components/ParentView/index.vue'),
            redirect: '/organization/hr/salary/overview',
            meta: { title: '工资', icon: 'salary', hidden: false },
            children: [
              {
                path: '/organization/hr/salary/overview',
                name: 'HRSalaryOverview',
                component: () => import('@/components/ParentView/index.vue'),
                meta: { title: '工资概览', icon: 'salary', hidden: false },
                children: [
                  {
                    path: '/organization/hr/salary/payroll',
                    name: 'Payroll',
                    component: () => import('@/views/salary-management/index.vue'),
                    meta: { title: '工资单', icon: 'salary', hidden: false },

                  },
                ],
              },
            ],
          },
          //
          // {
          //   path: '/organization/hr/salary/insurance',
          //   name: 'HRInsurance',
          //   component: () => import('@/components/ParentView/index.vue'),
          //   redirect: '/organization/hr/salary/insurance/overview',
          //   meta: { title: '保险', icon: 'safety', hidden: false },
          //   children: [
          //     {
          //       path: '/organization/hr/salary/insurance/overview',
          //       name: 'HRInsuranceOverview',
          //       component: () => import('@/views/hr/salary/insurance/overview/index.vue'),
          //       meta: { title: '工作台概览', icon: 'dashboard', hidden: false },
          //     },
          //     {
          //       path: '/organization/hr/salary/insurance/my-insurance',
          //       name: 'HRMyInsurance',
          //       component: () => import('@/views/hr/salary/insurance/my-insurance/index.vue'),
          //       meta: { title: '我的保险', icon: 'shield', hidden: false },
          //     },
          //     {
          //       path: '/organization/hr/salary/insurance/health-records',
          //       name: 'HRHealthRecords',
          //       component: () => import('@/views/hr/salary/insurance/health-records/index.vue'),
          //       meta: { title: '健康档案', icon: 'heart', hidden: false },
          //     },
          //     {
          //       path: '/organization/hr/salary/insurance/policy-files',
          //       name: 'HRPolicyFiles',
          //       component: () => import('@/views/hr/salary/insurance/policy-files/index.vue'),
          //       meta: { title: '保单文件', icon: 'file', hidden: false },
          //     },
          //     {
          //       path: '/organization/hr/salary/insurance/personal-info',
          //       name: 'HRPersonalInfo',
          //       component: () => import('@/views/hr/salary/insurance/personal-info/index.vue'),
          //       meta: { title: '个人信息', icon: 'user', hidden: false },
          //     },
          //   ],
          // },
          //
          {
            path: '/organization/hr/salary/system-insurance/health-management',
            name: 'HRSystemHealthManagement',
            component: () => import('@/views/hr/salary/system-insurance/health-management/index.vue'),
            meta: { title: '健康档案管理', icon: 'heart', hidden: false },
          },
          {
            path: '/organization/hr/salary/system-insurance',
            name: 'HRSystemInsurance',
            component: () => import('@/components/ParentView/index.vue'),
            redirect: '/organization/hr/salary/system-insurance/overview',
            meta: { title: '人员保险', icon: 'settings', hidden: false },
            children: [
              {
                path: '/organization/hr/salary/system-insurance/overview',
                name: 'HRSystemInsuranceOverview',
                component: () => import('@/views/hr/salary/system-insurance/overview/index.vue'),
                meta: { title: '工作台概览', icon: 'dashboard', hidden: false },
              },
              {
                path: '/organization/hr/salary/system-insurance/management',
                name: 'HRSystemInsuranceManagement',
                component: () => import('@/views/hr/salary/system-insurance/management/index.vue'),
                meta: { title: '保险管理', icon: 'shield', hidden: false },
              },
              {
                path: '/organization/hr/salary/system-insurance/file-management',
                name: 'HRSystemFileManagement',
                component: () => import('@/views/hr/salary/system-insurance/file-management/index.vue'),
                meta: { title: '保单文件管理', icon: 'file', hidden: false },
              },
              {
                path: '/organization/hr/salary/system-insurance/company-management',
                name: 'HRSystemCompanyManagement',
                component: () => import('@/views/hr/salary/system-insurance/company-management/index.vue'),
                meta: { title: '保险公司管理', icon: 'building', hidden: false },
              },
              {
                path: '/organization/hr/salary/system-insurance/type-management',
                name: 'HRSystemTypeManagement',
                component: () => import('@/views/hr/salary/system-insurance/type-management/index.vue'),
                meta: { title: '保险类型管理', icon: 'category', hidden: false },
              },
            ],
          },
          {
            path: '/organization/hr/salary/certification',
            name: 'HRCertification',
            component: () => import('@/views/hr/salary/certification/index.vue'),
            meta: { title: '人员资质管理', icon: 'idcard', hidden: false },
          },
          {
            path: '/organization/hr/contribution',
            name: 'HRContribution',
            component: () => import('@/views/hr/contribution/index.vue'),
            meta: { title: '责献积分制度', icon: 'contribution', hidden: false },
          },
        ],
      },
      {
        path: '/organization/role',
        name: 'OrganizationRole',
        component: () => import('@/views/system/role/index.vue'),
        meta: { title: '角色管理', icon: 'role', hidden: false },
      },
    ],
  },
  {
    path: '/asset-management',
    name: 'AssetManagement',
    component: Layout,
    redirect: '/asset-management/device/inventory',
    meta: { title: '资产管理', icon: 'property-safety', hidden: false, sort: 3 },
    children: [
      {
        path: '/asset-management/intellectual-property1',
        name: 'IntellectualProperty1',
        component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
        meta: { title: '设备管理', icon: 'copyright', hidden: false },
        children: [
          {
            path: '/asset-management/intellectual-property1',
            name: 'IntellectualProperty11',
            component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
            meta: { title: '库存管理', hidden: false },
          },
          {
            path: '/asset-management/intellectual-property1',
            name: 'IntellectualProperty12',
            component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
            meta: { title: '设备采购', hidden: false },
          },
          {
            path: '/asset-management/intellectual-property1',
            name: 'IntellectualProperty13',
            component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
            meta: { title: '在线管理', hidden: false },
            children: [
              {
                path: '/asset-management/intellectual-property11',
                name: 'IntellectualProperty14',
                component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
                meta: { title: '无人机', hidden: false },
              },
              {
                path: '/asset-management/intellectual-property12',
                name: 'IntellectualProperty15',
                component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
                meta: { title: '机巢', hidden: false },
              },
              {
                path: '/asset-management/intellectual-property13',
                name: 'IntellectualProperty16',
                component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
                meta: { title: '其他智能终端', hidden: false },
              },
              {
                path: '/asset-management/intellectual-property14',
                name: 'IntellectualProperty17',
                component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
                meta: { title: '车辆管理', hidden: false },
              },
            ],
          },
        ],
      },
      {
        path: '/asset-management/intellectual-property',
        name: 'IntellectualProperty',
        component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
        meta: { title: '其他资产', icon: 'copyright', hidden: false },
      },
    ],
  },
  {
    path: '/products-services',
    name: 'ProductsServices',
    component: Layout,
    redirect: '/products-services/products/hardware/tower-monitoring',
    meta: { title: '产品与服务', icon: 'heart', hidden: false, sort: 4 },
    children: [
      {
        path: '/products-services/products',
        name: 'Products',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/products-services/products/hardware/tower-monitoring',
        meta: { title: '产品', icon: 'product', hidden: false },
        children: [
          {
            path: '/products-services/products/hardware',
            name: 'SmartHardware',
            component: () => import('@/components/ParentView/index.vue'),
            redirect: '/products-services/products/hardware/tower-monitoring',
            meta: { title: '智能硬件', icon: 'hardware', hidden: false },
            children: [
              {
                path: '/products-services/products/hardware/tower-monitoring',
                name: 'TowerMonitoring',
                component: () => import('@/views/product/hardware/tower-monitoring/index.vue'),
                meta: { title: '风电塔下监测系统', icon: 'monitor', hidden: false },
              },
              {
                path: '/products-services/products/hardware/custom-drone',
                name: 'CustomDrone',
                component: () => import('@/views/product/hardware/custom-drone/index.vue'),
                meta: { title: '定制无人机', icon: 'drone', hidden: false },
              },
              {
                path: '/products-services/products/hardware/drone-basket',
                name: 'DroneBasket',
                component: () => import('@/views/service/lightning-detection/index.vue'),
                meta: { title: '无人吊篮', icon: 'basket', hidden: false },
              },
              {
                path: '/products-services/products/hardware/blade-robot',
                name: 'BladeRobot',
                component: () => import('@/views/service/lightning-detection/index.vue'),
                meta: { title: '叶片维修机器人', icon: 'robot', hidden: false },
              },
            ],
          },
          {
            path: '/products-services/products/software',
            name: 'SmartSoftware',
            component: () => import('@/components/ParentView/index.vue'),
            redirect: '/products-services/products/software/field-assistant',
            meta: { title: '智能软件', icon: 'software', hidden: false },
            children: [
              {
                path: '/products-services/products/software/field-assistant',
                name: 'FieldAssistant',
                component: () => import('@/views/service/lightning-detection/index.vue'),
                meta: { title: '风电外业智能助手', icon: 'assistant', hidden: false },
              },
              {
                path: '/products-services/products/software/blade-report',
                name: 'BladeReportSystem',
                component: () => import('@/views/service/lightning-detection/index.vue'),
                meta: { title: '叶片检查报告生成系统', icon: 'report', hidden: false },
              },
              {
                path: '/products-services/products/software/ground-station',
                name: 'GroundStation',
                component: () => import('@/views/service/lightning-detection/index.vue'),
                meta: { title: '无人机地面站软件', icon: 'station', hidden: false },
              },
            ],
          },
        ],
      },
      {
        path: '/products-services/services',
        name: 'Services',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/products-services/services/lightning-detection',
        meta: { title: '服务', icon: 'customer-service', hidden: false },
        children: [
          {
            path: '/products-services/services/lightning-detection',
            name: 'LightningDetection',
            component: () => import('@/views/service/lightning-detection/index.vue'),
            meta: { title: '防雷检测', icon: 'lightning', hidden: false },
          },
          {
            path: '/products-services/services/blade-internal-detection',
            name: 'BladeInternalDetection',
            component: () => import('@/views/service/blade-internal-detection/index.vue'),
            meta: { title: '叶片内部检测', icon: 'internal', hidden: false },
          },
          {
            path: '/products-services/services/blade-external-detection',
            name: 'BladeExternalDetection',
            component: () => import('@/views/service/blade-internal-detection/index.vue'),
            meta: { title: '叶片外部检测', icon: 'external', hidden: false },
          },
          {
            path: '/products-services/services/solar-inspection',
            name: 'SolarInspection',
            component: () => import('@/views/service/lightning-detection/index.vue'),
            meta: { title: '太阳能光伏巡检', icon: 'solar', hidden: false },
          },
          {
            path: '/products-services/services/cleaning',
            name: 'CleaningService',
            component: () => import('@/views/service/lightning-detection/index.vue'),
            meta: { title: '清洗', icon: 'cleaning', hidden: false },
          },
          {
            path: '/products-services/services/coating',
            name: 'CoatingService',
            component: () => import('@/views/service/lightning-detection/index.vue'),
            meta: { title: '喷涂', icon: 'coating', hidden: false },
          },
          {
            path: '/products-services/services/dam-crack-detection',
            name: 'DamCrackDetection',
            component: () => import('@/views/service/lightning-detection/index.vue'),
            meta: { title: '大坝裂缝检测', icon: 'dam', hidden: false },
          },
          {
            path: '/products-services/services/bridge-crack-detection',
            name: 'BridgeCrackDetection',
            component: () => import('@/views/service/lightning-detection/index.vue'),
            meta: { title: '桥梁裂缝检测', icon: 'bridge', hidden: false },
          },
          {
            path: '/products-services/services/blade-maintenance',
            name: 'BladeMaintenance',
            component: () => import('@/views/service/lightning-detection/index.vue'),
            meta: { title: '叶片维修', icon: 'maintenance', hidden: false },
          },
        ],
      },
    ],
  },
  {
    path: '/project-management',
    name: 'ProjectManagement',
    component: Layout,
    redirect: '/project-management/project-template/project-management',
    meta: { title: '项目管理', icon: 'apps', hidden: false, sort: 4 },
    children: [
      {
        path: '/project-management/contract/project-source',
        name: 'ProjectSource',
        component: () => import('@/components/ParentView/index.vue'),
        meta: {
          title: '项目来源',
          icon: 'dollar',
          hidden: false,
        },
        children: [
          {
            path: '/project-management/contract/procurement-business',
            name: 'ProcurementBusiness',
            component: () => import('@/components/ParentView/index.vue'),
            meta: {
              title: '招采业务',
              icon: 'dollar',
              hidden: false,
            },
            children: [
              {
                path: '/project-management/project-template/tender-documents',
                name: 'TenderDocuments',
                component: () => import('@/views/project-management/bidding/tender-documents/index.vue'),
                meta: {
                  title: '招标文件',
                  icon: 'file-text',
                  hidden: false,
                },
              },
              {
                path: '/project-management/project-template/bid-documents',
                name: 'BidDocuments',
                component: () => import('@/views/project-management/bidding/bid-documents/index.vue'),
                meta: {
                  title: '投标文件',
                  icon: 'file-text',
                  hidden: false,
                },
              },
              {
                path: '/project-management/project-template/award-notice',
                name: 'AwardNotice',
                component: () => import('@/views/project-management/bidding/award-notice/index.vue'),
                meta: {
                  title: '中标通知书',
                  icon: 'trophy',
                  hidden: false,
                },
              },
              {
                path: 'project-management/project-template/information-retrieval',
                name: 'InformationRetrieval',
                component: () => import ('@/views/default/error/404.vue'),
                meta: {
                  title: '信息检索(N)',
                  icon: 'trophy',
                  hidden: false,
                },
              },

            ],
          },
          {
            path: '/project-management/contract/revenue-contract2',
            name: 'RevenueContract2',
            component: () => import('@/views/default/error/404.vue'),
            meta: {
              title: '市场营销(N)',
              icon: 'dollar',
              hidden: false,
            },
          },
          {
            path: '/project-management/project-source/privateproject',
            name: 'PrivateProject',
            component: () => import('@/views/default/error/404.vue'),
            meta: {
              title: '自建项目(N)',
              icon: 'dollar',
              hidden: false,
            },
          },
        ],
      },
      { path: '/project-management/contract', name: 'ProjectContract', component: () => import('@/components/ParentView/index.vue'), redirect: '/project-management/contract/revenue-contract', meta: {
        title: '项目合同',
        icon: 'file-text',
        hidden: false,
      }, children: [
        {
          path: '/project-management/contract/revenue-contract',
          name: 'RevenueContract',
          component: () => import('@/views/project-management/contract/revenue-contract/index.vue'),
          meta: {
            title: '收入合同',
            icon: 'dollar',
            hidden: false,
          },
        },
        {
          path: '/project-management/contract/expense-contract',
          name: 'ExpenseContract',
          component: () => import('@/views/project-management/contract/expense-contract/index.vue'),
          meta: {
            title: '支出合同',
            icon: 'credit-card',
            hidden: false,
          },
        },
        {
          path: '/project-management/contract/cost-management',
          name: 'CostManagement',
          component: () => import('@/views/project-management/contract/cost-management/index.vue'),
          meta: {
            title: '成本费用',
            icon: 'bar-chart',
            hidden: false,
          },
        },
      ] },
      {
        path: '/project-management/project-template/project-aproval',
        name: 'ProjectTemplate',
        component: () => import('@/views/project/index.vue'),
        meta: {
          title: '施工立项',
          icon: 'file-protect',
          hidden: false,
        },
      },
      {
        path: '/project-management/projects',
        name: 'ProjectsManagement',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/project-management/projects/progress',
        meta: {
          title: '项目组织',
          icon: 'briefcase',
          hidden: false,
        },
        children: [
          {
            path: '/project-management/projects/budget',
            name: 'ProjectBudget',
            component: () => import('@/views/project-management/projects/management/index.vue'),
            meta: {
              title: '预算管理',
              icon: 'fund',
              hidden: false,
            },
          },
          {
            path: '/project-management/projects/personnel-distribution',
            name: 'PersonnelDistribution',
            component: () => import('@/views/project-management/projects/personnel-distribution/index.vue'),
            meta: {
              title: '人员分布图',
              icon: 'team',
              hidden: false,
            },
          },

          {
            path: '/project-management/projects/device',
            name: 'DeviceManagement',
            component: () => import('@/views/system-resource/device-management/index.vue'),
            meta: {
              title: '设备管理',
              icon: 'none',
              hidden: false,
            },
          },
          {
            path: '/project-management/projects/technical-solutions',
            name: 'TechnicalSolutions',
            component: () => import('@/components/ParentView/index.vue'),
            meta: {
              title: '技术方案组织',
              icon: 'none',
              hidden: false,
            },
          },
          {
            path: '/project-management/projects/admission-information',
            name: 'AdmissionInformation',
            component: () => import('@/components/ParentView/index.vue'),
            meta: {
              title: '入场资料组织',
              icon: 'none',
              hidden: false,
            },
          },

        ],
      },
      {
        path: 'project-management/project-implementation/',
        name: 'Project-Implementation',
        component: () => import('@/components/ParentView/index.vue'),
        meta: {
          title: '项目实施',
          icon: 'audit',
          hidden: false,
        },
        children: [
          {
            path: '/project-management/projects/progress',
            name: 'ProjectProgress',
            component: () => import('@/views/project-management/projects/progress/index.vue'),
            meta: {
              title: '进度管理',
              icon: 'schedule',
              hidden: false,
            },
          },
          {
            path: '/project-management/projects/safety',
            name: 'SafetyManagement',
            component: () => import('@/views/project-management/projects/safety/index.vue'),
            meta: {
              title: '安全管理',
              icon: 'safety',
              hidden: false,
            },
          },
          {
            path: '/project-management/projects/quality',
            name: 'QualityManagement',
            component: () => import('@/views/project-management/projects/quality/index.vue'),
            meta: {
              title: '质量管理',
              icon: 'audit',
              hidden: false,
            },

          },
        ],
      },
    ],
  },

  {
    path: '/construction-operation-platform',
    name: 'ConstructionOperationPlatform',
    component: Layout,
    redirect: '/construction-operation-platform/implementation-workflow/field-construction',
    meta: { title: '施工操作台', icon: 'tool', hidden: false, sort: 5 },
    children: [
      // {
      //   path: '/construction-operation-platform/implementation-workflow',
      //   name: 'ImplementationWorkflow',
      //   component: () => import('@/components/ParentView/index.vue'),
      //   redirect: '/construction-operation-platform/implementation-workflow/field-construction',
      //   meta: { title: '项目实施工作流程', icon: 'fork', hidden: false },
      //   children: [
      {
        path: '/construction-operation-platform/implementation-workflow/field-construction',
        name: 'FieldConstruction',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/construction-operation-platform/implementation-workflow/field-construction/project-list',
        meta: { title: '我的项目', icon: 'construction', hidden: false },
        children: [
          {
            path: '/project-management/projects/list',
            name: 'ProjectList',
            component: () => import('@/views/project-management/projects/list/index.vue'),
            meta: {
              title: '项目列表',
              icon: 'unordered-list',
              hidden: false,
            },
          },
          {
            path: '/construction-operation-platform/implementation-workflow/field-construction/technology',
            name: 'FieldConstructionTechnology',
            component: () => import('@/views/project-operation-platform/implementation-workflow/field-construction/project-list/index.vue'),
            meta: { title: '我的施工', icon: 'tool', hidden: false },
          },
          {
            path: '/construction-operation-platform/implementation-workflow/data-processing',
            name: 'DataProcessing',
            component: () => import('@/components/ParentView/index.vue'),
            redirect: '/construction-operation-platform/implementation-workflow/data-processing/data-storage',
            meta: { title: '我的业务数据', icon: 'filter', hidden: false },
            children: [
              {
                path: '/construction-operation-platform/implementation-workflow/data-processing/data-storage',
                name: 'DataStorage',
                component: () => import('@/components/ParentView/index.vue'),
                redirect: '/construction-operation-platform/implementation-workflow/data-processing/data-storage/raw-data',
                meta: { title: '原数据管理', icon: 'database', hidden: false },
                children: [
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/data-storage/raw-data',
                    name: 'RawData',
                    component: () => import('@/views/operation-platform/data-processing/data-storage/index.vue'),
                    meta: { title: '原数据管理', icon: 'file', hidden: false },
                  },
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/data-storage/attachment',
                    name: 'AttachmentManagement',
                    component: () => import('@/views/operation-platform/data-processing/data-storage/index.vue'),
                    meta: { title: '附件管理', icon: 'attachment', hidden: false },
                  },
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/data-storage/model-config',
                    name: 'ModelConfig',
                    component: () => import('@/views/construction-operation-platform/implementation-workflow/data-processing/model-config/index.vue'),
                    meta: { title: '模型配置', icon: 'robot', hidden: false },
                  },

                ],
              },
              {
                path: '/construction-operation-platform/implementation-workflow/data-processing/data-storage/preprocessed-data',
                name: 'PreprocessedData',
                component: () => import('@/views/construction-operation-platform/implementation-workflow/data-processing/data-preprocessing/index.vue'),
                meta: { title: '数据预处理', icon: 'filter', hidden: false },
              },
              {
                path: '/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection',
                name: 'IntelligentInspection',
                component: () => import('@/components/ParentView/index.vue'),
                redirect: '/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection/defect-algorithm',
                meta: { title: '数据分析与图像检测', icon: 'scan', hidden: false },
                children: [
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection/defect-algorithm',
                    name: 'DefectAlgorithm',
                    component: () => import('@/views/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection/defect-algorithm/index.vue'),
                    meta: { title: '缺陷检测', icon: 'code', hidden: false },
                  },
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection/report-generation',
                    name: 'ReportGeneration',
                    component: () => import('@/views/project-operation-platform/data-processing/report-generation/index.vue'),
                    meta: { title: '报告生成', icon: 'file-add', hidden: false },
                  },
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection/standard-info',
                    name: 'StandardInfo',
                    component: () => import('@/views/project-operation-platform/data-processing/standard-info/index.vue'),
                    meta: { title: '标准信息库', icon: 'book', hidden: false },
                  },
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection/report-review',
                    name: 'ReportReview',
                    component: () => import('@/views/project-operation-platform/data-processing/report-review/index.vue'),
                    meta: { title: '报告修改审核', icon: 'audit', hidden: false },
                  },
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection/lifecycle-management',
                    name: 'LifecycleManagement',
                    component: () => import('@/views/project-operation-platform/lifecycle-management/index.vue'),
                    meta: { title: '全生命周期管理', icon: 'reload', hidden: false },
                  },
                  {
                    path: '/construction-operation-platform/implementation-workflow/data-processing/intelligent-inspection/drone-services',
                    name: 'DroneServices',
                    component: () => import('@/views/project-operation-platform/route-planning/index.vue'),
                    meta: { title: '无人机云服务', icon: 'cloud-server', hidden: false },
                  },
                  // {
                  //   path: '/construction-operation-platform/implementation-workflow/airport-management',
                  //   name: 'AirportManagement',
                  //   component: () => import('@/views/construction-operation-platform/airport-management/index.vue'),
                  //   meta: { title: '机场管理', icon: 'rocket', hidden: false },
                  // },
                ],
              },
            ],
          },
          {
            path: '/construction-operation-platform/implementation-workflow/project-delivery',
            name: 'ProjectDelivery',
            component: () => import('@/components/ParentView/index.vue'),
            redirect: '/construction-operation-platform/implementation-workflow/project-delivery/delivery-overview',
            meta: { title: '项目交付', icon: 'check-circle', hidden: false },
            children: [
              // {
              //   path: '/construction-operation-platform/implementation-workflow/project-delivery/delivery-overview',
              //   name: 'DeliveryOverview',
              //   component: () => import('@/views/project-operation-platform/quality-management/process-verification/index.vue'),
              //   meta: { title: '交付概览', icon: 'dashboard', hidden: false },
              // },
              {
                path: '/construction-operation-platform/implementation-workflow/project-delivery/reliability-assessment',
                name: 'ReliabilityAssessment',
                component: () => import('@/views/project-operation-platform/quality-management/process-verification/index.vue'),
                meta: { title: '可靠性评估', icon: 'safety-certificate', hidden: false },
              },
              {
                path: '/construction-operation-platform/implementation-workflow/project-delivery/data-quality-assessment',
                name: 'DataQualityAssessment',
                component: () => import('@/views/project-operation-platform/data-processing/data-quality-assessment/index.vue'),
                meta: { title: '数据质量评估', icon: 'audit', hidden: false },
              },
              {
                path: '/construction-operation-platform/implementation-workflow/project-delivery/defect-storage',
                name: 'DefectStorage',
                component: () => import('@/views/project-operation-platform/quality-management/defect-storage/index.vue'),
                meta: { title: '质量入库', icon: 'folder-add', hidden: false },
              },
            ],
          },
        ],
      },
      {
        path: '/construction-operation-platform/implementation-workflow/tower-monitoring-video',
        name: 'TowerMonitoringVideo',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/construction-operation-platform/implementation-workflow/tower-monitoring-video/clearance-distance',
        meta: { title: '塔下监测预告', icon: 'video-camera', hidden: false },
        children: [
          {
            path: '/construction-operation-platform/implementation-workflow/tower-monitoring-video/clearance-distance',
            name: 'ClearanceDistance',
            component: () => import('@/views/project-operation-platform/data-processing/clearance-detection/index.vue'),
            meta: { title: '净空距离检测', icon: 'fullscreen', hidden: false },
          },
          {
            path: '/construction-operation-platform/implementation-workflow/tower-monitoring-video/deformation-monitoring',
            name: 'DeformationMonitoring',
            component: () => import('@/views/project-operation-platform/data-processing/deformation-detection/index.vue'),
            meta: { title: '形变检测', icon: 'line-chart', hidden: false },
          },
          {
            path: '/construction-operation-platform/implementation-workflow/tower-monitoring-video/image-detection',
            name: 'ImageDetection',
            component: () => import('@/views/project-operation-platform/data-processing/wide-angle-video/index.vue'),
            meta: { title: '图像检测', icon: 'picture', hidden: false },
          },
        ],
      },

      // {
      //   path: '/construction-operation-platform/implementation-workflow/project-delivery',
      //   name: 'ProjectDelivery',
      //   component: () => import('@/components/ParentView/index.vue'),
      //   redirect: '/construction-operation-platform/implementation-workflow/project-delivery/delivery-overview',
      //   meta: { title: '机场管理', icon: 'check-circle', hidden: false },
      // },

      {
        path: '/construction-operation-platform/implementation-workflow/other',
        name: 'Other',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/construction-operation-platform/implementation-workflow/other/route-planning',
        meta: { title: '其他', icon: 'more', hidden: false },
        children: [
          {
            path: '/construction-operation-platform/implementation-workflow/other/route-planning',
            name: 'RoutesPlanningOther',
            component: () => import('@/views/project-operation-platform/route-planning/index.vue'),
            meta: { title: '航线规划', icon: 'compass', hidden: false },
          },
          {
            path: '/construction-operation-platform/implementation-workflow/other/3d-model',
            name: '3DModelOther',
            component: () => import('@/views/project-operation-platform/data-processing/3d-model/index.vue'),
            meta: { title: '三维模型', icon: 'cube', hidden: false },
          },
          {
            path: '/construction-operation-platform/implementation-workflow/other/report-template',
            name: 'ReportTemplateOther',
            component: () => import('@/views/project-operation-platform/data-processing/report-template/index.vue'),
            meta: { title: '报告模版库', icon: 'book', hidden: false },
          },
        ],
      },
    ],
  },
  //   ],
  // },
  {
    path: '/chat-platform',
    name: 'ChatPlatform',
    component: Layout,
    redirect: '/chat-platform/options',
    meta: { title: '聊天平台', icon: 'message', hidden: false, sort: 6 },
    children: [
      // {
      //   path: '/chat-platform/options',
      //   name: 'ChatOptions',
      //   component: () => import('@/views/default/redirect/index.vue'), // 临时使用一个组件，实际开发中需要替换
      //   meta: {
      //     title: '二级选项1',
      //     icon: 'setting',
      //     hidden: false
      //   }
      // }
    ],
  },
  {
    path: '/user/profile',
    name: 'UserProfile',
    component: () => import('@/views/user/profile/index.vue'),
    meta: {
      title: '个人中心',
      icon: 'user',
      hidden: false,
      sort: 100,
    },
    children: [],
  },
  {
    path: '/enterprise-settings',
    name: 'EnterpriseSettings',
    component: Layout,
    redirect: '/enterprise-settings/company-info',
    meta: { title: '企业设置', icon: 'setting', hidden: false, sort: 7 },
    children: [
      {
        path: '/enterprise-settings/company-info',
        name: 'CompanyInfo',
        component: () => import('@/views/enterprise-settings/company-info/index.vue'),
        meta: {
          title: '企业信息',
          icon: 'info-circle',
          hidden: false,
        },
      },
      {
        path: '/enterprise-settings/admin-permissions',
        name: 'AdminPermissions',
        component: () => import('@/views/enterprise-settings/admin-permissions/index.vue'),
        meta: {
          title: '管理员权限',
          icon: 'lock',
          hidden: false,
        },
      },
      {
        path: '/enterprise-settings/data-migration',
        name: 'DataMigration',
        component: () => import('@/views/enterprise-settings/data-migration/index.vue'),
        meta: {
          title: '数据迁移',
          icon: 'database',
          hidden: false,
        },
      },
      {
        path: '/enterprise-settings/version-upgrade',
        name: 'VersionUpgrade',
        component: () => import('@/views/enterprise-settings/version-upgrade/index.vue'),
        meta: {
          title: '版本升级提醒',
          icon: 'upgrade',
          hidden: false,
        },
      },
    ],
  },
  {
    path: '/enterprise-dashboard',
    name: 'EnterpriseDashboard',
    component: Layout,
    redirect: '/enterprise-dashboard/overview',
    meta: { title: '企业看板', icon: 'dashboard', hidden: false, sort: 8 },
    children: [
      {
        path: '/enterprise-dashboard/overview',
        name: 'DashboardOverview',
        component: () => import('@/views/enterprise-dashboard/overview/index.vue'),
        meta: {
          title: '数据概览',
          icon: 'bar-chart',
          hidden: false,
        },
      },
      {
        path: '/enterprise-dashboard/member-data',
        name: 'MemberData',
        component: () => import('@/views/enterprise-dashboard/member-data/index.vue'),
        meta: {
          title: '成员活跃数据',
          icon: 'team',
          hidden: false,
        },
      },
      {
        path: '/enterprise-dashboard/function-usage',
        name: 'FunctionUsage',
        component: () => import('@/views/enterprise-dashboard/function-usage/index.vue'),
        meta: {
          title: '功能使用情况',
          icon: 'appstore',
          hidden: false,
        },
      },
      {
        path: '/enterprise-dashboard/application-data',
        name: 'ApplicationData',
        component: () => import('@/views/enterprise-dashboard/application-data/index.vue'),
        meta: {
          title: '应用使用数据',
          icon: 'pie-chart',
          hidden: false,
        },
      },
    ],
  },
  {
    path: '/system-resource',
    name: 'SystemResource',
    component: Layout,
    redirect: '/system-resource/device-management/warehouse',
    meta: { title: '关于平台', icon: 'server', hidden: false, sort: 9 },
    children: [
      {
        path: '/system-resource/device-management/warehouse',
        name: 'DeviceWarehouse',
        component: () => import('@/views/system-resource/device-management/index.vue'),
        meta: {
          title: '库存管理',
          icon: 'warehouse',
          hidden: false,
        },
      },
      {
        path: '/system-resource/device-management/online',
        name: 'DeviceOnline',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/system-resource/device-management/online/drone',
        meta: {
          title: '在线管理',
          icon: 'cloud',
          hidden: false,
        },
        children: [
          {
            path: '/system-resource/device-management/online/drone',
            name: 'DeviceDrone',
            component: () => import('@/views/system-resource/device-management/index.vue'),
            meta: {
              title: '无人机',
              icon: 'drone',
              hidden: false,
            },
          },
          {
            path: '/system-resource/device-management/online/nest',
            name: 'DeviceNest',
            component: () => import('@/views/system-resource/device-management/index.vue'),
            meta: {
              title: '机巢',
              icon: 'nest',
              hidden: false,
            },
          },
          {
            path: '/system-resource/device-management/online/smart-terminal',
            name: 'DeviceSmartTerminal',
            component: () => import('@/views/system-resource/device-management/index.vue'),
            meta: {
              title: '其他智能终端',
              icon: 'terminal',
              hidden: false,
            },
          },
        ],
      },
      {
        path: '/system-resource/information-system',
        name: 'InformationSystem',
        component: () => import('@/components/ParentView/index.vue'),
        redirect: '/system-resource/information-system/software-management',
        meta: {
          title: '信息化系统管理',
          icon: 'code',
          hidden: false,
        },
        children: [
          {
            path: '/system-resource/information-system/software-management',
            name: 'SoftwareManagement',
            component: () => import('@/views/system-resource/information-system/software-management/index.vue'),
            meta: {
              title: '软件管理',
              icon: 'appstore',
              hidden: false,
            },
          },
          {
            path: '/system-resource/information-system/system-backup',
            name: 'SystemBackup',
            component: () => import('@/views/system-resource/information-system/system-backup/index.vue'),
            meta: {
              title: '系统备份管理',
              icon: 'save',
              hidden: false,
            },
          },
        ],
      },
      {
        path: '/system-resource/about',
        name: 'About',
        component: () => import('@/views/dashboard/workplace/index.vue'),
        meta: {
          title: '关于我们',
          icon: 'info-circle',
          hidden: false,
        },
      },
    ],
  },
  {
    path: '/',
    redirect: '/project-management/project-template/project-aproval',
    meta: { hidden: true },
  },
  {
    path: '/pwdExpired',
    component: () => import('@/views/login/pwdExpired/index.vue'),
    meta: { hidden: true },
  },
]

// 固定路由（默认路由）
export const constantRoutes: RouteRecordRaw[] = [
  {
    path: '/redirect',
    component: Layout,
    meta: { hidden: true },
    children: [
      {
        path: '/redirect/:path(.*)',
        component: () => import('@/views/default/redirect/index.vue'),
      },
    ],
  },
  // {
  //   path: '/user/profile',
  //   component: () => import('@/views/user/profile/index.vue'),
  //   meta: { hidden: true },
  // },
  {
    path: '/:pathMatch(.*)*',
    component: () => import('@/views/default/error/404.vue'),
    meta: { hidden: true },
  },
  {
    path: '/403',
    component: () => import('@/views/default/error/403.vue'),
    meta: { hidden: true },
  },
]
