/* * @Description: 全局路由 * @Autor: renchao * @LastEditTime: 2023-08-25 09:09:25 */ import Vue from 'vue' import Router from 'vue-router' Vue.use(Router) import Layout from '@/layout' /* Router Modules */ // import componentsRouter from './modules/components' export const constantRoutes = [ { path: '/404', component: Layout, hidden: true, redirect: '/404/index', children: [ { path: '/index', component: () => import('@/views/error-page/404'), name: '404', meta: { title: '404' } } ] }, // 业务流程框架 { path: '/workFrame', component: () => import('@/views/workflow/workFrame.vue'), name: 'workFrame', hidden: true, meta: { title: '发起申请' } }, // 登记簿补录 { path: '/djbworkFrame', component: () => import('@/views/djbworkflow/workFrame.vue'), name: 'djbworkFrame', hidden: true, meta: { title: '登记簿补录' } }, // 登记簿补录只读框架 { path: '/djbworkFrameView', component: () => import('@/views/djbworkflow/workFrameView.vue'), name: 'djbworkFrameView', hidden: true, meta: { title: '登记簿补录' } }, //登记簿详情 { path: '/djbFrameall', component: () => import('@/views/registerBook/djbFrameall.vue'), name: 'djbFrameall', hidden: true, meta: { title: '登记簿详情' } }, // 业务流程只读框架 { path: '/workFrameView', component: () => import('@/views/workflow/workFrameView.vue'), name: 'workFrameView', hidden: true, meta: { title: '发起申请' } }, { path: '/', component: Layout, redirect: '/home', meta: { title: '首页' }, children: [ { path: 'home', component: () => import('@/views/home/index'), name: 'home', meta: { title: '工作台', icon: 'workbench', affix: true } } ] }, // 登录页 { path: '/login', component: () => import('@/views/login/index'), name: 'login', hidden: true, meta: { title: '登录' } }, ] /** * asyncRoutes * the routes that need to be dynamically loaded based on user roles */ export const asyncRoutes = [ { path: '/ywbl', id: '2', parentId: null, component: Layout, meta: { title: '业务办理', icon: 'ywbl' }, redirect: '/ywbl/ywsq', name: 'ywbl', children: [ { path: 'ywsq', id: '21', parentId: '2', component: () => import('@/views/ywbl/ywsq/guidePage.vue'), name: 'ywsq', meta: { title: '业务申请' } }, { path: 'dbx', id: '22', parentId: '2', component: () => import('@/views/ywbl/dbx/dbx.vue'), name: 'dbx', meta: { title: '待办箱' } }, { path: 'ybx', id: '23', parentId: '2', component: () => import('@/views/ywbl/ybx/ybx.vue'), name: 'ybx', meta: { title: '已办箱' } }, { path: 'ycsl', id: '24', parentId: '2', component: () => import('@/views/ywbl/ycsl/ycsl.vue'), name: 'ycsl', meta: { title: '一窗受理' } }, ] }, { path: '/sqcx', id: '3', parentId: null, component: Layout, meta: { title: '申请查询', icon: 'sqcx' }, redirect: '/sqcx/jtfc', alwaysShow: true, name: 'sqcx', children: [ { path: 'jtfc', id: '31', parentId: '3', component: () => import('@/views/sqcx/jtfc/jtfc.vue'), name: 'jtfc', meta: { title: '家庭房产' } }, { path: 'dydjb', id: '32', parentId: '3', component: () => import('@/views/sqcx/dydjb/dydjb.vue'), name: 'dydjb', meta: { title: '打印登记薄' } }, { path: 'sqcxjl', id: '33', parentId: '3', component: () => import('@/views/sqcx/sqcxjl/sqcxjl.vue'), name: 'cxjl', meta: { title: '申请查询记录' } } ] }, { path: '/zhcx', id: '4', parentId: null, component: Layout, meta: { title: '综合查询', icon: 'zhcx' }, redirect: '/zhcx/jdcx', alwaysShow: true, name: 'zhcx', children: [ { path: 'jdcx', id: '41', parentId: '4', component: () => import('@/views/zhcx/jdcx/jdcx.vue'), name: 'jdcx', meta: { title: '进度查询' } }, { path: 'djbcx', id: '42', parentId: '4', component: () => import('@/views/zhcx/djbcx/djbcx.vue'), name: 'djbcx', meta: { title: '登记簿查询' } }, { path: 'lpcx', id: '43', parentId: '4', component: () => import('@/views/zhcx/lpcx/lpcx.vue'), name: 'lpcx', meta: { title: '楼盘查询' } }, { path: 'zslqcx', id: '45', parentId: '4', component: () => import('@/views/zhcx/zslqcx/zslqcx.vue'), name: 'zslqcx', meta: { title: '证书领取查询' } }, // 在建工程抵押查询 { path: 'zxgcdycx', id: '46', parentId: '4', component: () => import('@/views/zhcx/zxgcdycx/zxgcdycx.vue'), name: 'zxgcdycx', meta: { title: '在建工程抵押' } }, ] }, { path: '/zsgl', id: '5', parentId: null, component: Layout, meta: { title: '证书管理', icon: 'zsgl' }, redirect: '/zsgl/zsrk', alwaysShow: true, name: 'zsgl', children: [ { path: 'zsrk', id: '51', parentId: '5', component: () => import('@/views/zsgl/zsrk/zsrk.vue'), name: 'zsrk', meta: { title: '证书入库' } }, { path: 'zsff', id: '52', parentId: '5', component: () => import('@/views/zsgl/zsff/zsff.vue'), name: 'zsff', meta: { title: '证书分发' } }, { path: 'zssyjl', id: '53', parentId: '5', component: () => import('@/views/zsgl/zssyjl/zssyjl.vue'), name: 'zssyjl', meta: { title: '证书使用记录' } }, ] }, { path: '/xxba', parentId: null, component: Layout, meta: { title: '信息备案', icon: 'xxba' }, redirect: '/xxba/qyxxba', alwaysShow: true, name: 'xxba', children: [ { path: 'qyxxba', component: () => import('@/views/xxba/qyxxba/index.vue'), name: 'qyxxba', meta: { title: '企业信息备案' } }, { path: 'lpxmba', component: () => import('@/views/xxba/lpxmba/index.vue'), name: 'lpxmba', meta: { title: '楼盘项目备案' } }, { path: 'yhjgba', component: () => import('@/views/xxba/yhjgba/index.vue'), name: 'yhjgba', meta: { title: '银行机构备案' } }, ] }, // 统计分析 { path: '/tjfx', parentId: null, component: Layout, meta: { title: '统计分析', icon: 'tjfx' }, redirect: '/tjfx/ywltj', alwaysShow: true, name: 'tjfx', children: [ { path: 'bdcdjtjfx', component: () => import('@/views/tjfx/bdcdjtjfx/index.vue'), name: 'bdcdjtjfx', meta: { title: '不动产登记统计分析' } }, { path: 'tjltj', component: () => import('@/views/tjfx/tjltj/index.vue'), name: 'tjltj', meta: { title: '退件率统计' } }, { path: 'cstj', component: () => import('@/views/tjfx/cstj/index.vue'), name: 'cstj', meta: { title: '超时统计' } } ] }, { path: '/system', id: '9', parentId: null, component: Layout, meta: { title: '系统管理', icon: 'system' }, redirect: '/system/dictionaries', alwaysShow: true, name: 'system', children: [ { path: 'dictionaries', id: '91', parentId: '9', component: () => import('@/views/system/dictionaries/dictionaries.vue'), name: 'dictionaries', meta: { title: '字典管理' } }, { path: 'sqywgz', id: '92', parentId: '9', component: () => import('@/views/system/sqywgz/sqywgz.vue'), name: 'sqywgz', meta: { title: '申请业务规则' } }, { path: 'qtjfjmb', id: '93', parentId: '9', component: () => import('@/views/system/qtjfjmb/qtjfjmb.vue'), name: 'qtjfjmb', meta: { title: '其他及附记模板' } }, { path: 'dymbgl', id: '94', parentId: '9', component: () => import('@/views/system/dymbgl/dymbgl.vue'), name: 'dymbgl', meta: { title: '打印模板管理' } }, { path: 'xttz', id: '95', parentId: '9', component: () => import('@/views/system/xttz/xttz.vue'), name: 'xttz', meta: { title: '系统通知' } }, { path: 'flfg', id: '96', parentId: '9', component: () => import('@/views/system/flfg/flfg.vue'), name: 'flfg', meta: { title: '法律法规' } }, { path: 'gxhpz', id: '97', parentId: '9', component: () => import('@/views/system/gxhpz/gxhpz.vue'), name: 'gxhpz', meta: { title: '个性化配置' } }, ] }, { path: '/xtjk', id: '6', parentId: null, component: Layout, meta: { title: '系统监控', icon: 'system' }, redirect: '/xtjk/cwrz', alwaysShow: true, name: 'xtjk', children: [ { path: 'cwrz', id: '61', parentId: '6', component: () => import('@/views/xtjk/cwrz/cwrz.vue'), name: 'cwrz', meta: { title: '错误日志' } }, { path: 'czrz', id: '62', parentId: '6', component: () => import('@/views/xtjk/czrz/czrz.vue'), name: 'czrz', meta: { title: '操作日志' } }, { path: 'zjjk', id: '63', parentId: '6', component: () => import('@/views/xtjk/zjjk/zjjk.vue'), name: 'zjjk', meta: { title: '主机监控' } }, ] }, // jkfw { path: '/jkfw', parentId: null, component: Layout, meta: { title: '接口服务', icon: 'jkfw' }, redirect: '/jkfw/ywltj', alwaysShow: true, name: 'jkfw', children: [ { path: 'yyjk', component: () => import('@/views/jkfw/yyjk/index.vue'), name: 'yyjk', meta: { title: '引用接口' } }, { path: 'ptjk', component: () => import('@/views/jkfw/ptjk/index.vue'), name: 'ptjk', meta: { title: '平台接口' } } ] }, ] const createRouter = () => new Router({ scrollBehavior: () => ({ y: 0 }), routes: [...constantRoutes] }) const router = createRouter() // Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465 export function resetRouter () { const newRouter = createRouter() router.matcher = newRouter.matcher // reset router } export default router