From 34b65350abbb8b740b9c3bc0b43254cbbe23fcb5 Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期二, 19 五月 2020 09:31:44 +0800 Subject: [PATCH] 合并代码,更改面板目标信息 --- ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs | 156 +++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 111 insertions(+), 45 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs index 3090b66..70956de 100644 --- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs @@ -132,7 +132,7 @@ /// 闂ㄩ攣鏄惁鏀寔甯稿紑[杩欓噷鏆傛椂鍙湁S-One闂ㄩ攣鏀寔锛孒06C涓嶆敮鎸�, 鍚庢湡閫氳繃鑳藉姏鍊兼敮鎸乚 /// </summary> /// <param name="doorLock:褰撳墠闂ㄩ攣"></param> - /// <returns></returns> + /// <returns>true:鏀寔甯稿紑锛沠alse锛� 涓嶆敮鎸佸父寮�</returns> public static bool CanNormallyOpen(ZigBee.Device.DoorLock doorLock) { var listDevice = new List<CommonDevice> { }; @@ -151,11 +151,6 @@ public static void NormallyOpenModeValue(ZigBee.Device.DoorLock doorLock, bool value) { doorLock.IsDoorLockNormallyMode = value; - - if (LogicAction != null) - { - LogicAction(value); - } } /// <summary> @@ -165,7 +160,7 @@ /// <param name="doorLockMessType">瀵艰嚧闂ㄩ攣澶辨晥鐨勬搷浣滅被鍨�</param> /// <param name="haveLogic">缃戝叧涓槸鍚﹀瓨鍦ㄩ�昏緫甯稿紑妯″紡</param> /// <param name="action">鍥炶皟澶勭悊鏇存柊鍐呭</param> - public static async void NomallyOpenModeInvalidDialog(ZigBee.Device.DoorLock doorLock, DoorLockMessType doorLockMessType, bool haveLogic, Action action = null) + public static async void NomallyOpenModeInvalidDialog(ZigBee.Device.DoorLock doorLock, DoorLockMessType doorLockMessType, bool haveLogic, Action<bool> action = null) { //甯稿紑妯″紡鍙兘涓讳汉鎿嶄綔 if (UserCenterResourse.UserInfo.AuthorityNo != 1) @@ -196,13 +191,23 @@ { //涓婃姤鈥滃父寮�妯″紡鈥濆凡琚彇娑堬紝app榛樿浜嗏�滃父寮�妯″紡鈥濊鍙栨秷 DoorLockCommonInfo.NormallyOpenModeValue(doorLock, false); + if (LogicAction != null) + { + LogicAction(false); + } + if (haveLogic) + { + //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(); + } } else { //淇濇寔甯稿紑 NormallyOpenModeValue(doorLock, true); } - action?.Invoke(); + action?.Invoke(doorLock.IsDoorLockNormallyMode); + action = null; }; alert.CancelClickEvent += async () => @@ -212,8 +217,11 @@ //涓婃姤鈥滃父寮�妯″紡鈥濆凡琚彇娑� Application.RunOnMainThread(() => { CommonPage.Loading.Start(""); }); - //娓╁眳鍩庢柟娉曪紵锛燂紵 - //姝ゅ鏄惁瑕佸垹闄ゆ俯灞呭煄鐨勭壒娈婇�昏緫 + if (haveLogic) + { + //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(); + } //app閲嶆柊寮�鍚�滃父寮�妯″紡鈥� var result = await doorLock.SetNormallyOpenModeFuncAsync(true); @@ -226,7 +234,12 @@ NormallyOpenModeValue(doorLock, false); CommonPage.Loading.Hide(); }); - action?.Invoke(); + action?.Invoke(doorLock.IsDoorLockNormallyMode); + action = null; + if (LogicAction != null) + { + LogicAction(false); + } return; } if (result.defaultControlResponseData.status != 0) @@ -238,7 +251,13 @@ NormallyOpenModeValue(doorLock, false); CommonPage.Loading.Hide(); }); - action?.Invoke(); + + action?.Invoke(doorLock.IsDoorLockNormallyMode); + action = null; + if (LogicAction != null) + { + LogicAction(false); + } return; } else @@ -251,6 +270,10 @@ ShowTipMsg(msg0); NormallyOpenModeValue(doorLock, true); CommonPage.Loading.Hide(); + if (LogicAction != null) + { + LogicAction(true); + } }); } } @@ -259,7 +282,8 @@ //app鎿嶄綔涓嶅彇娑堚�滃父寮�妯″紡鈥� DoorLockCommonInfo.NormallyOpenModeValue(doorLock, true); } - action?.Invoke(); + action?.Invoke(doorLock.IsDoorLockNormallyMode); + action = null; }; alert.ConfirmClickEvent += async () => @@ -267,10 +291,14 @@ if (doorLockMessType == DoorLockMessType.DeviceReport || doorLockMessType == DoorLockMessType.ServicePush) { NormallyOpenModeValue(doorLock, false); + if (LogicAction != null) + { + LogicAction(false); + } if (haveLogic) { - //娓╁眳鍩庢柟娉曪紵锛燂紵 - //姝ゅ鏄惁瑕佸垹闄ゆ俯灞呭煄鐨勭壒娈婇�昏緫 + //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(); } } else @@ -285,7 +313,12 @@ ShowTipMsg(Language.StringByID(R.MyInternationalizationString.GwResponseOvertime)); CommonPage.Loading.Hide(); }); - action?.Invoke(); + action?.Invoke(doorLock.IsDoorLockNormallyMode); + action = null; + if (LogicAction != null) + { + LogicAction(false); + } return; } if (result.defaultControlResponseData.status != 0) @@ -296,7 +329,12 @@ ShowTipMsg(msg1); CommonPage.Loading.Hide(); }); - action?.Invoke(); + action?.Invoke(doorLock.IsDoorLockNormallyMode); + action = null; + if (LogicAction != null) + { + LogicAction(false); + } return; } else @@ -308,9 +346,8 @@ //鍒犻櫎璁剧疆甯稿紑妯″紡鍒涘缓鐨勯�昏緫 if (haveLogic) { - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.Exist(3); - //娓╁眳鍩庢柟娉曪紵锛燂紵 - //姝ゅ鏄惁瑕佸垹闄ゆ俯灞呭煄鐨勭壒娈婇�昏緫 + //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(); } Application.RunOnMainThread(() => { @@ -318,36 +355,65 @@ ShowTipMsg(msg2); CommonPage.Loading.Hide(); }); + if (LogicAction != null) + { + LogicAction(false); + } } } - action?.Invoke(); + action?.Invoke(doorLock.IsDoorLockNormallyMode); + action = null; }; } - /// <summary> - /// 鍒犻櫎甯稿紑妯″紡 - /// </summary> - /// <param name="doorLock">褰撳墠闂ㄩ攣</param> - /// <param name="action">鍥炶皟澶勭悊鏇存柊鍐呭</param> - /// <returns></returns> - public static async System.Threading.Tasks.Task<bool> DelNormallyOpenMode(ZigBee.Device.DoorLock doorLock, Action action = null) - { - //app鎿嶄綔鍙栨秷鈥滃父寮�妯″紡鈥� - var result = await doorLock.SetNormallyOpenModeFuncAsync(false); - if (result == null || result.defaultControlResponseData == null || result.defaultControlResponseData.status != 0) - { - action?.Invoke(); - return false; - } - - if (result.defaultControlResponseData.status == 0) - { - //app纭鍙栨秷鈥滃父寮�妯″紡鈥濇垚鍔� - NormallyOpenModeValue(doorLock, false); - action?.Invoke(); - return true; - } - return false; + /// <summary> + /// 鍒犻櫎甯稿紑妯″紡 + /// </summary> + /// <param name="doorLock">褰撳墠闂ㄩ攣</param> + /// <param name="action">鍥炶皟澶勭悊鏇存柊鍐呭</param> + /// <returns></returns> + public static async System.Threading.Tasks.Task<bool> DelNormallyOpenMode(ZigBee.Device.DoorLock doorLock, Action action = null) + { + //app鎿嶄綔鍙栨秷鈥滃父寮�妯″紡鈥� + var result = await doorLock.SetNormallyOpenModeFuncAsync(false); + if (result == null || result.defaultControlResponseData == null || result.defaultControlResponseData.status != 0) + { + action?.Invoke(); + return false; + } + + if (result.defaultControlResponseData.status == 0) + { + //app纭鍙栨秷鈥滃父寮�妯″紡鈥濇垚鍔� + NormallyOpenModeValue(doorLock, false); + action?.Invoke(); + return true; + } + return false; + } + + /// <summary> + /// 璁剧疆甯稿紑妯″紡 + /// </summary> + /// <param name="doorLock">褰撳墠闂ㄩ攣</param> + /// <param name="action">鍥炶皟澶勭悊鏇存柊鍐呭</param> + /// <returns></returns> + public static async System.Threading.Tasks.Task<bool> SetNormallyOpenModeFuncAsync(ZigBee.Device.DoorLock doorLock) + { + //app璁剧疆鈥滃父寮�妯″紡鈥濆け璐� + var result = await doorLock.SetNormallyOpenModeFuncAsync(true); + if (result == null || result.defaultControlResponseData == null || result.defaultControlResponseData.status != 0) + { + return false; + } + + if (result.defaultControlResponseData.status == 0) + { + //app璁剧疆鈥滃父寮�妯″紡鈥濇垚鍔� + NormallyOpenModeValue(doorLock, false); + return true; + } + return false; } /// <summary> -- Gitblit v1.8.0