66 lines
2.7 KiB
Dart
Executable File
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"];
|
|
// }
|
|
}
|