75 lines
2.6 KiB
TypeScript
75 lines
2.6 KiB
TypeScript
import type { RouteRecordRaw } from "vue-router";
|
||
|
||
/**
|
||
* 办事大厅路由(V2.0 Part B.6)。
|
||
*
|
||
* modId 是菜单 ↔ 路由的稳定契约(UserBase app_module 按本应用 appKey 配置),
|
||
* 新 modId 提案(旧 CMS 21/22 随迁移退役):
|
||
* 23=办事事项 24=服务字典 25=表单管理 26=办件记录 27=我的办件
|
||
* 发起页 /apply 与详情 /apply-detail 为参数页,不挂菜单(parentId 仅作面包屑归属)。
|
||
*/
|
||
const routes: RouteRecordRaw[] = [
|
||
// 管理面:办事事项
|
||
{
|
||
path: "/svc/item",
|
||
name: "svc_item_list",
|
||
component: () => import("@/views/svc/ServiceItemList.vue"),
|
||
meta: { title: "办事事项", modId: 23 },
|
||
},
|
||
{
|
||
path: "/svc/item/edit",
|
||
name: "svc_item_edit",
|
||
component: () => import("@/views/svc/ServiceItemEdit.vue"),
|
||
meta: { title: "编辑事项", modId: 28, parentId: 23 },
|
||
},
|
||
// 管理面:服务字典
|
||
{
|
||
path: "/svc/dict",
|
||
name: "svc_dict",
|
||
component: () => import("@/views/svc/ServiceDictManage.vue"),
|
||
meta: { title: "服务字典", modId: 24 },
|
||
},
|
||
// 管理面:表单管理
|
||
{
|
||
path: "/svc/form",
|
||
name: "svc_form",
|
||
component: () => import("@/views/svc/ServiceFormManage.vue"),
|
||
meta: { title: "表单管理", modId: 25 },
|
||
},
|
||
// 管理面:办件记录
|
||
{
|
||
path: "/svc/apply",
|
||
name: "svc_apply_admin",
|
||
component: () => import("@/views/svc/ApplyManage.vue"),
|
||
meta: { title: "办件记录", modId: 26 },
|
||
},
|
||
// 用户面:我的办件
|
||
{
|
||
path: "/my",
|
||
name: "svc_apply_my",
|
||
component: () => import("@/views/svc/ApplyMy.vue"),
|
||
meta: { title: "我的办件", modId: 27 },
|
||
},
|
||
// 用户面:发起(CMS 指南页"我要办理"跳入:/#/apply?siteCode=&itemCode=)
|
||
{
|
||
path: "/apply",
|
||
name: "svc_apply",
|
||
component: () => import("@/views/svc/Apply.vue"),
|
||
meta: { title: "在线办理", parentId: 27 },
|
||
},
|
||
// 用户面:办件详情
|
||
{
|
||
path: "/apply-detail",
|
||
name: "svc_apply_detail",
|
||
component: () => import("@/views/svc/ApplyDetail.vue"),
|
||
meta: { title: "办件详情", parentId: 27 },
|
||
},
|
||
// 应用入口默认页(pcUrl 直达时落到我的办件)
|
||
{ path: "/", redirect: "/my" },
|
||
// 兜底:外部深链(bizUrl 等)若拼成路径参数形态(/#/apply-detail/12)会 no-match,
|
||
// catch-all 避免静默空白页(回落我的办件,用户可自行进详情)
|
||
{ path: "/:pathMatch(.*)*", redirect: "/my" },
|
||
];
|
||
|
||
export default routes;
|