Browse Source

fix(login): 优化会议模板初始化异常处理

- login模块中对获取会议模板的API调用添加try-catch捕获异常
- splash模块新增初始化会议模板方法,确保App配置后加载模板
- splash模块在登录成功后调用初始化会议模板方法
- 添加日志记录初始化会议模板失败的异常信息
- 引入SqfliteApi依赖以支持本地数据库操作
newdev_shunjiawei
lxm 7 months ago
parent
commit
f3926bf4bb
  1. 10
      lib/modules/login/controllers/login_controller.dart
  2. 13
      lib/modules/splash/controllers/splash_controller.dart

10
lib/modules/login/controllers/login_controller.dart

@ -815,9 +815,13 @@ class LoginController extends GetxController {
} }
Future _initMeetingTemplate() async { Future _initMeetingTemplate() async {
var response = await Api.getEchomeetTemplates(); try {
if (response != null) { var response = await Api.getEchomeetTemplates();
await SqfliteApi.initMeetingTemplate(response['templates']); if (response != null) {
await SqfliteApi.initMeetingTemplate(response['templates']);
}
} catch (e) {
Logger().d('initMeetingTemplate 获取失败: $e');
} }
} }
} }

13
lib/modules/splash/controllers/splash_controller.dart

@ -16,6 +16,7 @@ import '../../../data/services/version_update_service.dart';
import '../../../modules/common/widgets/version_update_dialog.dart'; import '../../../modules/common/widgets/version_update_dialog.dart';
import '../../../modules/common/widgets/privacy_policy_dialog.dart'; import '../../../modules/common/widgets/privacy_policy_dialog.dart';
import '../../../core/utils/logger.dart'; import '../../../core/utils/logger.dart';
import '../../../data/services/db/sqflite_api.dart';
class SplashController extends GetxController { class SplashController extends GetxController {
final GetStorage _storage = GetStorage(); final GetStorage _storage = GetStorage();
@ -226,6 +227,7 @@ class SplashController extends GetxController {
if (isLoggedIn) { if (isLoggedIn) {
// 只有登录成功,才获取App配置 // 只有登录成功,才获取App配置
await getAppConfig(); await getAppConfig();
await _initMeetingTemplate();
} else { } else {
await User.clearUserSession(); // await User.clearUserSession(); //
} }
@ -310,6 +312,17 @@ class SplashController extends GetxController {
} }
} }
Future _initMeetingTemplate() async {
try {
var response = await Api.getEchomeetTemplates();
if (response != null) {
await SqfliteApi.initMeetingTemplate(response['templates']);
}
} catch (e) {
Logger.e(_tag, 'initMeetingTemplate 获取失败: $e');
}
}
/// 处理QQ音乐登录回调 /// 处理QQ音乐登录回调
void handleQQMusicLogin() { void handleQQMusicLogin() {
try { try {

Loading…
Cancel
Save