Browse Source

删除账号以及其他反馈修改

liukai 3 days ago
parent
commit
9e544a6c6b

+ 7 - 3
packages/cpt_main/lib/modules/main/main_page.dart

@@ -21,10 +21,14 @@ class MainPage extends HookConsumerWidget {
   static void startInstance({BuildContext? context}) {
     if (context != null) {
       context.router.popUntilRoot();
-      context.router.replace(const MainPageRoute());
+      if (context.router.current.name != 'MainPageRoute') {
+        context.router.replace(const MainPageRoute());
+      }
     } else {
       appRouter.popUntilRoot();
-      appRouter.replace(const MainPageRoute());
+      if (appRouter.current.name != 'MainPageRoute') {
+        appRouter.replace(const MainPageRoute());
+      }
     }
   }
 
@@ -52,7 +56,7 @@ class MainPage extends HookConsumerWidget {
           currentIndex: tabsRouter.activeIndex,
           onTap: tabsRouter.setActiveIndex,
           unselectedLabelStyle: const TextStyle(color: AppColorsTheme.color666666, fontWeight: FontWeight.w400),
-          selectedLabelStyle:  TextStyle(color: context.appColors.textPrimary, fontWeight: FontWeight.w400),
+          selectedLabelStyle: TextStyle(color: context.appColors.textPrimary, fontWeight: FontWeight.w400),
           unselectedFontSize: 12,
           selectedFontSize: 12,
           items: () {

+ 2 - 1
packages/cpt_main/lib/modules/visitor/register/visitor_register_view_model.dart

@@ -6,6 +6,7 @@ import 'package:plugin_platform/engine/toast/toast_engine.dart';
 import 'package:plugin_platform/engine/notify/notify_engine.dart';
 import 'package:plugin_platform/http/dio/dio_cancelable_mixin.dart';
 import 'package:riverpod_annotation/riverpod_annotation.dart';
+import 'package:router/ext/auto_router_extensions.dart';
 import 'package:shared/utils/date_time_utils.dart';
 import 'package:shared/utils/log_utils.dart';
 import 'package:shared/utils/util.dart';
@@ -99,7 +100,7 @@ class VisitorRegisterViewModel extends _$VisitorRegisterViewModel with DioCancel
     if (result.isSuccess) {
       NotifyEngine.showSuccess(S.current.successful);
       //去首页
-      MainPage.startInstance();
+      appRouter.maybePop();
     } else {
       ToastEngine.show(result.errorMsg ?? "UnKnow Error");
     }

+ 2 - 2
packages/cpt_payment/lib/modules/payment/payment_page.dart

@@ -59,8 +59,8 @@ class PaymentPage extends HookConsumerWidget {
                     _buildTopCategory(
                       context,
                       Assets.paymentInfoIcon,
-                      50.0,
-                      50.0,
+                      65.0,
+                      65.0,
                       S.current.info,
                       tabsRouter.activeIndex == 0,
                     ).onTap(

+ 28 - 19
packages/cpt_profile/lib/modules/setting/setting_view_model.dart

@@ -18,7 +18,7 @@ import 'package:widgets/dialog/app_default_dialog.dart';
 part 'setting_view_model.g.dart';
 
 @riverpod
-class SettingViewModel extends _$SettingViewModel with DioCancelableMixin{
+class SettingViewModel extends _$SettingViewModel with DioCancelableMixin {
   late final AuthRepository _authRepository;
 
   @override
@@ -51,42 +51,51 @@ class SettingViewModel extends _$SettingViewModel with DioCancelableMixin{
     ));
   }
 
-  /// 调用接口注册FCM
+  /// 调用接口注退出登录
   void _requestLogout() async {
     final result = await _authRepository.authLogout(cancelToken: cancelToken);
-
     //请求成功去首页
     if (result.isSuccess) {
       //清除用户登录信息
-      UserConfigService.getInstance().handleLogoutParams();
-      // 清除 garagesale category 缓存
-      SPUtil.remove(AppConstant.storageGarageCategoryList);
-      // 清除 servives category 缓存
-      SPUtil.remove(AppConstant.storagePaidServiceCategoryList);
-      SPUtil.remove(AppConstant.storageRepairServiceCategoryList);
-      //清除全部页面栈去登录页面
-      ComponentServiceManager().authService.startAndPopAllLoginPage();
+      _gotoLoginPage();
     } else {
       ToastEngine.show(result.errorMsg ?? "UnKnow Error");
     }
   }
 
+  void _gotoLoginPage() {
+    UserConfigService.getInstance().handleLogoutParams();
+    // 清除 garagesale category 缓存
+    SPUtil.remove(AppConstant.storageGarageCategoryList);
+    // 清除 servives category 缓存
+    SPUtil.remove(AppConstant.storagePaidServiceCategoryList);
+    SPUtil.remove(AppConstant.storageRepairServiceCategoryList);
+    //清除全部页面栈去登录页面
+    ComponentServiceManager().authService.startAndPopAllLoginPage();
+  }
+
   //删除账号的提示弹窗
   void doDeleteAccount() {
     DialogEngine.show(widget: AccountDeactivationDialog(
       confirmAction: () {
         //请求接口删除账号
-
-        //清除用户登录信息
-        UserConfigService.getInstance().handleLogoutParams();
-        //清除全部页面栈去登录页面
-        ComponentServiceManager().authService.startAndPopAllLoginPage();
+        _requestAccountDeactivate();
       },
     ));
   }
 
-  //评价我们,跳转到各平台的应用商城
-  void rateUs() {
-
+  //请求删除账号
+  void _requestAccountDeactivate() async {
+    final result = await _authRepository.accountDeactivate(cancelToken: cancelToken);
+    //请求成功去首页
+    if (result.isSuccess) {
+      //清除用户登录信息
+      _gotoLoginPage();
+    } else {
+      ToastEngine.show(result.errorMsg ?? "UnKnow Error");
+    }
   }
+
+  //评价我们,跳转到各平台的应用商城
+  void rateUs() {}
 }

+ 1 - 1
packages/cs_domain/lib/constants/api_constants.dart

@@ -31,7 +31,7 @@ class ApiConstants {
   static const apiUserLogout = "/api/v1/user/auth/logout";
 
   //用户注销
-  static const apiAuthDeactivate = "/index.php/api/v1/hotel/deactivate";
+  static const apiAuthDeactivate = "/api/v1/user/auth/deactivation";
 
   //注册Token
   static const apiFCMToken = "/api/v1/user/auth/fcm-token";

+ 19 - 0
packages/cs_domain/lib/repository/auth_repository.dart

@@ -254,4 +254,23 @@ class AuthRepository {
     }
     return result.convert();
   }
+
+  /// 删除账号
+  Future<HttpResult> accountDeactivate({
+    CancelToken? cancelToken,
+  }) async {
+
+    final result = await dioEngine.requestNetResult(
+      ApiConstants.apiAuthDeactivate,
+      method: HttpMethod.POST,
+      isShowLoadingDialog: true,
+      networkDebounce: true,
+      cancelToken: cancelToken,
+    );
+
+    if (result.isSuccess) {
+      return result.convert();
+    }
+    return result.convert();
+  }
 }

+ 2 - 2
packages/cs_resources/lib/generated/intl/messages_en.dart

@@ -70,9 +70,9 @@ class MessageLookup extends MessageLookupByLibrary {
             "Kindly attach a copy of owner\'s authorisation letter"),
         "access_date": MessageLookupByLibrary.simpleMessage("Access Date"),
         "account_deactivate_alert": MessageLookupByLibrary.simpleMessage(
-            "Are you sure you want to deactivate your account? You will not be able to login into the app once you proceed with the request."),
+            "This action will permanently delete your account and all associated data. This cannot be undone. Are you sure you want to proceed?"),
         "account_deactivation":
-            MessageLookupByLibrary.simpleMessage("Account Deactivation"),
+            MessageLookupByLibrary.simpleMessage("Delete Account"),
         "active": MessageLookupByLibrary.simpleMessage("ACTIVE"),
         "add": MessageLookupByLibrary.simpleMessage("Add"),
         "add_card": MessageLookupByLibrary.simpleMessage("Add Card"),

+ 4 - 4
packages/cs_resources/lib/generated/l10n.dart

@@ -760,10 +760,10 @@ class S {
     );
   }
 
-  /// `Account Deactivation`
+  /// `Delete Account`
   String get account_deactivation {
     return Intl.message(
-      'Account Deactivation',
+      'Delete Account',
       name: 'account_deactivation',
       desc: '',
       args: [],
@@ -910,10 +910,10 @@ class S {
     );
   }
 
-  /// `Are you sure you want to deactivate your account? You will not be able to login into the app once you proceed with the request.`
+  /// `This action will permanently delete your account and all associated data. This cannot be undone. Are you sure you want to proceed?`
   String get account_deactivate_alert {
     return Intl.message(
-      'Are you sure you want to deactivate your account? You will not be able to login into the app once you proceed with the request.',
+      'This action will permanently delete your account and all associated data. This cannot be undone. Are you sure you want to proceed?',
       name: 'account_deactivate_alert',
       desc: '',
       args: [],

+ 2 - 2
packages/cs_resources/lib/l10n/intl_en.arb

@@ -71,7 +71,7 @@
   "change_mobile_phone": "Change Mobile Phone",
   "privacy_policy": "Privacy Policy",
   "terms_conditions": "Terms & Conditions",
-  "account_deactivation": "Account Deactivation",
+  "account_deactivation": "Delete Account",
   "rate_us": "Rate Us",
   "version_no": "Version No.",
   "logout": "Logout",
@@ -86,7 +86,7 @@
   "no": "No",
   "alert": "Alert",
   "logout_alert": "Are you sure you want to logout?",
-  "account_deactivate_alert": "Are you sure you want to deactivate your account? You will not be able to login into the app once you proceed with the request.",
+  "account_deactivate_alert": "This action will permanently delete your account and all associated data. This cannot be undone. Are you sure you want to proceed?",
   "home": "Home",
   "visitor": "Visitor",
   "feedback": "FeedBack",