gxc
2019-11-29 ac334861efbf06933e95c62ced0484410f34bece
ZigbeeApp/Shared/Phone/Device/Category/Category.cs
@@ -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
{
@@ -828,6 +829,7 @@
                    BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
                };
                functionSceneBodyView.AddChidren(functionTypeScrowView);
                //functionSceneBodyView.SetCornerWithSameRadius(Application.GetRealHeight(50), HDLUtils.RectCornerBottomLeft);
                deviceListScrolView = new VerticalScrolViewLayout
                {
@@ -838,6 +840,8 @@
                    BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor
                };
                functionSceneBodyView.AddChidren(deviceListScrolView);
                //deviceListScrolView.SetCornerWithSameRadius(Application.GetRealHeight(50), HDLUtils.RectCornerTopLeft);
                tempFunctionTypeBtn = new FunctionButton();
                EventHandler<MouseEventArgs> ShowSameTypeFunction = (object typeSender, MouseEventArgs mouseEventArgs) =>
@@ -907,8 +911,7 @@
                            {
                                UserHomeView.ReadStatus(light, () =>
                                {
                                    light.ReadOnOffStatus();
                                    light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice);
                                });
                            }
                            else
@@ -916,8 +919,7 @@
                                //防止短时间内多次读取状态
                                if (CommonPage.ReadDeviceStatuSpan < (DateTime.Now - light.LastDateTime).TotalSeconds)
                                {
                                    light.ReadOnOffStatus();
                                    light.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    ReadDeviceAttributeLogic.Instance.SendLightStatuComand(deviceUI.CommonDevice);
                                }
                            }
@@ -1026,16 +1028,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);
                                }
                            }
@@ -1126,18 +1126,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);
                                }
                            }
@@ -1230,16 +1226,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 +1234,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);
                                }
                            }
@@ -1347,8 +1325,7 @@
                            {
                                UserHomeView.ReadStatus(rollerShade, () =>
                                {
                                    rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    rollerShade.ReadWcdCurrentPositionLiftPercentage();
                                    ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice);
                                });
                            }
                            else
@@ -1356,8 +1333,7 @@
                                //防止短时间内多次读取
                                if ((DateTime.Now - rollerShade.LastDateTime).TotalSeconds > CommonPage.ReadDeviceStatuSpan)
                                {
                                    rollerShade.ReadAttri(Cluster_ID.Identify, AttriButeId.Switch);
                                    rollerShade.ReadWcdCurrentPositionLiftPercentage();
                                    ReadDeviceAttributeLogic.Instance.SendCurtainStatuComand(deviceUI.CommonDevice);
                                }
                            }
@@ -1573,6 +1549,8 @@
                    BorderWidth = 1
                };
                row.AddChidren(roomBtn);
                roomBtn.SetViewShadow(true,5);
                if (room.IsLove)
                {
                    roomBtn.IsSelected = true;
@@ -1706,18 +1684,17 @@
                        {
                            if (delayScenesListResponseInfo.ScenesId == sceneView.scene.Id)
                            {
                                var times = delayScenesListResponseInfo.RemainTime;
                                sceneView.scene.RemainTime = times;
                                sceneView.scene.RemainTime = delayScenesListResponseInfo.RemainTime;
                                new System.Threading.Thread(() =>
                                {
                                    while (times > 0)
                                    while (sceneView.scene.RemainTime > 0)
                                    {
                                        System.Threading.Thread.Sleep(1000);
                                        Application.RunOnMainThread(() =>
                                        {
                                            sceneView.SetTimeText(CommonFormResouce.GetTimeString(times));
                                            sceneView.SetTimeText(CommonFormResouce.GetTimeString(sceneView.scene.RemainTime));
                                        });
                                        times -= 1;
                                        sceneView.scene.RemainTime -= 1;
                                    }
                                    Application.RunOnMainThread(() =>
                                    {
@@ -1735,8 +1712,19 @@
            { IsBackground = true }.Start();
        }
        #endregion
        /// <summary>
        /// GetExecScene
        /// </summary>
        /// <param name="scrolViewLayout"></param>
        private void GetExecScene(VerticalScrolViewLayout scrolViewLayout)
        {
            new System.Threading.Thread(() =>
            {
            })
            { IsBackground = true }.Start();
        }
        #endregion
        #region ◆ 自动化__________________________