import type { RouteRecordRaw } from "vue-router"; /** * 公共办事大厅路由(用户面;后台管理路由在 svc-hall/front,两仓互不引用)。 * 六个页面:事项大厅(入口)/ 事项指南 / 在线办理 / 我的办件 / 我的审批 / 办件详情。 * 全部走 hash 路由(部署于 /{contextPath}/hall/,hash 免服务端 rewrite)。 * 参数页用 query 传参(与 CMS 指南页"我要办理"外链形态一致: * {svc_hall_base}/#/apply?siteCode=&itemCode=&from=<指南页绝对URL>; * from=T4 回跳闭环参数,hall 侧 resolveFrom 校验可信域后显示"返回门户") * ——拼成路径参数会 no-match 空白页。 */ const routes: RouteRecordRaw[] = [ { path: "/hall", name: "hall", component: () => import("@/views/Hall.vue"), meta: { title: "办事大厅" }, }, // 事项指南(P0-1「先看指南再办理」):{base}/#/item?siteCode=&itemCode=,匿名可读 { path: "/item", name: "item_guide", component: () => import("@/views/ItemGuide.vue"), meta: { title: "事项指南" }, }, { path: "/apply", name: "apply", component: () => import("@/views/Apply.vue"), meta: { title: "在线办理" }, }, { path: "/my", name: "my", component: () => import("@/views/ApplyMy.vue"), meta: { title: "我的办件" }, }, { path: "/todo", name: "todo", component: () => import("@/views/MyApprovals.vue"), meta: { title: "我的审批" }, }, { path: "/apply-detail", name: "apply_detail", component: () => import("@/views/ApplyDetail.vue"), meta: { title: "办件详情" }, }, // 入口默认页 = 事项大厅 { path: "/", redirect: "/hall" }, // 外部深链兜底(bizUrl / CMS 按钮可能拼成 /#/apply-detail/12 之类):回落大厅避免白屏 { path: "/:pathMatch(.*)*", redirect: "/hall" }, ]; export default routes;