From afe6eccc18dfb237150bb9f20b65b6ea699ce47e Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期二, 24 二月 2026 11:26:03 +0800
Subject: [PATCH] 经销商管理

---
 mini-program/utils/http.interceptor.js |   59 +++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 45 insertions(+), 14 deletions(-)

diff --git a/mini-program/utils/http.interceptor.js b/mini-program/utils/http.interceptor.js
index a490224..aa7c2d6 100644
--- a/mini-program/utils/http.interceptor.js
+++ b/mini-program/utils/http.interceptor.js
@@ -8,11 +8,13 @@
 	uni.$u.http.interceptors.request.use((config) => {
 		console.log(config)
 		if(config.data && config.data.tokenType===1){
+			config.header['tokenType'] = config.data.tokenType;
 			const HeadShoptoken = vm.$store.state.shopToken 
 			if (HeadShoptoken) {
 				config.header['token'] = HeadShoptoken;
 			}
 		}else if(config.params  && config.params.tokenType===1){
+			config.header['tokenType'] = config.params.tokenType;
 			const HeadShoptoken = vm.$store.state.shopToken 
 			if (HeadShoptoken) {
 				config.header['token'] = HeadShoptoken;
@@ -31,7 +33,7 @@
 	// 鍝嶅簲鎷︽埅鍣�
 	uni.$u.http.interceptors.response.use((response) => {
 		// 鐧诲綍杩囨湡
-		if (response.data.code === 5111) {
+		if ([5111, 5112].includes(response.data.code)) {
 			if (!isRefreshing) {	// 鏄惁宸茬粡鎵ц鍒锋柊
 				isRefreshing = true
 				uni.login({
@@ -44,24 +46,53 @@
 							data: { code },
 							success: (res) => {
 								isRefreshing = false 
-								vm.$store.commit('setToken', res.data.data.token)
-								vm.$store.commit('setUserInfo', res.data.data.member)
-								vm.$store.commit('setOpenId', res.data.data.openid)
-								// 宸茬粡鍒锋柊浜唗oken锛屽皢鎵�鏈夐槦鍒椾腑鐨勮姹傝繘琛岄噸璇�
-								requests.forEach(item => item(res.data.data))
-								requests = []
-							}
+								let isLogin = false
+								if (res.data.data) {
+									if (res.data.data.token) {
+										isLogin = true
+										vm.$store.commit('setToken', res.data.data.token)
+										vm.$store.commit('setUserInfo', res.data.data.member) 
+									}
+									vm.$store.commit('setOpenId', res.data.data.openid)
+								}
+								if (!isLogin) {
+									if (!response.config.header || response.config.header.tokenType != 1) {
+										uni.switchTab({
+											url: '/pages/index/index'
+										})
+									}
+								}else{
+									if (!response.config.header || response.config.header.tokenType != 1) {
+										// 宸茬粡鍒锋柊浜唗oken锛屽皢鎵�鏈夐槦鍒椾腑鐨勮姹傝繘琛岄噸璇�
+										requests.forEach(item => item(res.data.data))
+										requests = []
+									}
+								}
+							},
 						});
 					}
 				});
 			}
-			return new Promise((resolve) => {
-				// 灏唕esolve鏀捐繘闃熷垪锛岀敤涓�涓嚱鏁板舰寮忔潵淇濆瓨锛岀瓑token鍒锋柊鍚庣洿鎺ユ墽琛�
-				requests.push(token => {
-					response.config.header['eva-auth-token'] = token
-					resolve(uni.$u.http.request(response.config));
+			
+			if ( response.config.header.tokenType != 1) {
+				return new Promise((resolve) => {
+					// 灏唕esolve鏀捐繘闃熷垪锛岀敤涓�涓嚱鏁板舰寮忔潵淇濆瓨锛岀瓑token鍒锋柊鍚庣洿鎺ユ墽琛�
+						requests.push(token => {
+							response.config.header['token'] = token
+							resolve(uni.$u.http.request(response.config));
+						})
 				})
-			})
+			}else{ 
+				var pages = getCurrentPages();
+				console.log(pages[0].route)
+				console.log(pages[pages.length-1].route)
+				console.log(pages.length && pages[pages.length-1].route != 'pages/login/login')
+				if(pages.length && pages[pages.length-1].route != 'pages/login/login'){
+					 uni.redirectTo({
+						url: '/pages/login/login'
+					})  
+				}
+			}
 		}
 		// 鎺ュ彛涓氬姟鎶ラ敊
 		if (response.data.code !== 200) {

--
Gitblit v1.9.3