2023-07-10 17:50:31 +08:00
|
|
|
import 'dart:ui';
|
|
|
|
|
import 'package:get/get.dart';
|
2024-08-29 18:13:00 +08:00
|
|
|
import 'package:star_lock/app_settings/app_settings.dart';
|
2024-08-27 11:08:44 +08:00
|
|
|
import 'package:star_lock/tools/baseGetXController.dart';
|
|
|
|
|
import '../../main/lockDetail/passwordKey/passwordKeyList/passwordKeyListEntity.dart';
|
|
|
|
|
import '../../network/api_repository.dart';
|
|
|
|
|
import '../../tools/eventBusEventManage.dart';
|
2024-12-19 14:30:08 +08:00
|
|
|
import '../../tools/store_service.dart';
|
|
|
|
|
import '../../translations/app_dept.dart';
|
|
|
|
|
import '../../translations/current_locale_tool.dart';
|
2023-07-10 17:50:31 +08:00
|
|
|
import 'mineMultiLanguage_state.dart';
|
|
|
|
|
|
|
|
|
|
class MineMultiLanguageLogic extends GetxController {
|
|
|
|
|
final MineMultiLanguageState state = MineMultiLanguageState();
|
|
|
|
|
|
2024-08-29 18:13:00 +08:00
|
|
|
//更新个人信息
|
|
|
|
|
Future<void> updateUserLangInfo(Locale l) async {
|
2024-12-24 14:11:54 +08:00
|
|
|
AppLog.log('selet: ${l.toString()}}');
|
2024-12-19 14:30:08 +08:00
|
|
|
String lang = l.toString();
|
|
|
|
|
if (state.currentLanguageType.value == LanguageType.system) {
|
|
|
|
|
lang = '';
|
|
|
|
|
}
|
2024-12-24 14:11:54 +08:00
|
|
|
String currentLanguage = StoreService.to.getLanguageCode()!;
|
|
|
|
|
await StoreService.to.saveLanguageCode(lang);
|
2024-11-21 18:11:11 +08:00
|
|
|
final PasswordKeyListEntity entity =
|
|
|
|
|
await ApiRepository.to.updateUserLangInfo(lang: lang);
|
2024-08-27 11:08:44 +08:00
|
|
|
if (entity.errorCode!.codeIsSuccessful) {
|
2024-12-24 14:11:54 +08:00
|
|
|
await Get.updateLocale(l);
|
|
|
|
|
AppLog.log('saveLocale: ${l.toString()}}');
|
2024-08-29 18:13:00 +08:00
|
|
|
eventBus.fire(ChangeLanguageBlockLastLanguageEvent());
|
2024-12-24 14:11:54 +08:00
|
|
|
} else {
|
|
|
|
|
await StoreService.to.saveLanguageCode(currentLanguage);
|
2024-08-27 11:08:44 +08:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2024-12-24 14:11:54 +08:00
|
|
|
// Future<void> changeLanguage(Locale l) async {
|
|
|
|
|
// await StoreService.to.saveLanguageCode(l.toString());
|
|
|
|
|
// await Get.updateLocale(l);
|
|
|
|
|
// AppLog.log('saveLocale: ${l.toString()}}');
|
|
|
|
|
// }
|
2024-11-21 18:11:11 +08:00
|
|
|
}
|