| | |
| | | CommonPage.Loading.Start(""); |
| | | }); |
| | | |
| | | //放在设备启动的地方 |
| | | //HdlGatewayReceiveLogic |
| | | //1、启动获取门锁设备对象, |
| | | //2、再获取当前门锁对象的常开模式 |
| | | var res = await DoorLockCommonInfo.GetNormallyOpenMode(doorLock); |
| | | if (DoorLockCommonInfo.DoorLockNormallyMode.ContainsKey(doorLock.DeviceAddr + doorLock.DeviceEpoint)) |
| | | { |
| | | DoorLockCommonInfo.DoorLockNormallyMode[doorLock.DeviceAddr + doorLock.DeviceEpoint] = res; |
| | | } |
| | | else |
| | | { |
| | | DoorLockCommonInfo.DoorLockNormallyMode.Add(doorLock.DeviceAddr + doorLock.DeviceEpoint, res); |
| | | } |
| | | |
| | | //是否支持常开 |
| | | canOpenNormallyMode = DoorLockCommonInfo.CanNormallyOpen(doorLock); |
| | | if (canOpenNormallyMode) |
| | |
| | | } |
| | | DoorLockCommonInfo.NormallyOpenModeValue(doorLock, tempRes); |
| | | |
| | | //Application.RunOnMainThread(async () => |
| | | //{ |
| | | //var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3, doorLock); |
| | | //if (resTemp == 1) |
| | | //{ |
| | | // haveLogicNormallyOpenMode = true; |
| | | //} |
| | | //else if (resTemp == 0) |
| | | //{ |
| | | // haveLogicNormallyOpenMode = false; |
| | | //} |
| | | //}); |
| | | Application.RunOnMainThread(async () => |
| | | { |
| | | var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3, doorLock); |
| | | if (resTemp == 0) |
| | | { |
| | | haveLogicNormallyOpenMode = false; |
| | | } |
| | | else |
| | | { |
| | | haveLogicNormallyOpenMode = true; |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | else |
| | |
| | | CommonPage.Loading.Hide(); |
| | | }); |
| | | } |
| | | |
| | | //定时检测时间变化 |
| | | var curDateNow = DateTime.Now; |
| | | var curDateDelay = DateTime.MinValue; |
| | | new System.Threading.Thread(async () => |
| | | { |
| | | while (true) |
| | | { |
| | | try |
| | | { |
| | | curDateNow = DateTime.Now; |
| | | if (curDateNow > curDateDelay) |
| | | { |
| | | //晚上9点提示用户门锁是否还开着 |
| | | if (DoorLockCommonInfo.DoorLockNormallyMode[doorLock.DeviceAddr + doorLock.DeviceEpoint] == true) |
| | | { |
| | | if (curDateNow.Hour == 21) |
| | | { |
| | | curDateDelay = curDateNow; |
| | | curDateDelay = curDateDelay.AddHours(+1); |
| | | var result = await Shared.Phone.Device.Logic.SkipView.Exist(3, (ZigBee.Device.DoorLock)doorLock); |
| | | HdlThreadLogic.Current.RunMain(() => |
| | | { |
| | | //弹出徐梅的那个窗口 |
| | | DoorLock.DoorLockCommonInfo.NomallyOpenModeInvalidDialog((ZigBee.Device.DoorLock)doorLock, DoorLock.DoorLockCommonInfo.DoorLockMessType.AppOperate, |
| | | result != 0 ? true : false, ControlCommonResourse.UpdateDoorLockStatusAction); |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | catch { } |
| | | System.Threading.Thread.Sleep(1000 * 60); |
| | | } |
| | | |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | }); |
| | | } |
| | | |
| | |
| | | UserView.HomePage.Instance.PageIndex += 1;
|
| | | addLogicPage.Show();
|
| | | addLogicPage.action += (w) =>
|
| | | {
|
| | | doorLock.IsDoorLockNormallyMode = w;
|
| | | { |
| | | DoorLockCommonInfo.NormallyOpenModeValue(doorLock, w); |
| | | UpdateNomallyOpenStatus();
|
| | | //返回按键清空当前逻辑定义的LogicAction |
| | | UserCenter.DoorLock.DoorLockCommonInfo.LogicAction = null; |