后续管理端业务进入微信小程序时,只加 H5 路由与工作台入口,不要再复制鉴权、登录注入或第二个 web-view 页。
接入约束见本文「已有骨架」与「新模块 5 步」。已落地:运输计划 /#/m/pl/plan、CRM 产品 /#/m/crm/product、CRM 报价 /#/m/crm/quote*、CRM 合同 /#/m/crm/contract*、CRM 客户 /#/m/crm/customer。
列表卡 / 确认弹窗视觉标准(扁平折叠卡为全部 /m/** 新标准;旧 expense-card 过渡):见 docs/miniprogram-ui-spec-sanqiang.md §12、OpenSpec「工作台 WebView 业务页」。参考实现:web-admin/src/views/m/crm/customer/index.vue、web-admin/src/views/m/crm/product/index.vue。
| 层 | 路径 |
|---|---|
| 小程序壳 | miniprogram/pages/common/mp-webview.vue(主包已注册) |
| 换票 | POST /api/web/auth/mp-webview-ticket(需登录,走加密)→ H5 POST /api/web/auth/mp-webview-exchange(加密排除) |
| H5 壳 | web-admin/src/layouts/MpWebviewShell.vue |
| 路由识别 | isMpWebviewPath(/m/ 前缀)、静态路由 meta.isMpWebview |
| 视觉 | 三墙绿 #0a9f6d(src/styles/mp-webview.scss),不是管理端 Fresh Mint |
web-admin/src/views/m/<module>/ 写列表/详情等;套 MpWebviewShell。桌面弹窗可加 variant="page" 全屏复用,不要重写业务规则。web-admin/src/router/routes/staticRoutes.ts 增加 /m/...,meta: { isHideTab: true, isMpWebview: true },且必须写在 catch-all 之前。不要挂桌面 index/index 布局。miniprogram/config/workbench-menus.js 增加一项;config/api.js 的 WORKBENCH_ROUTE_MAP 指向同一个壳:
pages/common/mp-webview?path= + encodeURIComponent('/m/...')。mini:...;业务 API 仍校验对应 Web perms。角色需同时具备两者(参考 docs/sql/migrations/2026-09-14-mini-pl-plan-webview-menus.sql)。web-admin 静态资源即可,不必提审小程序。禁止:每个模块再做一个 web-view 页面、再做一套登录注入、URL 长期带 accessToken、把公开司机/现场 token 页(/#/public/pl/transport/:token)当登录模板。
/m/pl/plan,详情 /:id,表单 /new /:id/edit /:id/arrange,打印 /:id/print,三方人车 /pastepl-plan-webview,perms mini:pl:plan:managepages/pl/transport-plan/*(mini:pl:transportPlan:list)并存,不要混名/m/crm/product,详情 /:id,表单 /new /:id/edit,分类 /categoriescrm-product-webview,perms mini:crm:product:list/web/crm/products/*、/web/crm/product-categories/*/m/crm/quote,审批列表 /m/crm/quote/approval,详情 /:id,表单 /new /:id/edit,版本 /:id/versionscrm-quote-webview / crm-quote-approval-webview,perms mini:crm:quote:list / mini:crm:quote:approve/m/crm/contract,审批 /m/crm/contract/approval,详情 /:id,表单 /new /:id/editcrm-contract-webview / crm-contract-approval-webviewmini:crm:contract:list / mini:crm:contract:approve/m/crm/customer,新增 /new,详情 /:id,编辑 /:id/edit。crm-customer-webview,perms mini:crm:customer:list。docs/sql/migrations/2026-10-17-mini-crm-customer-webview-menus.sql。/m/pl/plan-cert,详情为独立页面 /m/pl/plan-cert/:id,上传继续使用本模块移动 Bottom Sheet。详情支持直达、刷新和标准返回,不使用票根或顶部记录摘要。pl-plan-cert-webview,入口 perms mini:pl:plan-cert:list;写操作仍分别按 Web pl:plan-cert:upload、pl:plan-cert:ready 显示并检查。docs/sql/migrations/2026-10-17-mini-pl-plan-cert-webview-menus.sql;仅新增移动叶子并为已有 Web 列表角色补齐移动根和运输父级。2026-10-17 已按用户授权在测试库执行,生产库未执行(历史执行记录,不代表当前部署状态)。/#/auth/login