diff --git a/src/pages/user/portalScan.vue b/src/pages/user/portalScan.vue index 5c33432..7f486d1 100644 --- a/src/pages/user/portalScan.vue +++ b/src/pages/user/portalScan.vue @@ -1,10 +1,13 @@ @@ -58,12 +106,19 @@ onLoad(() => { .wrap { min-height: 100vh; display: flex; + flex-direction: column; align-items: center; justify-content: center; + gap: 24px; background: #f5f5f5; } .tip { font-size: 14px; color: #666; } +.back { + font-size: 14px; + color: #0094ff; + padding: 8px 16px; +} diff --git a/src/sheep/utils/request.ts b/src/sheep/utils/request.ts index 383949c..0257e24 100644 --- a/src/sheep/utils/request.ts +++ b/src/sheep/utils/request.ts @@ -374,6 +374,18 @@ async function loginBySh(): Promise { } } +/** + * 门户扫一扫等:有有效 token 直接过;否则按环境自动登录(诗画/浙政钉)。 + * 与「我的」里先登录再扫码一致,保证后续支付接口带用户身份。 + */ +export async function ensureBizLogin(): Promise { + const tokenStorage = uni.getStorageSync(TOKEN_KEY) + if (!isEmpty(tokenStorage) && !isTokenExpires(tokenStorage) && getTokenValue(tokenStorage)) { + return true + } + return await autoLogin() +} + // 请求函数 const request = (config: any) => { return https.middleware(config)