From 796c8eef0f690d0d04e14db1ecd3d365ed604017 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 18 五月 2020 19:01:57 +0800
Subject: [PATCH] 2020-05-18-3

---
 ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs |   53 ++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 36 insertions(+), 17 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs b/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs
index 435cff9..41b7dc8 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/SoneLogicList.cs
@@ -16,7 +16,7 @@
 
         }
         /// 缁欏緪姊呭埛鏂扮晫闈㈢敤鐨�
-        public  Action<bool> action;
+        public Action<bool> action;
         ///绗簩鍧楃涓�绾х埗鎺т欢
         FrameLayout fLayout = new FrameLayout();
         ///绗笁鍧楃涓�绾х埗鎺т欢
@@ -31,9 +31,14 @@
         /// 璁板綍閫変腑鏃堕棿
         /// </summary>
         public int timeValue = 0;
+
+        /// <summary>
+        /// 鏃堕棿鎴�
+        /// </summary>
+        public int timeLong = 0;
         public async void Show()
         {
-           
+
             #region  鐣岄潰鐨勫竷灞�浠g爜
             UserView.HomePage.Instance.ScrollEnabled = false;//閿佷綇宸︽粦
             TopView view = new TopView();
@@ -60,12 +65,12 @@
             this.AddChidren(middle);
             #endregion
             //鏄父寮�妯″紡鍐嶅幓璇诲彇
-            
+
             if (Send.CurrentDoorLock.IsDoorLockNormallyMode)
             {
                 //杩涙潵鏇存柊涓�娆�
                 //鏌ユ壘鏄惁瀛樺湪鏃舵晥鎬ц嚜鍔ㄥ寲锛涙湁鐨勮瘽灏辫繑鍥炶嚜鍔ㄥ寲瀵硅薄;
-              var  logic = await SkipView.GetLogicIfon(Send.CurrentDoorLock);
+                var logic = await SkipView.GetLogicIfon(Send.CurrentDoorLock);
                 if (logic != null)
                 {
                     try
@@ -73,6 +78,8 @@
                         //杩涙潵鏇存柊涓�娆″��
                         logicId = logic.LogicId;
                         timeValue = int.Parse(logic.Conditions[0]["DoorLockOpenDelayTime"]);
+                        timeLong = int.Parse(logic.Conditions[0]["TriggerTime"]);
+
                     }
                     catch { }
                 }
@@ -221,7 +228,7 @@
         /// <summary>
         /// 甯稿紑妯″紡寮�鍏冲垏鎹㈠浘鏍囩晫闈�
         /// </summary>
-        public  void ModeView()
+        public void ModeView()
         {
 
             fLayout.RemoveAll();
@@ -306,15 +313,16 @@
                 if (logicId != 0)
                 {
                     openModeFl.AddChidren(timeTextBtn);
+                    var datetime = GetLocalTime(timeLong);
                     ///鏈夋椂鏁堟�у父寮�鎵嶆樉绀烘椂闂存潯浠舵枃鏈�
-                    var y = DateTime.Now.Year.ToString();//閭d竴骞�
-                    var m = DateTime.Now.Month.ToString();//閭d竴鏈�
-                    var d = DateTime.Now.ToString("dd");//閭d竴澶�
-                    var h = int.Parse(DateTime.Now.ToString("HH"));//灏忔椂
-                    int dayInt = (h + timeValue) / 24;//绠楀嚭鍑犲ぉ鍚庢墽琛�
-                    int hour = (h + timeValue) % 24;//绠楀嚭鍑犲ぉ鍚庨偅涓椂闂存墽琛�
-                    int days = int.Parse(d) + dayInt;
-                    int minute = DateTime.Now.Minute;//鍒嗛挓
+                    var y = datetime.Year.ToString();//閭d竴骞�
+                    var m = datetime.Month.ToString();//閭d竴鏈�
+                    var d = datetime.ToString("dd");//閭d竴澶�
+                    var h = int.Parse(datetime.ToString("HH"));//灏忔椂
+                                                               // int dayInt = (h + timeValue) / 24;//绠楀嚭鍑犲ぉ鍚庢墽琛�
+                                                               // int hour = (h + timeValue) % 24;//绠楀嚭鍑犲ぉ鍚庨偅涓椂闂存墽琛�
+                                                               // int days = int.Parse(d) + dayInt;
+                    int minute = datetime.Minute;//鍒嗛挓
                     string text1 = Language.StringByID(MyInternationalizationString.timeSensitive);
                     string text2 = Language.StringByID(MyInternationalizationString.yearSone);
                     string text3 = Language.StringByID(MyInternationalizationString.monthSone);
@@ -322,7 +330,7 @@
                     string text5 = Language.StringByID(MyInternationalizationString.hour1);
                     string text6 = Language.StringByID(MyInternationalizationString.executeSone);
                     // timeTextBtn.Text = text1 + y + text2 + m + text3 + days.ToString() + text4 + hour.ToString() + text5 + minute.ToString() + text6;
-                    timeTextBtn.Text = text1 + m + text3 + days.ToString() + text4 + hour.ToString() + text5 + minute.ToString() + text6;
+                    timeTextBtn.Text = text1 + m + text3 + d + text4 + h + text5 + minute.ToString() + text6;
                 }
 
 
@@ -447,7 +455,7 @@
         /// 璇诲彇鑷姩鍖栧垪琛ㄦ暟鎹紱
         /// </summary>
         /// <param name="yes"></param>
-        private async void Read( bool yes)
+        private async void Read(bool yes)
         {
             if (yes)
             {
@@ -473,7 +481,7 @@
                                 Common.Logic.SoneLogicList.Add(logic);
                             }
                         }
-                    } 
+                    }
                 }
             }
             catch (Exception e)
@@ -662,6 +670,17 @@
                 };
             }
         }
-     
+
+        /// <summary>
+        /// 灏哢NIX鏃堕棿鎴宠浆鎹㈡垚绯荤粺鏃堕棿(绮剧‘鍒扮)
+        /// <returns></returns>
+        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;
+        }
     }
 }

--
Gitblit v1.8.0