From 081ea8d273048fd03756718ac6fb48a3c09218e9 Mon Sep 17 00:00:00 2001
From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local>
Date: 星期二, 29 十月 2019 13:10:00 +0800
Subject: [PATCH] Merge branch 'dev-tzy' into DEV_GXC

---
 ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs | 1384 +++++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 895 insertions(+), 489 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs b/ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs
index 13af081..59e67bb 100755
--- a/ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs
@@ -9,104 +9,159 @@
 
 namespace Shared.Phone.Device.Logic
 {
-    public class DeviceStateCondition :FrameLayout
+    public class DeviceStateCondition : FrameLayout
     {
         public DeviceStateCondition()
         {
             Tag = "Logic";
 
         }
-        Button SelectedButton = new Button();
-        HorizontalScrolViewLayout horizontalScrol;
+        Button roombjButton = new Button();
+        Button roomTextButton = new Button();
+        Button devicetypeButton = new Button();
         VerticalScrolViewLayout middle;
+        FrameLayout clickframeLayout = new FrameLayout();
+        Button clickbutton = new Button();
+        Button clicktextcolcrbutton = new Button();
+
         public void Show()
         {
-           
-            UserView.HomePage.Instance.ScrollEnabled = false;
-            this.BackgroundColor = ZigbeeColor.Current.LogicTopViewBackgroundColor;
 
-            var topFrameLayout = new RowLayout
+            UserView.HomePage.Instance.ScrollEnabled = false;
+            this.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor;
+            #region  鏈�涓婇潰鐨勫竷灞�浠g爜
+            var topRowLayout = new RowLayout
             {
-                Height = Application.GetRealHeight(220),
-                Y = Application.GetRealHeight(80),
-                BackgroundColor = ZigbeeColor.Current.LogicTopViewBackgroundColor,
+                BackgroundColor = ZigbeeColor.Current.LogicTopBackgroundColor,
+                Height = Application.GetRealHeight(184),
+                LineColor = ZigbeeColor.Current.LogicRowLayoutTopLineColor,
             };
-            AddChidren(topFrameLayout);
-            
+            this.AddChidren(topRowLayout);
+
             var titleName = new Button
             {
-                TextID = MyInternationalizationString.devicestate,
-                TextSize = 17,
+                TextSize = 16,
                 TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                 TextAlignment = TextAlignment.CenterLeft,
-                X = Application.GetRealWidth(150),
+                X = Application.GetRealWidth(160),
+                Width = Application.GetRealWidth(300),
+                Height = Application.GetRealHeight(69),
+                Y = Application.GetRealHeight(92),
+                TextID = MyInternationalizationString.devicestate,
             };
-            topFrameLayout.AddChidren(titleName);
+            topRowLayout.AddChidren(titleName);
+
+            var clickBtn = new Button
+            {
+                Width = Application.GetRealWidth(81 + 51),
+                Height = Application.GetRealHeight(58 + 40),
+                Y = Application.GetRealHeight(98 - 40),
+            };
+            topRowLayout.AddChidren(clickBtn);
+            clickBtn.MouseDownEventHandler += (sender, e) =>
+            {
+                RemoveFromParent();
+                UserView.HomePage.Instance.ScrollEnabled = true;
+            };
 
             var back = new Button
             {
-                Width = Application.GetRealWidth(110),
-                Height = Application.GetRealHeight(110),
-                X = Application.GetRealWidth(20),
-                Gravity = Gravity.CenterVertical,
-                UnSelectedImagePath = "ZigeeLogic/Back.png",
+                Width = Application.GetRealWidth(30),
+                Height = Application.GetRealHeight(51),
+                X = Application.GetRealWidth(81),
+                Y = Application.GetRealHeight(98),
+                //Gravity = Gravity.CenterVertical;
+                UnSelectedImagePath = "ZigeeLogic/back.png",
             };
-            topFrameLayout.AddChidren(back);
+            topRowLayout.AddChidren(back);
             back.MouseDownEventHandler += (sender, e) =>
             {
                 RemoveFromParent();
                 UserView.HomePage.Instance.ScrollEnabled = true;
             };
 
-            var roomname = new Button
+            var foolrname = new Button
             {
-                Width = Application.GetMinRealAverage(300 + 300-30),
-                Height = Application.GetMinRealAverage(80),
-                X = Application.GetRealWidth(1080 - 300 - 30 - 300),
-                Y = Application.GetRealHeight(120),
-                TextAlignment = TextAlignment.CenterRight,
-                //Text = "鑷畾涔夋埧闂�",
                 TextColor = ZigbeeColor.Current.LogicTextBlackColor,
-                TextID=MyInternationalizationString.customroom,
+                TextAlignment = TextAlignment.CenterRight,
+                X = Application.GetRealWidth(1080 - 400 - 120),
+                Width = Application.GetRealWidth(400),
+                Height = Application.GetRealHeight(69),
+                Y = Application.GetRealHeight(92),
+                //TextID = MyInternationalizationString.customroom,
+                Text = Config.Instance.Home.GetCurrentFloorName,
             };
-            topFrameLayout.AddChidren(roomname);
-
-            var horizontalScrolfl = new FrameLayout
+            topRowLayout.AddChidren(foolrname);
+            var dropdown = new Button
             {
-                Height = Application.GetRealHeight(220 + 30),
-                Y = topFrameLayout.Bottom,
+                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                TextAlignment = TextAlignment.CenterRight,
+                X = foolrname.Right,
+                Width = Application.GetRealWidth(72),
+                Height = Application.GetRealHeight(72),
+                Y = Application.GetRealHeight(92),
+                UnSelectedImagePath = "ZigeeLogic/drop-down.png",
+            };
+            topRowLayout.AddChidren(dropdown);
+
+            #endregion
+
+            ///娌℃湁鎴块棿鐩存帴杩斿洖鍘伙紱
+            if (Common.Room.Lists.Count == 0)
+            {
+                return;
+            }
+            ///鎴块棿婊戝姩鎺т欢
+            var roomhorizontalScrol = new HorizontalScrolViewLayout()
+            {
+                Width = Application.GetRealWidth(1080 - 58),
+                Height = Application.GetRealHeight(200),
+                Y = topRowLayout.Bottom,
+                X = Application.GetRealWidth(58),
+            };
+            this.AddChidren(roomhorizontalScrol);
+
+            var devicetypehorizontalScrol1 = new HorizontalScrolViewLayout()
+            {
+                Width = Application.GetRealWidth(1080 - 58 - 200),
+                Height = Application.GetRealHeight(280),
+                Y = roomhorizontalScrol.Bottom,
                 BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
+                X = Application.GetRealWidth(58 + 200),
             };
-            AddChidren(horizontalScrolfl);
-                      
-
-             horizontalScrol = new HorizontalScrolViewLayout()
+            this.AddChidren(devicetypehorizontalScrol1);
+            ///璁惧绫诲瀷婊戝姩鎺т欢
+            var devicetypehorizontalScrol = new HorizontalScrolViewLayout()
             {
-                Width = Application.GetRealWidth(1080 - 40),
-                Height = Application.GetRealHeight(180 + 30),
-                Y = Application.GetRealHeight(40),
-                X = Application.GetRealWidth(40),
-                Radius = (uint)Application.GetRealHeight(30),
-            };
-            horizontalScrolfl.AddChidren(horizontalScrol);
+                Width = Application.GetRealWidth(1080 - 58),
+                Height = Application.GetRealHeight(280),
+                Y = roomhorizontalScrol.Bottom,
+                BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
+                X = Application.GetRealWidth(58),
+                Radius = (uint)Application.GetRealHeight(50),
 
-             middle = new VerticalScrolViewLayout();
-            middle.Y = horizontalScrolfl.Bottom;
-            middle.Height = Application.GetRealHeight(1920 - 300 - 250);
+            };
+            this.AddChidren(devicetypehorizontalScrol);
+
+            middle = new VerticalScrolViewLayout();
+            middle.Y = devicetypehorizontalScrol.Bottom + Application.GetRealHeight(40);
+            middle.Height = Application.GetRealHeight(1920) - devicetypehorizontalScrol.Y;
             middle.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor;
+            middle.X = Application.GetRealWidth(58);
+            middle.Radius = (uint)Application.GetRealHeight(50);
             this.AddChidren(middle);
 
             ///鐩墠鏀寔鐨勮澶�
-            List<DeviceType> deviceTypeList = new List<DeviceType> {
+            var deviceTypeList = new List<DeviceType> {
                 DeviceType.IASZone,
                 DeviceType.OnOffSwitch,
-                //DeviceType.ColorDimmableLight,
-                // DeviceType.OnOffOutput,
-                //  DeviceType.WindowCoveringDevice,
-                //   DeviceType.AirSwitch,
+                DeviceType.OnOffOutput,//妤兼鐏�
+                DeviceType.DoorLock,
+                DeviceType.TemperatureSensor,
             };
-            ///鎴块棿鐐瑰嚮浜嬩欢
-            roomname.MouseUpEventHandler += (sender, e) =>
+
+            ///妤煎眰鐐瑰嚮浜嬩欢
+            EventHandler<MouseEventArgs> foorlclick = (sender, e) =>
             {
 
                 var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor };
@@ -115,95 +170,187 @@
                 {
                     flMain.RemoveFromParent();
                 };
-                var roombj = new VerticalScrolViewLayout
+                var foolrbj = new VerticalScrolViewLayout
                 {
 
                     Width = Application.GetRealWidth(400),
                     Height = Application.GetRealHeight(600),
                     X = Application.GetRealWidth(1080 - 400 - 60),
-                    Y = Application.GetRealHeight(220 + 30 + 80),
+                    Y = Application.GetRealHeight(184 + 50),
                     BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
                     Radius = (uint)Application.GetRealHeight(30),
                 };
-                flMain.AddChidren(roombj);
-                List<Common.Room> roomlist = new List<Common.Room>();
-                roomlist.Clear();
-                Common.Room customroom = new Common.Room();
-                customroom.Name =Language.StringByID(MyInternationalizationString.customroom);
-                foreach (var device in Common.Logic.LogicDviceList)
+                flMain.AddChidren(foolrbj);
+                foreach (var foolr in Config.Instance.Home.FloorDics)
                 {
-                   
-                    var deviceui = customroom.GetDeviceUI(device);
-                    if (deviceui != null)
-                    {
-                        customroom.DeviceUIList.Add(deviceui);
-                    }
 
-                }
-                roomlist.Add(customroom);
-                roomlist.AddRange(Common.Room.Lists);
-                foreach (var room in roomlist)
-                {
-                    var rowLayout = new RowLayout
+                    var foolrRowLayout = new FrameLayout
                     {
                         Height = Application.GetRealHeight(150),
                     };
-                    roombj.AddChidren(rowLayout);
+                    foolrbj.AddChidren(foolrRowLayout);
 
-                    var btnroomname = new Button
+                    var btnfoolrname = new Button
                     {
-                        Width = Application.GetRealWidth(300),
-                        Text = room.Name,
-                        TextAlignment = TextAlignment.CenterLeft,
-                        X = Application.GetRealWidth(30),
+                        Width = Application.GetRealWidth(250),
+                        Height = Application.GetRealHeight(160),
+                        Text = foolr.Value,
+                        TextAlignment = TextAlignment.Center,
                         TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                        //SelectedTextColor=0xfffc744b,
+                        Tag = foolr.Key,
                     };
-                    rowLayout.AddChidren(btnroomname);
+                    foolrRowLayout.AddChidren(btnfoolrname);
 
-                    EventHandler<MouseEventArgs> roomclick = (sender1, e1) =>
+
+                    EventHandler<MouseEventArgs> foolrnameclick = (sender13, e13) =>
                     {
-
+                        roomhorizontalScrol.RemoveAll();
+                        devicetypehorizontalScrol.RemoveAll();
+                        middle.RemoveAll();
+                        foolrname.Text = btnfoolrname.Text;
                         flMain.RemoveFromParent();
-                        roomname.Text = room.Name;
-                        var list = new List<DeviceUI>();
-                        foreach (var device in room.DeviceUIList)
-                        {
-                            if (!deviceTypeList.Contains(device.CommonDevice.Type))
-                            {
-                                continue;
-                            }
-                            list.Add(device);
-                        }
-                        AllDeviceTypeView(list);
+                        var list = Send.GetRoomList(btnfoolrname.Tag.ToString());
+                        AllRoomView(list, deviceTypeList, roomhorizontalScrol, devicetypehorizontalScrol);
                     };
-                    rowLayout.MouseUpEventHandler += roomclick;
-                    btnroomname.MouseUpEventHandler += roomclick;
+                    foolrRowLayout.MouseUpEventHandler += foolrnameclick;
+                    btnfoolrname.MouseUpEventHandler += foolrnameclick;
+
 
                 }
+
             };
-    
-            Common.Room room1= new Common.Room();
-            foreach (var device in Common.Logic.LogicDviceList)
+            foolrname.MouseUpEventHandler += foorlclick;
+            dropdown.MouseUpEventHandler += foorlclick;
+            ///绗竴娆¤繘鏉�
+            var roomlists = new List<Common.Room>();
+            roomlists.Clear();
+            if (Config.Instance.Home.FloorDics.Count < 2)
             {
-                               
-                if (!deviceTypeList.Contains(device.Type))
+                foolrname.Visible = false;
+                dropdown.Visible = false;
+                if (Config.Instance.Home.FloorDics.Count == 0)
                 {
-                    continue;
+                    roomlists.AddRange(Common.Room.Lists);
                 }
-                var deviceui = room1.GetDeviceUI(device);
-                if (deviceui != null)
+                else
                 {
-                    room1.DeviceUIList.Add(deviceui);
+                    roomlists = Send.GetRoomList(Config.Instance.Home.CurrentFloorId);
                 }
+            }
+            else
+            {
+                roomlists = Send.GetRoomList(Config.Instance.Home.CurrentFloorId);
 
             }
-            AllDeviceTypeView(room1.DeviceUIList);
+
+            AllRoomView(roomlists, deviceTypeList, roomhorizontalScrol, devicetypehorizontalScrol);
+        }
+        /// <summary>
+        /// 鍔犺浇鎵�鏈夋埧闂寸殑瑙嗗浘鏂规硶
+        /// </summary>
+        void AllRoomView(List<Common.Room> roomlist, List<DeviceType> deviceTypeList, HorizontalScrolViewLayout roomhorizontalScrol, HorizontalScrolViewLayout devicetypehorizontalScrol)
+        {
+            for (int i = 0; i < roomlist.Count; i++)
+            {
+                var room = roomlist[i];
+
+                var fra = new FrameLayout
+                {
+                    Height = Application.GetRealHeight(200),
+                    Width = Application.GetRealWidth(255),
+                };
+                roomhorizontalScrol.AddChidren(fra);
+
+                var roombjBtn = new Button
+                {
+                    Height = Application.GetRealHeight(158),
+                    Width = Application.GetRealWidth(255),
+                    UnSelectedImagePath = "ZigeeLogic/iconBackgroundColor.png",
+                    SelectedImagePath = "ZigeeLogic/iconSelectedBackgroundColor.png",
+                    Y=Application.GetRealHeight(21),
+                };
+                fra.AddChidren(roombjBtn);
+
+                var roomnameBtn= new Button
+                {
+
+                    Height = Application.GetRealHeight(152-26-20),
+                    Width = Application.GetRealWidth(255-20-50),
+                    Text = room.Name,
+                    TextColor = ZigbeeColor.Current.LogicBtnCancelColor,
+                    SelectedTextColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
+                    Y=Application.GetRealHeight(21 +13+10),
+                    X=Application.GetRealWidth(10+25),
+
+                };
+                fra.AddChidren(roomnameBtn);
+
+                if (i == 0)//
+                {
+                    roombjButton.IsSelected = false;
+                    roombjButton = roombjBtn;
+                    roombjBtn.IsSelected = true;
+
+                    roomTextButton.IsSelected = false;
+                    roomTextButton = roomnameBtn;
+                    roomnameBtn.IsSelected = true;
+
+                    var list = new List<DeviceUI>();
+                    foreach (var device in room.DeviceUIList)
+                    {
+                        if (device.CommonDevice==null) {
+                            continue;
+                        }
+                        if (!deviceTypeList.Contains(device.CommonDevice.Type))
+                        {
+                            continue;
+                        }
+                        list.Add(device);
+                    }
+                    AllDeviceTypeView(list, devicetypehorizontalScrol);
+
+                }
+
+
+                EventHandler<MouseEventArgs> roomclick = (sender, e) =>
+                {
+
+
+                    roombjButton.IsSelected = false;
+                    roombjButton = roombjBtn;
+                    roombjBtn.IsSelected = true;
+
+                    roomTextButton.IsSelected = false;
+                    roomTextButton = roomnameBtn;
+                    roomnameBtn.IsSelected = true;
+
+                    var list = new List<DeviceUI>();
+                    foreach (var device in room.DeviceUIList)
+                    {
+                        if (device.CommonDevice==null) {
+                            continue;
+                        }
+                        if (!deviceTypeList.Contains(device.CommonDevice.Type))
+                        {
+                            continue;
+                        }
+                        list.Add(device);
+                    }
+                    AllDeviceTypeView(list, devicetypehorizontalScrol);
+
+
+                };
+                roomnameBtn.MouseUpEventHandler += roomclick;
+                roombjBtn.MouseUpEventHandler += roomclick;
+
+            }
         }
         /// <summary>
         /// 鍔犺浇璇ュ尯鍩熸墍鏈夎澶囪鍥炬柟娉�
         /// </summary>0
         /// <param name="devicelist">Devicelist.</param>
-        void AllDeviceTypeView(List<DeviceUI> devicelist)
+        void AllDeviceTypeView(List<DeviceUI> devicelist, HorizontalScrolViewLayout devicetypehorizontalScrol)
         {
             List<string> devicetypelist = new List<string>();
             devicetypelist.Clear();
@@ -220,7 +367,7 @@
                 devicetypelist.Add(Language.StringByID(MyInternationalizationString.Curtains));
             }
 
-            var iASZonejosn = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.IASZone);
+            var iASZonejosn = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.IASZone|| device.CommonDevice.Type == DeviceType.TemperatureSensor);
             if (iASZonejosn != null)
             {
                 devicetypelist.Add(Language.StringByID(MyInternationalizationString.sensor));
@@ -230,65 +377,100 @@
             {
                 devicetypelist.Add(Language.StringByID(MyInternationalizationString.OnOffSwitch));
             }
-            #endregion
-       
-            horizontalScrol.RemoveAll();
-            foreach (var devicetype in devicetypelist)
+            var doorLock = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.DoorLock);
+            if (doorLock != null)
             {
+                devicetypelist.Add(Language.StringByID(MyInternationalizationString.doorLock));
+            }
+            #endregion
+
+            devicetypehorizontalScrol.RemoveAll();
+            for (int i = 0; i < devicetypelist.Count; i++)
+            {
+
+                var devicetype = devicetypelist[i];
+
+                var spaceRowLayout = new FrameLayout();
+                devicetypehorizontalScrol.AddChidren(spaceRowLayout);
+                if (i == 0)
+                {
+                    spaceRowLayout.Width = Application.GetRealWidth(37);
+                }
+                else
+                {
+                    spaceRowLayout.Width = Application.GetRealWidth(80);
+                }
 
                 var deviceRowLayout = new FrameLayout
                 {
-                    Height = Application.GetRealHeight(180 + 30),
-                    Width = Application.GetRealWidth(250),
+                    Width = Application.GetRealWidth(156 + 20),
+                    Height = Application.GetRealHeight(280 - 30),
+                    Y = Application.GetRealHeight(30),
                 };
-                horizontalScrol.AddChidren(deviceRowLayout);
+                devicetypehorizontalScrol.AddChidren(deviceRowLayout);
+
+                var backgroundColor = new Button
+                {
+                    Width = Application.GetRealWidth(156),
+                    Height = Application.GetRealHeight(180),
+                    X = Application.GetRealWidth(10),
+                    UnSelectedImagePath = "ZigeeLogic/deviceunselectedbackgroundcolor.png",
+                    SelectedImagePath = "ZigeeLogic/deviceselectedbackgroundcolor.png",
+                };
+                deviceRowLayout.AddChidren(backgroundColor);
+
 
                 var devicetypeicon = new Button
                 {
-                    Width = Application.GetRealWidth(110),
-                    Height = Application.GetRealHeight(110),
-                    X = Application.GetRealWidth(70),
+                    Width = Application.GetRealWidth(84),
+                    Height = Application.GetRealHeight(84),
+                    X = Application.GetRealWidth(46),
+                    Y = Application.GetRealHeight(30),
                 };
                 deviceRowLayout.AddChidren(devicetypeicon);
-                if (devicetype == Language.StringByID(MyInternationalizationString.Lights))
-                {
-                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/Light.png";
-                    devicetypeicon.SelectedImagePath = "ZigeeLogic/LightSelected.png";
-                }
-                else if (devicetype == Language.StringByID(MyInternationalizationString.Curtains))
-                {
-                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/Curtain.png";
-                    devicetypeicon.SelectedImagePath = "ZigeeLogic/CurtainSelected.png";
-                }
-                else if (devicetype == Language.StringByID(MyInternationalizationString.OnOffSwitch))
-                {
-                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/OnOffSwitch.png";
-                    devicetypeicon.SelectedImagePath = "ZigeeLogic/OnOffSwitchSelected.png";
-                }
-                else if (devicetype == Language.StringByID(MyInternationalizationString.sensor))
-                {
-                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/Sensor.png";
-                    devicetypeicon.SelectedImagePath = "ZigeeLogic/SensorSelected.png";
-                }
 
                 var devicetypename = new Button
                 {
-                    Width = Application.GetRealWidth(250),
-                    Height = Application.GetRealHeight(50),
+                    Width = Application.GetRealWidth(176),
+                    Height = Application.GetRealHeight(40),
                     Text = devicetype,
                     TextAlignment = TextAlignment.Center,
-                    Y = devicetypeicon.Bottom + Application.GetRealHeight(20),
-                    TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                    Y = backgroundColor.Bottom,
+                    TextColor = ZigbeeColor.Current.LogicAddColor,
+                    TextSize = 10,
                 };
                 deviceRowLayout.AddChidren(devicetypename);
-
+                if (devicetype == Language.StringByID(MyInternationalizationString.Lights))
+                {
+                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/selectedlight.png";
+                    // devicetypeicon.SelectedImagePath = "ZigeeLogic/LightSelected.png";
+                }
+                else if (devicetype == Language.StringByID(MyInternationalizationString.Curtains))
+                {
+                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/selectedcurtain.png";
+                    //devicetypeicon.SelectedImagePath = "ZigeeLogic/CurtainSelected.png";
+                }
+                else if (devicetype == Language.StringByID(MyInternationalizationString.OnOffSwitch))
+                {
+                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/selectedpanel.png";
+                    // devicetypeicon.SelectedImagePath = "ZigeeLogic/OnOffSwitchSelected.png";
+                }
+                else if (devicetype == Language.StringByID(MyInternationalizationString.sensor))
+                {
+                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/selectedsenor.png";
+                    // devicetypeicon.SelectedImagePath = "ZigeeLogic/SensorSelected.png";
+                }
+                else if (devicetype == Language.StringByID(MyInternationalizationString.doorLock))
+                {
+                    devicetypeicon.UnSelectedImagePath = "ZigeeLogic/selecteddoorlock.png";
+                }
                 EventHandler<MouseEventArgs> devicetypeclick = (sender13, e13) =>
                 {
                     List<DeviceType> list = new List<DeviceType>();
                     list.Clear();
-                    SelectedButton.IsSelected = false;
-                    SelectedButton = devicetypeicon;
-                    SelectedButton.IsSelected = true;
+                    devicetypeButton.IsSelected = false;
+                    devicetypeButton = backgroundColor;
+                    backgroundColor.IsSelected = true;
                     ///鍒嗙被鏄剧ず锛堜緥濡傜伅鍏夛細{鐏厜1锛岀伅鍏�2...}锛�
                     if (devicetype == Language.StringByID(MyInternationalizationString.Lights))
                     {
@@ -305,6 +487,11 @@
                     else if (devicetype == Language.StringByID(MyInternationalizationString.sensor))
                     {
                         list.Add(DeviceType.IASZone);
+                        list.Add(DeviceType.TemperatureSensor);
+                    }
+                    else if (devicetype == Language.StringByID(MyInternationalizationString.doorLock))
+                    {
+                        list.Add(DeviceType.DoorLock);
                     }
 
                     ConditionDeviceView(list, devicelist);
@@ -313,6 +500,7 @@
                 deviceRowLayout.MouseUpEventHandler += devicetypeclick;
                 devicetypename.MouseUpEventHandler += devicetypeclick;
                 devicetypeicon.MouseUpEventHandler += devicetypeclick;
+                backgroundColor.MouseUpEventHandler += devicetypeclick;
 
             }
             ///鏄剧ず鎴块棿鎵�鏈夎澶�
@@ -336,44 +524,123 @@
                     continue;
                 }
 
-                var row = new RowLayout
+
+                var deviceFramelayout = new FrameLayout
                 {
-                    Height = Application.GetRealHeight(180),
+                    Height = Application.GetRealHeight(160),
+                };
+                middle.AddChidren(deviceFramelayout);
+
+                var bjFramelayout = new FrameLayout
+                {
+                    Width = Application.GetRealWidth(112),
+                    Height = Application.GetRealHeight(112),
+                    X = Application.GetRealWidth(58),
+                    Y = Application.GetRealHeight(30 + 9),
+                    Radius = (uint)Application.GetRealHeight(56),
+                    BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
+                };
+                deviceFramelayout.AddChidren(bjFramelayout);
+
+                var deviceIconBtn = new Button
+                {
+                    Width = Application.GetRealWidth(82),
+                    Height = Application.GetRealHeight(82),
+                    Gravity = Gravity.Center,
 
                 };
-                middle.AddChidren(row);
+                bjFramelayout.AddChidren(deviceIconBtn);
+
+                var deviceRow = new RowLayout
+                {
+                    Y = Application.GetRealHeight(30),
+                    Width = Application.GetRealWidth(850),
+                    Height = Application.GetRealHeight(130),
+                    X = Application.GetRealWidth(176 + 10),
+                    LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+
+                };
+                deviceFramelayout.AddChidren(deviceRow);
 
                 var devicename = new Button
                 {
-                    Gravity = Gravity.CenterVertical,
-                    TextAlignment = TextAlignment.CenterLeft,
-                    X = Application.GetRealWidth(40),
-                    Width = Application.GetRealWidth(600),
-                    //SelectedBackgroundColor = 0xFFE9652D,
                     Text = common.CommonDevice.DeviceEpointName,
+                    TextAlignment = TextAlignment.CenterLeft,
                     TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                    SelectedTextColor = ZigbeeColor.Current.LogicAddColor,
                 };
-                row.AddChidren(devicename);
-
-                var btndeviceback = new Button
+                deviceRow.AddChidren(devicename);
+                switch (common.CommonDevice.Type)
                 {
-                    Width = Application.GetRealWidth(110),
-                    Height = Application.GetRealHeight(110),
-                    UnSelectedImagePath = "ZigeeLogic/Next.png",
-                    X = Application.GetRealWidth(1080 - 140),
-                    Gravity = Gravity.CenterVertical,
-                };
-                row.AddChidren(btndeviceback);
+                    case DeviceType.OnOffOutput:
+                        {
+                            deviceIconBtn.UnSelectedImagePath = "ZigeeLogic/light.png";
+                            deviceIconBtn.SelectedImagePath = "ZigeeLogic/selectedlight.png";
+                        }
+                        break;
+                    case DeviceType.IASZone:
+                        {
+                            var iASZonedevice = common.CommonDevice as IASZone;
+                            if (iASZonedevice.DeviceID != 1026)
+                            {
+                                break;
+                            }
+                            deviceIconBtn.UnSelectedImagePath = $"ZigeeLogic/sensor{iASZonedevice.IasDeviceType}.png";
+                            deviceIconBtn.SelectedImagePath = $"ZigeeLogic/selectedsensor{iASZonedevice.IasDeviceType}.png";
+
+
+                        }
+                        break;
+                    case DeviceType.TemperatureSensor:
+                        {
+                            var temperatureSensor = common.CommonDevice as TemperatureSensor;
+                            if (temperatureSensor.SensorDiv == 1)
+                            {
+                                deviceIconBtn.UnSelectedImagePath = $"ZigeeLogic/temperature.png";
+                                deviceIconBtn.SelectedImagePath = $"ZigeeLogic/selectedtemperature.png";
+                            }
+                            else
+                            {
+                                deviceIconBtn.UnSelectedImagePath = "ZigeeLogic/humidity.png";
+                                deviceIconBtn.SelectedImagePath = "ZigeeLogic/selectedhumidity.png";
+                            }
+                        }
+                        break;
+                    case DeviceType.OnOffSwitch:
+                        {
+                            deviceIconBtn.UnSelectedImagePath = "ZigeeLogic/panel.png";
+                            deviceIconBtn.SelectedImagePath = "ZigeeLogic/selectedpanel.png";
+                        }
+                        break;
+                    case DeviceType.DoorLock:
+                        {
+                            deviceIconBtn.UnSelectedImagePath = "ZigeeLogic/doorlock.png";
+                            deviceIconBtn.SelectedImagePath = "ZigeeLogic/selecteddoorlock.png";
+                        }
+                        break;
+                }
 
                 EventHandler<MouseEventArgs> devicclick = (sen, e) =>
                 {
+                    clickbutton.IsSelected = false;
+                    clickbutton = deviceIconBtn;
+                    deviceIconBtn.IsSelected = true;
+                    clickframeLayout.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor;
+                    clickframeLayout = bjFramelayout;
+                    bjFramelayout.BackgroundColor = ZigbeeColor.Current.LogicIconBackgroundColor;
+                    clicktextcolcrbutton.IsSelected = false;
+                    clicktextcolcrbutton = devicename;
+                    devicename.IsSelected = true;
                     var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor };
                     this.AddChidren(flMain);
                     CurrentDeviceView(flMain, common.CommonDevice, false);
                 };
-                row.MouseUpEventHandler += devicclick;
+                deviceFramelayout.MouseUpEventHandler += devicclick;
+                bjFramelayout.MouseUpEventHandler += devicclick;
+                deviceIconBtn.MouseUpEventHandler += devicclick;
+                deviceRow.MouseUpEventHandler += devicclick;
                 devicename.MouseUpEventHandler += devicclick;
-                btndeviceback.MouseUpEventHandler += devicclick;
+
 
             }
         }
@@ -381,59 +648,95 @@
         /// 閫変腑璇ヨ澶囧姛鑳戒綔涓烘潯浠剁殑瑙嗗浘鏂规硶
         /// </summary>
         /// <param name="common">Common.</param>
-        public static  void CurrentDeviceView(FrameLayout flMain,CommonDevice common,bool edit)
+        public async static  void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit)
         {
             //涓嶈褰撳墠鐣岄潰婊戝姩
             UserView.HomePage.Instance.ScrollEnabled = false;
+            List<Dictionary<string, string>> doorlockConditionsInfo= new List<Dictionary<string, string>>();
             Dictionary<string, string> deviceConditionsInfo = new Dictionary<string, string>();
+            dictionary(deviceConditionsInfo, "Type", "1");
+            dictionary(deviceConditionsInfo, "IsValid", "1");
+            dictionary(deviceConditionsInfo, "MacAddr", common.DeviceAddr);
+            dictionary(deviceConditionsInfo, "Epoint", common.DeviceEpoint.ToString());
             //var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor };
             //this.AddChidren(flMain);
             flMain.MouseUpEventHandler += (sender, e) =>
             {
                 flMain.RemoveFromParent();
+
+
             };
+
+            var devicefra1 = new FrameLayout
+            {
+                Width = Application.GetRealWidth(1080),
+                Height = Application.GetRealHeight(100),
+                Y = Application.GetRealHeight(1920 - 100),
+                BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
+            };
+            flMain.AddChidren(devicefra1);
+
             var devicefra = new FrameLayout
             {
 
-                Width = Application.GetRealWidth(1080 - 80),
-                X = Application.GetRealWidth(40),
+                Width = Application.GetRealWidth(1080),
+                Height = Application.GetRealHeight(530),
+                Y = Application.GetRealHeight(1920 - 530),
                 BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor,
-                Radius = (uint)Application.GetRealHeight(50),
+                Radius = (uint)Application.GetRealHeight(60),
             };
             flMain.AddChidren(devicefra);
 
-            var devicename = new Button
+            #region  -------鍙栨秷   瀹屾垚
+            var timetype = new RowLayout
             {
-                Y = Application.GetRealHeight(20),
-                Text = common.DeviceEpointName,
-                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
-                Height = Application.GetRealHeight(150),
-                Width = Application.GetRealWidth(1080 - 80),
+                Height = Application.GetRealHeight(140),
+                LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
             };
-            devicefra.AddChidren(devicename);
+            devicefra.AddChidren(timetype);
+            var Btncancel = new Button
+            {
+                TextID = MyInternationalizationString.cancel,
+                TextColor = ZigbeeColor.Current.LogicBtnCancelColor,
+                Height = Application.GetRealHeight(140),
+                Width = Application.GetRealWidth(200),
+                X = Application.GetRealWidth(80),
+                TextAlignment = TextAlignment.CenterLeft,
+            };
+            timetype.AddChidren(Btncancel);
+            Btncancel.MouseUpEventHandler += (sender16, e16) =>
+            {
+                flMain.RemoveFromParent();
+                UserView.HomePage.Instance.ScrollEnabled = true;
+            };
 
-            string SelectedDeviceStatuscondition = "no";
+            var Btntitle = new Button
+            {
+                TextID = MyInternationalizationString.security,
+                TextColor = ZigbeeColor.Current.LogicBtnTypeColor,
+                Height = Application.GetRealHeight(140),
+                Width = Application.GetRealWidth(320),
+                TextAlignment = TextAlignment.Center,
+                X = Btncancel.Right + Application.GetRealWidth(100),
+                TextSize = 16,
+                Text = common.DeviceEpointName,
+            };
+            timetype.AddChidren(Btntitle);
+            var Btncomplete = new Button
+            {
+                TextID = MyInternationalizationString.complete,
+                TextColor = ZigbeeColor.Current.LogicBtnCompleteColor,
+                Height = Application.GetRealHeight(140),
+                Width = Application.GetRealWidth(200),
+                TextAlignment = TextAlignment.CenterRight,
+                X = Btntitle.Right + Application.GetRealWidth(100),
 
-            if (deviceConditionsInfo.ContainsKey("Type"))
-            {
-                deviceConditionsInfo.Remove("Type");
-            }
-            if (deviceConditionsInfo.ContainsKey("IsValid"))
-            {
-                deviceConditionsInfo.Remove("IsValid");
-            }
-            if (deviceConditionsInfo.ContainsKey("MacAddr"))
-            {
-                deviceConditionsInfo.Remove("MacAddr");
-            }
-            if (deviceConditionsInfo.ContainsKey("Epoint"))
-            {
-                deviceConditionsInfo.Remove("Epoint");
-            }
-            deviceConditionsInfo.Add("Type", "1");
-            deviceConditionsInfo.Add("IsValid", "1");
-            deviceConditionsInfo.Add("MacAddr", common.DeviceAddr);
-            deviceConditionsInfo.Add("Epoint",common.DeviceEpoint.ToString());
+            };
+            timetype.AddChidren(Btncomplete);
+            #endregion
+
+            string SelectedDeviceStatuscondition = "";
+
             Dictionary<string, string> devices = null;
             if (edit)
             {
@@ -455,101 +758,72 @@
                 ///鐏厜
                 case DeviceType.OnOffOutput:
                     {
-
-                        if (deviceConditionsInfo.ContainsKey("Cluster_ID"))
-                        {
-                            deviceConditionsInfo.Remove("Cluster_ID");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("AttriButeId"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeId");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("Range"))
-                        {
-                            deviceConditionsInfo.Remove("Range");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("AttriButeData2"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeData2");
-                        }
-                        deviceConditionsInfo.Add("Cluster_ID", "6");
-                        deviceConditionsInfo.Add("AttriButeId", "0");
-                        deviceConditionsInfo.Add("Range", "1");
-                        deviceConditionsInfo.Add("AttriButeData2", "0");
-
+                        dictionary(deviceConditionsInfo, "Cluster_ID", "6");
+                        dictionary(deviceConditionsInfo, "AttriButeId", "0");
+                        dictionary(deviceConditionsInfo, "Range", "1");
+                        dictionary(deviceConditionsInfo, "AttriButeData2", "0");
 
                         #region  鐏厜View
 
 
-                        devicefra.Y = Application.GetRealHeight(1920 - 30 - 720);
-                        devicefra.Height = Application.GetRealHeight(720);
-                        var OnOffOutputfra = new FrameLayout
+
+                        var openframelayout = new FrameLayout
                         {
-                            Y = Application.GetRealHeight(180),
-                            Height = Application.GetRealHeight(180 * 2 + 30),
+                            Height = Application.GetRealHeight(160),
+                            Y = timetype.Bottom + Application.GetRealHeight(20),
                         };
-                        devicefra.AddChidren(OnOffOutputfra);
+                        devicefra.AddChidren(openframelayout);
 
                         var openrowlayout = new RowLayout
                         {
-                            Height = Application.GetRealHeight(180),
+                            Y = Application.GetRealHeight(30),
+                            Width = Application.GetRealWidth(920),
+                            Height = Application.GetRealHeight(130),
+                            X = Application.GetRealWidth(80),
+                            LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
                         };
-                        OnOffOutputfra.AddChidren(openrowlayout);
+                        openframelayout.AddChidren(openrowlayout);
 
                         var btnopen = new Button
                         {
-                            //Text = "寮�",
+                            Width = Application.GetRealWidth(600),
                             TextID = MyInternationalizationString.open,
                             TextAlignment = TextAlignment.CenterLeft,
-                            X = Application.GetRealWidth(40),
-                            Width = Application.GetRealWidth(300),
-                            Height = Application.GetRealHeight(180),
-                            //SelectedBackgroundColor = 0xfffe5e00,
-                            TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                         };
                         openrowlayout.AddChidren(btnopen);
 
-                        var openBtnSelected = new Button
-                        {
-                            X = Application.GetRealWidth(1000 - 150),
-                            Width = Application.GetMinRealAverage(110),
-                            Height = Application.GetMinRealAverage(110),
-                            UnSelectedImagePath = "Item/YesSelected.png",
-                            Visible = false,
-                            Gravity = Gravity.CenterVertical
-                        };
+                        var openBtnSelected = new SelectedButton();
                         openrowlayout.AddChidren(openBtnSelected);
 
 
-
+                        var closeframelayout = new FrameLayout
+                        {
+                            Height = Application.GetRealHeight(160),
+                            Y = openframelayout.Bottom,
+                        };
+                        devicefra.AddChidren(closeframelayout);
                         var closerowlayout = new RowLayout
                         {
-                            Y = openrowlayout.Bottom,
-                            Height = Application.GetRealHeight(180),
+                            Y = Application.GetRealHeight(30),
+                            Width = Application.GetRealWidth(920),
+                            Height = Application.GetRealHeight(130),
+                            X = Application.GetRealWidth(80),
+                            LineColor = ZigbeeColor.Current.LogicBackgroundColor,
                         };
-                        OnOffOutputfra.AddChidren(closerowlayout);
+                        closeframelayout.AddChidren(closerowlayout);
 
                         var btnclose = new Button
                         {
                             //Text = "鍏�",
                             TextID = MyInternationalizationString.close,
+                            Width = Application.GetRealWidth(600),
                             TextAlignment = TextAlignment.CenterLeft,
-                            X = Application.GetRealWidth(40),
-                            Width = Application.GetRealWidth(300),
-                            Height = Application.GetRealHeight(180),
-                            TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                         };
                         closerowlayout.AddChidren(btnclose);
 
-                        var closeBtnSelected = new Button
-                        {
-                            X = Application.GetRealWidth(1000 - 150),
-                            Width = Application.GetMinRealAverage(110),
-                            Height = Application.GetMinRealAverage(110),
-                            UnSelectedImagePath = "Item/YesSelected.png",
-                            Visible = false,
-                            Gravity = Gravity.CenterVertical,
-                        };
+                        var closeBtnSelected = new SelectedButton();
                         closerowlayout.AddChidren(closeBtnSelected);
                         #endregion
 
@@ -558,44 +832,47 @@
                         {
                             openBtnSelected.Visible = true;
                             closeBtnSelected.Visible = false;
-                            SelectedDeviceStatuscondition = "yes";
-                            if (deviceConditionsInfo.ContainsKey("AttriButeData1"))
-                            {
-                                deviceConditionsInfo.Remove("AttriButeData1");
-                            }
-                            deviceConditionsInfo.Add("AttriButeData1", "1");//榛樿鍊�
+                            btnopen.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                            btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                            SelectedDeviceStatuscondition = "OnOffOutput";
+                            dictionary(deviceConditionsInfo, "AttriButeData1", "1");//榛樿鍊�
+
 
                         };
                         openrowlayout.MouseUpEventHandler += openclick;
                         btnopen.MouseUpEventHandler += openclick;
                         openBtnSelected.MouseUpEventHandler += openclick;
+                        openframelayout.MouseUpEventHandler += openclick;
                         ///鐐瑰嚮鍙栨秷浜嬩欢
                         EventHandler<MouseEventArgs> closeclick = (sender, e) =>
                         {
+                            btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                            btnclose.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                             openBtnSelected.Visible = false;
                             closeBtnSelected.Visible = true;
-                            SelectedDeviceStatuscondition = "yes";
-                            if (deviceConditionsInfo.ContainsKey("AttriButeData1"))
-                            {
-                                deviceConditionsInfo.Remove("AttriButeData1");
-                            }
-                            deviceConditionsInfo.Add("AttriButeData1", "0");//榛樿鍊�
+                            SelectedDeviceStatuscondition = "OnOffOutput";
+                            dictionary(deviceConditionsInfo, "AttriButeData1", "0");//榛樿鍊�
 
                         };
                         closerowlayout.MouseUpEventHandler += closeclick;
                         btnclose.MouseUpEventHandler += closeclick;
-                        closeBtnSelected.MouseUpEventHandler += openclick;
+                        closeBtnSelected.MouseUpEventHandler += closeclick;
+                        closeframelayout.MouseUpEventHandler += closeclick;
                         if (edit && devices != null)
                         {
                             if (devices["AttriButeId"] == "0")
                             {
                                 if (devices["AttriButeData1"] == "1")
                                 {
+                                    btnopen.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                                    btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                                     openBtnSelected.Visible = true;
                                     closeBtnSelected.Visible = false;
                                 }
                                 else
                                 {
+                                    btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                    btnclose.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                                     openBtnSelected.Visible = false;
                                     closeBtnSelected.Visible = true;
 
@@ -607,29 +884,10 @@
                 case DeviceType.WindowCoveringDevice:
                     {
 
-
-                        if (deviceConditionsInfo.ContainsKey("Cluster_ID"))
-                        {
-                            deviceConditionsInfo.Remove("Cluster_ID");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("AttriButeId"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeId");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("Range"))
-                        {
-                            deviceConditionsInfo.Remove("Range");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("AttriButeData2"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeData2");
-                        }
-                        deviceConditionsInfo.Add("Cluster_ID", "258");
-                        deviceConditionsInfo.Add("AttriButeId", "8");
-                        deviceConditionsInfo.Add("Range", "0");
-                        deviceConditionsInfo.Add("AttriButeData2", "0");
-
-
+                        dictionary(deviceConditionsInfo, "Cluster_ID", "258");
+                        dictionary(deviceConditionsInfo, "AttriButeId", "8");
+                        dictionary(deviceConditionsInfo, "Range", "0");
+                        dictionary(deviceConditionsInfo, "AttriButeData2", "0");
 
                         #region 绐楀笜View
                         devicefra.Y = Application.GetRealHeight(1920 - 30 - 720);
@@ -652,7 +910,7 @@
                             //Text = "寮�",
                             TextID = MyInternationalizationString.open,
                             TextAlignment = TextAlignment.CenterLeft,
-                            X = Application.GetRealWidth(40),
+                            X = Application.GetRealWidth(50),
                             Width = Application.GetRealWidth(300),
                             Height = Application.GetRealHeight(180),
                             //SelectedBackgroundColor = 0xfffe5e00,
@@ -683,7 +941,7 @@
                             //Text = "鍏�",
                             TextID = MyInternationalizationString.close,
                             TextAlignment = TextAlignment.CenterLeft,
-                            X = Application.GetRealWidth(40),
+                            X = Application.GetRealWidth(50),
                             Width = Application.GetRealWidth(300),
                             Height = Application.GetRealHeight(180),
                             TextColor = ZigbeeColor.Current.LogicTextBlackColor,
@@ -705,15 +963,10 @@
                         ///鐐瑰嚮纭浜嬩欢
                         EventHandler<MouseEventArgs> openclick = (sender, e) =>
                         {
-                            SelectedDeviceStatuscondition = "yes";
+                            SelectedDeviceStatuscondition = "WindowCoveringDevice";
                             openBtnSelected.Visible = true;
                             closeBtnSelected.Visible = false;
-                            if (deviceConditionsInfo.ContainsKey("AttriButeData1"))
-                            {
-                                deviceConditionsInfo.Remove("AttriButeData1");
-                            }
-                            deviceConditionsInfo.Add("AttriButeData1", "95");//榛樿鍊�
-
+                            dictionary(deviceConditionsInfo, "AttriButeData1", "95");//榛樿鍊�
 
                         };
                         openrowlayout.MouseUpEventHandler += openclick;
@@ -722,14 +975,10 @@
                         ///鐐瑰嚮鍙栨秷浜嬩欢
                         EventHandler<MouseEventArgs> closeclick = (sender, e) =>
                         {
-                            SelectedDeviceStatuscondition = "yes";
+                            SelectedDeviceStatuscondition = "WindowCoveringDevice";
                             openBtnSelected.Visible = false;
                             closeBtnSelected.Visible = true;
-                            if (deviceConditionsInfo.ContainsKey("AttriButeData1"))
-                            {
-                                deviceConditionsInfo.Remove("AttriButeData1");
-                            }
-                            deviceConditionsInfo.Add("AttriButeData1", "5");//榛樿鍊�
+                            dictionary(deviceConditionsInfo, "AttriButeData1", "5");//榛樿鍊�
 
                         };
                         closerowlayout.MouseUpEventHandler += closeclick;
@@ -762,141 +1011,126 @@
                         {
                             break;
                         }
-                        if (deviceConditionsInfo.ContainsKey("Cluster_ID"))
-                        {
-                            deviceConditionsInfo.Remove("Cluster_ID");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("AttriButeId"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeId");
-                        }
 
-                        if (deviceConditionsInfo.ContainsKey("AttriButeData2"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeData2");
-                        }
-                        deviceConditionsInfo.Add("Cluster_ID", "1280");
-                        deviceConditionsInfo.Add("AttriButeId", "1281");
-
-                        deviceConditionsInfo.Add("AttriButeData2", "0");
+                        dictionary(deviceConditionsInfo, "Cluster_ID", "1280");
+                        dictionary(deviceConditionsInfo, "AttriButeId", "1281");
+                        dictionary(deviceConditionsInfo, "AttriButeData2", "0");
 
                         #region  瀹夐槻璁惧View
 
-                        devicefra.Y = Application.GetRealHeight(1920 - 30 - 720);
-                        devicefra.Height = Application.GetRealHeight(720);
-                        var iASZonedevicefra = new FrameLayout
+                        var openframelayout = new FrameLayout
                         {
-                            Y = Application.GetRealHeight(180),
-                            Height = Application.GetRealHeight(180 * 2 + 30),
+                            Height = Application.GetRealHeight(160),
+                            Y = timetype.Bottom + Application.GetRealHeight(20),
                         };
-                        devicefra.AddChidren(iASZonedevicefra);
+                        devicefra.AddChidren(openframelayout);
 
                         var openrowlayout = new RowLayout
                         {
-                            Height = Application.GetRealHeight(180),
+                            Y = Application.GetRealHeight(30),
+                            Width = Application.GetRealWidth(920),
+                            Height = Application.GetRealHeight(130),
+                            X = Application.GetRealWidth(80),
+                            LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
                         };
-
+                        openframelayout.AddChidren(openrowlayout);
 
                         var btnopen = new Button
                         {
-
-                            //TextID = MyInternationalizationString.open,
+                            Width = Application.GetRealWidth(600),
+                            TextID = MyInternationalizationString.open,
                             TextAlignment = TextAlignment.CenterLeft,
-                            X = Application.GetRealWidth(40),
-                            Width = Application.GetRealWidth(300),
-                            Height = Application.GetRealHeight(180),
-                            SelectedBackgroundColor = 0xfffe5e00,
-                            TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                         };
                         openrowlayout.AddChidren(btnopen);
 
-                        var openBtnSelected = new Button
-                        {
-                            X = Application.GetRealWidth(1000 - 150),
-                            Width = Application.GetMinRealAverage(110),
-                            Height = Application.GetMinRealAverage(110),
-                            UnSelectedImagePath = "Item/YesSelected.png",
-                            Visible = false,
-                            Gravity = Gravity.CenterVertical
-                        };
+                        var openBtnSelected = new SelectedButton();
                         openrowlayout.AddChidren(openBtnSelected);
 
 
+                        var closeframelayout = new FrameLayout
+                        {
+                            Height = Application.GetRealHeight(160),
+                            Y = openframelayout.Bottom,
+                        };
+                        devicefra.AddChidren(closeframelayout);
                         var closerowlayout = new RowLayout
                         {
-                            Height = Application.GetRealHeight(180),
-                            Y = openrowlayout.Bottom,
+                            Y = Application.GetRealHeight(30),
+                            Width = Application.GetRealWidth(920),
+                            Height = Application.GetRealHeight(130),
+                            X = Application.GetRealWidth(80),
+                            LineColor = ZigbeeColor.Current.LogicBackgroundColor,
                         };
-                        ///
+                        closeframelayout.AddChidren(closerowlayout);
 
                         var btnclose = new Button
                         {
-
-                            //TextID = MyInternationalizationString.close,
+                            //Text = "鍏�",
+                            TextID = MyInternationalizationString.close,
+                            Width = Application.GetRealWidth(600),
                             TextAlignment = TextAlignment.CenterLeft,
-                            X = Application.GetRealWidth(40),
-                            Width = Application.GetRealWidth(300),
-                            Height = Application.GetRealHeight(180),
-                            TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
                         };
                         closerowlayout.AddChidren(btnclose);
 
-                        var closeBtnSelected = new Button
-                        {
-                            X = Application.GetRealWidth(1000 - 150),
-                            Width = Application.GetMinRealAverage(110),
-                            Height = Application.GetMinRealAverage(110),
-                            UnSelectedImagePath = "Item/YesSelected.png",
-                            Visible = false,
-                            Gravity = Gravity.CenterVertical
-                        };
+                        var closeBtnSelected = new SelectedButton();
                         closerowlayout.AddChidren(closeBtnSelected);
 
 
                         #endregion
+
+                        int timevalue = 0;
                         ///鐐瑰嚮纭浜嬩欢
                         EventHandler<MouseEventArgs> openclick = (sender, e) =>
                         {
-                            SelectedDeviceStatuscondition = "yes";
+                            SelectedDeviceStatuscondition = "IASZone";
+                            btnopen.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                            btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                             openBtnSelected.Visible = true;
                             closeBtnSelected.Visible = false;
-                            if (deviceConditionsInfo.ContainsKey("Range"))
+                            if (iASZonedevice.IasDeviceType == 13)
                             {
-                                deviceConditionsInfo.Remove("Range");
+                                closeBtnSelected.Visible = true;
                             }
-                            deviceConditionsInfo.Add("Range", "5");
-                            if (deviceConditionsInfo.ContainsKey("AttriButeData1"))
-                            {
-                                deviceConditionsInfo.Remove("AttriButeData1");
-                            }
-                            deviceConditionsInfo.Add("AttriButeData1", "1");//榛樿鍊�
+                            dictionary(deviceConditionsInfo, "Range", "5");
+                            dictionary(deviceConditionsInfo, "AttriButeData1", "1");
 
 
                         };
                         openrowlayout.MouseUpEventHandler += openclick;
                         btnopen.MouseUpEventHandler += openclick;
                         openBtnSelected.MouseUpEventHandler += openclick;
+                        openframelayout.MouseUpEventHandler += openclick;
                         ///鐐瑰嚮鍙栨秷浜嬩欢
                         EventHandler<MouseEventArgs> closeclick = (sender, e) =>
                         {
-                            SelectedDeviceStatuscondition = "yes";
+                            SelectedDeviceStatuscondition = "IASZone";
+                            btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                            btnclose.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                             openBtnSelected.Visible = false;
                             closeBtnSelected.Visible = true;
-                            if (deviceConditionsInfo.ContainsKey("Range"))
+                            dictionary(deviceConditionsInfo, "Range", "1");
+                            dictionary(deviceConditionsInfo, "AttriButeData1", "0");
+                            if (iASZonedevice.IasDeviceType == 13)
                             {
-                                deviceConditionsInfo.Remove("Range");
+                                SelectedDeviceStatuscondition = "no";
+                                btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                openBtnSelected.Visible = false;
+                                closeBtnSelected.Visible = true;
+                                var ignoreTime = new IgnoreTime();
+                                UserView.HomePage.Instance.AddChidren(ignoreTime);
+                                UserView.HomePage.Instance.PageIndex += 1;
+                                ignoreTime.Show(common, btnclose.Text, edit, timevalue);
                             }
-                            deviceConditionsInfo.Add("Range", "1");
-                            if (deviceConditionsInfo.ContainsKey("AttriButeData1"))
-                            {
-                                deviceConditionsInfo.Remove("AttriButeData1");
-                            }
-                            deviceConditionsInfo.Add("AttriButeData1", "0");//榛樿鍊�
+
 
                         };
                         closerowlayout.MouseUpEventHandler += closeclick;
                         btnclose.MouseUpEventHandler += closeclick;
                         closeBtnSelected.MouseUpEventHandler += closeclick;
+                        closeframelayout.MouseUpEventHandler += closeclick;
 
 
 
@@ -905,69 +1139,140 @@
                             case 13:
                                 {
                                     btnopen.TextID = MyInternationalizationString.someone;
-                                    //btnclose.TextID = MyInternationalizationString.unmanned;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
-                                    //iASZonedevicefra.AddChidren(closerowlayout);
+                                    btnclose.TextID = MyInternationalizationString.unattendedtime1;
+                                    closeBtnSelected.UnSelectedImagePath = "ZigeeLogic/next.png";
+                                    closeBtnSelected.Visible = true;
+                                    openframelayout.AddChidren(openrowlayout);
+                                    closeframelayout.AddChidren(closerowlayout);
                                 }
                                 break;
                             case 21:
-                                {
-                                    btnopen.TextID = MyInternationalizationString.logicopen;
-                                    btnclose.TextID = MyInternationalizationString.logicclose;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
-                                    iASZonedevicefra.AddChidren(closerowlayout);
-                                }
-                                break;
                             case 22:
                                 {
+                                    #region
+                                    devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 * 3 - 20 - 50);
+                                    devicefra.Height = Application.GetRealHeight(140 + 160 * 3 + 20 + 50);
                                     btnopen.TextID = MyInternationalizationString.logicopen;
                                     btnclose.TextID = MyInternationalizationString.logicclose;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
-                                    iASZonedevicefra.AddChidren(closerowlayout);
+                                    closerowlayout.LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor;
+                                    openframelayout.AddChidren(openrowlayout);
+                                    closeframelayout.AddChidren(closerowlayout);
+
+
+
+                                    var timeoutframelayout = new FrameLayout
+                                    {
+                                        Height = Application.GetRealHeight(160),
+                                        Y = closeframelayout.Bottom,
+                                    };
+                                    devicefra.AddChidren(timeoutframelayout);
+                                    var timeoutrowlayout = new RowLayout
+                                    {
+                                        Y = Application.GetRealHeight(30),
+                                        Width = Application.GetRealWidth(920),
+                                        Height = Application.GetRealHeight(130),
+                                        X = Application.GetRealWidth(80),
+                                        LineColor = ZigbeeColor.Current.LogicBackgroundColor,
+                                    };
+                                    timeoutframelayout.AddChidren(timeoutrowlayout);
+
+                                    var btntimeout = new Button
+                                    {
+                                        TextID = MyInternationalizationString.closetimeout,
+                                        Width = Application.GetRealWidth(600),
+                                        TextAlignment = TextAlignment.CenterLeft,
+                                        TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
+                                    };
+                                    timeoutrowlayout.AddChidren(btntimeout);
+
+                                    var timeoutBtnSelected = new Button
+                                    {
+                                        X = Application.GetRealWidth(860),
+                                        Width = Application.GetMinRealAverage(60),
+                                        Height = Application.GetMinRealAverage(60),
+                                        UnSelectedImagePath = "ZigeeLogic/next.png",
+                                        Gravity = Gravity.CenterVertical,
+                                    };
+                                    timeoutrowlayout.AddChidren(timeoutBtnSelected);
+                                    EventHandler<MouseEventArgs> timeoutclick = (sender, e) =>
+                                    {
+                                        SelectedDeviceStatuscondition = "no";
+                                        btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        openBtnSelected.Visible = false;
+                                        closeBtnSelected.Visible = false;
+                                        var ignoreTime = new IgnoreTime();
+                                        UserView.HomePage.Instance.AddChidren(ignoreTime);
+                                        UserView.HomePage.Instance.PageIndex += 1;
+                                        ignoreTime.Show(common, btntimeout.Text, edit, timevalue);
+
+                                    };
+                                    timeoutframelayout.MouseUpEventHandler += timeoutclick;
+                                    timeoutrowlayout.MouseUpEventHandler += timeoutclick;
+                                    btntimeout.MouseUpEventHandler += timeoutclick;
+                                    timeoutBtnSelected.MouseUpEventHandler += timeoutclick;
+
+                                    #endregion
                                 }
                                 break;
 
                             case 40:
                                 {
+                                    devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
+                                    devicefra.Height = Application.GetRealHeight(140 + 160 + 20 + 50);
                                     btnopen.TextID = MyInternationalizationString.smokescreen;
                                     //btnclose.TextID = MyInternationalizationString.nosmokescreen;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
+                                    openframelayout.AddChidren(openrowlayout);
+                                    openrowlayout.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
                                 }
                                 break;
                             case 42:
                                 {
                                     btnopen.TextID = MyInternationalizationString.waterleakage;
                                     btnclose.TextID = MyInternationalizationString.noleakage;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
-                                    iASZonedevicefra.AddChidren(closerowlayout);
+                                    openframelayout.AddChidren(openrowlayout);
+                                    closeframelayout.AddChidren(closerowlayout);
+
                                 }
                                 break;
                             case 43:
                                 {
+                                    devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
+                                    devicefra.Height = Application.GetRealHeight(140 + 160 + 20 + 50);
                                     btnopen.TextID = MyInternationalizationString.gas;
                                     //btnclose.TextID = MyInternationalizationString.nogas;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
+                                    openframelayout.AddChidren(openrowlayout);
+                                    openrowlayout.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
                                 }
                                 break;
                             case 44:
                                 {
+                                    devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
+                                    devicefra.Height = Application.GetRealHeight(140 + 160 + 20 + 50);
                                     btnopen.TextID = MyInternationalizationString.emergencybutton;
                                     //btnclose.TextID = MyInternationalizationString.nosmokescreen;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
+                                    openframelayout.AddChidren(openrowlayout);
+                                    openrowlayout.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
                                 }
                                 break;
 
                             case 277:
                                 {
+                                    devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
+                                    devicefra.Height = Application.GetRealHeight(140 + 160 + 20 + 50);
                                     btnopen.TextID = MyInternationalizationString.callthepolice;
                                     //btnclose.TextID = MyInternationalizationString.nosmokescreen;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
+                                    openframelayout.AddChidren(openrowlayout);
+                                    openrowlayout.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
                                 }
                                 break;
                             default:
                                 {
+                                    devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
+                                    devicefra.Height = Application.GetRealHeight(140 + 160 + 20 + 50);
                                     btnopen.TextID = MyInternationalizationString.callthepolice;
-                                    iASZonedevicefra.AddChidren(openrowlayout);
+                                    openframelayout.AddChidren(openrowlayout);
+                                    openrowlayout.LineColor = ZigbeeColor.Current.LogicBackgroundColor;
                                 }
                                 break;
                         }
@@ -977,138 +1282,229 @@
                             {
                                 if (devices["AttriButeData1"] == "1")
                                 {
+                                    btnopen.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                                    btnclose.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
                                     openBtnSelected.Visible = true;
                                     closeBtnSelected.Visible = false;
                                 }
                                 else
                                 {
-                                    openBtnSelected.Visible = false;
-                                    closeBtnSelected.Visible = true;
+                                    if (devices.ContainsKey("IgnoreTime"))
+                                    {
+                                        timevalue = int.Parse(devices["IgnoreTime"]);
+                                    }
+                                    else
+                                    {
+                                        btnopen.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor;
+                                        btnclose.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
+                                        openBtnSelected.Visible = false;
+                                        closeBtnSelected.Visible = true;
+                                    }
                                 }
                             }
+
+
                         }
 
                     }
                     break;
                 case DeviceType.OnOffSwitch:
                     {
-                        if (deviceConditionsInfo.ContainsKey("Cluster_ID"))
-                        {
-                            deviceConditionsInfo.Remove("Cluster_ID");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("AttriButeId"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeId");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("Range"))
-                        {
-                            deviceConditionsInfo.Remove("Range");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("AttriButeData1"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeData1");
-                        }
-                        if (deviceConditionsInfo.ContainsKey("AttriButeData2"))
-                        {
-                            deviceConditionsInfo.Remove("AttriButeData2");
-                        }
-                        deviceConditionsInfo.Add("Cluster_ID", "1282");
-                        deviceConditionsInfo.Add("AttriButeId", "1283");
-                        deviceConditionsInfo.Add("Range", "0");//鎸夐敭鐗规畩
-                        deviceConditionsInfo.Add("AttriButeData1", "0");
-                        deviceConditionsInfo.Add("AttriButeData2", "0");
 
-                        devicefra.Y = Application.GetRealHeight(1920 - 30 - 720);
-                        devicefra.Height = Application.GetRealHeight(720);
+                        dictionary(deviceConditionsInfo, "Cluster_ID", "1282");
+                        dictionary(deviceConditionsInfo, "AttriButeId", "1283");
+                        dictionary(deviceConditionsInfo, "Range", "0");//鎸夐敭鐗规畩
+                        dictionary(deviceConditionsInfo, "AttriButeData1", "0");
+                        dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+
+                        devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 - 20 - 50);
+                        devicefra.Height = Application.GetRealHeight(140 + 160 + 20 + 50);
                         var OnOffOutputfra = new FrameLayout
                         {
-                            Y = Application.GetRealHeight(180),
-                            Height = Application.GetRealHeight(180 * 2 + 30),
+                            Height = Application.GetRealHeight(160),
+                            Y = timetype.Bottom + Application.GetRealHeight(20),
                         };
                         devicefra.AddChidren(OnOffOutputfra);
 
                         var buttonRow = new RowLayout
                         {
-                            Height = Application.GetRealHeight(180),
+                            Y = Application.GetRealHeight(30),
+                            Width = Application.GetRealWidth(920),
+                            Height = Application.GetRealHeight(130),
+                            X = Application.GetRealWidth(80),
+                            LineColor = ZigbeeColor.Current.LogicBackgroundColor,
                         };
                         OnOffOutputfra.AddChidren(buttonRow);
 
                         var button = new Button
                         {
-                            //TextID = MyInternationalizationString.button1,
+                            Width = Application.GetRealWidth(600),
                             TextAlignment = TextAlignment.CenterLeft,
-                            X = Application.GetRealWidth(40),
-                            Width = Application.GetRealWidth(300),
-                            Height = Application.GetRealHeight(180),
-                            Text=Language.StringByID(MyInternationalizationString.OnOffSwitch)+common.DeviceEpoint.ToString(),
+                            TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor,
+                            Text = Language.StringByID(MyInternationalizationString.OnOffSwitch) + common.DeviceEpoint.ToString(),
                             //SelectedBackgroundColor = 0xfffe5e00,
-                            TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                         };
                         buttonRow.AddChidren(button);
 
-                        var buttonSelected = new Button
-                        {
-                            X = Application.GetRealWidth(1000 - 150),
-                            Width = Application.GetMinRealAverage(110),
-                            Height = Application.GetMinRealAverage(110),
-                            UnSelectedImagePath = "Item/YesSelected.png",
-                            Visible = false,
-                            Gravity = Gravity.CenterVertical
-                        };
+                        var buttonSelected = new SelectedButton();
                         buttonRow.AddChidren(buttonSelected);
-                      EventHandler<MouseEventArgs> buttonclick = (sender, e) =>
+                        EventHandler<MouseEventArgs> buttonclick = (sender, e) =>
                        {
                            buttonSelected.Visible = true;
-                           SelectedDeviceStatuscondition = "yes";
+                           SelectedDeviceStatuscondition = "OnOffSwitch";
+                           button.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
 
                        };
                         buttonRow.MouseUpEventHandler += buttonclick;
                         button.MouseUpEventHandler += buttonclick;
                         buttonSelected.MouseUpEventHandler += buttonclick;
+                        OnOffOutputfra.MouseUpEventHandler += buttonclick;
 
                         if (edit && devices != null)
                         {
                             buttonSelected.Visible = true;
+                            button.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor;
                         }
-                                            
+
+                    }
+                    break;
+                case DeviceType.DoorLock:
+                    {
+                        #region  ------
+                        var doorlockifonlist = Send.ReadDoorLockIfon("ccccccfffe300347");
+                        //var list = Send.ReadDoorLockIfon(common.DeviceAddr);
+                        var pra = new UserCenter.MemberListInfoPra();
+                        string result = await UserCenter.UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", false, pra);
+                        var listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<UserCenter.MemberInfoRes>>(result);
+                        Send.UserList.Clear();
+                        for (int i = 0; i < listInfo.Count; i++)
+                        {
+                            var membership = new Send.MembershipIfon();
+                            var membershipifon = listInfo[i];
+                            for (int j = 0; j < doorlockifonlist.Count; j++)
+                            {
+                                ///鏌ユ壘鎴愬憳浠ュ強鎴愬憳闂ㄩ攣瑙﹀彂婧�(1鎸夐敭/3鍗�/15鎸囩汗)
+                                if (doorlockifonlist[j].CloudAccountId == membershipifon.SubAccountDistributedMark)
+                                {
+                                    membership.UserIdMode.Add(doorlockifonlist[j].UserIdMode);
+                                    membership.MembershipName = membershipifon.UserName;
+                                    membership.MembershipId = membershipifon.SubAccountDistributedMark;
+
+                                }
+
+                            }
+                            if (membership.UserIdMode.Count != 0)
+                            {
+                                ///杩囨护鎺夐噸澶嶆暟鎹紱
+                                var str = Send.UserList.Find((c) => { return c.MembershipId == membership.MembershipId; });
+                                if (str == null)
+                                {
+                                    Send.UserList.Add(membership);
+                                }
+                            }
+
+                        }
+                        #endregion
+
+                        var memberList = new MemberList();
+                        UserView.HomePage.Instance.AddChidren(memberList);
+                        UserView.HomePage.Instance.PageIndex += 1;
+                        MemberList.action += () => { flMain.RemoveFromParent(); };
+                        memberList.Show(common);
                     }
                     break;
 
+                case DeviceType.TemperatureSensor:
+                    {
+                        devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 * 2 - 20 - 50);
+                        devicefra.Height = Application.GetRealHeight(140 + 160 * 2 + 20 + 50);
+                        var temperatureSensor = common as TemperatureSensor;
+                        var Btntemperaturevalue = new Button
+                        {
+                            TextColor = ZigbeeColor.Current.LogicBtnCancelColor,
+                            Height = Application.GetRealHeight(60),
+                            Width = Application.GetRealWidth(400),
+                            TextAlignment = TextAlignment.CenterLeft,
+                            X = Application.GetRealWidth(80),
+                            Y = timetype.Bottom + Application.GetRealHeight(70),
+                        };
+                        devicefra.AddChidren(Btntemperaturevalue);
+
+                        var horizontalSeekBarVol = new HorizontalSeekBar
+                        {
+                            Width = Application.GetRealWidth(920),
+                            Height = Application.GetRealHeight(80),
+                            Radius = (uint)Application.GetRealHeight(25),
+                            Y = timetype.Bottom + Application.GetRealHeight(70 + 60 + 70),
+                            X = Application.GetRealWidth(80),
+                            ProgressColor = ZigbeeColor.Current.LogicProgressColorSelected,
+                            Max = 100,
+                            SleepTime = 1000,
+                            ThumbRadius = 9,
+                        };
+                        devicefra.AddChidren(horizontalSeekBarVol);
+                        horizontalSeekBarVol.MouseUpEventHandler += (sender, e) =>
+                        {
+                            SelectedDeviceStatuscondition = "TemperatureSensor";
+                            if (temperatureSensor.SensorDiv == 1)
+                            {
+                                dictionary(deviceConditionsInfo, "AttriButeData1", horizontalSeekBarVol.Progress.ToString());
+
+                                Btntemperaturevalue.Text = "褰撳墠>" + horizontalSeekBarVol.Progress.ToString() + "鈩�";
+
+                            }
+                            else
+                            {
+                                Btntemperaturevalue.Text = "褰撳墠<" + horizontalSeekBarVol.Progress.ToString() + "%";
+                                dictionary(deviceConditionsInfo, "AttriButeData1", horizontalSeekBarVol.Progress.ToString());//娓╁害鍊�
+                            }
+                        };
+
+
+
+                        if (temperatureSensor.SensorDiv == 1)
+                        {
+                            dictionary(deviceConditionsInfo, "Cluster_ID", "1026");
+                            dictionary(deviceConditionsInfo, "AttriButeId", "0");
+                            dictionary(deviceConditionsInfo, "Range", "0");//0澶т簬AttriButeData1鏃惰Е鍙戝姩浣�
+                            dictionary(deviceConditionsInfo, "AttriButeData1", "0");
+                            dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+                            Btntemperaturevalue.Text = "褰撳墠>0鈩�";
+
+                        }
+                        else
+                        {
+                            Btntemperaturevalue.Text = "褰撳墠<0%";
+                            dictionary(deviceConditionsInfo, "Cluster_ID", "1029");
+                            dictionary(deviceConditionsInfo, "AttriButeId", "0");
+                            dictionary(deviceConditionsInfo, "Range", "2");//2灏忎簬AttriButeData1鏃惰Е鍙戝姩浣�
+                            dictionary(deviceConditionsInfo, "AttriButeData1", "0");//娓╁害鍊�
+                            dictionary(deviceConditionsInfo, "AttriButeData2", "0");
+                        }
+
+                        if (edit && devices != null)
+                        {
+                            horizontalSeekBarVol.Progress = int.Parse(devices["AttriButeData1"]);
+                            if (temperatureSensor.SensorDiv == 1)
+                            {
+
+                                Btntemperaturevalue.Text = "褰撳墠>" + devices["AttriButeData1"] + "鈩�";
+
+                            }
+                            else
+                            {
+                                Btntemperaturevalue.Text = "褰撳墠<" + devices["AttriButeData1"] + "%";
+                            }
+                        }
+
+                    }
+                    break;
             }
 
-
-            var cancel = new Button
-            {
-                Height = Application.GetRealHeight(160),
-                TextID = MyInternationalizationString.cancel,
-                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
-                TextSize = 16,
-                BackgroundColor = ZigbeeColor.Current.LogicTopViewBackgroundColor,
-                Y = devicefra.Height - Application.GetRealHeight(160),
-
-            };
-            devicefra.AddChidren(cancel);
-            cancel.MouseUpEventHandler += (sender, e) =>
-            {
-                flMain.RemoveFromParent();
-                UserView.HomePage.Instance.ScrollEnabled = true;
-            };
-
-
-            var btnSave = new Button
-            {
-                Y = Application.GetRealHeight(20),
-                Width = Application.GetRealWidth(200),
-                Height = Application.GetRealHeight(150),
-                Text = Language.StringByID(MyInternationalizationString.complete),
-                TextColor = ZigbeeColor.Current.LogicTextBlueColor,
-                X = Application.GetRealWidth(1000 - 200),
-            };
-            devicefra.AddChidren(btnSave);
-            btnSave.MouseUpEventHandler += (sender2, e2) =>
+            Btncomplete.MouseUpEventHandler += (sender2, e2) =>
             {
                 //UserView.HomePage.Instance.ScrollEnabled = true;
-                if (SelectedDeviceStatuscondition == "yes")
+                if (SelectedDeviceStatuscondition != "")
                 {
                     LogicIfon.AddDeviceconditions(common, deviceConditionsInfo);
                 }
@@ -1135,6 +1531,16 @@
 
         }
 
+        public static void dictionary(Dictionary<string, string> deviceConditionsInfo, string Key, string Value)
+        {
+            if (deviceConditionsInfo.ContainsKey(Key))
+            {
+                deviceConditionsInfo.Remove(Key);
+            }
+            deviceConditionsInfo.Add(Key, Value);
+        }
+
+        
 
     }
 }

--
Gitblit v1.8.0