243 lines
7.5 KiB
JavaScript

/*
* @Description: router
* @Author: zenghua.wang
* @Date: 2023-06-20 11:48:41
* @LastEditors: zenghua.wang
* @LastEditTime: 2025-04-14 09:27:05
*/
import { createRouter, createWebHistory } from 'vue-router';
import Layout from '@/layouts/index.vue';
import Views from '@/layouts/Views.vue';
import userCentre from '@/layouts/userCentre.vue';
export const constantRoutes = [
{
path: '/sub-operation-service/404',
name: '404',
component: () => import('@/views/error/404.vue'),
hidden: true,
},
{
path: '/sub-operation-service/403',
name: '403',
component: () => import('@/views/error/403.vue'),
hidden: true,
},
{
path: '/sub-operation-service',
name: 'layout',
component: Layout,
redirect: '/sub-operation-service/smartFarm',
meta: { title: '运营服务' },
children: [
{
path: '/sub-operation-service/home',
component: () => import('@/views/home/index.vue'),
name: 'home',
meta: { title: '首页' },
},
{
path: '/sub-operation-service/dashboard',
component: () => import('@/views/dashboard/index.vue'),
name: 'dashboard',
meta: { title: '综合看板' },
},
],
},
{
path: '/sub-operation-service/smartFarm',
name: 'smartFarm',
component: Layout,
redirect: '/sub-operation-service/smartFarm/main',
meta: { title: '智慧种植' },
children: [
{
path: '/sub-operation-service/smartFarm/main',
component: () => import('@/views/smartFarm/index.vue'),
name: 'smartFarmMain',
meta: { title: '智慧种植首页' },
},
{
path: '/sub-operation-service/smartFarm/fieldInspection',
component: () => import('@/views/smartFarm/inspection/fieldInspection.vue'),
name: 'fieldInspection',
meta: { title: '田间监测' },
},
{
path: '/sub-operation-service/smartFarm/waterInspection',
component: () => import('@/views/smartFarm/inspection/waterInspection.vue'),
name: 'waterInspection',
meta: { title: '水质监测' },
},
{
path: '/sub-operation-service/smartFarm/bugInspection',
component: () => import('@/views/smartFarm/inspection/bugInspection.vue'),
name: 'bugInspection',
meta: { title: '病虫害监测' },
},
],
},
{
path: '/sub-operation-service/ruralFinance',
name: 'ruralFinance',
component: Layout,
redirect: '/sub-operation-service/ruralFinance/index',
meta: { title: '涉农金融' },
children: [
{
path: '/sub-operation-service/ruralFinance/index',
component: () => import('@/views/ruralFinance/index.vue'),
name: 'ruralFinanceMain',
meta: { title: '涉农金融首页' },
},
],
},
{
path: '/sub-operation-service/packaging',
name: 'packaging',
component: Layout,
redirect: '/sub-operation-service/packaging/index',
meta: { title: '分拣包装' },
children: [
{
path: '/sub-operation-service/packaging/index',
component: () => import('@/views/packaging/index.vue'),
name: 'packagingMain',
meta: { title: '分拣包装首页' },
},
],
},
{
path: '/sub-operation-service/warehouseLogistics',
name: 'warehouseLogistics',
component: Layout,
redirect: '/sub-operation-service/warehouseLogistics/index',
meta: { title: '仓储物流' },
children: [
{
path: '/sub-operation-service/warehouseLogistics/index',
component: () => import('@/views/warehouseLogistics/index.vue'),
name: 'warehouseLogisticsMain',
meta: { title: '仓储物流首页' },
},
],
},
{
path: '/sub-operation-service/brand',
name: 'brand',
component: Layout,
redirect: '/sub-operation-service/brand/index',
meta: { title: '公共品牌' },
children: [
{
path: '/sub-operation-service/brand/index',
component: () => import('@/views/brand/index.vue'),
name: 'brandMain',
meta: { title: '公共品牌首页' },
},
],
},
{
path: '/sub-operation-service/ecommerce',
name: 'ecommerce',
component: Layout,
redirect: '/sub-operation-service/ecommerce-agricultural',
meta: { title: '电商交易' },
children: [
{
path: '/ecommerce',
component: Views,
redirect: '/sub-operation-service/ecommerce-agricultural',
name: 'agriculturalParent',
meta: { title: '农资交易', headerActive: 'ecommerce' },
children: [
{
path: '/sub-operation-service/ecommerce-agricultural',
component: () => import('@/views/ecommerce/index.vue'),
name: 'agricultural',
meta: { title: '农资交易', headerActive: 'ecommerce' },
},
{
path: '/sub-operation-service/ecommerce-agriculturalDetail',
component: () => import('@/views/ecommerce/agriculturalDetail.vue'),
name: 'agriculturalDetail',
meta: { title: '农资详情', headerActive: 'ecommerce' },
},
{
path: '/sub-operation-service/ecommerce-sourceCodeDetail',
component: () => import('@/views/ecommerce/sourceCodeDetail.vue'),
name: 'sourceCodeDetail',
meta: { title: '溯源详情', headerActive: 'ecommerce' },
},
],
},
{
path: '/sub-operation-service/purchaser',
component: Views,
redirect: '/sub-operation-service/ecommerce-purchaser',
name: 'purchaserParent',
meta: { title: '采购商服务', headerActive: 'ecommerce' },
children: [
{
path: '/sub-operation-service/ecommerce-purchaser',
component: () => import('@/views/ecommerce/purchaser.vue'),
name: 'purchaser',
meta: { title: '采购商服务', headerActive: 'ecommerce' },
},
{
path: '/sub-operation-service/ecommerce-purchaserDetail',
component: () => import('@/views/ecommerce/purchaserDetail.vue'),
name: 'purchaserDetail',
meta: { title: '采购详情', headerActive: 'ecommerce' },
},
],
},
{
path: '/sub-operation-service/ecommerce-supplier',
component: () => import('@/views/ecommerce/supplier.vue'),
name: 'supplier',
meta: { title: '供应商服务', headerActive: 'ecommerce' },
},
{
path: '/sub-operation-service/ecommerce-land',
component: Views,
redirect: '/sub-operation-service/ecommerce-land',
name: 'landParent',
meta: { title: '土地交易', headerActive: 'ecommerce' },
children: [
{
path: '/sub-operation-service/ecommerce-land',
component: () => import('@/views/ecommerce/land.vue'),
name: 'land',
meta: { title: '土地交易', headerActive: 'ecommerce' },
},
{
path: '/sub-operation-service/ecommerce-landDetail',
component: () => import('@/views/ecommerce/landDetail.vue'),
name: 'landDetail',
meta: { title: '土地详情', headerActive: 'ecommerce' },
},
],
},
],
},
// ...demo,
];
/**
* @Title notFoundRouter(找不到路由)
*/
export const notFoundRouter = {
path: '/sub-operation-service/:pathMatch(.*)',
name: 'notFound',
redirect: '/sub-operation-service/404',
};
const router = createRouter({
history: createWebHistory(), // history
routes: constantRoutes,
});
export default router;