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