app-starlock/lib/main/lockDetail/lockDetail/lockDetail_state.dart

66 lines
2.7 KiB
Dart
Executable File

import 'dart:async';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:star_lock/main/lockDetail/lockSet/lockSet/lockSetInfo_entity.dart';
import '../../../blue/io_reply.dart';
import '../../lockMian/entity/lockListInfo_entity.dart';
class LockDetailState {
Rx<LockListInfoItemEntity> keyInfos = LockListInfoItemEntity().obs;
final Rx<LockSetInfoData> lockSetInfoData = LockSetInfoData().obs;
late StreamSubscription<Reply> replySubscription;
StreamSubscription?
lockSetOpenOrCloseCheckInRefreshLockDetailWithAttendanceEvent;
StreamSubscription? LockSetChangeSetRefreshLockDetailWithTypeSubscription;
StreamSubscription? DetailLockInfo;
StreamSubscription? SuccessfulDistributionNetworkEvent;
String lockNetToken = '0';
int differentialTime = 0; // 服务器时间与本地时间差值
bool isHaveNetwork = true;
int lockUserNo = 0;
int senderUserId = 0;
bool isOnlyOneData = false;
RxInt isAttendance = 0.obs; // 是否开启考勤
RxInt isOpenLockNeedOnline = 0.obs; // APP开锁时是否需联网
RxInt electricQuantity = 0.obs; // 电量
RxInt electricQuantityStandby = 0.obs; // 备用电池电量
RxInt isOpenPassageMode = 0.obs; // 是否开启了常开模式
RxString lockAlias = ''.obs; // 锁名字
// var currentDeviceUUid = "".obs; // 当前设备的uuid
RxBool ifCurrentScreen = true.obs; // 是否是当前界面,用于判断是否需要针对当前界面进行展示
RxBool iSClosedUnlockSuccessfulPopup = false.obs; // 是否关闭了开锁成功弹窗
RxBool iSOpenLock = true.obs; // 是开锁还是关锁
Timer? closedUnlockSuccessfulTimer;
RxBool bottomBtnisEable = true.obs; // 是否不可用 用于限制底部按钮是否可用
RxBool openDoorBtnisUneable = true.obs; // 当钥匙状态不能使用的情况下开锁按钮禁止使用,默认可用
int openDoorModel = 0; // 离线开门0, 在线开门2 离线关门32 在线关门34
//过渡动画控制器
AnimationController? animationController;
// var lockState = 0.obs;// 0未连接普通状态 1连接开锁中(展示动画) 2已连接开锁成功 3检测可用性 4连接失败 5连接失败重连中
RxInt openLockBtnState = 0.obs; // 0普通状态(未转动) 1连接中(转动状态)
// var connectState = 0.obs;// 0未连接 1连接
final PageController pageController = PageController();
RxInt currentPage = 0.obs;
int operateDate = 0; // 按日期查询消息记录的时间戳
int currentDate = 0; // 当前服务器UTC毫秒时间戳
int logCountPage = 10; // 蓝牙记录一页多少个
RxInt nextAuthTime = 0.obs; // 下次认证时间
// LockDetailState() {
// Map map = Get.arguments;
// lockCount = map["lockCount"];
// }
}