From f759dc1e6f49c53733eafda82207c85af18f9931 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期四, 28 五月 2020 15:46:54 +0800 Subject: [PATCH] 2020-05-28-1 --- ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs | 8 +- ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs | 41 ++++++------- ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml | 17 +++-- ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs | 26 -------- ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs | 8 +- ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide | 0 ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs | 57 ++++++++---------- 7 files changed, 64 insertions(+), 93 deletions(-) diff --git a/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml b/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml index 13291ed..2c72c00 100644 --- a/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml +++ b/ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml @@ -1,13 +1,13 @@ 锘�<Properties StartupConfiguration="{28EDE1FF-20EF-476B-8AF8-24A3EEB69F45}|Default"> <MonoDevelop.Ide.ItemProperties.GateWay.Droid PreferredExecutionTarget="Android.5c86e4357d63" /> <MonoDevelop.Ide.ItemProperties.ShardLib PreferredExecutionTarget="Android.M7BBB18B19152766" /> - <MonoDevelop.Ide.Workbench ActiveDocument="Shared/Phone/Device/Logic/OneLogic.cs"> + <MonoDevelop.Ide.Workbench ActiveDocument="Shared/Phone/Device/Logic/SkipView.cs"> <Files> - <File FileName="Shared/Phone/Device/Logic/SoneLogicList.cs" Line="190" Column="41" /> - <File FileName="Shared/Phone/Device/Logic/SkipView.cs" Line="323" Column="92" /> - <File FileName="Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs" Line="1066" Column="38" /> - <File FileName="Shared/Phone/Device/Logic/AddLogicPage.cs" Line="77" Column="60" /> - <File FileName="Shared/Phone/Device/Logic/OneLogic.cs" Line="16" Column="16" /> + <File FileName="Shared/Phone/Device/Logic/SkipView.cs" Line="23" Column="38" /> + <File FileName="Shared/Phone/Device/Logic/SoneLogicList.cs" Line="427" Column="59" /> + <File FileName="Shared/Phone/Device/Logic/Send.cs" Line="12" Column="2" /> + <File FileName="Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs" Line="1086" Column="47" /> + <File FileName="Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs" Line="1" Column="1" /> </Files> <Pads> <Pad Id="ProjectPad"> @@ -18,10 +18,13 @@ <Node name="Phone" expanded="True"> <Node name="Device" expanded="True"> <Node name="Logic" expanded="True"> - <Node name="OneLogic.cs" selected="True" /> + <Node name="SkipView.cs" selected="True" /> </Node> </Node> <Node name="UserCenter" expanded="True"> + <Node name="CommonBase" expanded="True"> + <Node name="Logic" expanded="True" /> + </Node> <Node name="DoorLock" expanded="True" /> </Node> </Node> diff --git a/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide b/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide index b85a228..e4389b1 100644 --- a/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide +++ b/ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide Binary files differ diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs old mode 100755 new mode 100644 index 6e7edf2..55df661 --- a/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/DoorLockLogic/LockLogicList.cs @@ -99,31 +99,7 @@ continue; } Common.Logic.LockLogicList.Add(logic); - //bool yes = false; - //for (int a = 0; a < logic.Accounts.Count; a++) - //{ - // //Option4鏄澶噈ac锛汷ption2鏄澶囩鍙o紱 - // if (logic.Accounts[a]["Option4"].ToString() != Send.CurrentDoorLock.DeviceAddr) - // { - // //鏌ユ壘鏄惁鏄偅涓棬閿侊紱 - // //濡傛灉涓嶆槸璇ラ棬閿佽仈鍔ㄤ簨浠朵笉鏄剧ず鍑烘潵; - // yes = false; - // } - // else - // { - // yes = true; - // } - // //if (logic.Accounts[a]["Account"].ToString() == Config.Instance.Guid) - // //{ - // // //鏌ユ壘鑷繁璐﹀彿涓嬬殑鍒涘缓鑱斿姩浜嬩欢锛� - // // yes = true; - // // break; - // //} - //} - //if (yes) - //{ - // Common.Logic.LockLogicList.Add(listlogic[j]); - //} + } } } diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs b/ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs index 4e0ee88..fc1aed0 100644 --- a/ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs @@ -20,7 +20,6 @@ { case 0: { - //new涓�涓柊閫昏緫瀵硅薄锛� //鏂板姝e父鑷姩鍖栧叆鍙� Common.Logic.CurrentLogic = new Common.Logic(); @@ -31,7 +30,6 @@ UserView.HomePage.Instance.AddChidren(addLogicPage); UserView.HomePage.Instance.PageIndex += 1; addLogicPage.Show(); - } break; case 1: @@ -765,36 +763,30 @@ public static async System.Threading.Tasks.Task<int> Exist(int valueInt, ZigBee.Device.DoorLock doorLock) { int exist = 0; - var Idlist = await Send.GetLogicId(valueInt); - if (Idlist.Count != 0) + var IdList = await Send.GetLogicId(valueInt); + if (IdList.Count != 0) { - //榛樿鍙栫涓�涓�昏緫ID - var id = Idlist[0]; - if (valueInt != 3) + for (int i = 0; i < IdList.Count; i++) { - exist = id; - } - else - { - var logic = await Send.GetLogic(id, 3); + var id = IdList[i]; + var logic = await Send.GetLogic(id, valueInt); if (logic != null) { if (ExistLogic(logic, doorLock)) { exist = id; - } - else - { - exist = 0; + ///鎵惧埌閫�鍑� + break; } } + } } return exist; } ///<summary> - ///鑾峰彇闂ㄩ攣閫昏緫淇℃伅 + ///鑾峰彇闂ㄩ攣鏃舵晥鎬ч�昏緫淇℃伅 /// 杩斿洖鍊硷細null涓嶅瓨鍦�;鍏跺畠鍊奸兘瀛樺湪; /// </summary> public static async System.Threading.Tasks.Task<Common.Logic> GetLogicIfon(ZigBee.Device.DoorLock doorLock) @@ -818,14 +810,12 @@ ///鍒犻櫎璇ラ棬閿佹墍鏈夋椂鏁堟�ц嚜鍔ㄥ寲 /// 杩斿洖鍊硷細true鎴愬姛;false澶辫触; /// </summary> - public static async System.Threading.Tasks.Task<bool> GetLogicAll(ZigBee.Device.DoorLock doorLock) + public static async System.Threading.Tasks.Task<bool> DelAllLogic(ZigBee.Device.DoorLock doorLock) { bool _if = false; var Idlist = await Send.GetLogicId(3); if (Idlist.Count != 0) { - _if = true; - for (int i = 0; i < Idlist.Count; i++) { int id = Idlist[i]; @@ -836,7 +826,16 @@ { //鏈潵鍙湁涓�鏉℃椂鏁堟�ц嚜鍔ㄥ寲锛� //闃叉鐗规畩鎯呭喌,鎵惧埌灏卞垹闄ゆ帀; + //var valueInt = await Send.DelLogic(id); + //if (valueInt == 0) + //{ + // _if = true; + //} + //(鑰冭檻鎬ц兘榛樿鍒犻櫎鎴愬姛锛岀洿鎺ヨ繑鍥炴垚鍔熺粨鏋渢rue) + _if = true; Send.DelLogic(id); + + } } } @@ -852,7 +851,7 @@ { for (int j = 0; j < logic.Accounts.Count; j++) { - //Option4鏄澶噈ac锛汷ption2鏄澶囩鍙o紱 + //Option4鏄澶噈ac锛� if (logic.Accounts[j]["Option4"].ToString() == doorLock.DeviceAddr) { //鏌ユ壘鏄惁鏄偅涓棬閿侊紱 diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs b/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs index 44cfcd6..1d0328b 100644 --- a/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs @@ -32,13 +32,9 @@ /// </summary> public int timeValue = 0; /// <summary> - /// 鏍囪鏄剧ず鎵ц鏃ユ湡(鐢ㄧ綉鍏崇殑锛岃繕鏄敤绯荤粺鐨勬椂闂�) + /// 璁板綍鏃堕棿鎴� /// </summary> - public bool _if = false; - /// <summary> - /// 鏃堕棿鎴� - /// </summary> - public long timeLong = 0; + public int timeLong = 0; public async void Show() { @@ -58,7 +54,7 @@ action(Send.CurrentDoorLock.IsDoorLockNormallyMode); } }; - + var middle = new FrameLayout { Y = view.topRowLayout.Bottom, @@ -68,7 +64,7 @@ this.AddChidren(middle); #endregion //鏄父寮�妯″紡鍐嶅幓璇诲彇 - + Send.CurrentDoorLock.IsDoorLockNormallyMode = true; if (Send.CurrentDoorLock.IsDoorLockNormallyMode) { //杩涙潵鏇存柊涓�娆� @@ -81,8 +77,7 @@ //杩涙潵鏇存柊涓�娆″�� logicId = logic.LogicId; timeValue = int.Parse(logic.Conditions[0]["DoorLockOpenDelayTime"]) / 3600; - timeLong = long.Parse(logic.Conditions[0]["TriggerTime"]); - + timeLong = int.Parse(logic.Conditions[0]["TriggerTime"]); } catch { } } @@ -226,7 +221,8 @@ } 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> /// 甯稿紑妯″紡寮�鍏冲垏鎹㈠浘鏍囩晫闈� @@ -285,7 +281,6 @@ Send.DelLogic(logicId); } Send.CurrentDoorLock.IsDoorLockNormallyMode = false; - _if = false; ModeView(); } else @@ -304,7 +299,7 @@ } }; - + if (logicId != 0) { ///鏄剧ず澶辨晥璁剧疆鏃堕棿鏂囨湰鎺т欢 @@ -312,7 +307,7 @@ { Y = Application.GetRealHeight(127 + 69), X = Application.GetRealWidth(80),//125 - Width = Application.GetRealWidth(907+12),//634 + 200 + Width = Application.GetRealWidth(907 + 12),//634 + 200 Height = Application.GetRealHeight(60), TextSize = 15, TextColor = ZigbeeColor.Current.LogicTextBlackColor, @@ -331,22 +326,23 @@ int hour = 0; int minute = 0; - if (_if) + 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"));//灏忔椂 + var d = int.Parse(datetime.ToString("dd"));//閭d竴澶� + var h = int.Parse(datetime.ToString("HH"));//灏忔椂 + int dayInt = (h + timeValue) / 24;//璁剧疆鏃堕棿+褰撳墠绯荤粺鏃堕棿鏄惁瓒呭嚭24灏忔椂 + hour = (h + timeValue) % 24;//璁剧疆鏃堕棿+褰撳墠绯荤粺鏃堕棿鏄惁瓒呭嚭24灏忔椂鍓╀笅澶氬皯灏忔椂 + days = d + dayInt;//褰撳墠绯荤粺澶╂暟+鎵ц鍚庡ぉ鏁� minute = datetime.Minute;//鍒嗛挓 } 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"));//灏忔椂 @@ -416,6 +412,7 @@ {///鍐嶆纭 LogicView.TipView.ShowInputTip(true, async (str) => {///纭鍙戦�佸懡浠� + CommonPage.Loading.Start(); try { @@ -429,7 +426,7 @@ else { ///鍥犱负鏈夊父寮�妯″紡涓嬫墠鍙互鍒涘缓澶辨晥閫昏緫锛� - SkipView.GetLogicAll(Send.CurrentDoorLock);//鍒犻櫎涔嬪墠鎵�鏈夊け鏁堥�昏緫 + SkipView.DelAllLogic(Send.CurrentDoorLock);//鍒犻櫎涔嬪墠鎵�鏈夊け鏁堥�昏緫 var addResult = await SkipView.LockAddModifyLogic(int.Parse(str), Send.CurrentDoorLock);//娣诲姞涓�鏉″け鏁堥�昏緫 if (addResult == 0) { @@ -444,7 +441,6 @@ logicId = addResult; timeValue = int.Parse(str); Send.CurrentDoorLock.IsDoorLockNormallyMode = true; - _if = false; ModeView(); ///娣诲姞APP寮�鍚父寮�妯″紡鐨勫巻鍙茶褰� UserCenter.HdlDeviceDoorLockLogic.Current.AddDoorHistoryLog(Send.CurrentDoorLock, 9001, string.Empty); @@ -714,16 +710,13 @@ /// </summary> /// <param name="unixTimeStamp">鏃堕棿鎴�</param> /// <returns></returns> - public DateTime GetLocalTime(long unixTimeStamp) + public DateTime GetLocalTime(int unixTimeStamp) { - //DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); - //long lTime = long.Parse(unixTimeStamp + "0000000"); - //TimeSpan toNow = new TimeSpan(lTime); - //DateTime dtResult = dtStart.Add(toNow); - //return dtResult; - - System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 褰撳湴鏃跺尯 - return startTime.AddMilliseconds(unixTimeStamp); + DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); + long lTime = long.Parse(unixTimeStamp + "0000000"); + TimeSpan toNow = new TimeSpan(lTime); + DateTime dtResult = dtStart.Add(toNow); + return dtResult; } } diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs old mode 100755 new mode 100644 index 9989e00..5dcfd81 --- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/DoorLockCommonInfo.cs @@ -198,7 +198,7 @@ if (haveLogic) { //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock); + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock); } } else @@ -220,7 +220,7 @@ if (haveLogic) { //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock); + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock); } //app閲嶆柊寮�鍚�滃父寮�妯″紡鈥� @@ -298,7 +298,7 @@ if (haveLogic) { //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock); + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock); } } else @@ -347,7 +347,7 @@ if (haveLogic) { //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock); + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock); } Application.RunOnMainThread(() => { diff --git a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs old mode 100755 new mode 100644 index 7de8403..09fe2ae --- a/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs @@ -1131,7 +1131,7 @@ if (haveLogicNormallyOpenMode) { //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock); + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock); } } else @@ -1155,7 +1155,7 @@ if (haveLogicNormallyOpenMode) { //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock); + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock); } //app閲嶆柊寮�鍚�滃父寮�妯″紡鈥� var result = await doorLock.SetNormallyOpenModeFuncAsync(true); @@ -1226,7 +1226,7 @@ if (haveLogicNormallyOpenMode) { //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock); + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock); } } else @@ -1261,7 +1261,7 @@ if (haveLogicNormallyOpenMode) { //姝ゅ鍒犻櫎娓╁眳鍩庣殑甯稿紑妯″紡鐗规畩閫昏緫 - var resTemp1 = await Shared.Phone.Device.Logic.SkipView.GetLogicAll(doorLock); + var resTemp1 = await Shared.Phone.Device.Logic.SkipView.DelAllLogic(doorLock); } string msg2 = Language.StringByID(R.MyInternationalizationString.CloseNormallyOpenModeSuccess); this.ShowTipMsg(msg2); -- Gitblit v1.8.0