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)