From 57a831a36fa9e49db7ed1f2fc3469dcefbec0933 Mon Sep 17 00:00:00 2001 From: wuzilong <704541015@qq.com> Date: Mon, 14 Sep 2026 16:22:12 +0800 Subject: [PATCH] feat(miniprogram): add reusable web-view shell for H5 business pages. Co-authored-by: Cursor --- miniprogram/config/api.js | 9 ++- miniprogram/config/workbench-menus.js | 9 ++- miniprogram/pages.json | 7 +++ miniprogram/pages/common/mp-webview.vue | 74 +++++++++++++++++++++++++ 4 files changed, 95 insertions(+), 4 deletions(-) create mode 100644 miniprogram/pages/common/mp-webview.vue diff --git a/miniprogram/config/api.js b/miniprogram/config/api.js index cbf430ce5..a003268fb 100644 --- a/miniprogram/config/api.js +++ b/miniprogram/config/api.js @@ -24,7 +24,8 @@ export const AUTH_API = { LOGOUT: '/web/auth/logout', CURRENT_USER: '/web/auth/current-user', REFRESH_TOKEN: '/web/auth/refresh-token', - MENU_CODES: '/web/auth/menu-codes' + MENU_CODES: '/web/auth/menu-codes', + MP_WEBVIEW_TICKET: '/web/auth/mp-webview-ticket' } /** @@ -69,7 +70,8 @@ export const PAGE_PATHS = { plTransportPlan: '/pages/pl/transport-plan/list', plTransportPlanDetail: '/pages/pl/transport-plan/detail', plDriverPlan: '/pages/pl/driver-plan/list', - plDriverPlanDetail: '/pages/pl/driver-plan/detail' + plDriverPlanDetail: '/pages/pl/driver-plan/detail', + mpWebview: '/pages/common/mp-webview' } /** 工作台菜单 code → 页面路径 */ @@ -89,7 +91,8 @@ export const WORKBENCH_ROUTE_MAP = { 'bx-wf-reimburse': PAGE_PATHS.bxWfReimburse, 'pl-fuel-register': PAGE_PATHS.plFuelRegister, 'pl-transport-plan': PAGE_PATHS.plTransportPlan, - 'pl-driver-plan': PAGE_PATHS.plDriverPlan + 'pl-driver-plan': PAGE_PATHS.plDriverPlan, + 'pl-plan-webview': PAGE_PATHS.mpWebview + '?path=' + encodeURIComponent('/m/pl/plan') } export const TOKEN_KEY = 'sx_token' diff --git a/miniprogram/config/workbench-menus.js b/miniprogram/config/workbench-menus.js index 99d0a539f..bf2f709df 100644 --- a/miniprogram/config/workbench-menus.js +++ b/miniprogram/config/workbench-menus.js @@ -56,7 +56,7 @@ export const WORKBENCH_MODULES = [ { key: 'pl', title: '运输管理', - desc: '加油登记 · 运输计划单 · 司机运输计划单', + desc: '加油登记 · 运输计划单 · 运输计划 · 司机运输计划单', iconText: '运输', visible: true, menus: [ @@ -74,6 +74,13 @@ export const WORKBENCH_MODULES = [ icon: '📋', perms: 'mini:pl:transportPlan:list' }, + { + name: '运输计划', + enabled: true, + code: 'pl-plan-webview', + icon: '📝', + perms: 'mini:pl:plan:manage' + }, { name: '司机运输计划单', enabled: true, diff --git a/miniprogram/pages.json b/miniprogram/pages.json index f539d26f5..0621ecaa8 100644 --- a/miniprogram/pages.json +++ b/miniprogram/pages.json @@ -51,6 +51,13 @@ "style": { "navigationStyle": "custom" } + }, + { + "path": "pages/common/mp-webview", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "运输计划" + } } // #ifdef H5 , diff --git a/miniprogram/pages/common/mp-webview.vue b/miniprogram/pages/common/mp-webview.vue new file mode 100644 index 000000000..c7032b87c --- /dev/null +++ b/miniprogram/pages/common/mp-webview.vue @@ -0,0 +1,74 @@ + + + + +