Daisy 28554dd0e4 1,新增设置面容开锁接口对接
2,新增设置面容感应距离接口对接
3,新增设置面容防误开接口对接
4,新增设置面容自动亮屏接口对接
2024-04-08 11:01:24 +08:00

74 lines
2.5 KiB
Dart

import 'package:star_lock/main/lockDetail/lockSet/faceUnlock/faceUnlock_state.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';
class FaceUnlockLogic extends BaseGetXController {
final FaceUnlockState state = FaceUnlockState();
// 获取锁设置信息
Future<LockSetInfoEntity> getLockSettingInfoData() async {
LockSetInfoEntity entity = await ApiRepository.to.getLockSettingInfoData(
lockId: state.lockSetInfoData.value.lockId.toString(),
);
if (entity.errorCode!.codeIsSuccessful) {
state.lockSetInfoData.value = entity.data!;
state.faceOn.value =
entity.data!.lockSettingInfo!.faceSwitch == 0 ? false : true;
state.autoBright.value =
entity.data!.lockSettingInfo!.faceAutoLightScreen == 0 ? false : true;
state.senseDistance.value =
entity.data!.lockSettingInfo!.faceInductionDistance! == 0
? '远距离'
: '近距离';
state.antiMisoperation.value =
entity.data!.lockSettingInfo!.faceAntiMistakeOpen!;
}
return entity;
}
//设置面容开锁开关
void updateFaceSwitch() async {
var entity = await ApiRepository.to.updateFaceSwitch(
lockId: state.lockSetInfoData.value.lockId ?? 0,
faceSwitch: state.faceOn.value == false ? 0 : 1,
);
if (entity.errorCode!.codeIsSuccessful) {
showToast('设置成功');
}
}
//设置自动亮屏开关
void updateFaceConfig() async {
var entity = await ApiRepository.to.updateFaceAutoLightScreen(
lockId: state.lockSetInfoData.value.lockId ?? 0,
faceAutoLightScreen: state.autoBright.value == false ? 0 : 1,
);
if (entity.errorCode!.codeIsSuccessful) {
showToast('设置成功');
}
}
//设置面容感应距离
void updateFaceSenseDistance() async {
var entity = await ApiRepository.to.updateFaceSenseDistance(
lockId: state.lockSetInfoData.value.lockId ?? 0,
faceInductionDistance: state.senseDistance.value == '远距离' ? 0 : 1,
);
if (entity.errorCode!.codeIsSuccessful) {
showToast('设置成功');
}
}
//设置面容防误开
void updateFacePreventMisrun() async {
var entity = await ApiRepository.to.updateFacePreventMisrun(
lockId: state.lockSetInfoData.value.lockId ?? 0,
faceAntiMistakeOpen: state.antiMisoperation.value,
);
if (entity.errorCode!.codeIsSuccessful) {
showToast('设置成功');
}
}
}