gxc
2019-12-13 eb424d24e39bab4a245725f35deab3f234ea0f13
ZigbeeApp/Shared/Phone/Device/Category/Category.cs
old mode 100755 new mode 100644
@@ -7,6 +7,7 @@
using Shared.Phone.Device.CommonForm;
using Shared.Phone.Device.AC;
using Shared.Phone.UserCenter.DoorLock;
using Shared.Phone.Device.DeviceLogic;
namespace Shared.Phone.Device.Category
{
@@ -484,8 +485,9 @@
                Gravity = Gravity.CenterVertical,
                TextAlignment = TextAlignment.CenterLeft,
                TextID = R.MyInternationalizationString.Category,
                TextSize = 20,
                TextSize = 24,
                TextColor = ZigbeeColor.Current.GXCTextDeepBlackColor,
                IsBold=true
            };
            topView.AddChidren(title);
@@ -828,6 +830,7 @@
                    BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
                };
                functionSceneBodyView.AddChidren(functionTypeScrowView);
                //functionSceneBodyView.SetCornerWithSameRadius(Application.GetRealHeight(50), HDLUtils.RectCornerBottomLeft);
                deviceListScrolView = new VerticalScrolViewLayout
                {
@@ -838,7 +841,10 @@
                    BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
                };
                functionSceneBodyView.AddChidren(deviceListScrolView);
                //deviceListScrolView.SetCornerWithSameRadius(Application.GetRealHeight(50), HDLUtils.RectCornerTopLeft);
                tempFunctionTypeBtn = new FunctionButton();
                tempFunctionTypeBtn.Init("","");
                EventHandler<MouseEventArgs> ShowSameTypeFunction = (object typeSender, MouseEventArgs mouseEventArgs) =>
                {
@@ -907,8 +913,7 @@
                            {
                                UserHomeView.ReadStatus(light, () =>
                                {
                                    light.ReadOnOffStatus();
                                    light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice);
                                });
                            }
                            else
@@ -916,8 +921,7 @@
                                //防止短时间内多次读取状态
                                if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds)
                                {
                                    light.ReadOnOffStatus();
                                    light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice);
                                }
                            }
@@ -1002,16 +1006,18 @@
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(editBtn);
                            editBtn.MouseUpEventHandler += deviceDetailHandler;
                            var delBtn = new Device.CommonForm.RowLayoutDeleteButton()
                            {
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(delBtn);
                            delBtn.MouseUpEventHandler += delEvent;
                            if (room.IsSharedRoom == false)
                            {
                                deviceTypeRowLayout.AddRightView(editBtn);
                                editBtn.MouseUpEventHandler += deviceDetailHandler;
                                deviceTypeRowLayout.AddRightView(delBtn);
                                delBtn.MouseUpEventHandler += delEvent;
                            }
                        }
                        else if (deviceUI.CommonDevice.Type == ZigBee.Device.DeviceType.AirSwitch)
                        {
@@ -1026,16 +1032,14 @@
                            {
                                UserHomeView.ReadStatus(airSwitch, () =>
                                {
                                    airSwitch.ReadOnOffStatus();
                                    airSwitch.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice);
                                });
                            }
                            else
                            {
                                if ((DateTime.Now - airSwitch.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                                {
                                    airSwitch.ReadOnOffStatus();
                                    airSwitch.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice);
                                }
                            }
@@ -1102,16 +1106,19 @@
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(editBtn);
                            editBtn.MouseUpEventHandler += deviceDetailHandler;
                            var delBtn = new Device.CommonForm.RowLayoutDeleteButton()
                            {
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(delBtn);
                            delBtn.MouseUpEventHandler += delEvent;
                            if (room.IsSharedRoom == false)
                            {
                                deviceTypeRowLayout.AddRightView(editBtn);
                                editBtn.MouseUpEventHandler += deviceDetailHandler;
                                deviceTypeRowLayout.AddRightView(delBtn);
                                delBtn.MouseUpEventHandler += delEvent;
                            }
                        }
                        else if (deviceUI.CommonDevice.Type == ZigBee.Device.DeviceType.DimmableLight)
                        {
@@ -1126,18 +1133,14 @@
                            {
                                UserHomeView.ReadStatus(dimmableLight, () =>
                                {
                                    dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    dimmableLight.ReadOnOffStatus();
                                    dimmableLight.ReadLevel();
                                    ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI.CommonDevice);
                                });
                            }
                            else
                            {
                                if ((DateTime.Now - dimmableLight.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                                {
                                    dimmableLight.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    dimmableLight.ReadOnOffStatus();
                                    dimmableLight.ReadLevel();
                                    ReadDeviceAttributeLogic.Instance.SendDimmableLightStatuComand(deviceUI.CommonDevice);
                                }
                            }
@@ -1204,17 +1207,18 @@
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(editBtn);
                            editBtn.MouseUpEventHandler += deviceDetailHandler;
                            var delBtn = new Device.CommonForm.RowLayoutDeleteButton()
                            {
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(delBtn);
                            delBtn.MouseUpEventHandler += delEvent;
                            if (room.IsSharedRoom == false)
                            {
                                deviceTypeRowLayout.AddRightView(editBtn);
                                editBtn.MouseUpEventHandler += deviceDetailHandler;
                                deviceTypeRowLayout.AddRightView(delBtn);
                                delBtn.MouseUpEventHandler += delEvent;
                            }
                        }
                        else if (deviceUI.CommonDevice.Type == ZigBee.Device.DeviceType.Thermostat)
                        {
@@ -1230,16 +1234,7 @@
                                //发送读取状态命令
                                UserView.UserHomeView.ReadStatus(ac, () =>
                                {
                                    ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ac.ReadLocalTemperature();
                                    ac.ReadCoolingSetpoint();
                                    ac.ReadHeatingSetpoint();
                                    ac.ReadAutoSetpoint();
                                    ac.ReadFanMode();
                                    ac.ReadSystemMode();
                                    ac.ReadSystemFansSwingMode();
                                    ac.ReadModeSupport();
                                    ac.ReadCleanStatu();
                                    ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI.CommonDevice);
                                });
                            }
                            else
@@ -1247,16 +1242,7 @@
                                //防止短时间内多次读取设备状态
                                if ((DateTime.Now - ac.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                                {
                                    ac.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ac.ReadLocalTemperature();
                                    ac.ReadCoolingSetpoint();
                                    ac.ReadHeatingSetpoint();
                                    ac.ReadAutoSetpoint();
                                    ac.ReadFanMode();
                                    ac.ReadSystemMode();
                                    ac.ReadSystemFansSwingMode();
                                    ac.ReadModeSupport();
                                    ac.ReadCleanStatu();
                                    ReadDeviceAttributeLogic.Instance.SendACStatuComand(deviceUI.CommonDevice);
                                }
                            }
@@ -1313,16 +1299,18 @@
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(editBtn);
                            editBtn.MouseUpEventHandler += deviceDetailHandler;
                            var delBtn = new Device.CommonForm.RowLayoutDeleteButton()
                            {
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(delBtn);
                            delBtn.MouseUpEventHandler += delEvent;
                            if (room.IsSharedRoom == false)
                            {
                                deviceTypeRowLayout.AddRightView(editBtn);
                                editBtn.MouseUpEventHandler += deviceDetailHandler;
                                deviceTypeRowLayout.AddRightView(delBtn);
                                delBtn.MouseUpEventHandler += delEvent;
                            }
                            deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) =>
                            {
@@ -1347,8 +1335,7 @@
                            {
                                UserHomeView.ReadStatus(rollerShade, () =>
                                {
                                    rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    rollerShade.ReadWcdCurrentPositionLiftPercentage();
                                    ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice);
                                });
                            }
                            else
@@ -1356,8 +1343,7 @@
                                //防止短时间内多次读取
                                if ((DateTime.Now - rollerShade.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                                {
                                    rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    rollerShade.ReadWcdCurrentPositionLiftPercentage();
                                    ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice);
                                }
                            }
@@ -1400,16 +1386,18 @@
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(editBtn);
                            editBtn.MouseUpEventHandler += deviceDetailHandler;
                            var delBtn = new Device.CommonForm.RowLayoutDeleteButton()
                            {
                                Tag = deviceUI,
                                Radius = 0
                            };
                            deviceTypeRowLayout.AddRightView(delBtn);
                            delBtn.MouseUpEventHandler += delEvent;
                            if (room.IsSharedRoom == false)
                            {
                                deviceTypeRowLayout.AddRightView(editBtn);
                                editBtn.MouseUpEventHandler += deviceDetailHandler;
                                deviceTypeRowLayout.AddRightView(delBtn);
                                delBtn.MouseUpEventHandler += delEvent;
                            }
                            deviceRow.ClickBtn.MouseUpEventHandler += (send2, e2) =>
                            {
@@ -1452,15 +1440,17 @@
                            {
                                Tag = deviceUI
                            };
                            deviceTypeRowLayout.AddRightView(editBtn);
                            editBtn.MouseUpEventHandler += deviceDetailHandler;
                            var delBtn = new Device.CommonForm.RowLayoutDeleteButton()
                            {
                                Tag = deviceUI
                            };
                            deviceTypeRowLayout.AddRightView(delBtn);
                            delBtn.MouseUpEventHandler += delEvent;
                            if (room.IsSharedRoom == false)
                            {
                                deviceTypeRowLayout.AddRightView(editBtn);
                                editBtn.MouseUpEventHandler += deviceDetailHandler;
                                deviceTypeRowLayout.AddRightView(delBtn);
                                delBtn.MouseUpEventHandler += delEvent;
                            }
                        }
                        else
                        {
@@ -1484,15 +1474,17 @@
                            {
                                Tag = deviceUI
                            };
                            deviceTypeRowLayout.AddRightView(editBtn);
                            editBtn.MouseUpEventHandler += deviceDetailHandler;
                            var delBtn = new Device.CommonForm.RowLayoutDeleteButton()
                            {
                                Tag = deviceUI
                            };
                            deviceTypeRowLayout.AddRightView(delBtn);
                            delBtn.MouseUpEventHandler += delEvent;
                            if (room.IsSharedRoom == false)
                            {
                                deviceTypeRowLayout.AddRightView(editBtn);
                                editBtn.MouseUpEventHandler += deviceDetailHandler;
                                deviceTypeRowLayout.AddRightView(delBtn);
                                delBtn.MouseUpEventHandler += delEvent;
                            }
                        }
                    }
                };
@@ -1644,7 +1636,6 @@
                    var sceneView = new SceneCategoryView(0, 0);
                    sceneScrolView.AddChidren(sceneView);
                    sceneView.Init(scene, room);
                    sceneView.SetViewShadow(true);
                    GetDelayScene(sceneScrolView);
                }
            }
@@ -1737,6 +1728,18 @@
            { IsBackground = true }.Start();
        }
        /// <summary>
        /// GetExecScene
        /// </summary>
        /// <param name="scrolViewLayout"></param>
        private void GetExecScene(VerticalScrolViewLayout scrolViewLayout)
        {
            new System.Threading.Thread(() =>
            {
            })
            { IsBackground = true }.Start();
        }
        #endregion
        #region ◆ 自动化__________________________
@@ -1748,6 +1751,7 @@
        {
            functionSceneAutoBodyView.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor;
            var bjFrameLayout = new FrameLayout
            {
                Width = Application.GetRealWidth(1080 - 58),
@@ -1912,7 +1916,7 @@
                var Idlist = await Logic.Send.GetLogicId(0);
                if (Idlist.Count != 0)
                {
                    var listlogic = await Logic.Send.ReadList(Idlist.Count,0);
                    var listlogic = await Logic.Send.ReadList(Idlist.Count, 0);
                    //foreach可能集合已被修改,枚举操作可能不会执行,可能出现崩溃(建议for)。
                    for (int j = 0; j < listlogic.Count; j++)
                    {
@@ -1928,7 +1932,7 @@
            //自动化
            Automationview(logicScrolView);
            CommonPage.Loading.Hide();
        }
        /// <summary>
@@ -2537,6 +2541,6 @@
        #endregion
    }
}