424 lines
14 KiB
JavaScript
Raw Normal View History

2025-01-25 02:48:00 +00:00
/*
* @Description: router
* @Author: zenghua.wang
* @Date: 2023-06-20 11:48:41
* @LastEditors: zenghua.wang
2025-04-14 02:33:18 +01:00
* @LastEditTime: 2025-04-14 09:27:05
2025-01-25 02:48:00 +00:00
*/
import { createRouter, createWebHistory } from 'vue-router';
import Layout from '@/layouts/index.vue';
2025-05-22 10:38:36 +08:00
import BrandLayout from '@/views/brand/index.vue';
import Views from '@/layouts/Views.vue';
2025-04-11 17:32:55 +08:00
import userCentre from '@/layouts/userCentre.vue';
2025-01-25 02:48:00 +00:00
export const constantRoutes = [
{
path: '/sub-operation-service/404',
2025-01-25 02:48:00 +00:00
name: '404',
component: () => import('@/views/error/404.vue'),
hidden: true,
},
{
path: '/sub-operation-service/403',
2025-01-25 02:48:00 +00:00
name: '403',
component: () => import('@/views/error/403.vue'),
hidden: true,
},
2025-05-20 13:05:37 +08:00
// {
// path: '/sub-operation-service/userCenter',
// name: 'userCenter',
// component: () => import('@/views/userCenter/shoppingCart.vue'),
// hidden: true,
// },
{
path: '/sub-operation-service/userCenter',
name: 'userCenter',
// component: Layout,
redirect: '/sub-operation-service/userCenter',
meta: { title: '个人中心' },
children: [
{
path: '/sub-operation-service/userCenter',
component: () => import('@/views/userCenter/shoppingCart.vue'),
name: 'shoppingCart',
meta: { title: '我的购物车' },
},
{
path: '/sub-operation-service/sureOrder',
component: () => import('@/views/userCenter/sureOrder.vue'),
name: 'sureOrder',
meta: { title: '结算' },
},
{
path: '/sub-operation-service/orderSuccess',
component: () => import('@/views/userCenter/orderSuccess.vue'),
name: 'orderSuccess',
meta: { title: '提交订单' },
},
{
path: '/sub-operation-service/paySuccess',
component: () => import('@/views/userCenter/paySuccess.vue'),
name: 'paySuccess',
meta: { title: '支付成功' },
},
{
path: '/sub-operation-service/userOrders',
component: () => import('@/views/userCenter/userOrders.vue'),
name: 'userOrders',
meta: { title: '我的订单' },
},
2025-05-21 13:44:54 +08:00
{
2025-05-20 13:05:37 +08:00
path: '/sub-operation-service/userLands',
component: () => import('@/views/userCenter/userLands.vue'),
name: 'userLands',
meta: { title: '我的土地' },
},
{
path: '/sub-operation-service/mySource',
component: () => import('@/views/userCenter/mySource.vue'),
name: 'mySource',
meta: { title: '我的溯源' },
},
{
path: '/sub-operation-service/myFinance',
component: () => import('@/views/userCenter/myFinance.vue'),
name: 'myFinance',
meta: { title: '我的金融' },
},
{
path: '/sub-operation-service/myBrand',
component: () => import('@/views/userCenter/myBrand.vue'),
name: 'myBrand',
meta: { title: '我的品牌' },
},
2025-05-20 13:05:37 +08:00
],
},
2025-01-25 02:48:00 +00:00
{
path: '/sub-operation-service',
2025-01-25 02:48:00 +00:00
name: 'layout',
component: Layout,
redirect: '/sub-operation-service/smartFarm',
2025-04-14 02:33:18 +01:00
meta: { title: '运营服务' },
2025-01-25 02:48:00 +00:00
children: [
{
path: '/sub-operation-service/home',
2025-01-25 02:48:00 +00:00
component: () => import('@/views/home/index.vue'),
name: 'home',
2025-04-03 17:20:49 +08:00
meta: { title: '首页' },
2025-01-25 02:48:00 +00:00
},
{
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',
2025-05-20 09:48:38 +08:00
component: () => import('@/views/smartFarm/inspection/fieldInspection.vue'),
name: 'fieldInspection',
2025-05-20 09:48:38 +08:00
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/smartFarm/envInspection',
component: () => import('@/views/smartFarm/inspection/envInspection.vue'),
name: 'envInspection',
meta: { title: '环境监测' },
},
2025-05-21 10:14:25 +08:00
{
path: '/sub-operation-service/smartFarm/intelligentFertilizer',
component: () => import('@/views/smartFarm/inspection/intelligentFertilizer.vue'),
name: 'intelligentFertilizer',
meta: { title: '智能配肥' },
},
{
path: '/sub-operation-service/smartFarm/IntelligentIrrigation',
component: () => import('@/views/smartFarm/inspection/IntelligentIrrigation.vue'),
name: 'IntelligentIrrigation',
meta: { title: '智能灌溉' },
},
{
path: '/sub-operation-service/smartFarm/IntelligentSeedSoaking',
component: () => import('@/views/smartFarm/inspection/IntelligentSeedSoaking.vue'),
name: 'IntelligentSeedSoaking',
meta: { title: '智能浸种' },
},
{
path: '/sub-operation-service/smartFarm/growSeedlings',
2025-05-21 10:46:48 +08:00
component: () => import('@/views/smartFarm/manageControl/growSeedlings.vue'),
name: 'growSeedlings',
meta: { title: '一体育苗' },
},
2025-05-20 17:49:10 +08:00
{
path: '/sub-operation-service/smartFarm/pestPrevention',
2025-05-21 10:46:48 +08:00
component: () => import('@/views/smartFarm/manageControl/pestPrevention.vue'),
2025-05-20 17:49:10 +08:00
name: 'pestPrevention',
meta: { title: '病虫害防治' },
},
{
path: '/sub-operation-service/smartFarm/irrigationSystem',
2025-05-21 10:46:48 +08:00
component: () => import('@/views/smartFarm/manageControl/irrigationSystem.vue'),
2025-05-20 17:49:10 +08:00
name: 'irrigationSystem',
meta: { title: '喷灌滴灌' },
},
{
path: '/sub-operation-service/smartFarm/drainageControl',
2025-05-21 10:46:48 +08:00
component: () => import('@/views/smartFarm/manageControl/drainageControl.vue'),
2025-05-20 17:49:10 +08:00
name: 'drainageControl',
meta: { title: '排集水控制' },
},
{
path: '/sub-operation-service/smartFarm/openCurtain',
2025-05-21 10:46:48 +08:00
component: () => import('@/views/smartFarm/manageControl/openCurtain.vue'),
2025-05-20 17:49:10 +08:00
name: 'openCurtain',
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,
2025-05-28 14:26:06 +08:00
redirect: '/sub-operation-service/packaging/sorting',
meta: { title: '分拣包装' },
children: [
2025-05-28 14:26:06 +08:00
{
path: '/sub-operation-service/packaging/sorting',
component: () => import('@/views/packaging/sorting.vue'),
name: 'sortingMain',
meta: { title: '分拣首页' },
},
{
path: '/sub-operation-service/packaging/index',
component: () => import('@/views/packaging/index.vue'),
name: 'packagingMain',
2025-05-28 14:26:06 +08:00
meta: { title: '包装首页' },
},
2025-05-30 11:41:57 +08:00
{
path: '/sub-operation-service/packaging/details',
component: () => import('@/views/packaging/details.vue'),
name: 'detailsMain',
meta: { title: '详情页' },
},
],
},
{
path: '/sub-operation-service/warehouseLogistics',
name: 'warehouseLogistics',
component: Layout,
2025-05-28 11:43:31 +08:00
redirect: '/sub-operation-service/warehouse',
meta: { title: '仓储物流' },
children: [
{
2025-05-28 11:43:31 +08:00
path: '/sub-operation-service/warehouse',
component: () => import('@/views/warehouseLogistics/warehouse/index.vue'),
name: 'warehouseMain',
meta: { title: '仓储首页' },
},
2025-05-29 18:02:16 +08:00
{
path: '/sub-operation-service/warehouse-detail',
component: () => import('@/views/warehouseLogistics/warehouse/detail.vue'),
name: 'warehouse-detail',
meta: { title: '仓储详情' },
},
2025-05-28 11:43:31 +08:00
{
path: '/sub-operation-service/logistics',
component: () => import('@/views/warehouseLogistics/logistics/index.vue'),
name: 'logistics-list',
meta: { title: '物流首页' },
},
],
},
{
path: '/sub-operation-service/brand',
name: 'brand',
component: Layout,
2025-05-21 13:44:54 +08:00
redirect: '/sub-operation-service/brand/apply', // 默认页
meta: { title: '公共品牌' },
children: [
{
2025-05-22 10:38:36 +08:00
path: '',
component: BrandLayout,
redirect: '/sub-operation-service/brand/apply',
2025-05-21 13:44:54 +08:00
children: [
{
2025-05-22 10:38:36 +08:00
path: 'apply',
2025-05-21 13:44:54 +08:00
name: 'brandApplyList',
2025-05-22 10:38:36 +08:00
component: () => import('@/views/brand/components/ApplyList.vue'),
2025-05-21 13:44:54 +08:00
meta: { title: '使用申请' },
},
{
path: 'brandApplyDetail',
2025-05-21 13:44:54 +08:00
name: 'brandApplyDetail',
2025-05-22 10:38:36 +08:00
component: () => import('@/views/brand/components/ApplyDetail.vue'),
2025-05-21 13:44:54 +08:00
meta: { title: '产品申请' },
},
{
2025-05-22 10:38:36 +08:00
path: 'auth/record',
2025-05-21 13:44:54 +08:00
name: 'brandAuth',
2025-05-22 10:38:36 +08:00
component: () => import('@/views/brand/components/Auth.vue'),
meta: { title: '授权记录' },
2025-05-21 13:44:54 +08:00
},
{
2025-05-22 10:38:36 +08:00
path: 'auth/system',
name: 'brandSystem',
component: () => import('@/views/brand/components/BrandSystem.vue'),
meta: { title: '品牌制度' },
},
{
path: 'monitor',
2025-05-21 13:44:54 +08:00
name: 'brandMonitor',
2025-05-22 10:38:36 +08:00
component: () => import('@/views/brand/components/Monitor.vue'),
2025-05-21 13:44:54 +08:00
meta: { title: '使用监管' },
},
],
},
2025-01-25 02:48:00 +00:00
],
},
2025-05-21 13:44:54 +08:00
{
2025-04-09 17:25:08 +08:00
path: '/sub-operation-service/ecommerce',
name: 'ecommerce',
component: Layout,
2025-04-09 17:25:08 +08:00
redirect: '/sub-operation-service/ecommerce-agricultural',
2025-04-03 17:20:49 +08:00
meta: { title: '电商交易' },
children: [
{
2025-04-09 17:25:08 +08:00
path: '/ecommerce',
component: Views,
redirect: '/sub-operation-service/ecommerce-agricultural',
name: 'agriculturalParent',
2025-04-12 15:57:15 +08:00
meta: { title: '农资交易', headerActive: 'ecommerce' },
2025-04-09 17:25:08 +08:00
children: [
{
path: '/sub-operation-service/ecommerce-agricultural',
component: () => import('@/views/ecommerce/index.vue'),
name: 'agricultural',
2025-04-12 15:57:15 +08:00
meta: { title: '农资交易', headerActive: 'ecommerce' },
2025-04-09 17:25:08 +08:00
},
{
2025-04-11 17:32:55 +08:00
path: '/sub-operation-service/ecommerce-agriculturalDetail',
2025-04-09 17:25:08 +08:00
component: () => import('@/views/ecommerce/agriculturalDetail.vue'),
name: 'agriculturalDetail',
2025-04-12 15:57:15 +08:00
meta: { title: '农资详情', headerActive: 'ecommerce' },
2025-04-09 17:25:08 +08:00
},
2025-04-11 17:32:55 +08:00
{
path: '/sub-operation-service/ecommerce-sourceCodeDetail',
component: () => import('@/views/ecommerce/sourceCodeDetail.vue'),
name: 'sourceCodeDetail',
2025-04-12 15:57:15 +08:00
meta: { title: '溯源详情', headerActive: 'ecommerce' },
2025-04-11 17:32:55 +08:00
},
2025-04-09 17:25:08 +08:00
],
},
{
2025-04-09 17:25:08 +08:00
path: '/sub-operation-service/purchaser',
2025-04-03 17:20:49 +08:00
component: Views,
2025-04-09 17:25:08 +08:00
redirect: '/sub-operation-service/ecommerce-purchaser',
2025-04-03 17:20:49 +08:00
name: 'purchaserParent',
2025-04-12 15:57:15 +08:00
meta: { title: '采购商服务', headerActive: 'ecommerce' },
2025-04-03 17:20:49 +08:00
children: [
{
2025-04-09 17:25:08 +08:00
path: '/sub-operation-service/ecommerce-purchaser',
2025-04-03 17:20:49 +08:00
component: () => import('@/views/ecommerce/purchaser.vue'),
name: 'purchaser',
2025-04-12 15:57:15 +08:00
meta: { title: '采购商服务', headerActive: 'ecommerce' },
2025-04-03 17:20:49 +08:00
},
{
2025-04-09 17:25:08 +08:00
path: '/sub-operation-service/ecommerce-purchaserDetail',
2025-04-03 17:20:49 +08:00
component: () => import('@/views/ecommerce/purchaserDetail.vue'),
name: 'purchaserDetail',
2025-04-12 15:57:15 +08:00
meta: { title: '采购详情', headerActive: 'ecommerce' },
2025-04-03 17:20:49 +08:00
},
],
},
2025-04-03 17:20:49 +08:00
{
2025-04-09 17:25:08 +08:00
path: '/sub-operation-service/ecommerce-supplier',
component: () => import('@/views/ecommerce/supplier.vue'),
name: 'supplier',
2025-04-12 15:57:15 +08:00
meta: { title: '供应商服务', headerActive: 'ecommerce' },
},
{
2025-04-09 17:25:08 +08:00
path: '/sub-operation-service/ecommerce-land',
2025-04-03 17:20:49 +08:00
component: Views,
2025-04-09 17:25:08 +08:00
redirect: '/sub-operation-service/ecommerce-land',
2025-04-03 17:20:49 +08:00
name: 'landParent',
2025-04-12 15:57:15 +08:00
meta: { title: '土地交易', headerActive: 'ecommerce' },
2025-04-03 17:20:49 +08:00
children: [
{
2025-04-09 17:25:08 +08:00
path: '/sub-operation-service/ecommerce-land',
2025-04-03 17:20:49 +08:00
component: () => import('@/views/ecommerce/land.vue'),
name: 'land',
2025-04-12 15:57:15 +08:00
meta: { title: '土地交易', headerActive: 'ecommerce' },
2025-04-03 17:20:49 +08:00
},
{
2025-04-09 17:25:08 +08:00
path: '/sub-operation-service/ecommerce-landDetail',
2025-04-03 17:20:49 +08:00
component: () => import('@/views/ecommerce/landDetail.vue'),
name: 'landDetail',
2025-04-12 15:57:15 +08:00
meta: { title: '土地详情', headerActive: 'ecommerce' },
2025-04-03 17:20:49 +08:00
},
],
},
],
},
2025-05-12 17:46:49 +08:00
// ...demo,
2025-01-25 02:48:00 +00:00
];
/**
* @Title notFoundRouter(找不到路由)
*/
export const notFoundRouter = {
path: '/sub-operation-service/:pathMatch(.*)',
2025-01-25 02:48:00 +00:00
name: 'notFound',
redirect: '/sub-operation-service/404',
2025-01-25 02:48:00 +00:00
};
const router = createRouter({
history: createWebHistory(), // history
2025-01-25 02:48:00 +00:00
routes: constantRoutes,
});
export default router;