getCloudControlConfig method
dynamic
getCloudControlConfig()
Implementation
getCloudControlConfig() async {
try {
final schoolId = getSchoolInfoObs().getSchoolInfo().schoolId;
if(schoolId == 0){
TCICLog.error('schoolId is 0', actionModule: ActionModule.tcicController.name, actionName: ActionName.getCloudControlConfig.name);
return null;
}
final cloudControlConfigJson = sharedPreferences.getString("cloudControlConfig-$schoolId");
if(cloudControlConfigJson != null){
final localCloudControlConfigMap = jsonDecode(cloudControlConfigJson);
TCICLog.info('getCloudControlConfig from local: $localCloudControlConfigMap', actionModule: ActionModule.tcicController.name, actionName: ActionName.getCloudControlConfig.name);
mergeLocalCloudControlConfig(localCloudControlConfigMap);
}
final cloudControlConfig = await networkService.getCloudControlConfig(schoolId);
if(cloudControlConfig != null){
// 存本地,下次再使用时直接从本地读取
sharedPreferences.setString("cloudControlConfig-$schoolId", jsonEncode(cloudControlConfig));
TCICLog.info('getCloudControlConfig success: $cloudControlConfig', actionModule: ActionModule.tcicController.name, actionName: ActionName.getCloudControlConfig.name);
} else {
}
} catch (e) {
TCICLog.error('getCloudControlConfig failed: $e', actionModule: ActionModule.tcicController.name, actionName: ActionName.getCloudControlConfig.name);
return null;
}
}