| | |
| | | /// </summary> |
| | | /// <param name="room"></param> |
| | | /// <param name="doorLock"></param> |
| | | public UserDoorLockPage(Shared.Common.Room room, CommonDevice doorLock) |
| | | public UserDoorLockPage(Room room, CommonDevice doorLock) |
| | | { |
| | | //徐梅的门锁界面打开(网关全局接收时使用) |
| | | ControlCommonResourse.IsDoorLockPageOpen = true; |
| | | this.doorLock = doorLock as ZigBee.Device.DoorLock; |
| | | currentRoom = room; |
| | | deviceUI = doorLock; |
| | | BackgroundColor = Shared.Common.ZigbeeColor.Current.GXCTopViewBackgroundColor; |
| | | BackgroundColor = ZigbeeColor.Current.GXCTopViewBackgroundColor; |
| | | ZbGateway.StatusList.Add(this); |
| | | } |
| | | |
| | |
| | | /// 当前音量 |
| | | /// </summary> |
| | | int currentVolume = -1; |
| | | /// <summary> |
| | | /// waitClickTime |
| | | /// </summary> |
| | | DateTime waitClickTime = DateTime.MaxValue; |
| | | /// <summary> |
| | | /// IsClick |
| | | /// </summary> |
| | | bool IsClick = true; |
| | | #endregion |
| | | |
| | | /// <summary>
|
| | |
| | | if (typeTag == "DoorLockProgrammingEventNotificationCommand" && tempDevice != null) |
| | | { |
| | | var tempDoor = (ZigBee.Device.DoorLock)tempDevice; |
| | | if (tempDoor.doorLockOperatingEventNotificationCommand != null) |
| | | if (tempDevice.DeviceEpoint == doorLock.DeviceEpoint |
| | | && tempDevice.DeviceAddr == doorLock.DeviceAddr) |
| | | { |
| | | //非主人不弹这个窗口 |
| | | if (UserCenterResourse.UserInfo.AuthorityNo != 1)
|
| | | {
|
| | | return;
|
| | | } |
| | | //非管理员的密码,不弹这个窗口 |
| | | if (tempDoor.doorLockOperatingEventNotificationCommand.UserID > 9)
|
| | | {
|
| | | return;
|
| | | }
|
| | |
|
| | | if (canOpenNormallyMode) |
| | | if (tempDoor.doorLockOperatingEventNotificationCommand != null) |
| | | { |
| | | Application.RunOnMainThread(() => { NomallyOpenModeInvalidDialog(true); }); |
| | | //非主人不弹这个窗口 |
| | | if (UserCenterResourse.UserInfo.AuthorityNo != 1)
|
| | | {
|
| | | return;
|
| | | } |
| | | string key = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint; |
| | | if (doorLock.IsDoorLockNormallyMode.ContainsKey(key)) |
| | | {
|
| | | if (doorLock.IsDoorLockNormallyMode[key] == true)
|
| | | {
|
| | | if (canOpenNormallyMode) |
| | | { |
| | | Application.RunOnMainThread(() => { NomallyOpenModeInvalidDialog(true); }); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | currentPower = dataReport.AttriButeData; |
| | | waitGetDoorLockPower = DateTime.MaxValue; |
| | | UpdatePower(); |
| | | }); |
| | | } |
| | |
| | | } |
| | | |
| | | NormallyOpenModeValue(tempRes); |
| | | |
| | | HaveLogicNormallyOpenMode = await Shared.Phone.Device.Logic.SkipView.Exist(); |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | UpdateNomallyOpenStatus(); |
| | |
| | | btnCollect.IsSelected = !btnCollect.IsSelected; |
| | | if (btnCollect.IsSelected) |
| | | { |
| | | HdlRoomLogic.Current.AddLoveDevice(deviceUI);//收藏 |
| | | //Test |
| | | HaveLogicNormallyOpenMode = true; |
| | | HdlRoomLogic.Current.AddLoveDevice(deviceUI);//收藏 |
| | | } |
| | | else |
| | | { |
| | | HdlRoomLogic.Current.DeleteLoveDevice(deviceUI);//取消收藏 |
| | | //Test |
| | | HaveLogicNormallyOpenMode = false; |
| | | HdlRoomLogic.Current.DeleteLoveDevice(deviceUI);//取消收藏 |
| | | } |
| | | }; |
| | | btnCollectFrameLayout.MouseDownEventHandler += handerCollect; |
| | |
| | | //开锁事件 |
| | | EventHandler<MouseEventArgs> hander1 = async (sender, e) => |
| | | { |
| | | //常开模式下,点击开锁无效 |
| | | if (btnNormallyOpen.IsSelected == true)
|
| | | {
|
| | | this.ShowMassage(ShowMsgType.Remind, "当前状态为常开模式");
|
| | | return;
|
| | | |
| | | string key = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint; |
| | | if (doorLock.IsDoorLockNormallyMode.ContainsKey(key)) |
| | | { |
| | | if (doorLock.IsDoorLockNormallyMode[key] == true) |
| | | { |
| | | if (canOpenNormallyMode)
|
| | | {
|
| | | NomallyOpenModeInvalidDialog(false);
|
| | | }
|
| | | else |
| | | { |
| | | OpenDoorLockHandle(progressButton, btnDoorLockPic, btnStatus); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | OpenDoorLockHandle(progressButton, btnDoorLockPic, btnStatus); |
| | | } |
| | | }
|
| | | OpenDoorLockHandle(progressButton, btnDoorLockPic, btnStatus); |
| | | else |
| | | { |
| | | OpenDoorLockHandle(progressButton, btnDoorLockPic, btnStatus); |
| | | } |
| | | }; |
| | | openFrameLayout.MouseUpEventHandler += hander1; |
| | | btnDoorOpenPic.MouseUpEventHandler += hander1; |
| | |
| | | var alertNomallyModeIsTurnOn = new ShowDoorLockMsgControl(ShowDoorLockMsgControl.DoorLockMsgType.DoorLockLogic, msgNomallyModeIsTurnOn, doorLockInValidSetting); |
| | | alertNomallyModeIsTurnOn.Show(); |
| | | |
| | | //点击自动化 |
| | | alertNomallyModeIsTurnOn.LogicClickEvent += () => |
| | | { |
| | | //自动化 |
| | | Shared.Phone.Device.Logic.SkipView.SkipAddLogic(2); |
| | | |
| | | //逻辑调用前记得移除 |
| | | ZbGateway.StatusList.Remove(this); |
| | | Shared.Phone.Device.Logic.SkipView.SkipAddLogic(2, doorLock); |
| | | }; |
| | | alertNomallyModeIsTurnOn.InvalidClickEvent += async () => |
| | | { |
| | |
| | | { |
| | | if (UserCenterResourse.UserInfo.AuthorityNo != 1) |
| | | { |
| | | //this.ShowMassage(ShowMsgType.Tip, Language.StringByID(R.MyInternationalizationString.NoAccess)); |
| | | return; |
| | | } |
| | | string msg = Language.StringByID(R.MyInternationalizationString.NomallyModeIsCanceled).Replace("{0}", "\r\n"); |
| | |
| | | //确认取消常开 |
| | | if (IsFromReport) |
| | | { |
| | | NormallyOpenModeValue(true); |
| | | NormallyOpenModeValue(false); |
| | | UpdateNomallyOpenStatus(); |
| | | } |
| | | else |
| | |
| | | string msg2 = Language.StringByID(R.MyInternationalizationString.CloseNormallyOpenModeSuccess); |
| | | this.ShowTipMsg(msg2); |
| | | Shared.Phone.Device.Logic.SkipView.LockCloseLogic(doorLock); |
| | | // |
| | | } |
| | | } |
| | | }; |
| | |
| | | } |
| | | var temp = int.Parse(obj); |
| | | DoorLockCommonInfo.NormallyOpenModeInvalidTime = temp; |
| | | Shared.Phone.Device.Logic.SkipView.LockAddModifyLogic(DoorLockCommonInfo.NormallyOpenModeInvalidTime,doorLock); |
| | | //调用自动化接口设置失效时间 |
| | | Shared.Phone.Device.Logic.SkipView.LockAddModifyLogic(DoorLockCommonInfo.NormallyOpenModeInvalidTime, doorLock); |
| | | }; |
| | | } |
| | | /// <summary> |
| | |
| | | btnDoorOpenPic.Enable = false; |
| | | if (UserCenterResourse.UserInfo.AuthorityNo != 1) |
| | | { |
| | | var result = await Shared.Phone.UserCenter.DoorLock.DoorLockCommonInfo.GetDoorLockOperateAccess(doorLock, Shared.Common.Config.Instance.Guid); |
| | | var result = await DoorLockCommonInfo.GetDoorLockOperateAccess(doorLock, Shared.Common.Config.Instance.Guid); |
| | | if (result == false) |
| | | { |
| | | var result1 = await Shared.Phone.UserCenter.DoorLock.DoorLockCommonInfo.GetDoorLockUnlockAccess(doorLock, Shared.Common.Config.Instance.Guid); |
| | | var result1 = await DoorLockCommonInfo.GetDoorLockUnlockAccess(doorLock, Shared.Common.Config.Instance.Guid); |
| | | if (result1 == true) |
| | | { |
| | | RemoteUnlockRequest(doorLock, action, progressButton, btnDoorLockPic, btnStatus, btnDoorLockTitle); |
| | |
| | | /// </summary> |
| | | public override void RemoveFromParent() |
| | | { |
| | | //徐梅的门锁界面关闭(网关全局接收时使用) |
| | | ControlCommonResourse.IsDoorLockPageOpen = false; |
| | | if (IsDrawerLockMode) |
| | | { |
| | | CommonPage.Instance.IsDrawerLockMode = false; |