Browse Source

[fix]修复会员失效、会员生效时地图好友未清除或未显示的问题

zk 6 months ago
parent
commit
eea14dc926

+ 4 - 0
lib/data/repositories/account_repository.dart

@@ -73,6 +73,10 @@ class AccountRepository {
       mineUserInfo.value.lastLocation.value =
           LocationInfo.fromMapLocation(location);
     });
+
+    Future.delayed(Duration(seconds: 10), () {
+      memberStatusInfo.value = null;
+    });
   }
 
   Future<void> loginSendCode(String phoneNum) {

+ 9 - 6
lib/module/main/main_controller.dart

@@ -60,6 +60,7 @@ class MainController extends BaseController {
   StreamSubscription? mineLocationSubscription;
   StreamSubscription? friendsListSubscription;
   StreamSubscription? loginSubscription;
+  StreamSubscription? memberStatusInfoSubscription;
 
   bool isFirstShowMineLocation = true;
   DateTime _lastRefreshTime = DateTime.fromMillisecondsSinceEpoch(0);
@@ -273,12 +274,6 @@ class MainController extends BaseController {
     FriendPage.start();
   }
 
-  @override
-  void onClose() {
-    mineLocationSubscription?.cancel();
-    friendsListSubscription?.cancel();
-    loginSubscription?.cancel();
-  }
 
   void onViewTraceClick(UserInfo userInfo) {
     if (!accountRepository.isLogin.value) {
@@ -388,4 +383,12 @@ class MainController extends BaseController {
       }
     }
   }
+
+  @override
+  void onClose() {
+    mineLocationSubscription?.cancel();
+    friendsListSubscription?.cancel();
+    loginSubscription?.cancel();
+    memberStatusInfoSubscription?.cancel();
+  }
 }