Przeglądaj źródła

Merge branch 'v1.0.0' of http://git.atmob.com:28999/Atmob-Flutter/AiKeyboard2025 into v1.0.0

hezihao 7 miesięcy temu
rodzic
commit
9deb17fa22

+ 5 - 3
lib/data/consts/constants.dart

@@ -1,8 +1,5 @@
-import 'package:flutter_screenutil/flutter_screenutil.dart';
 
 
-import '../../utils/mmkv_util.dart';
-
 class Constants {
   Constants._();
 
@@ -21,6 +18,9 @@ class Constants {
   static const String _prodBaseUrl = "https://project-api.atmob.com";
 
 
+  static final String _keyIsLogin = 'keyIsLogin';
+
+  static final String _keyIsMember = 'keyIsMember';
 
   static String baseUrl = getBaseUrl();
 
@@ -38,6 +38,8 @@ class Constants {
   static const String appChannelId = "app_channel_id";
   static const String appTgPlatformId = "app_tg_platform_id";
 
+  static const String keyIsLogin = 'keyIsLogin';
+  static const String keyIsMember = 'keyIsMember';
 
 }
 

+ 10 - 12
lib/data/repository/account_repository.dart

@@ -17,6 +17,7 @@ import '../api/request/login_request.dart';
 import '../api/request/send_code_request.dart';
 import '../api/response/login_response.dart';
 import '../api/response/user_info_response.dart';
+import '../consts/constants.dart';
 import '../consts/error_code.dart';
 
 @lazySingleton
@@ -26,15 +27,16 @@ class AccountRepository {
   static final String keyAccountLoginPhoneNum = 'key_account_login_phone_num';
   static final String keyAccountLoginToken = 'key_account_login_token';
 
+
   final Rxn<UserInfoResponse> _userInfo = Rxn<UserInfoResponse>();
 
   Rxn<UserInfoResponse> get userInfo => _userInfo;
 
   RxnString loginPhoneNum = RxnString();
   RxBool isLogin = RxBool(false);
-  bool isLogin1 = true;
+
   Rxn<MemberInfo> memberStatusInfo = Rxn<MemberInfo>();
-  RxBool isMember = RxBool(false);
+
 
   int? _lastRequestCodeTime;
   int _errorCodeTimes = 0;
@@ -49,7 +51,7 @@ class AccountRepository {
     isLogin.bindStream(
       loginPhoneNum.map((value) {
         final result = value?.isNotEmpty == true;
-        print("loginPhoneNum 变化了:$value -> isLogin: $result");
+        KVUtil.putBool(Constants.keyIsLogin, result);
         return result;
       }),
     );
@@ -57,12 +59,6 @@ class AccountRepository {
     loginPhoneNum.value = KVUtil.getString(keyAccountLoginPhoneNum, null);
     refreshUserInfo();
   }
-  bool isLoginTest(){
-    isLogin1 =!isLogin1;
-    print("isLogin1.value $isLogin1 $hashCode");
-
-    return isLogin1;
-  }
 
   // 检查是否在 60 秒内重复请求
   Future<void> loginSendCode(String phoneNum) {
@@ -131,8 +127,10 @@ class AccountRepository {
         .then((response) {
           _userInfo.value = response;
           memberStatusInfo.value = response.memberInfo;
-          isMember.value = response.memberInfo?.isMember == true;
-          isLogin1=true;
+          if (response.memberInfo != null) {
+            KVUtil.putBool(Constants.keyIsMember, response.memberInfo!.isMember);
+          }
+
           return response;
         });
   }
@@ -173,7 +171,7 @@ class AccountRepository {
     KVUtil.putString(keyAccountLoginPhoneNum, null);
     KVUtil.putString(keyAccountLoginToken, null);
     memberStatusInfo.value = null;
-    isMember.value = false;
+    KVUtil.putBool(Constants.keyIsMember, false);
     loginPhoneNum.value = null;
   }
 

+ 2 - 2
lib/dialog/content/character_add_tab_controller.dart

@@ -84,7 +84,7 @@ class CharacterAddTabController extends BaseController
     if (index >= characterGroupList.length) {
       return;
     }
-    currentTabBarIndex.value = index;
+
     pageController.animateToPage(
       index,
       duration: const Duration(milliseconds: 300),
@@ -96,7 +96,7 @@ class CharacterAddTabController extends BaseController
     if (index >= characterGroupList.length) {
       return;
     }
-
+    currentTabBarIndex.value = index;
     currentCharacterGroupInfo.value = characterGroupList[index];
     tabController.value.animateTo(
       index,

+ 1 - 1
lib/dialog/content/character_tab_group_content_view.dart

@@ -97,7 +97,7 @@ class CharacterTabGroupContentView
             borderRadius: BorderRadius.circular(12.r),
           ),
         ),
-        height: 88.h,
+
         child: Row(
           children: [
             _buildAvatar(imageUrl: characterInfo.imageUrl),

+ 1 - 0
lib/module/character_custom/character_custom_page.dart

@@ -371,6 +371,7 @@ class CharacterCustomPage extends BasePage<CharacterCustomController> {
           ),
           Visibility(
             visible: isCustomEnabled,
+            replacement: SizedBox(width: 115.w, height: 36.h),
             child: GestureDetector(
               onTap: onCustomClick,
               child: Container(

+ 0 - 1
lib/module/mine/mine_controller.dart

@@ -57,7 +57,6 @@ class MineController extends BaseController {
   }
   bool isTest = false;
   clickOnlineCustomerService() {
-    accountRepository.isLoginTest();
     debugPrint('clickOnlineCustomerService');
     isTest?
     accountRepository

+ 31 - 24
lib/plugins/keyboard_method_handler.dart

@@ -1,30 +1,29 @@
 import 'dart:convert';
 
 import 'package:flutter/services.dart';
-import 'package:keyboard/data/repository/account_repository.dart';
-import 'package:keyboard/data/repository/characters_repository.dart';
+import 'package:get/get.dart';
+import 'package:injectable/injectable.dart';
 import 'package:keyboard/data/repository/chat_repository.dart';
 import 'package:keyboard/data/repository/keyboard_repository.dart';
 import 'package:keyboard/utils/atmob_log.dart';
-import 'package:get/get.dart';
 
 import '../data/api/response/chat_prologue_response.dart';
 import '../data/api/response/chat_super_speak_response.dart';
 import '../data/api/response/keyboard_list_response.dart';
-import '../di/get_it.dart';
+import '../data/consts/constants.dart';
 import '../utils/http_handler.dart';
 import '../utils/mmkv_util.dart';
 import '../utils/toast_util.dart';
-
+@injectable
 class KeyboardMethodHandler {
   final tag = "KeyboardMethodHandler";
 
   // 用处存储选中的键盘id
   static const String keyboardSelect = 'keyboard_select';
 
-  bool get isLogin => AccountRepository.getInstance().isLoginTest();
+  bool get isLogin => KVUtil.getBool(Constants.keyIsLogin, false);
 
-  bool get isMember => AccountRepository.getInstance().isMember.value;
+  bool get isMember => KVUtil.getBool(Constants.keyIsMember, false);
   late KeyboardListResponse keyboardListResponse;
 
   KeyboardMethodHandler();
@@ -62,7 +61,9 @@ class KeyboardMethodHandler {
   Future<String> _handleGetKeyboardList(MethodCall call) async {
     String? type = call.arguments?['type'] as String?;
 
-    final keyboardList = await KeyboardRepository.getInstance().getKeyboardList(type: type);
+    final keyboardList = await KeyboardRepository.getInstance().getKeyboardList(
+      type: type,
+    );
     final selectedKeyboardJson = KVUtil.getString(keyboardSelect, null);
     if (selectedKeyboardJson != null) {
       try {
@@ -90,7 +91,8 @@ class KeyboardMethodHandler {
     final String keyboardId = call.arguments['keyboardId'];
 
     if (keyboardListResponse.keyboardInfos.isEmpty) {
-      keyboardListResponse = await KeyboardRepository.getInstance().getKeyboardList();
+      keyboardListResponse =
+          await KeyboardRepository.getInstance().getKeyboardList();
     }
     final selectedKeyboard = keyboardListResponse.keyboardInfos
         .firstWhereOrNull((element) => element.id == keyboardId);
@@ -115,15 +117,15 @@ class KeyboardMethodHandler {
 
   Future<String> _handleGetCharacterList(MethodCall call) async {
     final String keyboardId = call.arguments['keyboardId'];
-    final characterList = await KeyboardRepository.getInstance().getKeyboardCharacterList(
-      keyboardId: keyboardId,
-    );
+    final characterList = await KeyboardRepository.getInstance()
+        .getKeyboardCharacterList(keyboardId: keyboardId);
     return jsonEncode(characterList.toJson());
   }
 
   //   获取开场白列表
   Future<String> _handleGetPrologueList(MethodCall call) async {
-    final prologueList = await KeyboardRepository.getInstance().getPrologueList();
+    final prologueList =
+        await KeyboardRepository.getInstance().getPrologueList();
     return jsonEncode(prologueList.toJson());
   }
 
@@ -133,11 +135,12 @@ class KeyboardMethodHandler {
     final String keyboardId = call.arguments['keyboardId'];
     final String characterId = call.arguments['characterId'];
     try {
-      final chatSuperReplyResponse = await ChatRepository.getInstance().chatSuperReply(
-        content: content,
-        keyboardId: keyboardId,
-        characterId: characterId,
-      );
+      final chatSuperReplyResponse = await ChatRepository.getInstance()
+          .chatSuperReply(
+            content: content,
+            keyboardId: keyboardId,
+            characterId: characterId,
+          );
 
       return jsonEncode(chatSuperReplyResponse.toJson());
     } catch (error) {
@@ -158,11 +161,12 @@ class KeyboardMethodHandler {
     final String characterId = call.arguments['characterId'];
     final ChatSuperSpeakResponse chatSuperSpeakResponse;
     try {
-      chatSuperSpeakResponse = await ChatRepository.getInstance().chatSuperSpeak(
-        content: content,
-        keyboardId: keyboardId,
-        characterId: characterId,
-      );
+      chatSuperSpeakResponse = await ChatRepository.getInstance()
+          .chatSuperSpeak(
+            content: content,
+            keyboardId: keyboardId,
+            characterId: characterId,
+          );
       return jsonEncode(chatSuperSpeakResponse.toJson());
     } catch (error) {
       if (error is ServerErrorException) {
@@ -180,7 +184,9 @@ class KeyboardMethodHandler {
     final String name = call.arguments['name'];
     final ChatPrologueResponse chatPrologueResponse;
     try {
-      chatPrologueResponse = await ChatRepository.getInstance().chatPrologue(name: name);
+      chatPrologueResponse = await ChatRepository.getInstance().chatPrologue(
+        name: name,
+      );
       return jsonEncode(chatPrologueResponse.toJson());
     } catch (error) {
       if (error is ServerErrorException) {
@@ -220,4 +226,5 @@ class KeyboardMethodHandler {
       return '{}';
     }
   }
+
 }