From eb697d3512ea98feb098f4aa8d0f531ce0c3c425 Mon Sep 17 00:00:00 2001 From: JoGeumJu Date: Thu, 4 Apr 2024 18:15:13 +0900 Subject: [PATCH] =?UTF-8?q?fix.=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=EA=B4=80?= =?UTF-8?q?=EB=A0=A8=20=EC=97=90=EB=9F=AC=20=EC=88=98=EC=A0=95=20#77?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/controllers/user_controller.dart | 3 ++- lib/models/login_model.dart | 32 +++++++++++++++++----------- pubspec.yaml | 2 +- 3 files changed, 22 insertions(+), 15 deletions(-) diff --git a/lib/controllers/user_controller.dart b/lib/controllers/user_controller.dart index e992c02..bb284a1 100644 --- a/lib/controllers/user_controller.dart +++ b/lib/controllers/user_controller.dart @@ -5,6 +5,7 @@ import 'package:image_picker/image_picker.dart'; import 'package:meonghae_front/api/dio.dart'; import 'package:meonghae_front/config/app_routes.dart'; import 'package:meonghae_front/login/token.dart'; +import 'package:meonghae_front/models/login_model.dart'; import 'package:meonghae_front/models/user_info_model.dart'; import 'package:dio/dio.dart' as dio; import 'package:meonghae_front/widgets/common/custom_warning_modal_widget.dart'; @@ -182,7 +183,7 @@ class UserController extends GetxController { () => SendAPI.put( url: "/user-service/withdrawal", successFunc: (data) { - Get.offAllNamed(AppRoutes.login); + LoginModel.logout(); SnackBarWidget.show(SnackBarType.check, '회원탈퇴에 성공했어요'); }, errorMsg: "회원탈퇴에 실패하였어요")); diff --git a/lib/models/login_model.dart b/lib/models/login_model.dart index 97eed37..f996951 100644 --- a/lib/models/login_model.dart +++ b/lib/models/login_model.dart @@ -64,19 +64,25 @@ class LoginModel { .getToken(vapidKey: dotenv.env['FCM_VAPID_KEY']); try { user = await UserApi.instance.me(); - final response = await dio.get('/user-service/login', - queryParameters: {'email': user!.kakaoAccount!.email}, - options: Options( - headers: {'androidId': mobileId, 'FCMToken': fcmToken})); - if (response.data['responseCode'] == "200_OK") { - await saveAccessToken(response.headers['authorization']![0]); - await saveRefreshToken(response.headers['refreshtoken']![0]); - await Get.offNamed(AppRoutes.introVideo); - } else if (response.data['responseCode'] == "201_CREATED") { - Get.find().setRegisterEmail(response.data['email']); - await Get.offNamed(AppRoutes.select); + if (user!.kakaoAccount?.email == "" || + user!.kakaoAccount?.email == null) { + SnackBarWidget.show( + SnackBarType.error, "이메일 없다는디요: ${user!.kakaoAccount?.email}"); } else { - SnackBarWidget(SnackBarType.error, '허가되지 않은 게정이에요'); + final response = await dio.get('/user-service/login', + queryParameters: {'email': user!.kakaoAccount!.email}, + options: Options( + headers: {'androidId': mobileId, 'FCMToken': fcmToken})); + if (response.data['responseCode'] == "200_OK") { + await saveAccessToken(response.headers['authorization']![0]); + await saveRefreshToken(response.headers['refreshtoken']![0]); + await Get.offNamed(AppRoutes.introVideo); + } else if (response.data['responseCode'] == "201_CREATED") { + Get.find().setRegisterEmail(response.data['email']); + await Get.offNamed(AppRoutes.select); + } else { + SnackBarWidget(SnackBarType.error, '허가되지 않은 게정이에요'); + } } } on DioException catch (error) { if (error.response?.data['errorCode'] == 'Already Withdrawal') { @@ -146,7 +152,7 @@ class LoginModel { dio.close(); } } else { - Get.offNamed(AppRoutes.login); + logout(); } } } diff --git a/pubspec.yaml b/pubspec.yaml index 92ccef1..63dc6be 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -2,7 +2,7 @@ name: meonghae_front description: 애완동물 스케줄 관리를 위한 어플리케이션 publish_to: -version: 2.0.3+10 +version: 2.0.4+11 environment: sdk: ">=3.0.0-322.0.dev <4.0.0"