黄学彪
2020-12-17 9f326f4000847e6167d8166fa2f6a66f53cb3734
ZigbeeApp/Shared/Phone/UserCenter/Device/Curtain/SiphonateDirectionAndLimitSettionForm.cs
@@ -120,11 +120,11 @@
                listText.Add(Language.StringByID(R.MyInternationalizationString.uReverseDirection));//反向
                var form = new BottomItemSelectForm();
                form.AddForm(Language.StringByID(R.MyInternationalizationString.uDirectionSelect), listText, nowSelectNo);
                form.FinishSelectEvent += async (index) =>
                form.AddForm(Language.StringByID(R.MyInternationalizationString.uDirectionSelect), listText, null, nowSelectNo);
                form.FinishSelectEvent += (index) =>
                {
                    //变更方向
                    var result = await HdlDeviceCurtainLogic.Current.SetCurtainDirection(curtainDevice, index == 0 ? false : true);
                    var result = HdlDeviceCurtainLogic.Current.SetCurtainDirection(curtainDevice, index == 0 ? false : true);
                    if (result == false)
                    {
                        return;
@@ -185,55 +185,55 @@
            var frameIcon = new FrameLayout();
            frameIcon.X = Application.GetRealWidth(228);
            frameIcon.Y = Application.GetRealHeight(121);
            frameIcon.Width = Application.GetMinRealAverage(265);
            frameIcon.Height= Application.GetMinRealAverage(495);
            frameIcon.Width = this.GetPictrueRealSize(265);
            frameIcon.Height= this.GetPictrueRealSize(495);
            frameIcon.BackgroundImagePath = "Item/DeviceLimitGround.png";
            frameBack.AddChidren(frameIcon);
            var frameIconback = new FrameLayoutControl();
            frameIconback.Height = Application.GetMinRealAverage(144);
            frameIconback.Width = Application.GetMinRealAverage(144);
            frameIconback.Radius = (uint)Application.GetMinRealAverage(144) / 2;
            var frameIconback = new FrameLayoutStatuControl();
            frameIconback.Height = this.GetPictrueRealSize(144);
            frameIconback.Width = this.GetPictrueRealSize(144);
            frameIconback.Radius = (uint)this.GetPictrueRealSize(144) / 2;
            frameIconback.BackgroundColor = 0xffeff2fb;
            frameIconback.Gravity = Gravity.CenterHorizontal;
            frameIconback.Y = Application.GetMinRealAverage(35);
            frameIconback.Y = this.GetPictrueRealSize(35);
            frameIcon.AddChidren(frameIconback);
            var btnIcon = new NormalViewControl(Application.GetMinRealAverage(69), Application.GetMinRealAverage(35), false);
            var btnIcon = new NormalViewControl(this.GetPictrueRealSize(69), this.GetPictrueRealSize(35), false);
            btnIcon.UnSelectedImagePath = "Item/DownTriangle.png";
            btnIcon.Gravity = Gravity.Center;
            frameIconback.AddChidren(btnIcon, ChidrenBindMode.BindEventOnly);
            frameIconback.AddChidren(btnIcon, ChidrenBindMode.BindEvent);
            var frameText = new FrameLayoutControl();
            frameText.Y= Application.GetMinRealAverage(265);
            frameText.Height = Application.GetMinRealAverage(120);
            var frameText = new FrameLayoutStatuControl();
            frameText.Y= this.GetPictrueRealSize(265);
            frameText.Height = this.GetPictrueRealSize(120);
            frameIcon.AddChidren(frameText);
            //确定
            var btnOk = new NormalViewControl(frameIcon.Width, Application.GetMinRealAverage(60), false);
            var btnOk = new NormalViewControl(frameIcon.Width, this.GetPictrueRealSize(60), false);
            btnOk.TextID = R.MyInternationalizationString.uConfirm1;
            btnOk.TextAlignment = TextAlignment.Center;
            btnOk.TextColor = UserCenterColor.Current.TextOrangeColor;
            frameText.AddChidren(btnOk, ChidrenBindMode.BindEventOnly);
            frameText.AddChidren(btnOk, ChidrenBindMode.BindEvent);
            //底线
            var btnLine1 = new NormalViewControl(Application.GetMinRealAverage(100), ControlCommonResourse.BottomLineHeight, false);
            var btnLine1 = new NormalViewControl(this.GetPictrueRealSize(100), HdlControlResourse.BottomLineHeight, false);
            btnLine1.BackgroundColor = UserCenterColor.Current.TextOrangeColor;
            btnLine1.Gravity = Gravity.CenterHorizontal;
            btnLine1.Y = btnOk.Bottom - Application.GetMinRealAverage(8);
            btnLine1.Y = btnOk.Bottom - this.GetPictrueRealSize(8);
            frameText.AddChidren(btnLine1);
            //下限位
            var btnDown = new NormalViewControl(frameIcon.Width, Application.GetMinRealAverage(60), false);
            var btnDown = new NormalViewControl(frameIcon.Width, this.GetPictrueRealSize(60), false);
            btnDown.TextID = R.MyInternationalizationString.uDownLimit;
            btnDown.Y = btnOk.Bottom;
            btnDown.TextAlignment = TextAlignment.Center;
            btnDown.TextColor = UserCenterColor.Current.TextOrangeColor;
            frameText.AddChidren(btnDown, ChidrenBindMode.BindEventOnly);
            frameText.AddChidren(btnDown, ChidrenBindMode.BindEvent);
            //底线
            var btnLine2 = new NormalViewControl(Application.GetMinRealAverage(124), ControlCommonResourse.BottomLineHeight, false);
            var btnLine2 = new NormalViewControl(this.GetPictrueRealSize(124), HdlControlResourse.BottomLineHeight, false);
            btnLine2.BackgroundColor = UserCenterColor.Current.TextOrangeColor;
            btnLine2.Gravity = Gravity.CenterHorizontal;
            btnLine2.Y = btnDown.Bottom - Application.GetMinRealAverage(8);
            btnLine2.Y = btnDown.Bottom - this.GetPictrueRealSize(8);
            frameText.AddChidren(btnLine2);
            //图标点击
@@ -241,6 +241,11 @@
            {
                curtainDevice.CurtainUpDownStopControl(1);
            };
            //展示模板或者虚拟住宅,则无效
            if (Config.Instance.Home.IsShowTemplate == true || Config.Instance.Home.IsVirtually == true)
            {
                frameIconback.CanClick = false;
            }
            //重写控件点击效果
            frameIconback.SelectStatuEvent += (select) =>
            {
@@ -265,6 +270,11 @@
                    await HdlDeviceCurtainLogic.Current.CommitCurtainLimitPoint(curtainDevice, Rollershade.CurtainPrivateInstalledLimi.DownLimit, -1, -1);
                });
            };
            //展示模板或者虚拟住宅,则无效
            if (Config.Instance.Home.IsShowTemplate == true || Config.Instance.Home.IsVirtually == true)
            {
                frameText.CanClick = false;
            }
            //重写控件点击效果
            frameText.SelectStatuEvent += (select) =>
            {
@@ -294,55 +304,55 @@
            var frameIcon = new FrameLayout();
            frameIcon.X = Application.GetRealWidth(619);
            frameIcon.Y = Application.GetRealHeight(121);
            frameIcon.Width = Application.GetMinRealAverage(265);
            frameIcon.Height = Application.GetMinRealAverage(495);
            frameIcon.Width = this.GetPictrueRealSize(265);
            frameIcon.Height = this.GetPictrueRealSize(495);
            frameIcon.BackgroundImagePath = "Item/DeviceLimitGround.png";
            frameBack.AddChidren(frameIcon);
            var frameIconback = new FrameLayoutControl();
            frameIconback.Height = Application.GetMinRealAverage(144);
            frameIconback.Width = Application.GetMinRealAverage(144);
            frameIconback.Radius = (uint)Application.GetMinRealAverage(144) / 2;
            var frameIconback = new FrameLayoutStatuControl();
            frameIconback.Height = this.GetPictrueRealSize(144);
            frameIconback.Width = this.GetPictrueRealSize(144);
            frameIconback.Radius = (uint)this.GetPictrueRealSize(144) / 2;
            frameIconback.BackgroundColor = 0xffeff2fb;
            frameIconback.Gravity = Gravity.CenterHorizontal;
            frameIconback.Y = Application.GetMinRealAverage(35);
            frameIconback.Y = this.GetPictrueRealSize(35);
            frameIcon.AddChidren(frameIconback);
            var btnIcon = new NormalViewControl(Application.GetMinRealAverage(69), Application.GetMinRealAverage(35), false);
            var btnIcon = new NormalViewControl(this.GetPictrueRealSize(69), this.GetPictrueRealSize(35), false);
            btnIcon.UnSelectedImagePath = "Item/UpTriangle.png";
            btnIcon.Gravity = Gravity.Center;
            frameIconback.AddChidren(btnIcon, ChidrenBindMode.BindEventOnly);
            frameIconback.AddChidren(btnIcon, ChidrenBindMode.BindEvent);
            var frameText = new FrameLayoutControl();
            frameText.Y = Application.GetMinRealAverage(265);
            frameText.Height = Application.GetMinRealAverage(120);
            var frameText = new FrameLayoutStatuControl();
            frameText.Y = this.GetPictrueRealSize(265);
            frameText.Height = this.GetPictrueRealSize(120);
            frameIcon.AddChidren(frameText);
            //确定
            var btnOk = new NormalViewControl(frameIcon.Width, Application.GetMinRealAverage(60), false);
            var btnOk = new NormalViewControl(frameIcon.Width, this.GetPictrueRealSize(60), false);
            btnOk.TextID = R.MyInternationalizationString.uConfirm1;
            btnOk.TextAlignment = TextAlignment.Center;
            btnOk.TextColor = UserCenterColor.Current.TextOrangeColor;
            frameText.AddChidren(btnOk, ChidrenBindMode.BindEventOnly);
            frameText.AddChidren(btnOk, ChidrenBindMode.BindEvent);
            //底线
            var btnLine1 = new NormalViewControl(Application.GetMinRealAverage(100), ControlCommonResourse.BottomLineHeight, false);
            var btnLine1 = new NormalViewControl(this.GetPictrueRealSize(100), HdlControlResourse.BottomLineHeight, false);
            btnLine1.BackgroundColor = UserCenterColor.Current.TextOrangeColor;
            btnLine1.Gravity = Gravity.CenterHorizontal;
            btnLine1.Y = btnOk.Bottom - Application.GetMinRealAverage(8);
            btnLine1.Y = btnOk.Bottom - this.GetPictrueRealSize(8);
            frameText.AddChidren(btnLine1);
            //上限位
            var btnDown = new NormalViewControl(frameIcon.Width, Application.GetMinRealAverage(60), false);
            var btnDown = new NormalViewControl(frameIcon.Width, this.GetPictrueRealSize(60), false);
            btnDown.TextID = R.MyInternationalizationString.uUpLimit;
            btnDown.Y = btnOk.Bottom;
            btnDown.TextAlignment = TextAlignment.Center;
            btnDown.TextColor = UserCenterColor.Current.TextOrangeColor;
            frameText.AddChidren(btnDown, ChidrenBindMode.BindEventOnly);
            frameText.AddChidren(btnDown, ChidrenBindMode.BindEvent);
            //底线
            var btnLine2 = new NormalViewControl(Application.GetMinRealAverage(124), ControlCommonResourse.BottomLineHeight, false);
            var btnLine2 = new NormalViewControl(this.GetPictrueRealSize(124), HdlControlResourse.BottomLineHeight, false);
            btnLine2.BackgroundColor = UserCenterColor.Current.TextOrangeColor;
            btnLine2.Gravity = Gravity.CenterHorizontal;
            btnLine2.Y = btnDown.Bottom - Application.GetMinRealAverage(8);
            btnLine2.Y = btnDown.Bottom - this.GetPictrueRealSize(8);
            frameText.AddChidren(btnLine2);
            //图标点击
@@ -350,6 +360,11 @@
            {
                curtainDevice.CurtainUpDownStopControl(0);
            };
            //展示模板或者虚拟住宅,则无效
            if (Config.Instance.Home.IsShowTemplate == true || Config.Instance.Home.IsVirtually == true)
            {
                frameIconback.CanClick = false;
            }
            //重写控件点击效果
            frameIconback.SelectStatuEvent += (select) =>
            {
@@ -374,6 +389,11 @@
                    await HdlDeviceCurtainLogic.Current.CommitCurtainLimitPoint(curtainDevice, Rollershade.CurtainPrivateInstalledLimi.UpLimit, -1, -1);
                });
            };
            //展示模板或者虚拟住宅,则无效
            if (Config.Instance.Home.IsShowTemplate == true || Config.Instance.Home.IsVirtually == true)
            {
                frameText.CanClick = false;
            }
            //重写控件点击效果
            frameText.SelectStatuEvent += (select) =>
            {
@@ -429,6 +449,11 @@
                    });
                });
            };
            //展示模板或者虚拟住宅,则无效
            if (Config.Instance.Home.IsShowTemplate == true || Config.Instance.Home.IsVirtually == true)
            {
                rowReset.CanClick = false;
            }
        }
        #endregion
@@ -441,16 +466,23 @@
        /// <returns></returns>
        private bool InitCurtainDefultData()
        {
            this.curtainData = new CurtainData();
            //如果当前是虚拟住宅
            if (Common.Config.Instance.Home.IsVirtually == true)
            {
                var data = HdlTemplateDeviceDataLogic.Current.GetCurtainLimitPoint(curtainDevice);
                curtainData.Direction = data.Direction;
                return true;
            }
            //开启进度条
            this.ShowProgressBar();
            this.curtainData = new CurtainData();
            bool receiptData = false;
            string mainkeys = LocalDevice.Current.GetDeviceMainKeys(curtainDevice);
            string mainkeys = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(curtainDevice);
            HdlGatewayReceiveLogic.Current.AddAttributeEvent("CurtainDeviceAttribute", ReceiveComandDiv.A设备属性上报, (device) =>
            {
                string checkKey = LocalDevice.Current.GetDeviceMainKeys(device);
                string checkKey = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(device);
                if (mainkeys != checkKey || device.DeviceStatusReport.CluterID != 258)
                {
                    return;
@@ -492,7 +524,7 @@
                //获取窗帘方向与限位设置失败
                string msg = Language.StringByID(R.MyInternationalizationString.uGetCurtainDirectionAndLimitSettionFail);
                //拼接上【网关回复超时】的Msg
                msg = UserCenterLogic.CombineGatewayTimeOutMsg(msg, null, "回复超时");
                msg = HdlCommonLogic.Current.CombineGatewayTimeOutMsg(msg, null, "回复超时");
                this.ShowMassage(ShowMsgType.Tip, msg);
                return false;
            }