84 lines
3.1 KiB
Dart
Executable File
84 lines
3.1 KiB
Dart
Executable File
|
|
import 'package:get/get.dart';
|
|
import 'package:star_lock/main/lockDetail/lockSet/catEyeSet/videoSlot/videoSlot_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';
|
|
import 'package:star_lock/tools/dateTool.dart';
|
|
import 'package:star_lock/versionUndate/versionUndate_entity.dart';
|
|
|
|
class VideoSlotLogic extends BaseGetXController {
|
|
final VideoSlotState state = VideoSlotState();
|
|
|
|
// 获取锁设置信息
|
|
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!;
|
|
if (entity.data!.lockSettingInfo!.catEyeConfig!.isNotEmpty) {
|
|
state.catEyeConfigData.value =
|
|
entity.data!.lockSettingInfo!.catEyeConfig![0];
|
|
|
|
if (state.catEyeConfigData.value.catEyeModeConfig != null) {
|
|
if (state.catEyeConfigData.value.catEyeModeConfig!.recordMode == 1) {
|
|
state.isCustom.value = true;
|
|
} else {
|
|
state.isCustom.value = false;
|
|
}
|
|
|
|
state.startDate.value = DateTool().dateToHNString(state
|
|
.catEyeConfigData.value.catEyeModeConfig!.recordStartTime!
|
|
.toString());
|
|
state.endDate.value = DateTool().dateToHNString(state
|
|
.catEyeConfigData.value.catEyeModeConfig!.recordEndTime!
|
|
.toString());
|
|
}
|
|
}
|
|
}
|
|
return entity;
|
|
}
|
|
|
|
//设置猫眼工作模式
|
|
Future<void> updateCatEyeModeConfig() async {
|
|
state.isCustom.value == false
|
|
? state.recordMode.value = 0
|
|
: state.recordMode.value = 1;
|
|
|
|
if (state.recordMode.value == 1) {
|
|
state.recordStartTime.value =
|
|
DateTool().dateToTimestamp(state.startDate.value, 0);
|
|
// 将当前时间加一天
|
|
final DateTime tomorrow =
|
|
DateTime(DateTool().dateToTimestamp(state.startDate.value, 0))
|
|
.add(const Duration(days: 1));
|
|
// 获取明天时间的时间戳
|
|
state.recordEndTime.value = tomorrow.millisecondsSinceEpoch;
|
|
}
|
|
final VersionUndateEntity entity = await ApiRepository.to.updateCatEyeModeConfig(
|
|
lockId: state.lockSetInfoData.value.lockId!,
|
|
catEyeConfig: [
|
|
{
|
|
'catEyeMode': 4,
|
|
'catEyeModeConfig': {
|
|
'recordMode': state.recordMode.value,
|
|
'recordStartTime': state.recordStartTime.value,
|
|
'recordEndTime': state.recordEndTime.value,
|
|
'recordTime':
|
|
state.catEyeConfigData.value.catEyeModeConfig!.recordTime,
|
|
'detectionDistance': state
|
|
.catEyeConfigData.value.catEyeModeConfig!.detectionDistance,
|
|
'realTimeMode':
|
|
state.catEyeConfigData.value.catEyeModeConfig!.realTimeMode,
|
|
}
|
|
}
|
|
],
|
|
);
|
|
if (entity.errorCode!.codeIsSuccessful) {
|
|
showToast('设置成功'.tr);
|
|
Get.back();
|
|
}
|
|
}
|
|
}
|