From cb7fd6a89ad9fcd9cf575025ab43873f17bf17c8 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期四, 31 十二月 2020 16:46:59 +0800
Subject: [PATCH] 2020-12-31-1

---
 ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs |  174 +++++++++++++++++++++-------------------------------------
 1 files changed, 63 insertions(+), 111 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs b/ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs
index 4d6893e..91c65a7 100644
--- a/ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/LogicDveiceStatus.cs
@@ -30,7 +30,7 @@
                         Common.Logic.CurrentLogic.LogicName = logicName;
                         if (Common.Logic.CurrentLogic.Conditions.Count == 1)
                         {
-                            ConditionView(false, frameLayout);
+                            ConditionView(false, frameLayout,null);
                         }
                         else
                         {
@@ -171,7 +171,9 @@
                                     case DeviceType.IASZone:
                                         {
                                             var iASZonedevice = deviceinof as IASZone;
-                                            var intvalue = conditions["AttriButeData1"];
+                                            //var intvalue = conditions["AttriButeData1"];
+                                            string if_value = "5";
+                                            var intvalue = conditions["Range"];
                                             icon = $"ZigeeLogic/sensor{iASZonedevice.IasDeviceType}.png";
                                             switch (iASZonedevice.IasDeviceType)
                                             {
@@ -183,7 +185,9 @@
                                                         }
                                                         else
                                                         {
-                                                            if (conditions.ContainsKey("IgnoreTime"))
+
+
+                                                            if (conditions.ContainsKey("IgnoreTime")&& conditions["IgnoreTime"]!="0")
                                                             {
                                                                 int minute = int.Parse(conditions["IgnoreTime"]) / 60;
                                                                 int second = int.Parse(conditions["IgnoreTime"]) % 60;
@@ -217,9 +221,9 @@
                                                 case 21:
                                                 case 22:
                                                     {
-                                                        if (conditions.ContainsKey("IgnoreTime"))
-                                                        {
 
+                                                        if (conditions.ContainsKey("IgnoreTime")&&conditions["IgnoreTime"] != "0")
+                                                        {
                                                             int minute = int.Parse(conditions["IgnoreTime"]) / 60;
                                                             int second = int.Parse(conditions["IgnoreTime"]) % 60;
                                                             if (minute != 0 && second != 0)
@@ -245,7 +249,7 @@
                                                         }
                                                         else
                                                         {
-                                                            if (intvalue == "1")
+                                                            if (intvalue == if_value)
                                                             {
                                                                 state = Language.StringByID(MyInternationalizationString.logicopen);
                                                             }
@@ -260,7 +264,7 @@
                                                     break;
                                                 case 40:
                                                     {
-                                                        if (intvalue == "1")
+                                                        if (intvalue == if_value)
                                                         {
                                                             state =Language.StringByID(MyInternationalizationString.smokescreen);
                                                         }
@@ -269,7 +273,7 @@
                                                     break;
                                                 case 42:
                                                     {
-                                                        if (intvalue == "1")
+                                                        if (intvalue == if_value)
                                                         {
                                                             state =Language.StringByID( MyInternationalizationString.waterleakage);
                                                         }
@@ -281,7 +285,7 @@
                                                     break;
                                                 case 43:
                                                     {
-                                                        if (intvalue == "1")
+                                                        if (intvalue == if_value)
                                                         {
                                                             state =Language.StringByID( MyInternationalizationString.gas);
                                                         }
@@ -290,7 +294,7 @@
                                                     break;
                                                 case 277:
                                                     {
-                                                        if (intvalue == "1")
+                                                        if (intvalue == if_value)
                                                         {
                                                             state =Language.StringByID( MyInternationalizationString.callthepolice);
                                                         }
@@ -299,7 +303,7 @@
                                                     break;
                                                 default:
                                                     {
-                                                        if (intvalue == "1")
+                                                        if (intvalue == if_value)
                                                         {
                                                             state =Language.StringByID(MyInternationalizationString.callthepolice);
                                                         }
@@ -373,8 +377,8 @@
                                                         s = "鈮�";
                                                     }
                                                     break;
-                                            }
-                                            ///杞崲娓╁害鍊�/100
+                                            }
+                                            ///杞崲娓╁害鍊�/100
                                             string srtValue = (int.Parse(conditions["AttriButeData1"]) / 100).ToString();
                                             if (conditions["Cluster_ID"] == "1026")
                                             {
@@ -511,16 +515,14 @@
                                 break;
                             case 6:
                                 {
-                                    var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor };
-                                    frameLayout.AddChidren(flMain);
-                                    AddLogicPage.SecurityView(flMain, true);
+                                   
+                                    AddLogicPage.SecurityView(frameLayout, true);
                                 }
                                 break;
                             case 7:
                                 {
-                                    var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor };
-                                    frameLayout.AddChidren(flMain);
-                                    AddLogicPage.LocationView(flMain, true);
+                                 
+                                    AddLogicPage.LocationView(frameLayout, true);
                                 }
                                 break;
                         }
@@ -529,7 +531,7 @@
                     selecteddevice.del.MouseUpEventHandler += (sender, e) =>
                     {
 
-                        var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Confirm,
+                        var alert = new UserCenter.ShowMsgControl(ShowMsgType.Confirm,
                         Language.StringByID(MyInternationalizationString.doyouwanttodelete),
                         Language.StringByID(MyInternationalizationString.confrim));
                         alert.Show();
@@ -537,18 +539,7 @@
                         alert.ConfirmClickEvent += () =>
                         {
                             Common.Logic.CurrentLogic.Conditions.Remove(conditions);
-                            var exist = Common.Logic.CurrentLogic.Conditions.Find((obj) => obj["Type"] == "7");
-                            if (exist == null)
-                            {
-                                //濡傛灉娌℃湁寮�鍚疓PS鏈嶅姟,鎵撳紑鏈嶅姟骞朵笖淇濆瓨鐘舵�佸湪鏈湴锛�
-                                Application.StopGPSLocationService();
-                                Send.SaveLocalFile("GPS_File", "0");
-                            }
                             selecteddevice.selecetdFrameLayout.RemoveFromParent();
-                            //var logicCommunalPage = new LogicCommunalPage();
-                            //UserView.HomePage.Instance.AddChidren(logicCommunalPage);
-                            //UserView.HomePage.Instance.PageIndex += 1;
-                            //logicCommunalPage.Show(() => { });
                         };
 
                     };
@@ -928,7 +919,7 @@
                                                         {
                                                             var intvalue = int.Parse(tasks["Data1"]);
                                                             var colorTemperatureValue = 1000000 / (intvalue * 100);
-                                                            state += Language.StringByID(MyInternationalizationString.colorTemperature) + colorTemperatureValue.ToString() + "K";
+                                                            state += Language.StringByID(MyInternationalizationString.colorTemperature) + colorTemperatureValue.ToString() + "00K";
                                                         }
                                                         break;
                                                 }
@@ -1101,7 +1092,7 @@
                     actiondevice.del.MouseUpEventHandler += (sender, e) =>
                     {
 
-                        var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Confirm,
+                        var alert = new UserCenter.ShowMsgControl(ShowMsgType.Confirm,
                         Language.StringByID(MyInternationalizationString.doyouwanttodelete),
                         Language.StringByID(MyInternationalizationString.confrim));
                         alert.Show();
@@ -1127,90 +1118,50 @@
         /// <summary>
         /// 涓庢垨鏉′欢甯冨眬鐣岄潰鐨勬柟娉� 
         /// </summary>
-        /// <param name="edit"></param>
-        /// <param name="frameLayout"></param>
-        public void ConditionView(bool edit, FrameLayout frameLayout)
+        /// <param name="edit">琛ㄧず鏄惁缂栬緫</param>
+        /// <param name="frameLayout">鏄剧ず鍦ㄥ摢涓晫闈�</param>
+        /// <param name="button">鏄剧ず閫変腑鏂囨湰</param>
+        public void ConditionView(bool edit, FrameLayout frameLayout,Button button)
         {
 
-            #region  ------缁勫悎鏉′欢鐣岄潰甯冨眬閮ㄥ垎   
-            var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicTranslucentColor };
-            frameLayout.AddChidren(flMain);
-            CompleteView completeView = new CompleteView();
-            flMain.AddChidren(completeView.Show(2));
-            completeView.Btntitle.TextID = MyInternationalizationString.condition;
-            EventHandler<MouseEventArgs> clickcancel = (sender, e) =>
-            {
-                UserView.HomePage.Instance.ScrollEnabled = true;
-                flMain.RemoveFromParent();
-            };
-            flMain.MouseUpEventHandler += clickcancel;
-            completeView.Btncancel.MouseUpEventHandler += clickcancel;
-
-            //婊¤冻鎵�鏈夋潯浠�
-            mFunView allFunView = new mFunView();
-            allFunView.frameLayout.Y = Application.GetRealHeight(140 + 20);
-            completeView.Show(2).AddChidren(allFunView.Show());
-            allFunView.titleBtn.TextID = MyInternationalizationString.Allconditions;
-            //婊¤冻鍏朵腑涓�涓潯浠�
-            mFunView ormFunview = new mFunView();
-            ormFunview.frameLayout.Y = allFunView.frameLayout.Bottom;
-            completeView.Show(2).AddChidren(ormFunview.Show());
-            ormFunview.titleBtn.TextID = MyInternationalizationString.anycondition;
-            ormFunview.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
-            #endregion
-
-            ///婊¤冻鎵�鏈夋潯浠剁偣鍑讳簨浠�
-            allFunView.clickviewBtn.MouseUpEventHandler += (sedner, e) =>
-            {
-                allFunView.selectedIconBtn.Visible = true;
-                ormFunview.selectedIconBtn.Visible = false;
-                allFunView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
-                ormFunview.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
-            };
-            ///婊¤冻鍏朵腑涓�涓潯浠剁偣鍑讳簨浠�
-            ormFunview.clickviewBtn.MouseUpEventHandler += (sedner, e) =>
-            {
-                allFunView.selectedIconBtn.Visible = false;
-                ormFunview.selectedIconBtn.Visible = true;
-                allFunView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
-                ormFunview.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
-            };
-
+         
+            string stateText = "";
             if (edit)
             {
-                if (Common.Logic.CurrentLogic.Relationship == 0)
-                {
-                    allFunView.selectedIconBtn.Visible = true;
-                    ormFunview.selectedIconBtn.Visible = false;
-                    allFunView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
-                    ormFunview.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
-                }
-                else
-                {
-                    allFunView.selectedIconBtn.Visible = false;
-                    ormFunview.selectedIconBtn.Visible = true;
-                    allFunView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
-                    ormFunview.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
-                }
-            }
-            completeView.Btncomplete.MouseUpEventHandler += (sender, e) =>
-            {
-                if (!allFunView.selectedIconBtn.Visible && !ormFunview.selectedIconBtn.Visible)
-                {
-                    ///鍙互鎻愮ず鏈�変腑鐘舵�侊紱
-                    return;
-                }
-                flMain.RemoveFromParent();
 
-                if (allFunView.selectedIconBtn.Visible)
+                switch (Common.Logic.CurrentLogic.Relationship)
+                {
+                    case 0:
+                        {
+                            stateText = Language.StringByID(MyInternationalizationString.Allconditions);
+                        }
+                        break;
+                    case 1:
+                        {
+                            stateText = Language.StringByID(MyInternationalizationString.anycondition);
+                        }
+                        break;
+                }
+
+            }
+
+            PublicInterface publicInterface = new PublicInterface();
+            var list = publicInterface.GetViewList("缁勫悎鏉′欢");
+            publicInterface.SingleSelectionShow(frameLayout, list, MyInternationalizationString.condition, stateText, (str) =>
+            {
+                //鏄剧ず閫変腑鏂囨湰
+                if (button!=null) {
+                    button.Text = Language.StringByID(MyInternationalizationString.followingconditions)+ str;
+                }
+                if (str == Language.StringByID(MyInternationalizationString.Allconditions))
                 {
                     Common.Logic.CurrentLogic.Relationship = 0;
 
                 }
-                if (ormFunview.selectedIconBtn.Visible)
+                else if (str == Language.StringByID(MyInternationalizationString.anycondition))
                 {
-                    Common.Logic.CurrentLogic.Relationship = 1;
 
+                    Common.Logic.CurrentLogic.Relationship = 1;
                 }
                 if (edit)
                 {
@@ -1218,10 +1169,6 @@
                     {
                         Send.LogicControlSwitch(Common.Logic.CurrentLogic);
                     }
-                    var logicCommunalPage = new LogicCommunalPage();
-                    UserView.HomePage.Instance.AddChidren(logicCommunalPage);
-                    UserView.HomePage.Instance.PageIndex += 1;
-                    logicCommunalPage.Show(() => { });
                 }
                 else
                 {
@@ -1230,7 +1177,12 @@
                     UserView.HomePage.Instance.PageIndex += 1;
                     addLogicPage.Show();
                 }
-            };
+
+            });
+
+
+
+     
 
         }
     }

--
Gitblit v1.8.0