陈嘉乐
2021-01-11 0039220054537c28443625b5becc5355e74e6cf8
HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -1,6 +1,8 @@
using System;
using Shared;
using System.Collections.Generic;
using HDL_ON.Entity;
namespace HDL_ON.UI.UI2.Intelligence.Automation
{
    public class InpOrOutLogicMethod
@@ -126,28 +128,28 @@
                            //用sid找到设备;
                            var device = LogicMethod.GetDevice(inputCondition.sid);
                            //用设备的functionType类型找到对应图标;
                            inputView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.functionType);
                            inputView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.spk);
                            //显示设备名称
                            inputView.btnText.Text = device.name;
                            //改变设备名称显示控件宽度
                            inputView.btnText.Width = Application.GetRealWidth(80);
                            //区别不同设备,显示不同设备状态
                            switch (device.functionType)
                            switch (device.spk)
                            {
                                //开关灯光 light.Switch
                                case FunctionType.Dimmer:
                                case FunctionType.RGB:
                                case FunctionType.RGBW:
                                case FunctionType.ColorTemperature:
                                case FunctionType.Relay:
                                case SPK.LightDimming:
                                case SPK.LightRGB:
                                case SPK.LightRGBW:
                                case SPK.LightCCT:
                                case SPK.LightSwitch:
                                //窗帘
                                case FunctionType.Curtain:
                                case FunctionType.RollingShutter:
                                case FunctionType.MotorCurtain:
                                case SPK.CurtainSwitch:
                                case SPK.CurtainRoller:
                                case SPK.CurtainTrietex:
                                //空调
                                case FunctionType.AC:
                                case SPK.AcStandard:
                                //地热
                                case FunctionType.FloorHeating:
                                case SPK.FloorHeatStandard:
                                    {//开关灯
                                        foreach (var dic in dicList)
                                        {
@@ -165,6 +167,40 @@
                                        }
                                    }
                                    break;
                            }
                        }
                        break;
                    case "6":
                        {
                            inputView.btnIcon.UnSelectedImagePath = "LogicIcon/changesinoutdoor.png";
                            foreach (var dic in dicList)
                            {
                                string strtext = "";
                                string value = dic["value"];
                                switch (value)
                                {
                                    case "sunny":
                                        {
                                            strtext = Language.StringByID(StringId.clearday);
                                        }
                                        break;
                                    case "cloudy":
                                        {
                                            strtext = Language.StringByID(StringId.cloudy);
                                        }
                                        break;
                                    case "rainy":
                                        {
                                            strtext = Language.StringByID(StringId.rain);
                                        }
                                        break;
                                }
                                inputView.btnText.TextID =StringId.tianqibianhua;
                                inputView.btnState.Text = strtext;
                            }
                        }
                        break;
@@ -255,6 +291,15 @@
                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                            }
                            break;
                        case "6":
                            {
                                WeatherCondition weatherCondition = new WeatherCondition();
                                MainPage.BasePageView.AddChidren(weatherCondition);
                                weatherCondition.Show();
                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                            }
                            break;
                    }
                };
                ///删除控件
@@ -300,7 +345,7 @@
                            //用sid找到设备;
                            var device = LogicMethod.GetDevice(outputTarget.sid);
                            //用设备的functionType类型找到对应图标;
                            targetView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.functionType);
                            targetView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.spk);
                            //显示设备名称
                            targetView.btnText.Text = device.name;
                            //改变设备名称显示控件宽度
@@ -308,9 +353,9 @@
                            //第一个变量显示状态值
                            string stateStr = "";
                            //区别不同设备,显示不同设备状态
                            switch (device.functionType)
                            switch (device.spk)
                            {
                                case FunctionType.Relay:
                                case SPK.LightSwitch:
                                    {//开关灯
                                        foreach (var dic in dicList)
@@ -329,10 +374,10 @@
                                        targetView.btnState.Text = stateStr;
                                    }
                                    break;
                                case FunctionType.RGB:
                                case FunctionType.RGBW:
                                case FunctionType.ColorTemperature:
                                case FunctionType.Dimmer:
                                case SPK.LightRGB:
                                case SPK.LightRGBW:
                                case SPK.LightCCT:
                                case SPK.LightDimming:
                                    {
                                        string on_off = GetKeyValue("on_off", dicList);
                                        string brightness = GetKeyValue("brightness", dicList);
@@ -355,9 +400,9 @@
                                        targetView.btnState.Text = stateStr;
                                    }
                                    break;
                                case FunctionType.Curtain:
                                case FunctionType.MotorCurtain:
                                case FunctionType.RollingShutter:
                                case SPK.CurtainSwitch:
                                case SPK.CurtainTrietex:
                                case SPK.CurtainRoller:
                                    {
                                        foreach (var dic in dicList)
                                        {
@@ -384,7 +429,7 @@
                                        targetView.btnState.Text = stateStr;
                                    }
                                    break;
                                case FunctionType.AC: {
                                case SPK.AcStandard: {
                                        string on_off = GetKeyValue("on_off", dicList);
                                        string set_temp = GetKeyValue("set_temp", dicList);
                                        string mode = GetKeyValue("mode", dicList);
@@ -480,7 +525,7 @@
                                    }
                                    break;
                                case FunctionType.FloorHeating:
                                case SPK.FloorHeatStandard:
                                    {
                                        string on_off = GetKeyValue("on_off", dicList);
                                        string set_temp = GetKeyValue("set_temp", dicList);
@@ -666,10 +711,10 @@
        /// <param name="button4">显示Btn</param>
        public static void EditState(Entity.Function device, List<Dictionary<string, string>> dicList, Button button1, Button button2, Button button3, Button button4)
        {
            switch (device.functionType)
            switch (device.spk)
            {
                //开关灯光
                case FunctionType.Relay:
                case SPK.LightSwitch:
                    {
                        foreach (var dic in dicList)
                        {
@@ -685,10 +730,10 @@
                        }
                    }
                    break;
                case FunctionType.Dimmer:
                case FunctionType.RGB:
                case FunctionType.RGBW:
                case FunctionType.ColorTemperature:
                case SPK.LightDimming:
                case SPK.LightRGB:
                case SPK.LightRGBW:
                case SPK.LightCCT:
                    {
                        foreach (var dic in dicList)
                        {
@@ -718,9 +763,9 @@
                        }
                    }
                    break;
                case FunctionType.Curtain:
                case FunctionType.MotorCurtain:
                case FunctionType.RollingShutter:
                case SPK.CurtainSwitch:
                case SPK.CurtainTrietex:
                case SPK.CurtainRoller:
                    {
                        foreach (var dic in dicList)
                        {
@@ -746,7 +791,7 @@
                        }
                    }
                    break;
                case FunctionType.AC:
                case SPK.AcStandard:
                    {
                        foreach (var dic in dicList)
                        {
@@ -842,7 +887,7 @@
                    }
                    break;
                case FunctionType.FloorHeating:
                case SPK.FloorHeatStandard:
                    {
                        foreach (var dic in dicList)
@@ -938,7 +983,6 @@
            }
            return valueStr;
        }
        /// <summary>
        ///获取自动化名称
        /// </summary>
@@ -988,9 +1032,9 @@
                            name += device.name;
                            string stateStr = "";
                            //区别不同设备,显示不同设备状态
                            switch (device.functionType)
                            switch (device.spk)
                            {
                                case FunctionType.Relay:
                                case SPK.LightSwitch:
                                    {//开关灯
                                        foreach (var dic in dicList)
@@ -1008,10 +1052,10 @@
                                        }
                                    }
                                    break;
                                case FunctionType.RGB:
                                case FunctionType.RGBW:
                                case FunctionType.ColorTemperature:
                                case FunctionType.Dimmer:
                                case SPK.LightRGB:
                                case SPK.LightRGBW:
                                case SPK.LightCCT:
                                case SPK.LightDimming:
                                    {
                                        string on_off = InpOrOutLogicMethod.GetKeyValue("on_off", dicList);
                                        string brightness = InpOrOutLogicMethod.GetKeyValue("brightness", dicList);
@@ -1033,9 +1077,9 @@
                                        }
                                    }
                                    break;
                                case FunctionType.Curtain:
                                case FunctionType.MotorCurtain:
                                case FunctionType.RollingShutter:
                                case SPK.CurtainSwitch:
                                case SPK.CurtainTrietex:
                                case SPK.CurtainRoller:
                                    {
                                        foreach (var dic in dicList)
                                        {
@@ -1061,8 +1105,8 @@
                                        }
                                    }
                                    break;
                                case FunctionType.AC:
                                case FunctionType.FloorHeating:
                                case SPK.AcStandard:
                                case SPK.FloorHeatStandard:
                                    {
                                        foreach (var dic in dicList)
                                        {