From 351bdda734832d821a9764b0cde8be5d83c4ec50 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期四, 01 十二月 2022 09:56:25 +0800
Subject: [PATCH] 2022年12月01日09:56:23

---
 ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs |  560 +++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 410 insertions(+), 150 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
index 11d924f..f3e6269 100755
--- a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs
@@ -12,7 +12,7 @@
         /// 閫変腑璇ヨ澶囧姛鑳戒綔涓烘潯浠舵垨鑰呯洰鏍囩殑瑙嗗浘鏂规硶
         /// </summary>
         /// <param name="common">Common.</param>
-        public static void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit, string str,int intValue)
+        public static void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit, string str, int intValue)
         {
             #region  -------鐣岄潰甯冨眬閮ㄥ垎
             //涓嶈褰撳墠鐣岄潰婊戝姩
@@ -33,19 +33,14 @@
 
             mFunView openView = new mFunView();
             openView.frameLayout.Y = Application.GetRealHeight(140 + 20);
-            //completeView.Show(l).AddChidren(openView.Show());
             openView.titleBtn.TextID = MyInternationalizationString.open;
 
             mFunView closeView = new mFunView();
-            closeView.frameLayout.Y = Application.GetRealHeight(140 + 20+160);
-            // closeView.frameLayout.Y = openView.frameLayout.Bottom;
-            //completeView.Show(l).AddChidren(closeView.Show());
+            closeView.frameLayout.Y = Application.GetRealHeight(140 + 20 + 160);
             closeView.titleBtn.TextID = MyInternationalizationString.close;
 
             mFunView takebackView = new mFunView();
-             takebackView.frameLayout.Y = Application.GetRealHeight(140+20+160+160);
-            // takebackView.frameLayout.Y = closeView.frameLayout.Bottom;
-            //completeView.Show(l).AddChidren(takebackView.Show());
+            takebackView.frameLayout.Y = Application.GetRealHeight(140 + 20 + 160 + 160);
             takebackView.titleBtn.TextID = MyInternationalizationString.onoff;
             takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
             #region  -------杩涘害鏉℃帶浠�
@@ -69,8 +64,9 @@
                 ThumbImagePath = "ZigeeLogic/progressbtn2.png",//杩涘害鏉℃寜閽浘鏍�
                 ThumbImageHeight = Application.GetRealHeight(56),//杩涘害鏉℃寜閽浘鏍囩殑楂樺害锛堥粯璁ゆ鏂瑰舰锛氬鍜岄珮涓�鏍凤級
                 ProgressTextColor = ZigbeeColor.Current.LogicBtnCancelColor,
-                ProgressTextSize = 9,//鏄剧ず鐧惧垎姣斿瓧浣撳ぇ灏�12
-                SeekBarViewHeight = Application.GetRealHeight(5),//杩涘害鏉$殑楂樺害10
+                ProgressTextSize = 12,//鏄剧ず鐧惧垎姣斿瓧浣撳ぇ灏�12
+                SeekBarViewHeight = Application.GetRealHeight(6),//杩涘害鏉$殑楂樺害10
+                SeekBarPadding = 30,
             };
             #endregion
             #endregion
@@ -94,10 +90,10 @@
             actionsInfo.Add("TaskList", taskListInfo);
             List<Dictionary<string, string>> TaskList = null;
             #endregion
-            var _if=str.Split('_');
+            var _if = str.Split('_');
             if (edit)
             {
-                if (_if[0]== "condition")
+                if (_if[0] == "condition")
                 {
                     var deviceinfo = Common.Logic.CurrentLogic.Conditions[intValue];
                     if (deviceinfo["Type"] == "1")
@@ -120,7 +116,7 @@
                             TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>;
                         }
                     }
-                  
+
                 }
             }
             #endregion
@@ -131,6 +127,7 @@
                 ///鐏厜
                 case DeviceType.OnOffOutput:
                     {
+
                         if (_if[0] == "condition")
                         {
                             l = 2;
@@ -279,6 +276,8 @@
                                 }
                             }
                         }
+
+
                     }
                     break;
                 case DeviceType.IASZone:
@@ -304,11 +303,11 @@
                             closeView.selectedIconBtn.Visible = false;
                             if (iASZonedevice.IasDeviceType == 13)
                             {
-                                
+
                                 closeView.selectedIconBtn.Visible = true;
                             }
                             Send.dictionary(deviceConditionsInfo, "Range", "5");
-                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "1");
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "3");//鏀寔1鍜�2;1+2=3
                         };
                         ///鐐瑰嚮鍙栨秷浜嬩欢
                         closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
@@ -318,9 +317,9 @@
                             closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                             openView.selectedIconBtn.Visible = false;
                             closeView.selectedIconBtn.Visible = true;
-                            Send.dictionary(deviceConditionsInfo, "Range", "1");
-                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "0");
-                            if (iASZonedevice.IasDeviceType == 13|| iASZonedevice.IasDeviceType == 541)
+                            Send.dictionary(deviceConditionsInfo, "Range", "8");//1
+                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "3");//0
+                            if (iASZonedevice.IasDeviceType == 13 || iASZonedevice.IasDeviceType == 541)
                             {
                                 SelectedDeviceStatus = "";
                                 closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
@@ -489,13 +488,13 @@
                         {
                             if (devices["AttriButeId"] == "1281")
                             {
-                                if (devices.ContainsKey("IgnoreTime"))
+                                if (devices.ContainsKey("IgnoreTime") && devices["IgnoreTime"] != "0")
                                 {
                                     timeValue = int.Parse(devices["IgnoreTime"]);
                                 }
                                 else
                                 {
-                                    if (devices["AttriButeData1"] == "1")
+                                    if (devices["Range"] == "5")
                                     {
                                         openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                                         closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
@@ -514,7 +513,7 @@
 
 
                             }
-                            
+
                         }
 
                     }
@@ -548,7 +547,7 @@
                     }
                     break;
                 case DeviceType.DoorLock:
-                    {
+                    {
 
                         flMain.RemoveFromParent();
                         var memberList = new MemberList();
@@ -560,133 +559,53 @@
                     break;
                 case DeviceType.TemperatureSensor:
                     {
-                        l = 4;
-                        string current = Language.StringByID(MyInternationalizationString.current);
-                        completeView.Show(l);
-                        var temperatureSensor = common as TemperatureSensor;
-                        SelectedDeviceStatus = "TemperatureSensor";
-                        #region  甯冨眬View
-                        var PickerViewfra = new FrameLayout
-                        {
-                            Y = Application.GetRealHeight(140),
-                            Height = Application.GetRealHeight(640),
-                        };
-                        completeView.Show(l).AddChidren(PickerViewfra);
-                        var mUIPickerView = new UIPickerView
-                        {
-                            Height = Application.GetRealHeight(640 - 5),
-                        };
-                        PickerViewfra.AddChidren(mUIPickerView);
 
-                        var mList1 = new List<string> { ">", "<", "=", "鈮�", "鈮�" };
-                        var mList2 = new List<string>();
-                        var mList3 = new List<string>();
-                        for (int i = 1; i <= 100; i++)
+                    //鑾峰彇璁惧绫诲瀷
+                    var deviceEnumInfo = Common.LocalDevice.Current.GetMyDeviceEnumInfo(new List<CommonDevice>() { common });
+
+                        //绌烘皵璐ㄩ噺浼犳劅鍣�
+                        if (deviceEnumInfo.ConcreteType == Common.DeviceConcreteType.AirQualitySensor)
                         {
-                            mList2.Add(i.ToString());
-                        }
-                        if (temperatureSensor.SensorDiv == 1)
-                        {
-                            mList3.Add("鈩�");
-                            Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1026");
-                            Send.dictionary(deviceConditionsInfo, "AttriButeId", "0");
-                            Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣�
-                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿娓╁害鍊�50鈩�
-                            Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+                            AirSonser(flMain, SelectedDeviceStatus, edit, common, devices);
                         }
                         else
                         {
-                            mList3.Add("%");
-                            Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1029");
+
+
+                            //缂栬緫鏃剁殑鐘舵�佸��
+                            string str1 = "";
+                            string str2 = "";
+                            string str3 = "";
+                            if (edit && devices != null)
+                            {
+                                //娓╁害鍊�
+                                str1 = devices["AttriButeData1"];
+                                //姣旇緝鍏崇郴鍊�
+                                str2 = devices["Range"];
+
+                            }
+                            var temperatureSensor = common as TemperatureSensor;
+                            if (temperatureSensor.SensorDiv == 1)
+                            {
+                                str3 = "鈩�";
+                                Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1026");
+                            }
+                            else
+                            {
+                                str3 = "%";
+                                Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1029");
+                            }
                             Send.dictionary(deviceConditionsInfo, "AttriButeId", "0");
-                            Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣�
-                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿婀垮害鍊�50%
                             Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0");
-                        }
-                        mUIPickerView.setNPicker(mList1, mList2, mList3);
-
-                        #endregion
-
-                        mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) =>
-                        {
-                            ///娓╁害杩涚巼杞崲*100
-                            var strValue = (int.Parse(mList2[s2]) * 100).ToString();
-                            SelectedDeviceStatus = "TemperatureSensor";
-                            Send.dictionary(deviceConditionsInfo, "AttriButeData1", strValue);
-                            switch (mList1[s1])
+                            completeView.Show(4);
+                            PublicInterface publicInterface = new PublicInterface();
+                            publicInterface.TemperatureShow(completeView.fraView, str3, str2, str1, (relationValueStr, tempValueStr) =>
                             {
-                                case ">":
-                                    {
-                                        Send.dictionary(deviceConditionsInfo, "Range", "0");
-                                    }
-                                    break;
-                                case "<":
-                                    {
-                                        Send.dictionary(deviceConditionsInfo, "Range", "2");
-                                    }
-                                    break;
-                                case "=":
-                                    {
-                                        Send.dictionary(deviceConditionsInfo, "Range", "1");
-                                    }
-                                    break;
-                                case "鈮�":
-                                    {
-                                        Send.dictionary(deviceConditionsInfo, "Range", "6");
-                                    }
-                                    break;
-                                case "鈮�":
-                                    {
-                                        Send.dictionary(deviceConditionsInfo, "Range", "7");
-                                    }
-                                    break;
-                            }
-                        };
-
-                        //榛樿=,50
-                        int index1 = 2, index2 = 49;
-                        if (edit && devices != null)
-                        {
-                            SelectedDeviceStatus = "";
-                            string s = "";
-                            switch (devices["Range"])
-                            {
-                                case "0":
-                                    {
-                                        s = ">";
-                                    }
-                                    break;
-                                case "1":
-                                    {
-                                        s = "=";
-                                    }
-                                    break;
-                                case "2":
-                                    {
-                                        s = "<";
-                                    }
-                                    break;
-                                case "6":
-                                    {
-                                        s = "鈮�";
-                                    }
-                                    break;
-                                case "7":
-                                    {
-                                        s = "鈮�";
-                                    }
-                                    break;
-                            }
-                            //鏌ユ壘绱㈠紩
-                            index1 = mList1.IndexOf(s);
-                            //杞崲娓╁害鍊�/100
-                            var dd = (int.Parse(devices["AttriButeData1"])/100).ToString();
-                            index2 = mList2.IndexOf(dd);
-
+                                SelectedDeviceStatus = "TemperatureSensor";
+                                Send.dictionary(deviceConditionsInfo, "AttriButeData1", tempValueStr);
+                                Send.dictionary(deviceConditionsInfo, "Range", relationValueStr);
+                            });
                         }
-                        ///鏇存柊鏈�鏂扮姸鎬侊紱
-                        mUIPickerView.setCurrentItems(index1, index2, 0);
-
                     }
                     break;
                 ///璋冨厜鐏厜
@@ -699,7 +618,7 @@
                         taskListInfo.Add(switchdictionary);
                         completeView.Show(l).AddChidren(openView.Show());
                         openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
-                   
+
                         horizontalSeekBarRowLien.Y = openView.frameLayout.Bottom;
                         horizontalSeekBarVol.Y = openView.frameLayout.Bottom;
                         completeView.Show(l).AddChidren(horizontalSeekBarRowLien);
@@ -740,7 +659,6 @@
                             var lightbrightnessvalue = (254 * horizontalSeekBarVol.Progress) / 100;
                             Send.dictionary(switchdictionary, "Data1", lightbrightnessvalue.ToString());
                         };
-
                         ///鍙栨秷浜嬩欢
                         closeView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
                         {
@@ -753,7 +671,6 @@
                             Send.dictionary(switchdictionary, "TaskType", "1");
                             Send.dictionary(switchdictionary, "Data1", "0");//榛樿鍊�
                         };
-
                         //鍙栧弽
                         takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
                         {
@@ -1257,7 +1174,8 @@
                         };
                     }
                     break;
-                case DeviceType.ColorTemperatureLight: {
+                case DeviceType.ColorTemperatureLight:
+                    {
                         flMain.RemoveFromParent();
                         var nightlight = new Nightlight();
                         UserView.HomePage.Instance.AddChidren(nightlight);
@@ -1270,13 +1188,15 @@
                         {
                             nightlight.Show(common, edit, _if[1]);
                         }
-                        
+
                     }
                     break;
+                
+            
             }
             completeView.Btncomplete.MouseUpEventHandler += (sender, e) =>
             {
-                //UserView.HomePage.Instance.ScrollEnabled = true;
+                UserView.HomePage.Instance.ScrollEnabled = true;
                 if (SelectedDeviceStatus != "")
                 {
                     if (_if[0] == "condition")
@@ -1299,7 +1219,7 @@
                 {
                     if (!edit)
                     {
-                        var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal,
+                        var alert = new UserCenter.ShowMsgControl(ShowMsgType.Normal,
                                     Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
                                    Language.StringByID(MyInternationalizationString.confrim));
                         alert.Show();
@@ -1338,12 +1258,11 @@
                         }
                         break;
                 }
-                
+
 
             };
         }
-
-        /// <summary>
+              /// <summary>
         /// 绌鸿皟妯″紡鐨勭姸鎬�
         /// </summary>
         /// <param name="modestring"></param>
@@ -1409,5 +1328,346 @@
             }
 
         }
+        /// <summary>
+        /// 绌烘皵璐ㄩ噺浼犳劅鍣╒iew(鐗规畩澶勭悊)
+        /// </summary>
+        /// <param name="flMain"></param>
+        /// <param name="SelectedDeviceStatus"></param>
+        /// <param name="edit"></param>
+        /// <param name="common"></param>
+        /// <param name="dic"></param>
+        private static void AirSonser(FrameLayout flMain,string SelectedDeviceStatus,bool edit,CommonDevice common, Dictionary<string, string> dic=null) {
+            flMain.RemoveAll();
+            if (edit&&dic!=null) {
+                AirProperty(flMain, dic, common,"", edit, SelectedDeviceStatus);
+            }
+            else
+            {
+                PublicInterface publicInterface = new PublicInterface();
+                var list0 = publicInterface.GetViewList("绌烘皵璐ㄩ噺浼犳劅鍣�");
+                publicInterface.SingleSelectionShow(flMain, list0, MyInternationalizationString.airqualitysensor, "", (tagText) =>
+                {
+                    flMain.RemoveAll();
+                    SelectedDeviceStatus = "TemperatureSensor";
+                    AirProperty(flMain, dic, common,tagText, edit, SelectedDeviceStatus);
+                }, () => { flMain.RemoveFromParent(); });
+            }
+        }
+        /// <summary>
+        /// 绌烘皵璐ㄩ噺浼犳劅鍣ㄥ睘鎬у��(鐗规畩澶勭悊)
+        /// </summary>
+        /// <param name="flMain"></param>
+        /// <param name="dic"></param>
+        /// <param name="common"></param>
+        /// <param name="tagText"></param>
+        /// <param name="edit"></param>
+        /// <param name="SelectedDeviceStatus"></param>
+        private static void AirProperty(FrameLayout flMain, Dictionary<string, string> dic,CommonDevice common,string tagText,bool edit, string SelectedDeviceStatus) {
+            PublicInterface publicInterface = new PublicInterface();
+            string range = ""; 
+            string stateText = "";
+            if (edit&& dic!=null)
+            {
+                range = dic["Range"];
+                switch (dic["Cluster_ID"])
+                {
+                    case "1066":
+                        {
+                            if (dic["AttriButeId"] == "57344")
+                            {
+                                tagText = Language.StringByID(MyInternationalizationString.kongqizhiliang);
+                                switch (dic["AttriButeData1"])
+                                {
+
+                                    case "1":
+                                        {
+                                            stateText = Language.StringByID(MyInternationalizationString.you);
+                                        }
+                                        break;
+                                    case "2":
+                                        {
+                                            stateText = Language.StringByID(MyInternationalizationString.liang);
+                                        }
+                                        break;
+                                    case "3":
+                                        {
+                                            stateText = Language.StringByID(MyInternationalizationString.cha);
+                                        }
+                                        break;
+                                }
+                            }
+                            else
+                            {
+                                tagText = Language.StringByID(MyInternationalizationString.pm25);
+                                ///Pm2.5
+                                int intValue = int.Parse(dic["AttriButeData1"]);
+                                if (0 < intValue && intValue < 30)
+                                {
+                                    stateText = Language.StringByID(MyInternationalizationString.pmyou);
+                                }
+                                else if (36 < intValue && intValue < 75)
+                                {
+                                    stateText = Language.StringByID(MyInternationalizationString.pmliang);
+                                }
+                                else if (76 < intValue && intValue < 115)
+                                {
+                                    stateText = Language.StringByID(MyInternationalizationString.pmqingdu);
+                                }
+                                else if (intValue > 115)
+                                {
+                                    stateText = Language.StringByID(MyInternationalizationString.pmzhongdu);
+                                }
+
+                            }
+                        }
+                        break;
+                    case "1037":
+                        {
+                            tagText = Language.StringByID(MyInternationalizationString.co2);
+                            ///co2
+                            int intValue = int.Parse(dic["AttriButeData1"]);
+                            if (0 < intValue && intValue < 1000)
+                            {
+                                stateText = Language.StringByID(MyInternationalizationString.co2qingxin);
+                            }
+                            else if (1000 < intValue && intValue < 2000)
+                            {
+                                stateText = Language.StringByID(MyInternationalizationString.co2huizhuo);
+                            }
+                            else if (2000 < intValue && intValue < 5000)
+                            {
+                                stateText = Language.StringByID(MyInternationalizationString.co2queyang);
+                            }
+                            else if (intValue > 5000)
+                            {
+                                stateText = Language.StringByID(MyInternationalizationString.co2yanzhongqueyang);
+                            }
+                        }
+                        break;
+                    case "1026":
+                        {
+                            tagText = Language.StringByID(MyInternationalizationString.sensortemperature);
+                            stateText = dic["AttriButeData1"];
+                        }
+                        break;
+                    case "1029":
+                        {
+                            tagText = Language.StringByID(MyInternationalizationString.sensorhumidity);
+                            stateText = dic["AttriButeData1"];
+                        }
+                        break;
+                }
+            }
+            Dictionary<string, string> airqualitysensorDic = new Dictionary<string, string>();
+            Send.dictionary(airqualitysensorDic, "Type", "1");
+            Send.dictionary(airqualitysensorDic, "IsValid", "1");
+            Send.dictionary(airqualitysensorDic, "MacAddr", common.DeviceAddr);
+            Send.dictionary(airqualitysensorDic, "Epoint", common.DeviceEpoint.ToString());
+            if (tagText == Language.StringByID(MyInternationalizationString.kongqizhiliang))
+            {
+
+                var list1 = publicInterface.GetViewList("绌烘皵璐ㄩ噺");
+                publicInterface.SingleSelectionShow(flMain, list1, MyInternationalizationString.airqualitysensor, stateText, (strText) =>
+                {
+                    SelectedDeviceStatus = "TemperatureSensor";
+                    string valuaStr = "";
+                    if (strText == Language.StringByID(MyInternationalizationString.you))
+                    {
+                        valuaStr = "1";
+                    }
+                    else if (strText == Language.StringByID(MyInternationalizationString.liang))
+                    {
+                        valuaStr = "2";
+                    }
+                    else if (strText == Language.StringByID(MyInternationalizationString.cha))
+                    {
+                        valuaStr = "3";
+                    }
+                    Send.dictionary(airqualitysensorDic, "Cluster_ID", "1066");
+                    Send.dictionary(airqualitysensorDic, "AttriButeId", "57344");
+                    Send.dictionary(airqualitysensorDic, "AttriButeData1", valuaStr);
+                    Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
+                    Send.dictionary(airqualitysensorDic, "Range", "1");
+                    AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
+
+
+                }, () => {
+                    if (edit) { flMain.RemoveFromParent(); }
+                    else
+                    {
+                        AirSonser(flMain, SelectedDeviceStatus, edit, common);
+                    } });
+
+            }
+            else if (tagText == Language.StringByID(MyInternationalizationString.pm25))
+            {
+                var list2 = publicInterface.GetViewList("pm2.5");
+                publicInterface.SingleSelectionShow(flMain, list2, MyInternationalizationString.pm25, stateText, (strText) =>
+                {
+                    SelectedDeviceStatus = "TemperatureSensor";
+                    string valuaStr = "";
+                    if (strText == Language.StringByID(MyInternationalizationString.pmyou))
+                    {
+                        valuaStr = "18";
+                    }
+                    else if (strText == Language.StringByID(MyInternationalizationString.pmliang))
+                    {
+                        valuaStr = "54";
+                    }
+                    else if (strText == Language.StringByID(MyInternationalizationString.pmqingdu))
+                    {
+                        valuaStr = "105";
+                    }
+                    else if (strText == Language.StringByID(MyInternationalizationString.pmzhongdu))
+                    {
+                        valuaStr = "130";
+                    }
+                    Send.dictionary(airqualitysensorDic, "Cluster_ID", "1066");
+                    Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
+                    Send.dictionary(airqualitysensorDic, "AttriButeData1", valuaStr);
+                    Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
+                    Send.dictionary(airqualitysensorDic, "Range", "1");
+                    AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
+
+
+                }, () => {
+                    if (edit) { flMain.RemoveFromParent(); }
+                    else
+                    {
+                        AirSonser(flMain, SelectedDeviceStatus, edit, common);
+                    }
+                });
+
+            }
+            else if (tagText == Language.StringByID(MyInternationalizationString.co2))
+            {
+
+                var list2 = publicInterface.GetViewList("co2");
+                publicInterface.SingleSelectionShow(flMain, list2, MyInternationalizationString.co2, stateText, (strText) =>
+                {
+                    SelectedDeviceStatus = "TemperatureSensor";
+                    string valuaStr = "";
+                    if (strText == Language.StringByID(MyInternationalizationString.co2qingxin))
+                    {
+                        valuaStr = "500";
+                    }
+                    else if (strText == Language.StringByID(MyInternationalizationString.co2huizhuo))
+                    {
+                        valuaStr = "1500";
+                    }
+                    else if (strText == Language.StringByID(MyInternationalizationString.co2queyang))
+                    {
+                        valuaStr = "2500";
+                    }
+                    else if (strText == Language.StringByID(MyInternationalizationString.co2yanzhongqueyang))
+                    {
+                        valuaStr = "5500";
+                    }
+                    Send.dictionary(airqualitysensorDic, "Cluster_ID", "1037");
+                    Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
+                    Send.dictionary(airqualitysensorDic, "AttriButeData1", valuaStr);
+                    Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
+                    Send.dictionary(airqualitysensorDic, "Range", "1");
+                    AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
+
+
+                }, () => {
+                    if (edit) { flMain.RemoveFromParent(); }
+                    else
+                    {
+                        AirSonser(flMain, SelectedDeviceStatus, edit, common);
+                    }
+                });
+
+
+
+            }
+            else if (tagText == Language.StringByID(MyInternationalizationString.sensortemperature))
+            {
+                //缂栬緫鏃剁殑鐘舵�佸��
+                string str1 = range;
+                string str2 = stateText;
+                publicInterface.TemperatureShow1(flMain, tagText, "鈩�", str1, str2, (relationValueStr, tempValueStr) =>
+                {
+
+                    SelectedDeviceStatus = "TemperatureSensor";
+                    Send.dictionary(airqualitysensorDic, "Cluster_ID", "1026");
+                    Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
+                    Send.dictionary(airqualitysensorDic, "AttriButeData1", tempValueStr);
+                    Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
+                    Send.dictionary(airqualitysensorDic, "Range", relationValueStr);
+                    AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
+
+
+                }, () =>
+                {
+                    if (edit) { flMain.RemoveFromParent(); }
+                    else
+                    {
+                        AirSonser(flMain, SelectedDeviceStatus, edit, common);
+                    }
+
+                });
+            }
+            else if (tagText == Language.StringByID(MyInternationalizationString.sensorhumidity))
+            {
+                //缂栬緫鏃剁殑鐘舵�佸��
+                string str1 = range;
+                string str2 = stateText;
+                publicInterface.TemperatureShow1(flMain, tagText, "%", str1, str2, (relationValueStr, tempValueStr) =>
+                {
+                    SelectedDeviceStatus = "TemperatureSensor";
+                    Send.dictionary(airqualitysensorDic, "Cluster_ID", "1029");
+                    Send.dictionary(airqualitysensorDic, "AttriButeId", "0");
+                    Send.dictionary(airqualitysensorDic, "AttriButeData1", tempValueStr);
+                    Send.dictionary(airqualitysensorDic, "AttriButeData2", "0");
+                    Send.dictionary(airqualitysensorDic, "Range", relationValueStr);
+                    AddDic(flMain, SelectedDeviceStatus, edit, common, airqualitysensorDic);
+                }, () => {
+                    if (edit) { flMain.RemoveFromParent(); }
+                    else
+                    {
+                        AirSonser(flMain, SelectedDeviceStatus, edit, common);
+                    }
+                });
+            }
+
+        }
+        /// <summary>
+        /// 绌烘皵璐ㄩ噺浼犳劅鍣�(鐗规畩澶勭悊)
+        /// </summary>
+        /// <param name="flMain"></param>
+        /// <param name="SelectedDeviceStatus"></param>
+        /// <param name="edit"></param>
+        /// <param name="common"></param>
+        /// <param name="dic"></param>
+        private static void AddDic(FrameLayout flMain, string SelectedDeviceStatus, bool edit, CommonDevice common, Dictionary<string, string> dic )
+        {
+            UserView.HomePage.Instance.ScrollEnabled = true;
+            if (SelectedDeviceStatus != "")
+            {
+                //娣诲姞鏉′欢
+                LogicIfon.AddDeviceconditions(common, dic);
+            }
+            else
+            {
+                if (!edit)
+                {
+                    var alert = new UserCenter.ShowMsgControl(ShowMsgType.Normal,
+                                Language.StringByID(MyInternationalizationString.selectdevicestatuscondition),
+                               Language.StringByID(MyInternationalizationString.confrim));
+                    alert.Show();
+                    return;
+                }
+
+            }
+            flMain.RemoveFromParent();
+            //鑷姩鍖�
+            var logicCommunalPage = new LogicCommunalPage();
+            UserView.HomePage.Instance.AddChidren(logicCommunalPage);
+            UserView.HomePage.Instance.PageIndex += 1;
+            logicCommunalPage.Show(() => { });
+        }
+
     }
 }

--
Gitblit v1.8.0