Browse Source

fix 0016472: 【APP】账号被抢登录后,显示抢登录的提示,杀掉app进程后再打开,会自动登录并显示此提示,应该停留在登录页面

Melon 1 year ago
parent
commit
2fb6fe9715

+ 5 - 2
lib/architecture/utils/json_rpc_ex_interceptor.dart

@@ -58,13 +58,16 @@ class JsonRpcExInterceptor extends JsonRpcInterceptor {
   }
 
   Future<void> _alertRelogin(int code) async {
+    // 先自动登出账号,防止未点确认就中止进程
+    final result = await Get.find<IAccountManager>().logout();
+    logger.i('JsonRpcExInterceptor logout:$result');
+
     final message = errorCodes["errorCode$code"]!;
     await DialogConfirm.show(
       message: message,
       disableCancel: true,
     );
-    final result = await Get.find<IAccountManager>().logout();
-    logger.i('JsonRpcExInterceptor logout:$result');
+
     Get.offAllNamed("/login");
   }
 

+ 1 - 1
lib/managers/account.dart

@@ -33,6 +33,7 @@ class AccountManager implements IAccountManager {
 
   @override
   Future<bool> logout() async {
+    await Store.user.handleLogOut();
     try {
       await rpc.login.loginOutAsync(
         TokenRequest(token: Store.user.token),
@@ -40,7 +41,6 @@ class AccountManager implements IAccountManager {
     } catch (e) {
       logger.e("AccountManager call logout error", e);
     }
-    await Store.user.handleLogOut();
     return true;
   }
 

+ 0 - 22
lib/pages/medical/widgets/heart_rate.dart

@@ -473,28 +473,6 @@ class _HeartRateState extends State<HeartRate> {
     setState(() {});
   }
 
-  void debugTest() async {
-    logger.i('心率更新接收结果 测试');
-    // print(ecgPoint.toString());
-    // _heart = e.toString();
-    _assess = "ss";
-    _heart = "90";
-    medicalController.diagnosisDataValue['Heart']?['HEART'] = "90";
-    medicalController.diagnosisDataValue['Heart']?['ASSESS'] =
-        dataConvertManager.heartRateConversion(int.parse(heartRate));
-
-    await setEcgData();
-
-    /// 判断数据是否完整
-    // if (ecgPoint.isNotEmpty && ecgPoint.length < 125 * 30) {
-    // }
-    print("数据不完整 ⭐⭐⭐⭐⭐⭐⭐");
-    showResetButton = true;
-    medicalController.saveCachedRecord();
-    print(medicalController.diagnosisDataValue);
-    setState(() {});
-  }
-
   /// 设置最终数据
   Future<void> setEcgData() async {
     EcgViewController ecgViewController = Get.find<EcgViewController>();