From 01766e8a9461f412012eac532f5e60693b3ef7ad Mon Sep 17 00:00:00 2001
From: WJC <wjc@hdlchina.com.cn>
Date: 星期四, 02 四月 2020 12:00:55 +0800
Subject: [PATCH] 2020-04-02-1

---
 ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs |   81 ++++++++++++++++++++++++++++++----------
 1 files changed, 60 insertions(+), 21 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs b/ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs
index fee5add..66a6f74 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/SkipView.cs
@@ -13,7 +13,7 @@
         /// <summary>
         /// 鍏跺畠鐣岄潰璺宠繘鏉ョ殑鍏ュ彛
         /// </summary>
-        public static void SkipAddLogic(int intvalue,UserCenter.MemberInfoRes accountObj = null,DoorLock doorLock=null)
+        public static void SkipAddLogic(int intvalue,DoorLock doorLock=null,UserCenter.MemberInfoRes accountObj = null)
         {
             /// 0.姝e父鑷姩鍖�;1.闂ㄩ攣鑷姩鍖�;2.闂ㄩ攣甯稿紑.鍏�;
             switch (intvalue)
@@ -56,22 +56,50 @@
                         doorLockLogicList.Show();
                     } break;
                 case 2: {
-                        ///杩涙潵鍒锋柊涓�娆¤澶囧垪琛紱
-                        Common.Logic.LogicDviceList.Clear();
-                        if (Common.Logic.LogicDviceList.Count == 0)
-                        {
-                            Common.Logic.LogicDviceList.AddRange(LocalDevice.Current.listAllDevice.ToArray());
+                        Common.Logic.LogicDviceList.Clear();
+                        if (Common.Logic.LogicDviceList.Count == 0)
+                        {
+                            Common.Logic.LogicDviceList.AddRange(LocalDevice.Current.listAllDevice.ToArray());
                         }
+                        int h =int.Parse(DateTime.Now.ToString("hh"));
+                        int m = int.Parse(DateTime.Now.ToString("mm"));
+                        //榛樿涓�涓椂闂存(寮�濮嬫椂闂翠负:绯荤粺褰撳墠锛岀粨鏉熸椂闂翠负:寮�濮嬫椂闂�+1涓椂闂�)
+                        Dictionary<string, string> timeDictionary = new Dictionary<string, string>();
+                        timeDictionary.Add("Type", "5");
+                        timeDictionary.Add("IsValid", "1");
+                        timeDictionary.Add("StartHour", h.ToString());
+                        timeDictionary.Add("StartMin", m.ToString());
+                        if (h + 1 == 24)
+                        {
+                            //缁撴潫鏃堕棿瓒呭嚭24灏忔椂澶勭悊鏂规硶;
+                            timeDictionary.Add("StopHour", h.ToString());
+                            timeDictionary.Add("StopMin", "59");
+                        }
+                        else
+                        {
+                            timeDictionary.Add("StopHour", (h + 1).ToString());
+                            timeDictionary.Add("StopMin", m.ToString());
+                        }
+                        Dictionary<string, object> actionsInfo = new Dictionary<string, object>();
+                        actionsInfo.Add("LinkType", 8);
+                        //actionsInfo.Add("DeviceAddr", doorLock.DeviceAddr);
+                        //actionsInfo.Add("Epoint", doorLock.DeviceEpoint);
+                        actionsInfo.Add("DeviceAddr","jtghkh123");
+                        actionsInfo.Add("Epoint", "1");
+                        actionsInfo.Add("PassData", "055704010112");//榛樿闂ㄩ攣甯稿紑
+                  
                         //new涓�涓柊閫昏緫瀵硅薄锛�
                         //鏂板闂ㄩ攣甯稿紑妯″紡鑷姩鍖栧叆鍙o紱
                         Common.Logic.CurrentLogic = new Common.Logic();
                         Common.Logic.CurrentLogic.IsEnable = 1;//榛樿涓哄紑
                         Common.Logic.CurrentLogic.LogicType = 2;//鏍囪閫昏緫绫诲瀷
-                        Common.Logic.CurrentLogic.LogicName = Language.StringByID(MyInternationalizationString.openmode);
-                        var logicCommunalPage = new LogicCommunalPage();
-                        UserView.HomePage.Instance.AddChidren(logicCommunalPage);
+                        Common.Logic.CurrentLogic.LogicName = Language.StringByID(MyInternationalizationString.automation1);
+                        Common.Logic.CurrentLogic.Conditions.Add(timeDictionary);//娣诲姞鏉′欢
+                        Common.Logic.CurrentLogic.Actions.Add(actionsInfo);//娣诲姞鐩爣
+                        var oneLogic = new OneLogic();
+                        UserView.HomePage.Instance.AddChidren(oneLogic);
                         UserView.HomePage.Instance.PageIndex += 1;
-                        logicCommunalPage.Show(() => { });
+                        oneLogic.Show(false);
                     } break;
             }
 
@@ -458,11 +486,20 @@
                 edit.MouseUpEventHandler += (sender, e) =>
                 {
                     Common.Logic.CurrentLogic = logic;
-                    var logicCommunalPage = new LogicCommunalPage();
-                    HomePage.Instance.AddChidren(logicCommunalPage);
-                    HomePage.Instance.PageIndex += 1;
-                    logicCommunalPage.Show(() => { logicnameBtn.Text = logic.LogicName; Automationview(refresview, no); });
-
+                    if (Common.Logic.CurrentLogic.LogicType == 2)
+                    {
+                        var oneLogic = new OneLogic();
+                        UserView.HomePage.Instance.AddChidren(oneLogic);
+                        UserView.HomePage.Instance.PageIndex += 1;
+                        oneLogic.Show(true);
+                    }
+                    else
+                    {
+                        var logicCommunalPage = new LogicCommunalPage();
+                        HomePage.Instance.AddChidren(logicCommunalPage);
+                        HomePage.Instance.PageIndex += 1;
+                        logicCommunalPage.Show(() => { logicnameBtn.Text = logic.LogicName; Automationview(refresview, no); });
+                    }
                 };
 
                 ///鍒犻櫎
@@ -658,14 +695,15 @@
         #endregion
 
         /// <summary>
-        /// 闂ㄩ攣鍙栨秷璁剧疆鐢ㄧ殑鏂规硶
+        /// 闂ㄩ攣鍙栨秷璁剧疆鐢ㄧ殑鏂规硶(鐩稿綋涓�涓叧闂父寮�妯″紡鎸夐挳,涓嶉渶瑕佹樉绀鸿鑷姩鍖�)
         /// </summary>
         /// <param name="timeVlaue">鏃堕棿鍊�</param>
         /// <param name="common">璁惧</param>
         /// <returns></returns>
         public static void LockAddModifyLogic(int timeVlaue, CommonDevice common)
         {
-
+            var h = DateTime.Now.ToString("hh");
+            var m = DateTime.Now.ToString("mm");
             Dictionary<string, string> timeConditionsInfo = new Dictionary<string, string>();
             timeConditionsInfo.Add("Type", "0");
             timeConditionsInfo.Add("IsValid", "1");
@@ -673,18 +711,19 @@
             timeConditionsInfo.Add("RemindTime", "0");
             timeConditionsInfo.Add("EnDelay", "0");
             timeConditionsInfo.Add("DelayTime", "0"); 
-            timeConditionsInfo.Add("StartHour", timeVlaue.ToString());
-            timeConditionsInfo.Add("StartMin", "0");
+            timeConditionsInfo.Add("StartHour", h);
+            timeConditionsInfo.Add("StartMin", m);
+            timeConditionsInfo.Add("DoorLockOpenDelayTime", timeVlaue.ToString());
             Dictionary<string, object> actionsInfo = new Dictionary<string, object>();
             actionsInfo.Add("LinkType", 8);
             actionsInfo.Add("DeviceAddr", common.DeviceAddr);
             actionsInfo.Add("Epoint", common.DeviceEpoint);
-            actionsInfo.Add("PassData", "055704010112");//榛樿闂ㄩ攣甯稿紑
+            actionsInfo.Add("PassData", "055704010113");//榛樿闂ㄩ攣甯稿叧
 
             Common.Logic currentLogic = new Common.Logic();
             currentLogic.IsEnable = 1;//榛樿涓哄紑
             currentLogic.TimeAttribute.Repeat = 0;//鎵ц涓�娆�
-            currentLogic.LogicType = 2;//鏍囪閫昏緫绫诲瀷
+            currentLogic.LogicType = 3;//鏍囪閫昏緫绫诲瀷
             currentLogic.LogicName = Language.StringByID(R.MyInternationalizationString.openmode);
             currentLogic.Conditions.Add(timeConditionsInfo);
             currentLogic.Actions.Add(actionsInfo);

--
Gitblit v1.8.0