wei
2021-10-28 270b3d8539f6b4a991a9ebf3b3a9eceb436d61d5
HDL_ON/UI/UI2/FuntionControlView/FoolHeating/FloorHeatingPageBLL.cs
@@ -9,7 +9,7 @@
    public partial class FloorHeatingPage
    {
        public static void UpdataStates(FloorHeating uFh)
        public static void UpdataStates(Function updateTemp)
        {
            try
            {
@@ -19,16 +19,69 @@
                    {
                        return;
                    }
                    bodyView.arcBar.ProgressBarColor = uFh.trait_on_off.value.ToString() == "on" ? CSS_Color.MainColor : CSS_Color.PromptingColor2;
                    bodyView.arcBar.ThumbImagePath = uFh.trait_on_off.value.ToString() == "on" ? "FunctionIcon/AC/DiyThumbIconOn.png" : "FunctionIcon/AC/DiyThumbIcon.png";
                    bodyView.btnTemp.Text = uFh.trait_temp.value.ToString();
                    bodyView.btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + uFh.indoorTemp + "°C";
                    bodyView.btnMode.UnSelectedImagePath = uFh.curModeImage;
                    bodyView.btnSwitch.IsSelected = uFh.trait_on_off.value.ToString() == "on";
                    if (uFh.refreshTime.AddMilliseconds(1000) < DateTime.Now)
                    var outinTemp = Convert.ToInt32(Convert.ToDouble(updateTemp.GetAttrState(FunctionAttributeKey.SetTemp)));
                    bodyView.btnTemp.Text = outinTemp.ToString();
                    bodyView.btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + Convert.ToInt32(Convert.ToDouble(updateTemp.GetAttrState(FunctionAttributeKey.RoomTemp))) + "°C";
                    bodyView.btnMode.SelectedImagePath = bodyView.fhTemp.GetModeIconPath(updateTemp.GetAttrState(FunctionAttributeKey.Mode));
                    bodyView.btnMode.UnSelectedImagePath = bodyView.fhTemp.GetModeIconPath(updateTemp.GetAttrState(FunctionAttributeKey.Mode),false);
                    bodyView.arcBar.Progress = outinTemp;
                    //if (updateTemp.trait_on_off.curValue.ToString() == "on")
                    //{
                    //    bodyView.arcBar.ThumbImagePath = "FunctionIcon/FloorHeating/DiyThumbIconOn.png";
                    //    bodyView.btnSwitch.IsSelected = true;
                    //    bodyView.arcBar.IsOffline = false;
                    //}
                    //else
                    //{
                    //    bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png";
                    //    bodyView.btnSwitch.IsSelected = false;
                    //    bodyView.arcBar.IsOffline = true;
                    //}
                    //app自己控制的不用更新,会造成跳动
                    if (bodyView.seltControlTemp.Contains(outinTemp.ToString()))
                    {
                        bodyView.arcBar.Progress =  Convert.ToInt32(uFh.trait_temp.value);
                        bodyView.seltControlTemp.Remove(outinTemp.ToString());
                    }
                    else
                    {
                        bodyView.arcBar.Progress = outinTemp;
                    }
                    if (updateTemp.trait_on_off.curValue.ToString() == "on")
                    {
                        bodyView.btnMode.IsSelected = true;
                        bodyView.arcBar.IsOffline = false;
                        bodyView.btnSwitch.IsSelected = true;
                        bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIconOn.png";
                        if (updateTemp.GetAttrState(FunctionAttributeKey.Mode) == "fan")
                        {
                            bodyView.arcBar.IsClickable = false;
                        }
                        else
                        {
                            bodyView.arcBar.IsClickable = true;
                        }
                    }
                    else
                    {
                        bodyView.btnMode.IsSelected = false;
                        bodyView.arcBar.IsOffline = true;
                        bodyView.btnSwitch.IsSelected = false;
                        bodyView.arcBar.IsClickable = false;
                        bodyView.arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png";
                    }
                    //自动模式不允许调温度 2021-10-27 09:41:35 wxr 陈琳反馈
                    if (updateTemp.GetAttrState(FunctionAttributeKey.Mode) == "auto"|| updateTemp.GetAttrState(FunctionAttributeKey.Mode) == "timer")
                    {
                        bodyView.btnPlus.Enable = false;
                        bodyView.btnMinus.Enable = false;
                        bodyView.arcBar.IsClickable = false;
                        bodyView.arcBar.IsOffline = true;
                    }
                });
            }
            catch (Exception ex)
@@ -45,9 +98,18 @@
            //回退刷新信息事件
            actionRefresh = () =>
            {
                btnFunctionName.Text = btnFunctionName_Out.Text = fh.name;
                btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = fh.GetRoomListName();
                btnFunctionName.Text = btnFunctionName_Out.Text = function.name;
                btnFromFloor_Out.Text = btnFromFoorAndRoom.Text = function.GetRoomListName();
                //function.SaveFunctionData(true);
            };
            //自动模式不允许调温度 2021-10-27 09:41:35 wxr 陈琳反馈
            if (function.GetAttrState(FunctionAttributeKey.Mode) == "auto" || function.GetAttrState(FunctionAttributeKey.Mode) == "timer")
            {
                btnPlus.Enable = false;
                btnMinus.Enable = false;
                arcBar.IsClickable = false;
                arcBar.IsOffline = true;
            }
        }
        /// <summary>
@@ -57,8 +119,8 @@
        {
            btnCollection.MouseUpEventHandler += (sender, e) =>
            {
                btnCollection.IsSelected = fh.collection = btnCollection_Out.IsSelected = !btnCollection.IsSelected;
                fh.SaveFunctionData();
                btnCollection.IsSelected = function.collect = btnCollection_Out.IsSelected = !btnCollection.IsSelected;
                function.CollectFunction();
            };
        }
@@ -69,48 +131,57 @@
        {
            btnMinus.MouseUpEventHandler = (sender, e) =>
            {
                var temp = Convert.ToInt32(fh.trait_temp.value);
                if (temp < Convert.ToInt32(fh.trait_temp.min))
                if(function.trait_on_off.curValue.ToString() == "off")
                {
                    return;
                }
                var temp = (int)Convert.ToDouble(function.GetAttrState(FunctionAttributeKey.SetTemp));
                if (temp <= Convert.ToInt32(function.GetAttribute(FunctionAttributeKey.SetTemp).min))
                {
                    return;
                }
                temp--;
                seltControlTemp.Add(temp.ToString());
                arcBar.Progress = temp;
                fh.trait_temp.value = temp;
                function.SetAttrState(FunctionAttributeKey.SetTemp, temp);
                btnTemp.Text = temp.ToString();
                System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                d.Add("temp", temp.ToString());
                Control.ins.SendWriteCommand(fh, d);
                d.Add(FunctionAttributeKey.SetTemp, temp.ToString());
                Control.Ins.SendWriteCommand(function, d);
            };
            btnPlus.MouseUpEventHandler = (sender, e) =>
            {
                var temp = Convert.ToInt32(fh.trait_temp.value);
                if (temp > Convert.ToInt32(fh.trait_temp.max))
                if (function.trait_on_off.curValue.ToString() == "off")
                {
                    return;
                }
                var temp =(int) Convert.ToDouble(function.GetAttrState(FunctionAttributeKey.SetTemp));
                if (temp >= Convert.ToDouble(function.GetAttribute(FunctionAttributeKey.SetTemp).max))
                {
                    return;
                }
                temp++;
                seltControlTemp.Add(temp.ToString());
                arcBar.Progress = temp;
                btnTemp.Text = temp.ToString();
                fh.trait_temp.value = temp;
                //Control.Send(CommandType_A.write, fh);
                function.SetAttrState(FunctionAttributeKey.SetTemp, temp);
                System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                d.Add("temp", temp.ToString());
                Control.ins.SendWriteCommand(fh, d);
                d.Add(FunctionAttributeKey.SetTemp, temp.ToString());
                Control.Ins.SendWriteCommand(function, d);
            };
            arcBar.OnStopTrackingTouchEvent = (sender, e) =>
            {
                fh.trait_temp.value = arcBar.Progress;
                btnTemp.Text = fh.trait_temp.value.ToString();
                //Control.Send(CommandType_A.write, fh);
                function.SetAttrState(FunctionAttributeKey.SetTemp,arcBar.Progress);
                btnTemp.Text = arcBar.Progress.ToString();
                System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                d.Add("temp", fh.trait_temp.value.ToString());
                Control.ins.SendWriteCommand(fh, d);
                d.Add(FunctionAttributeKey.SetTemp, arcBar.Progress.ToString());
                Control.Ins.SendWriteCommand(function, d);
            };
            arcBar.OnProgressChangedEvent = (sender, e) =>
            {
                fh.trait_temp.value = e;
                btnTemp.Text = fh.trait_temp.value.ToString();
                function.SetAttrState(FunctionAttributeKey.SetTemp, e);
                btnTemp.Text = Convert.ToDouble( function.GetAttrState(FunctionAttributeKey.SetTemp)).ToString();
            };
        }
        /// <summary>
@@ -120,17 +191,35 @@
        {
            btnMode.MouseUpEventHandler = (sender, e) =>
            {
                if (function.trait_on_off.curValue.ToString() == "off")
                {
                    return;
                }
                LoadDiv_ChangeModeView();
            };
            btnSwitch.MouseUpEventHandler = (sender, e) =>
            {
                btnSwitch.IsSelected = !btnSwitch.IsSelected;
                fh.trait_on_off.value = btnSwitch.IsSelected ? "on" : "off";
                //Control.Send(CommandType_A.write, fh);
                function.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off";
                if (function.trait_on_off.curValue.ToString() == "on")
                {
                    //arcBar.ProgressBarColor = CSS_Color.MainColor;
                    arcBar.ThumbImagePath = "FunctionIcon/FloorHeating/DiyThumbIconOn.png";
                    btnSwitch.IsSelected = true;
                    arcBar.IsOffline = false;
                }
                else
                {
                    //arcBar.ProgressBarColor = CSS_Color.PromptingColor2;
                    arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIcon.png";
                    btnSwitch.IsBold = false;
                    arcBar.IsOffline = true;
                }
                System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                d.Add("on_off", fh.trait_on_off.value.ToString());
                Control.ins.SendWriteCommand(fh, d);
                d.Add(FunctionAttributeKey.OnOff, function.trait_on_off.curValue.ToString());
                Control.Ins.SendWriteCommand(function, d);
            };
        }
@@ -147,13 +236,14 @@
            EventHandler<MouseEventArgs> eventHandler1 = (sender, e) =>
            {
                btn1.IsSelected = btn2.IsSelected = true;
                fh.trait_mode.value = curMode;
                byte pro = 6;
                fh.modeTemp.TryGetValue(curMode, out pro);
                arcBar.Progress = pro;
                function.SetAttrState(FunctionAttributeKey.Mode,curMode);
                btnMode.UnSelectedImagePath = btn1.SelectedImagePath;
                //byte pro = 6;//不处理温度显示,等待回复数据再处理
                //function.Fh_Mode_Temp.TryGetValue(curMode, out pro);
                //arcBar.Progress = pro;
                System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                d.Add("mode", fh.curModeIndex.ToString());
                Control.ins.SendWriteCommand(fh, d);
                d.Add(FunctionAttributeKey.Mode, function.GetAttrState(FunctionAttributeKey.Mode));
                Control.Ins.SendWriteCommand(function, d);
                dialog.Close();
            };
            btn1.MouseUpEventHandler = eventHandler1;