app-starlock/lib/main/lockDetail/doorLockLog/doorLockLog_state.dart

77 lines
2.9 KiB
Dart
Executable File

import 'package:get/get.dart';
import 'package:star_lock/common/XSConstantMacro/XSConstantMacro.dart';
import 'package:star_lock/main/lockDetail/doorLockLog/doorLockLog_entity.dart';
import 'package:star_lock/tools/advancedCalendar/src/controller.dart';
import 'package:star_lock/tools/menuItem/dropDownItem.dart';
import '../../lockMian/entity/lockListInfo_entity.dart';
class DoorLockLogState {
// 当前选择的日期
DoorLockLogState() {
keyInfos.value = Get.arguments['keyInfo'];
}
final Rx<DoorLockLogEntity> lockLogEntity = DoorLockLogEntity().obs;
final Rx<LockListInfoItemEntity> keyInfos = LockListInfoItemEntity().obs;
final RxList<DoorLockLogDataItem> lockLogItemList =
<DoorLockLogDataItem>[].obs;
final RxList<DoorLockLogDataItem> weekEventList =
<DoorLockLogDataItem>[].obs;
final RxList<DoorLockLogDataItem> dayEventList =
<DoorLockLogDataItem>[].obs;
final AdvancedCalendarController calendarControllerToday =
AdvancedCalendarController.today();
final AdvancedCalendarController calendarControllerCustom =
AdvancedCalendarController.today();
final List<DateTime> events = <DateTime>[
DateTime.now(),
DateTime(2024, 10, 10),
];
final RxInt startDate =
DateTime(DateTime.now().year, DateTime.now().month, DateTime.now().day)
.millisecondsSinceEpoch
.obs;
final RxInt endDate = DateTime(
DateTime.now().year, DateTime.now().month, DateTime.now().day + 1)
.subtract(const Duration(milliseconds: 1))
.millisecondsSinceEpoch
.obs;
RxString dropdownTitle = '全部事件'.tr.obs;
RxInt dropdownValue = XSConstantMacro.lockEventTypeAll.obs;
List<DropDownItem> getDropDownItemList = <DropDownItem>[
DropDownItem(
itemTitle: '全部事件'.tr,
itemValue: XSConstantMacro.lockEventTypeAll.toString(),
isCheked: false),
DropDownItem(
itemTitle: '开锁事件'.tr,
itemValue: XSConstantMacro.lockEventTypeOpenDoor.toString(),
isCheked: false),
DropDownItem(
itemTitle: '异常事件'.tr,
itemValue: XSConstantMacro.lockEventTypeAbnormal.toString(),
isCheked: false),
DropDownItem(
itemTitle: '门铃事件'.tr,
itemValue: XSConstantMacro.lockEventTypeDoorbell.toString(),
isCheked: false),
DropDownItem(
itemTitle: '视频事件'.tr,
itemValue: XSConstantMacro.lockEventTypeVideo.toString(),
isCheked: false),
];
RxBool ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示
int operateDate = 0; // 按日期查询消息记录的时间戳
int currentDate = 0; // 当前服务器UTC毫秒时间戳
bool ifHaveNext = false; // 页码
int logCountPage = 10; // 蓝牙记录一页多少个
Rx<DateTime> currentSelectDate = DateTime.now().obs;
bool isLockReceiveResponse = false; // 是否收到回复
}