From f5ba05c33393e55de28db91433901600bfb0658f Mon Sep 17 00:00:00 2001
From: xm <1271024303@qq.com>
Date: 星期五, 22 五月 2020 17:43:11 +0800
Subject: [PATCH] 请合并最新代码「20200522:添加门锁晚上9点上报常开功能,优化PM2.5测试功能」

---
 ZigbeeApp20200519/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs |   79 ++++++++++++++++++++++++++++++++-------
 1 files changed, 65 insertions(+), 14 deletions(-)

diff --git a/ZigbeeApp20200519/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs b/ZigbeeApp20200519/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs
index fed1595..d5d49ec 100644
--- a/ZigbeeApp20200519/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs
+++ b/ZigbeeApp20200519/Shared/Phone/UserCenter/DoorLock/UserDoorLockPage.cs
@@ -705,6 +705,20 @@
                         CommonPage.Loading.Start("");
                     });
 
+                    //鏀惧湪璁惧鍚姩鐨勫湴鏂�
+                    //HdlGatewayReceiveLogic
+                    //1銆佸惎鍔ㄨ幏鍙栭棬閿佽澶囧璞★紝
+                    //2銆佸啀鑾峰彇褰撳墠闂ㄩ攣瀵硅薄鐨勫父寮�妯″紡
+                    var res = await DoorLockCommonInfo.GetNormallyOpenMode(doorLock);
+                    if (DoorLockCommonInfo.DoorLockNormallyMode.ContainsKey(doorLock.DeviceAddr + doorLock.DeviceEpoint))
+                    {
+                        DoorLockCommonInfo.DoorLockNormallyMode[doorLock.DeviceAddr + doorLock.DeviceEpoint] = res;
+                    }
+                    else
+                    {
+                        DoorLockCommonInfo.DoorLockNormallyMode.Add(doorLock.DeviceAddr + doorLock.DeviceEpoint, res);
+                    }
+
                     //鏄惁鏀寔甯稿紑
                     canOpenNormallyMode = DoorLockCommonInfo.CanNormallyOpen(doorLock);
                     if (canOpenNormallyMode)
@@ -734,18 +748,18 @@
                             }
                             DoorLockCommonInfo.NormallyOpenModeValue(doorLock, tempRes);
 
-                            //Application.RunOnMainThread(async () =>
-                            //{
-                            //var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3, doorLock);
-                            //if (resTemp == 1)
-                            //{
-                            //    haveLogicNormallyOpenMode = true;
-                            //}
-                            //else if (resTemp == 0)
-                            //{
-                            //    haveLogicNormallyOpenMode = false;
-                            //}
-                            //});
+                            Application.RunOnMainThread(async () =>
+                            {
+                                var resTemp = await Shared.Phone.Device.Logic.SkipView.Exist(3, doorLock);
+                                if (resTemp == 0)
+                                {
+                                    haveLogicNormallyOpenMode = false;
+                                }
+                                else
+                                {
+                                    haveLogicNormallyOpenMode = true;
+                                }
+                            });
                         }
                     }
                     else
@@ -811,6 +825,43 @@
                         CommonPage.Loading.Hide();
                     });
                 }
+
+                //瀹氭椂妫�娴嬫椂闂村彉鍖�
+                var curDateNow = DateTime.Now;
+                var curDateDelay = DateTime.MinValue;
+                new System.Threading.Thread(async () =>
+                {
+                    while (true)
+                    {
+                        try
+                        {
+                            curDateNow = DateTime.Now;
+                            if (curDateNow > curDateDelay)
+                            {
+                                //鏅氫笂9鐐规彁绀虹敤鎴烽棬閿佹槸鍚﹁繕寮�鐫�
+                                if (DoorLockCommonInfo.DoorLockNormallyMode[doorLock.DeviceAddr + doorLock.DeviceEpoint] == true)
+                                {
+                                    if (curDateNow.Hour == 21)
+                                    {
+                                        curDateDelay = curDateNow;
+                                        curDateDelay = curDateDelay.AddHours(+1);
+                                        var result = await Shared.Phone.Device.Logic.SkipView.Exist(3, (ZigBee.Device.DoorLock)doorLock);
+                                        HdlThreadLogic.Current.RunMain(() =>
+                                        {
+                                            //寮瑰嚭寰愭鐨勯偅涓獥鍙�
+                                            DoorLock.DoorLockCommonInfo.NomallyOpenModeInvalidDialog((ZigBee.Device.DoorLock)doorLock, DoorLock.DoorLockCommonInfo.DoorLockMessType.AppOperate,
+                                             result != 0 ? true : false, ControlCommonResourse.UpdateDoorLockStatusAction);
+                                        });
+                                    }
+                                }
+                            }
+                        }
+                        catch { }
+                        System.Threading.Thread.Sleep(1000 * 60);
+                    }
+
+                })
+                { IsBackground = true }.Start();
             });
         }
 
@@ -1121,8 +1172,8 @@
                 UserView.HomePage.Instance.PageIndex += 1;
                 addLogicPage.Show();
                 addLogicPage.action += (w) =>
-                {
-                    doorLock.IsDoorLockNormallyMode = w;
+                {
+                    DoorLockCommonInfo.NormallyOpenModeValue(doorLock, w);
                     UpdateNomallyOpenStatus();
                     //杩斿洖鎸夐敭娓呯┖褰撳墠閫昏緫瀹氫箟鐨凩ogicAction
                     UserCenter.DoorLock.DoorLockCommonInfo.LogicAction = null;

--
Gitblit v1.8.0