From af17d81422477e04cafc0be830781ad464746f88 Mon Sep 17 00:00:00 2001 From: WUSIJIAN <13825895+wsj0228@user.noreply.gitee.com> Date: Wed, 21 Jan 2026 14:02:42 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=8D=E6=9E=84=E8=B5=84=E4=BA=A7=E8=AE=A2?= =?UTF-8?q?=E9=98=85=E5=8A=9F=E8=83=BD,=E5=B0=86=E5=BC=B9=E7=AA=97?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E6=94=B9=E4=B8=BA=E5=A4=96=E9=83=A8=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E8=B7=B3=E8=BD=AC=E6=A8=A1=E5=BC=8F,=E7=A7=BB?= =?UTF-8?q?=E9=99=A4AssetSubscribeDialog=E7=BB=84=E4=BB=B6=E5=8F=8A?= =?UTF-8?q?=E5=85=B6=E5=9C=A8App.vue=E4=B8=AD=E7=9A=84=E5=BC=95=E7=94=A8,?= =?UTF-8?q?=E4=BF=AE=E6=94=B9assetSubscribe=E5=B7=A5=E5=85=B7=E7=B1=BB?= =?UTF-8?q?=E5=B0=86showAssetSubscribeDialog=E6=96=B9=E6=B3=95=E6=9B=BF?= =?UTF-8?q?=E6=8D=A2=E4=B8=BAredirectToSubscribePage=E6=96=B9=E6=B3=95,?= =?UTF-8?q?=E5=BD=93=E6=A3=80=E6=B5=8B=E5=88=B0402=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E7=A0=81=E6=97=B6=E7=9B=B4=E6=8E=A5=E8=B7=B3=E8=BD=AC=E5=88=B0?= =?UTF-8?q?=E5=A4=96=E9=83=A8=E5=BC=80=E9=80=9A=E9=A1=B5=E9=9D=A2=E5=B9=B6?= =?UTF-8?q?=E6=90=BA=E5=B8=A6=E8=B5=84=E4=BA=A7ID=E5=92=8C=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E5=9C=B0=E5=9D=80=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 1 + public/web/subscribe.html | 580 ++++++++++++++++++++++++ src/App.vue | 11 +- src/components/assetSubscribe/index.vue | 277 ----------- src/utils/assetSubscribe.ts | 46 +- 5 files changed, 596 insertions(+), 319 deletions(-) create mode 100644 public/web/subscribe.html delete mode 100644 src/components/assetSubscribe/index.vue diff --git a/.env.development b/.env.development index 5fb1b59..4add404 100644 --- a/.env.development +++ b/.env.development @@ -6,3 +6,4 @@ VITE_API_URL = 'http://192.168.3.200:8808/' # VITE_API_URL = 'http://192.168.3.11:8808/' + diff --git a/public/web/subscribe.html b/public/web/subscribe.html new file mode 100644 index 0000000..3037141 --- /dev/null +++ b/public/web/subscribe.html @@ -0,0 +1,580 @@ + + + + + + 服务开通 - 智能营销服务平台 + + + + + + + + + + +
+
+

开通服务

+

选择适合您的套餐,立即开通使用

+
+ + +
+
+

正在加载套餐信息...

+
+ + + + + + + + + + + + + + + + + + +
+ + + + diff --git a/src/App.vue b/src/App.vue index 61073d9..c06763c 100644 --- a/src/App.vue +++ b/src/App.vue @@ -4,12 +4,6 @@ - - @@ -25,12 +19,10 @@ import setIntroduction from '/@/utils/setIconfont'; import LockScreen from '/@/layout/lockScreen/index.vue'; import Setings from '/@/layout/navBars/breadcrumb/setings.vue'; import CloseFull from '/@/layout/navBars/breadcrumb/closeFull.vue'; -import AssetSubscribeDialog from '/@/components/assetSubscribe/index.vue'; -import { assetSubscribeState } from '/@/utils/assetSubscribe'; export default defineComponent({ name: 'app', - components: { LockScreen, Setings, CloseFull, AssetSubscribeDialog }, + components: { LockScreen, Setings, CloseFull }, setup() { const { proxy } = getCurrentInstance(); const setingsRef = ref(); @@ -97,7 +89,6 @@ export default defineComponent({ themeConfig, setingsRef, getGlobalComponentSize, - assetSubscribeState, ...toRefs(state), }; }, diff --git a/src/components/assetSubscribe/index.vue b/src/components/assetSubscribe/index.vue deleted file mode 100644 index c4ce99d..0000000 --- a/src/components/assetSubscribe/index.vue +++ /dev/null @@ -1,277 +0,0 @@ - - - - - diff --git a/src/utils/assetSubscribe.ts b/src/utils/assetSubscribe.ts index 1df0289..27fead5 100644 --- a/src/utils/assetSubscribe.ts +++ b/src/utils/assetSubscribe.ts @@ -1,4 +1,5 @@ -import { ref } from 'vue'; +// 开通页面地址(public/web/subscribe.html) +const SUBSCRIBE_PAGE_URL = '/web/subscribe.html'; // 路由路径与 assetId 的映射关系 const ROUTE_ASSET_MAP: Record = { @@ -10,21 +11,8 @@ const ROUTE_ASSET_MAP: Record // 聚合电商业务(资产管理) '/assets': { assetId: '696b4acd1be1c8b76c4b4c15', serviceName: '资产管理' }, - - // 订单 - // '/order': { assetId: '696b4acd1be1c8b76c4b4c15', serviceName: '资产管理' }, - - // AI数字人 - // '/digitalHuman': { assetId: '696f421205e496ba4ccbe662', serviceName: 'AI客服' }, }; -// 当前弹窗状态(响应式,供组件使用) -export const assetSubscribeState = ref({ - visible: false, - assetId: '', - serviceName: '', -}); - /** * 根据路由路径获取对应的 assetId 和服务名称 */ @@ -45,26 +33,20 @@ export function getAssetInfoByRoute(routePath: string): { assetId: string; servi } /** - * 显示服务开通弹窗 + * 跳转到外部开通页面 + * @param assetId 资产ID */ -export function showAssetSubscribeDialog(assetId: string, serviceName: string) { - console.log('[showAssetSubscribeDialog] 显示弹窗:', { assetId, serviceName }); - console.log('[showAssetSubscribeDialog] 修改前状态:', JSON.stringify(assetSubscribeState.value)); - assetSubscribeState.value.visible = true; - assetSubscribeState.value.assetId = assetId; - assetSubscribeState.value.serviceName = serviceName; - console.log('[showAssetSubscribeDialog] 修改后状态:', JSON.stringify(assetSubscribeState.value)); +export function redirectToSubscribePage(assetId: string) { + // 当前页面地址作为返回地址 + const returnUrl = encodeURIComponent(window.location.href); + // 构建跳转URL + const url = `${SUBSCRIBE_PAGE_URL}?assetId=${assetId}&returnUrl=${returnUrl}`; + console.log('[redirectToSubscribePage] 跳转到开通页面:', url); + window.location.href = url; } /** - * 关闭服务开通弹窗 - */ -export function closeAssetSubscribeDialog() { - assetSubscribeState.value.visible = false; -} - -/** - * 处理 403 错误码(模块未开通) + * 处理 402 错误码(模块未开通) */ export function handleModuleNotEnabled(routePath: string): boolean { console.log('[模块未开通] 当前路由路径:', routePath); @@ -72,12 +54,12 @@ export function handleModuleNotEnabled(routePath: string): boolean { console.log('[模块未开通] 匹配到的资产信息:', assetInfo); if (assetInfo) { - showAssetSubscribeDialog(assetInfo.assetId, assetInfo.serviceName); + redirectToSubscribePage(assetInfo.assetId); return true; } // 如果没有匹配到路由,尝试使用默认的资产管理 console.warn('[模块未开通] 未匹配到路由,使用默认资产管理'); - showAssetSubscribeDialog('696b4acd1be1c8b76c4b4c15', '资产管理'); + redirectToSubscribePage('696b4acd1be1c8b76c4b4c15'); return true; }