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; }