116 lines
4.3 KiB
Dart
Executable File

import 'package:get/get.dart';
import 'package:star_lock/common/XSConstantMacro/XSConstantMacro.dart';
import 'package:star_lock/main/lockDetail/lockSet/lockSet/lockSetInfo_entity.dart';
import 'package:star_lock/network/api_repository.dart';
import 'package:star_lock/tools/baseGetXController.dart';
import 'package:star_lock/versionUndate/versionUndate_entity.dart';
import 'catEyeSet_state.dart';
class CatEyeSetLogic extends BaseGetXController {
final CatEyeSetState state = CatEyeSetState();
//设置自动亮屏
Future<void> updateAutoLightScreenConfig() async {
final VersionUndateEntity entity = await ApiRepository.to.updateAutoLightScreenConfig(
lockId: state.lockSetInfoData.value.lockId!,
autoLightScreen: state.isAutoBright.value == true ? 1 : 0,
);
if (entity.errorCode!.codeIsSuccessful) {
showToast(state.settingSuccess);
}
}
//设置自动亮屏
Future<void> updateLightScreenTimeConfig() async {
final VersionUndateEntity entity = await ApiRepository.to.updateLightScreenTimeConfig(
lockId: state.lockSetInfoData.value.lockId!,
autoLightScreenTime:
int.parse(state.selectBrightDuration.value.replaceAll(''.tr, '')),
);
if (entity.errorCode!.codeIsSuccessful) {
showToast(state.settingSuccess);
}
}
//设置逗留警告
Future<void> updateStayWarnConfig() async {
final VersionUndateEntity entity = await ApiRepository.to.updateStayWarnConfig(
lockId: state.lockSetInfoData.value.lockId!,
stayWarn: state.isStayWarning.value == true ? 1 : 0,
);
if (entity.errorCode!.codeIsSuccessful) {
showToast(state.settingSuccess);
}
}
//设置异常警告
Future<void> updateAbnormalWarnConfig() async {
final VersionUndateEntity entity = await ApiRepository.to.updateAbnormalWarnConfig(
lockId: state.lockSetInfoData.value.lockId!,
abnormalWarn: state.isExceptionWarning.value == true ? 1 : 0,
);
if (entity.errorCode!.codeIsSuccessful) {
showToast(state.settingSuccess);
}
}
// 获取锁设置信息
Future<LockSetInfoEntity> getLockSettingInfoData() async {
final LockSetInfoEntity entity = await ApiRepository.to.getLockSettingInfoData(
lockId: state.lockSetInfoData.value.lockId.toString(),
);
if (entity.errorCode!.codeIsSuccessful) {
state.lockSetInfoData.value = entity.data!;
state.selectBrightDuration.value = '${state.lockSetInfoData.value.lockSettingInfo!.autoLightScreenTime}${''.tr}'; //选中的亮屏持续时间
if (state.lockSetInfoData.value.lockSettingInfo!.autoLightScreen == 0) {
state.isAutoBright.value = false;
} else {
state.isAutoBright.value = true;
}
//自动亮屏
if (state.lockSetInfoData.value.lockSettingInfo!.stayWarn == 0) {
state.isStayWarning.value = false;
} else {
state.isStayWarning.value = true;
}
//逗留警告
if (state.lockSetInfoData.value.lockSettingInfo!.abnormalWarn == 0) {
state.isExceptionWarning.value = false;
} else {
state.isExceptionWarning.value = true;
}
//异常警告
state.selectCatEyeWorkMode.value = ''; //猫眼工作模式
// selectCatEyeWorkMode.value = catEyeConfigData.value.catEyeMode!;
if (state
.lockSetInfoData.value.lockSettingInfo!.catEyeConfig!.isNotEmpty) {
if (state.lockSetInfoData.value.lockSettingInfo!.catEyeConfig![0]
.catEyeMode ==
XSConstantMacro.catEyeWorkModePowerSaving) {
state.selectCatEyeWorkMode.value = '省电模式'.tr;
} else if (state.lockSetInfoData.value.lockSettingInfo!.catEyeConfig![0]
.catEyeMode ==
XSConstantMacro.catEyeWorkModeStayCapture) {
state.selectCatEyeWorkMode.value = '逗留抓拍模式'.tr;
} else if (state.lockSetInfoData.value.lockSettingInfo!.catEyeConfig![0]
.catEyeMode ==
XSConstantMacro.catEyeWorkModeRealTimeMonitoring) {
state.selectCatEyeWorkMode.value = '实时监控模式'.tr;
} else if (state.lockSetInfoData.value.lockSettingInfo!.catEyeConfig![0]
.catEyeMode ==
XSConstantMacro.catEyeWorkModeCustom) {
state.selectCatEyeWorkMode.value = '自定义模式'.tr;
}
}
}
return entity;
}
}