| | |
| | | { |
| | | #region 本地变量 |
| | | /// <summary> |
| | | /// |
| | | /// 更新“逻辑常开”界面的回调 |
| | | /// </summary> |
| | | public static Action<bool> LogicAction = null; |
| | | /// <summary> |
| | |
| | | /// </summary> |
| | | public static void NormallyOpenModeValue(ZigBee.Device.DoorLock doorLock, bool value) |
| | | { |
| | | string key = doorLock.DeviceAddr + "_" + doorLock.DeviceEpoint; |
| | | if (doorLock.IsDoorLockNormallyMode.ContainsKey(key)) |
| | | { |
| | | doorLock.IsDoorLockNormallyMode[key] = value; |
| | | } |
| | | else |
| | | { |
| | | doorLock.IsDoorLockNormallyMode.Add(key, value); |
| | | } |
| | | doorLock.IsDoorLockNormallyMode = value; |
| | | |
| | | if (LogicAction != null) |
| | | { |
| | |
| | | { |
| | | //上报“常开模式”已被取消 |
| | | Application.RunOnMainThread(() => { CommonPage.Loading.Start(""); }); |
| | | //先删除已失效的“常开模式”的逻辑 |
| | | //if (resTemp == 1) |
| | | //{ |
| | | // var restulTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3); |
| | | // //if (restulTemp == 3) |
| | | // //{ |
| | | // // string msg0 = Language.StringByID(R.MyInternationalizationString.CancelLogicNormallyModeFailed2); |
| | | // // this.ShowTipMsg(msg0); |
| | | // // return; |
| | | // //} |
| | | //} |
| | | |
| | | //温居城方法??? |
| | | //此处是否要删除温居城的特殊逻辑 |
| | | |
| | | //app重新开启“常开模式” |
| | | var result = await doorLock.SetNormallyOpenModeFuncAsync(true); |
| | |
| | | ShowTipMsg(msg0); |
| | | NormallyOpenModeValue(doorLock, false); |
| | | CommonPage.Loading.Hide(); |
| | | //new Tip() { MaxWidth = 150, Text = msg0, Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance); |
| | | }); |
| | | action?.Invoke(); |
| | | return; |
| | |
| | | ShowTipMsg(msg1); |
| | | NormallyOpenModeValue(doorLock, false); |
| | | CommonPage.Loading.Hide(); |
| | | //new Tip() { MaxWidth = 150, Text = msg1, Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance); |
| | | }); |
| | | action?.Invoke(); |
| | | return; |
| | |
| | | ShowTipMsg(msg0); |
| | | NormallyOpenModeValue(doorLock, true); |
| | | CommonPage.Loading.Hide(); |
| | | //new Tip() { MaxWidth = 150, Text = msg0, Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance); |
| | | }); |
| | | } |
| | | } |
| | |
| | | NormallyOpenModeValue(doorLock, false); |
| | | if (haveLogic) |
| | | { |
| | | var resTemp2 = await Shared.Phone.Device.Logic.SkipView.Exist(3); |
| | | //if (resTemp2 == 3) |
| | | //{ |
| | | // string msg0 = Language.StringByID(R.MyInternationalizationString.CancelLogicNormallyModeFailed); |
| | | // this.ShowTipMsg(msg0); |
| | | //} |
| | | //温居城方法??? |
| | | //此处是否要删除温居城的特殊逻辑 |
| | | } |
| | | } |
| | | else |
| | |
| | | { |
| | | ShowTipMsg(Language.StringByID(R.MyInternationalizationString.GwResponseOvertime)); |
| | | CommonPage.Loading.Hide(); |
| | | //new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance); |
| | | }); |
| | | action?.Invoke(); |
| | | return; |
| | |
| | | string msg1 = Language.StringByID(R.MyInternationalizationString.CloseNormallyOpenModeFailed); |
| | | ShowTipMsg(msg1); |
| | | CommonPage.Loading.Hide(); |
| | | //new Tip() { MaxWidth = 150, Text = msg1, Direction = AMPopTipDirection.None, CloseTime = 1 }.Show(CommonPage.Instance); |
| | | }); |
| | | action?.Invoke(); |
| | | return; |
| | |
| | | if (haveLogic) |
| | | { |
| | | var resTemp1 = await Shared.Phone.Device.Logic.SkipView.Exist(3); |
| | | //因为目前机制问题,逻辑经常失败,所以不提示,后期机制要改,重新做一个这个界面 |
| | | //if (resTemp1 == 3) |
| | | //{ |
| | | //Application.RunOnMainThread(() => |
| | | //{ |
| | | // string msg0 = Language.StringByID(R.MyInternationalizationString.CancelLogicNormallyModeFailed); |
| | | // ShowTipMsg(msg0); |
| | | //}); |
| | | //} |
| | | //else if (resTemp1 == 2) |
| | | //{ |
| | | //Application.RunOnMainThread(() => |
| | | //{ |
| | | // string msg0 = Language.StringByID(R.MyInternationalizationString.CloseNormallyOpenModeSuccess); |
| | | // ShowTipMsg(msg0); |
| | | //}); |
| | | //温居城方法??? |
| | | //此处是否要删除温居城的特殊逻辑 |
| | | } |
| | | Application.RunOnMainThread(() => |
| | | { |
| | |
| | | }); |
| | | } |
| | | |
| | | //默认创建常开模式的特殊逻辑 |
| | | var res = await Shared.Phone.Device.Logic.SkipView.LockAddModifyLogic(DoorLockCommonInfo.NormallyOpenModeInvalidTime, doorLock); |
| | | //if (!res) |
| | | //{ |
| | | // Application.RunOnMainThread(() => |
| | | // { |
| | | // //默认创建常开模式失败 |
| | | // string msg0 = Language.StringByID(R.MyInternationalizationString.AddLogicNormallyModeFailed); |
| | | // var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, msg0, Language.StringByID(R.MyInternationalizationString.confrim)); |
| | | // alert.Show(); |
| | | // //二次加载弹窗 常开模式开启提示 |
| | | // NomallyOpenModeInvalidTimeDialog(doorLock, action); |
| | | // }); |
| | | //} |
| | | //温居城方法??? |
| | | //此处是否要创建常开模式的特殊逻辑 |
| | | }; |
| | | } |
| | | #endregion |
| | |
| | | }); |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #endregion |
| | | } |
| | | } |