From 49ecdeae6cafbfbed6edcf2c209b674e2fe8c31e Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期二, 02 六月 2020 17:51:57 +0800 Subject: [PATCH] 2020-06-02-1 --- ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs | 216 ++++++++++++++++++++++++++++++----------------------- 1 files changed, 121 insertions(+), 95 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs b/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs index c6c2e5f..5bb8a14 100644 --- a/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs @@ -32,16 +32,12 @@ /// </summary> public int timeValue = 0; /// <summary> - /// 鏍囪鏄剧ず鎵ц鏃ユ湡(鐢ㄧ綉鍏崇殑锛岃繕鏄敤绯荤粺鐨勬椂闂�) - /// </summary> - public bool _if = false; - /// <summary> - /// 鏃堕棿鎴� + /// 璁板綍鏃堕棿鎴� /// </summary> public int timeLong = 0; public async void Show() { - + #region 鐣岄潰鐨勫竷灞�浠g爜 UserView.HomePage.Instance.ScrollEnabled = false;//閿佷綇宸︽粦 TopView view = new TopView(); @@ -58,7 +54,7 @@ action(Send.CurrentDoorLock.IsDoorLockNormallyMode); } }; - + var middle = new FrameLayout { Y = view.topRowLayout.Bottom, @@ -68,7 +64,6 @@ this.AddChidren(middle); #endregion //鏄父寮�妯″紡鍐嶅幓璇诲彇 - if (Send.CurrentDoorLock.IsDoorLockNormallyMode) { //杩涙潵鏇存柊涓�娆� @@ -80,9 +75,8 @@ { //杩涙潵鏇存柊涓�娆″�� logicId = logic.LogicId; - timeValue = int.Parse(logic.Conditions[0]["DoorLockOpenDelayTime"])/3600; + timeValue = int.Parse(logic.Conditions[0]["DoorLockOpenDelayTime"]) / 3600; timeLong = int.Parse(logic.Conditions[0]["TriggerTime"]); - } catch { } } @@ -98,6 +92,7 @@ }; middle.AddChidren(fLayout); #endregion + #region 甯稿紑鑷姩鍖� ///绗笁鍧楃涓�绾х埗鎺т欢 listLogicFl = new FrameLayout @@ -226,6 +221,22 @@ catch { } }; + //UserCenter.DoorLock.DoorLockCommonInfo.UpdateCurrentDoorlockAction += (DoorlockKey, _bool) => + //{ + // var key = Send.CurrentDoorLock.DeviceAddr + Send.CurrentDoorLock.DeviceEpoint; + // if (DoorlockKey == key) + // { + // try + // { + // Application.RunOnMainThread(() => + // { + // Send.CurrentDoorLock.IsDoorLockNormallyMode = _bool; + // ModeView(); + // }); + // } + // catch { } + // } + //}; } /// <summary> /// 甯稿紑妯″紡寮�鍏冲垏鎹㈠浘鏍囩晫闈� @@ -271,6 +282,7 @@ openModeFl.AddChidren(closeBtn); closeBtn.MouseUpEventHandler += async (sender, e) => { + CommonPage.Loading.Start(); try { @@ -284,7 +296,6 @@ Send.DelLogic(logicId); } Send.CurrentDoorLock.IsDoorLockNormallyMode = false; - _if = false; ModeView(); } else @@ -302,20 +313,21 @@ }); } }; - - ///鏄剧ず澶辨晥璁剧疆鏃堕棿鏂囨湰鎺т欢 - var timeTextBtn = new Button - { - Y = Application.GetRealHeight(127 + 69), - X = Application.GetRealWidth(86),//125 - Width = Application.GetRealWidth(907),//634 + 200 - Height = Application.GetRealHeight(60), - TextSize = 15, - TextColor = ZigbeeColor.Current.LogicTextBlackColor, - }; + if (logicId != 0) { + ///鏄剧ず澶辨晥璁剧疆鏃堕棿鏂囨湰鎺т欢 + var timeTextBtn = new Button + { + Y = Application.GetRealHeight(127 + 69), + X = Application.GetRealWidth(80),//125 + Width = Application.GetRealWidth(907 + 12),//634 + 200 + Height = Application.GetRealHeight(60), + TextSize = 15, + TextColor = ZigbeeColor.Current.LogicTextBlackColor, + }; openModeFl.AddChidren(timeTextBtn); + string text1 = Language.StringByID(MyInternationalizationString.timeSensitive); string text2 = Language.StringByID(MyInternationalizationString.yearSone); string text3 = Language.StringByID(MyInternationalizationString.monthSone); @@ -324,24 +336,27 @@ string text6 = Language.StringByID(MyInternationalizationString.executeSone); string year = ""; string month = ""; - int days =0; - int hour =0; - int minute =0; - - if (_if) + int days = 0; + int hour = 0; + int minute = 0; + + if (timeLong != 0) { - ///绗竴娆¤繘鏉ヨ鍙栫綉鍏虫椂闂达紱 + ///璇诲彇缃戝叧鏃堕棿锛� var datetime = GetLocalTime(timeLong); ///鏈夋椂鏁堟�у父寮�鎵嶆樉绀烘椂闂存潯浠舵枃鏈� year = datetime.Year.ToString();//閭d竴骞� month = datetime.Month.ToString();//閭d竴鏈� days = int.Parse(datetime.ToString("dd"));//閭d竴澶� - hour = int.Parse(datetime.ToString("HH"));//灏忔椂 + hour = int.Parse(datetime.ToString("HH"));//灏忔椂 minute = datetime.Minute;//鍒嗛挓 + timeLong = 0; } else { - ///鍦ㄥ綋鍓嶇晫闈㈢紪杈戞樉绀虹郴缁熸椂闂�(涓嶈兘姣忎竴娆$紪杈戦兘鍘荤綉鍏虫嬁鏁版嵁) year = DateTime.Now.Year.ToString();//閭d竴骞� + + + ///璇诲彇绯荤粺鏃堕棿 year = DateTime.Now.Year.ToString();//閭d竴骞� month = DateTime.Now.Month.ToString();//閭d竴鏈� var d = DateTime.Now.ToString("dd");//閭d竴澶� var h = int.Parse(DateTime.Now.ToString("HH"));//灏忔椂 @@ -405,66 +420,67 @@ }; modeFl.AddChidren(clickBtn); clickBtn.MouseUpEventHandler += (sender, e) => - { - - LogicView.TipView.ShowConfrimTip(() => - {///鍐嶆纭 - LogicView.TipView.ShowInputTip(true, async (str) => - {///纭鍙戦�佸懡浠� - CommonPage.Loading.Start(); - try - { - ///xm - var result = await UserCenter.DoorLock.DoorLockCommonInfo.SetNormallyOpenModeFuncAsync(Send.CurrentDoorLock); - if (!result) - { - LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.openFailed)); - return; - } - else - { - ///鍥犱负鏈夊父寮�妯″紡涓嬫墠鍙互鍒涘缓澶辨晥閫昏緫锛� - SkipView.GetLogicAll(Send.CurrentDoorLock);//鍒犻櫎涔嬪墠鎵�鏈夊け鏁堥�昏緫 - var addResult = await SkipView.LockAddModifyLogic(int.Parse(str), Send.CurrentDoorLock);//娣诲姞涓�鏉″け鏁堥�昏緫 - if (addResult == 0) - { - ///鍙璇村鏋滃父寮�妯″紡寮�锛屽垱寤鸿嚜鍔ㄥ寲澶辫触锛岄偅涔堝皢瑕佸彂涓�鏉″父寮�妯″紡鍏抽棴鍛戒护; - UserCenter.DoorLock.DoorLockCommonInfo.DelNormallyOpenMode(Send.CurrentDoorLock); - ///鎻愮ず澶辫触 - LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.addFailed)); - return; - } - else - { - logicId = addResult; - timeValue = int.Parse(str); - Send.CurrentDoorLock.IsDoorLockNormallyMode = true; - _if = false; - ModeView(); - ///娣诲姞APP寮�鍚父寮�妯″紡鐨勫巻鍙茶褰� - UserCenter.HdlDeviceDoorLockLogic.Current.AddDoorHistoryLog(Send.CurrentDoorLock, 9001, string.Empty); - } + { + + LogicView.TipView.ShowConfrimTip(() => + {///鍐嶆纭 + LogicView.TipView.ShowInputTip(true, async (str) => + {///纭鍙戦�佸懡浠� - } - } - catch - { + CommonPage.Loading.Start(); + try + { + ///xm + var result = await UserCenter.DoorLock.DoorLockCommonInfo.SetNormallyOpenModeFuncAsync(Send.CurrentDoorLock); + if (!result) + { + LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.openFailed)); + return; + } + else + { + ///鍥犱负鏈夊父寮�妯″紡涓嬫墠鍙互鍒涘缓澶辨晥閫昏緫锛� + SkipView.DelAllLogic(Send.CurrentDoorLock);//鍒犻櫎涔嬪墠鎵�鏈夊け鏁堥�昏緫 + var addResult = await SkipView.LockAddModifyLogic(int.Parse(str), Send.CurrentDoorLock);//娣诲姞涓�鏉″け鏁堥�昏緫 + if (addResult == 0) + { + ///鍙璇村鏋滃父寮�妯″紡寮�锛屽垱寤鸿嚜鍔ㄥ寲澶辫触锛岄偅涔堝皢瑕佸彂涓�鏉″父寮�妯″紡鍏抽棴鍛戒护; + UserCenter.DoorLock.DoorLockCommonInfo.DelNormallyOpenMode(Send.CurrentDoorLock); + ///鎻愮ず澶辫触 + LogicView.TipView.ShowFlashTip(Language.StringByID(MyInternationalizationString.addFailed)); + return; + } + else + { + logicId = addResult; + timeValue = int.Parse(str); + Send.CurrentDoorLock.IsDoorLockNormallyMode = true; + ModeView(); + ///娣诲姞APP寮�鍚父寮�妯″紡鐨勫巻鍙茶褰� + UserCenter.HdlDeviceDoorLockLogic.Current.AddDoorHistoryLog(Send.CurrentDoorLock, 9001, string.Empty); + } - } - finally - { - Application.RunOnMainThread(() => - { - CommonPage.Loading.Hide(); - }); - } - }); + } + } + catch + { - }); + } + finally + { + Application.RunOnMainThread(() => + { + CommonPage.Loading.Hide(); - }; + }); + } + }); + + }); + + }; } listLogicFl.Y = fLayout.Bottom; listLogicFl.X = Application.GetRealWidth(58); @@ -472,7 +488,7 @@ listLogicFl.Width = Application.GetRealWidth(1022); listLogicFl.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; - verticalRefresh.Y = Application.GetRealHeight(187); + verticalRefresh.Y = Application.GetRealHeight(187); verticalRefresh.X = Application.GetRealWidth(46); verticalRefresh.Height = listLogicFl.Height - Application.GetRealHeight(187);//鍔ㄦ�佹敼鍔ㄤ笂涓嬫粦鍔╲iew楂樺害; verticalRefresh.Width = listLogicFl.Width - Application.GetRealWidth(46); @@ -483,10 +499,10 @@ /// <param name="yes"></param> private async void Read(bool yes) { - if (yes) - { - CommonPage.Loading.Start(); - } + //if (yes) + // { + CommonPage.Loading.Start(); + // } try { if (Common.Logic.SoneLogicList.Count == 0) @@ -514,13 +530,20 @@ { var dd = e.Message; } - //鑷姩鍖� - RefreshView(); - if (yes) + finally { - CommonPage.Loading.Hide(); + Application.RunOnMainThread(() => + { + // if (yes) + // { + CommonPage.Loading.Hide(); + // } + //鑷姩鍖� + RefreshView(); + }); } + } /// <summary> /// 璁板綍宸︽粦鐘舵�� @@ -537,6 +560,7 @@ { if (!SkipView.ExistLogic(logic, Send.CurrentDoorLock)) { + ///涓嶆槸璇ラ棬閿佽嚜鍔ㄥ寲灏变笉鏄剧ず鍑烘潵; continue; } #region 鑷姩鍖栧竷灞�View @@ -696,9 +720,10 @@ }; } } - /// <summary> - /// 灏哢NIX鏃堕棿鎴宠浆鎹㈡垚绯荤粺鏃堕棿(绮剧‘鍒扮) + /// 鏃堕棿鎴宠浆鎹㈡垚鏃堕棿鏍煎紡 + /// </summary> + /// <param name="unixTimeStamp">鏃堕棿鎴�</param> /// <returns></returns> public DateTime GetLocalTime(int unixTimeStamp) { @@ -707,6 +732,7 @@ TimeSpan toNow = new TimeSpan(lTime); DateTime dtResult = dtStart.Add(toNow); return dtResult; + } } } -- Gitblit v1.8.0