38 lines
1.2 KiB
Dart
38 lines
1.2 KiB
Dart
import 'package:get/get.dart';
|
|
import 'package:kaer_with_panels/app/common/app_run_data.dart';
|
|
import 'package:kaer_with_panels/app/common/app_config.dart';
|
|
import 'package:kaer_with_panels/app/widgets/dialogs/hi_dialog.dart';
|
|
import 'package:kaer_with_panels/app/routes/app_pages.dart';
|
|
import 'package:kaer_with_panels/app/utils/kr_common_util.dart';
|
|
import 'package:kaer_with_panels/app/services/kr_site_config_service.dart';
|
|
|
|
Future<bool> ensureAccountExists() async {
|
|
final app = KRAppRunData.getInstance();
|
|
final account = app.kr_account.value;
|
|
final isLoggedIn = app.kr_isLogin.value;
|
|
final config = AppConfig.getInstance();
|
|
|
|
if (account == null ||
|
|
account.isEmpty ||
|
|
!isLoggedIn
|
|
) {
|
|
await HIDialog.show(
|
|
message: '未检测到账号信息,请重试初始化',
|
|
confirmText: '重试',
|
|
preventBackDismiss: true,
|
|
onConfirm: () {
|
|
Get.offAllNamed(Routes.KR_SPLASH);
|
|
},
|
|
);
|
|
return false;
|
|
}
|
|
|
|
var crispId = config.kr_website_id;
|
|
var deviceLimitText = config.device_limit;
|
|
var deviceLimit = int.tryParse(deviceLimitText) ?? 0;
|
|
if ((crispId.isEmpty || crispId == '0') || deviceLimit == 0) {
|
|
KRSiteConfigService().initialize();
|
|
}
|
|
return true;
|
|
}
|