wjc
2023-08-28 2c1411a48874e4033a538a9725f09c8465536fa8
HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -460,7 +460,7 @@
                                    break;
                                case SPK.IpCam_Imou:
                                    {
                                        if (inputCondition.identifier == "door_caipcam_region_alram_eventll_cloud_event")
                                        if (inputCondition.identifier == "ipcam_region_alram_event")
                                        {
                                            inputView.btnState.Text = Language.StringByID(StringId.quyuruqingaojing);
                                        }
@@ -468,9 +468,15 @@
                                    }
                                    break;
                                case SPK.Ev_Ipcam:
                                    if (inputCondition.identifier == "motiondetect_event")
                                    {
                                        inputView.btnState.Text = Language.StringByID(StringId.shi);
                                    }
                                    break;
                                case SPK.Peephole:
                                    if (inputCondition.identifier == "pir_event")
                                    {
                                        inputView.btnState.Text = Language.StringByID(StringId.On);
                                        inputView.btnState.Text = Language.StringByID(StringId.shi);
                                    }
                                    break;
                                case SPK.SensorPirHold:
@@ -1009,7 +1015,7 @@
                            //区别不同设备,显示不同设备状态
                            switch (device.spk)
                            {
                                case SPK.CommonSeries:
                                    targetView.btnIcon.UnSelectedImagePath = "FunctionIcon/Icon/groupControl.png";
                                    stateStr = GetKeyValue("on_off", dicList) == "on" ? Language.StringByID(StringId.onLogic) : Language.StringByID(StringId.offLogic);
@@ -1051,14 +1057,14 @@
                                        }
                                    }
                                    break;
                                case SPK.LightRGB:
                                case SPK.LightRGBW:
                                case SPK.LightCCT:
                                case SPK.LightDimming:
                                    {
                                        string on_off = GetKeyValue("on_off", dicList);
                                        string brightness = GetKeyValue("brightness", dicList);
                                        if (on_off == "on" && brightness != "")
@@ -1082,7 +1088,7 @@
                                            //色温这个属性才有效
                                            if (stateStr != Language.StringByID(StringId.offLogic) && GetKeyValue("cct", dicList) != "")
                                            {
                                                stateStr += "," +GetKeyValue("cct", dicList) + "k";
                                                stateStr += "," + GetKeyValue("cct", dicList) + "k";
                                            }
                                        }
                                        if (device.spk == SPK.LightRGB)
@@ -1258,7 +1264,7 @@
                                        if (set_temp != "")
                                        {
                                            string unit =GetTemperatureUnit(device);
                                            string unit = GetTemperatureUnit(device);
                                            stateStr += set_temp + unit + ",";
                                        }
@@ -1469,14 +1475,55 @@
                                    {
                                        string song_name = GetKeyValue("song_name", dicList);
                                        string volume = GetKeyValue("volume", dicList);
                                        stateStr = song_name + ";" +Language.StringByID(StringId.volumeMusic)+volume;
                                        stateStr = song_name + ";" + Language.StringByID(StringId.volumeMusic) + volume;
                                        if (stateStr.StartsWith(";"))
                                        {
                                            stateStr = stateStr.Substring(1, stateStr.Length - 1);
                                        }else if (stateStr.EndsWith(Language.StringByID(StringId.volumeMusic)))
                                        } else if (stateStr.EndsWith(Language.StringByID(StringId.volumeMusic)))
                                        {
                                            stateStr = stateStr.Substring(0, stateStr.Length - 3);
                                        }
                                    }
                                    break;
                                case SPK.ElectricalTvHisense:
                                    {
                                        string on_off = GetKeyValue("on_off", dicList);
                                        string volumet = GetKeyValue("set_volume", dicList);
                                        string signal = GetKeyValue("signal", dicList);
                                        if (!string.IsNullOrEmpty(on_off))
                                        {
                                            if (on_off == "on")
                                            {
                                                stateStr = Language.StringByID(StringId.onLogic);
                                            }
                                            else
                                            {
                                                stateStr = Language.StringByID(StringId.offLogic);
                                                //如果关了,其它属性不显示
                                                break;
                                            }
                                        }
                                        if (!string.IsNullOrEmpty(stateStr))
                                        {
                                            stateStr += ",";
                                        }
                                        if (!string.IsNullOrEmpty(volumet))
                                        {
                                            stateStr += Language.StringByID(StringId.yinliang) + volumet;
                                        }
                                        if (!string.IsNullOrEmpty(stateStr))
                                        {
                                            stateStr += ",";
                                        }
                                        if (!string.IsNullOrEmpty(signal))
                                        {
                                            var p = new PublicInterface();
                                            string key = p.GetKey(p.GetHisenseSignalSourceDic(), signal);
                                            stateStr += key;
                                        }
                                        stateStr = stateStr.TrimEnd(',');
                                    }
                                    break;
                            }
@@ -2182,7 +2229,7 @@
                        }
                    }
                    break;
                case SPK.SensorGas:
                case SPK.SensorSmoke:
                    {
@@ -2448,6 +2495,59 @@
                        button2.Tag = tag;
                    }
                    break;
                case SPK.ElectricalTvHisense:
                    {
                        foreach (var dic in dicList)
                        {
                            string value = dic["value"];
                            switch (dic["key"])
                            {
                                case "on_off":
                                    {
                                        switch (value)
                                        {
                                            case "on":
                                                {
                                                    button1.Text = Language.StringByID(StringId.onLogic);
                                                }
                                                break;
                                            case "off":
                                                {
                                                    button1.Text = Language.StringByID(StringId.offLogic);
                                                }
                                                break;
                                        }
                                    }
                                    break;
                                case "set_volume":
                                    {
                                        if (button2 == null)
                                        {
                                            //怕调试软件乱上东西导致抛异常
                                            break;
                                        }
                                        button2.Text = value;
                                    }
                                    break;
                                case "signal":
                                    {
                                        if (button3 == null)
                                        {
                                            //怕调试软件乱上东西导致抛异常
                                            break;
                                        }
                                        var p = new PublicInterface();
                                        string key = p.GetKey(p.GetHisenseSignalSourceDic(), value);
                                        button3.Text = key;
                                    }
                                    break;
                            }
                        }
                    }
                    break;
            }
        }
@@ -2506,9 +2606,9 @@
        public string GetTemperatureUnit(Entity.Function device)
        {
            string unit = string.Empty;
            if (device.GetAttribute("temperature_type") != null && device.GetAttribute("temperature_type").value.Count > 0)
            if (device.GetAttribute("temperature_type") != null)
            {
                unit = device.GetAttribute("temperature_type").value[0];
                unit = device.GetAttribute("temperature_type").unit;
            }
            if (string.IsNullOrEmpty(unit))
            {