From 6a8eb1ce9d8e34c50164a4e24e7098e681ee08b6 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期一, 06 十一月 2023 15:08:06 +0800 Subject: [PATCH] 国际化支持:场景增加自动化使能配置 --- HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs | 259 ++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 202 insertions(+), 57 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs index 1d787cb..1425f70 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs @@ -48,7 +48,7 @@ { case "1": { - + inputView.btnIcon.UnSelectedImagePath = "LogicIcon/time.png"; foreach (var dic in dicList) { @@ -130,7 +130,7 @@ case "2": { inputView.btnIcon.UnSelectedImagePath = "LogicIcon/time.png"; - string value= this.GetKeyValue("timesection", dicList); + string value = this.GetKeyValue("timesection", dicList); inputView.btnText.Text = Language.StringByID(StringId.timeHorizon) + ": " + value; } break; @@ -181,7 +181,7 @@ } } break; - //浼犳劅鍣� + //绱ф�ユ眰鍔╀紶鎰熷櫒 case SPK.SensorHelp: { string value = this.GetKeyValue("alarm_status", dicList); @@ -218,9 +218,9 @@ case SPK.SensorDryContact2: { - string value = this.GetKeyValue("on_off", dicList); + string value = this.GetKeyValue("contact_status", dicList); inputView.btnState.Text = Language.StringByID(StringId.offLogic); - if (value == "on") + if (value == "open") { inputView.btnState.Text = Language.StringByID(StringId.onLogic); } @@ -400,6 +400,13 @@ inputView.btnState.Text = str; } break; + case SPK.SensorLight: + { + string str = this.GetText(dicList, "illuminance"); + inputView.btnState.Text = str; + + } + break; case SPK.DoorLock: { string value = this.GetValue(dicList); @@ -411,7 +418,7 @@ break; case SPK.VideoDoorLock: { - string s = string.Empty; + string userName = string.Empty; string tag = string.Empty; for (int b = 0; b < dicList.Count; b++) { @@ -422,11 +429,9 @@ //s += ","; //tag += FaceItem.userId; //tag += "_"; - var userName = dic["value"].ToString(); - s += userName; - s += ","; + userName = dic["value"].ToString(); } - inputView.btnState.Text = s; + inputView.btnState.Text = RemoveLastStr(userName); } break; case SPK.doorgate: @@ -468,7 +473,7 @@ } break; case SPK.Ev_Ipcam: - if (inputCondition.identifier == "motiondetect_event") + if (inputCondition.identifier == Constant.intelligentDetection_event) { inputView.btnState.Text = Language.StringByID(StringId.shi); } @@ -484,11 +489,11 @@ string value = this.GetKeyValue("people_status", dicList); if (string.IsNullOrEmpty(value)) { - inputView.btnState.Text = inputCondition.hold_time + "s"; + inputView.btnState.Text = LogicMethod.Current.getTimeStr(inputCondition.hold_time).Replace("0s",""); break; } - + inputView.btnState.Text = Language.StringByID(StringId.wuren); if (value == "true") { @@ -497,8 +502,8 @@ } if (!string.IsNullOrEmpty(inputCondition.hold_time) && int.Parse(inputCondition.hold_time) > 0) { - - inputView.btnState.Text += "鎸佺画" + inputCondition.hold_time + "s"; + int time = int.Parse(inputCondition.hold_time); + inputView.btnState.Text += "鎸佺画" + LogicMethod.Current.getTimeStr(inputCondition.hold_time).Replace("0s", ""); } @@ -750,6 +755,7 @@ if (device.spk == SPK.SensorEnvironment || device.spk == SPK.SensorEnvironmentHailin || device.spk == SPK.SensorEnvironment2 || device.spk == SPK.SensorEnvironment3 + || device.spk == SPK.SensorLight ) { ///褰撳墠鐨勭储寮曞�兼暟鎹璞� @@ -764,6 +770,20 @@ switch (key) { + case "illuminance": + { + int titleInt = 0; + if (comparator == ">") + { + titleInt = StringId.zhaomingdugaoyu; + } + else if (comparator == "<") + { + titleInt = StringId.zhaomingdudiyu; + } + ConditionDeviceFunList.Current.InputBoxAction(device, titleInt, indexVulae, true, stateValue); + } + break; case "temperature": { int titleInt = 0; @@ -819,7 +839,7 @@ else if (device.spk == SPK.SensorTemperature) { - this.SensorView(thisView, device, "temperature", indexVulae); + this.SensorView(thisView, device, "temperature", indexVulae); } else if (device.spk == SPK.SensorHumidity) @@ -1015,7 +1035,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); @@ -1023,7 +1043,8 @@ //鎻掑骇(鏈塙SB) case SPK.PanelSocket: { - string on_off = GetKeyValue("on_off_master", dicList); + //string on_off = GetKeyValue("on_off_master", dicList); + string on_off = GetKeyValue("on_off", dicList); if (on_off == "on") { stateStr = Language.StringByID(StringId.onLogic); @@ -1034,6 +1055,7 @@ } } break; + case SPK.OtherCommon: case SPK.AirSwitch: case SPK.LightSwitch: //鎻掑骇 @@ -1057,14 +1079,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 != "") @@ -1088,7 +1110,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) @@ -1264,7 +1286,7 @@ if (set_temp != "") { - string unit =GetTemperatureUnit(device); + string unit = GetTemperatureUnit(device); stateStr += set_temp + unit + ","; } @@ -1475,14 +1497,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 = GetKeyValue("wol", dicList); + string off = GetKeyValue("on_off", dicList); + string volumet = GetKeyValue("set_volume", dicList); + string signal = GetKeyValue("signal", dicList); + + if (!string.IsNullOrEmpty(off)) + { + stateStr = Language.StringByID(StringId.offLogic); + //濡傛灉鍏充簡锛屽叾瀹冨睘鎬т笉鏄剧ず + break; + } + + if (!string.IsNullOrEmpty(on)) + { + stateStr = Language.StringByID(StringId.onLogic); + } + 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; } @@ -1653,6 +1716,7 @@ break; case SPK.ElectricSocket: //寮�鍏崇伅鍏� + case SPK.OtherCommon: case SPK.AirSwitch: case SPK.LightSwitch: //鏈烘鎵� @@ -2228,7 +2292,7 @@ foreach (var dic in dicList) { string value = dic["value"]; - if (value == "on") + if (value == "on"|| value == "open") { button1.Text = Language.StringByID(StringId.onLogic); } @@ -2396,7 +2460,7 @@ break; case SPK.VideoDoorLock: { - string s = string.Empty; + string userName = string.Empty; string tag = string.Empty; for (int b = 0; b < dicList.Count; b++) { @@ -2407,16 +2471,13 @@ //s += ","; //tag += FaceItem.userId; //tag += "_"; - var userName = dic["value"].ToString(); - s += userName; - s += ","; + userName = dic["value"].ToString(); + } - button1.Text = s; + button1.Text = RemoveLastStr(userName); button1.Tag = tag; } break; - - case SPK.MusicStandard: case SPK.AvMusic: { @@ -2456,6 +2517,62 @@ button2.Tag = tag; } break; + case SPK.ElectricalTvHisense: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + switch (dic["key"]) + { + case "on_off": + { + if (value == "off") + { + button1.Text = Language.StringByID(StringId.offLogic); + + } + + } + break; + case "wol": + { + if (value == "on") + { + button1.Text = Language.StringByID(StringId.onLogic); + + } + + } + 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; + } } @@ -2776,29 +2893,30 @@ string state = ""; var minutes = timeValue / 60; var seconds = timeValue % 60; - if (minutes != 0) - { - if (seconds == 0) - { - state = minutes.ToString() + Language.StringByID(StringId.minute); - } - else - { - state = minutes.ToString() + Language.StringByID(StringId.minute) + seconds.ToString() + Language.StringByID(StringId.s); - } - } - else - { - if (seconds != 0) - { - state = seconds.ToString() + Language.StringByID(StringId.s); - } - } - if (!string.IsNullOrEmpty(state)) - { - state = Language.StringByID(StringId.delayLogic) + state; - } - return state; + return LogicMethod.Current.getTimeStr(strTimeValue).Replace("0s",""); + //if (minutes != 0) + //{ + // if (seconds == 0) + // { + // state = minutes.ToString() + Language.StringByID(StringId.minute); + // } + // else + // { + // state = minutes.ToString() + Language.StringByID(StringId.minute) + seconds.ToString() + Language.StringByID(StringId.s); + // } + //} + //else + //{ + // if (seconds != 0) + // { + // state = seconds.ToString() + Language.StringByID(StringId.s); + // } + //} + //if (!string.IsNullOrEmpty(state)) + //{ + // state = Language.StringByID(StringId.delayLogic) + state; + //} + //return state; } /// <summary> /// 鑾峰彇鏄剧ず闈㈢啛鏂囨湰 @@ -2815,6 +2933,19 @@ switch (key) { + case "illuminance": + { + if (comparator == ">") + { + strtext = ">" + value; + } + else if (comparator == "<") + { + strtext = "<" + value; + } + + } + break; case "temperature": { if (comparator == ">") @@ -2877,7 +3008,7 @@ Input inputedit = Logic.currlogic.input[indexVulae]; ///鐘舵�佸�� string stateValue = ""; - for (int i=0;i<inputedit.condition.Count;i++) + for (int i = 0; i < inputedit.condition.Count; i++) { var dic = inputedit.condition[i]; string comparator = dic["comparator"]; @@ -2978,6 +3109,20 @@ return face; } + /// <summary> + /// 鍒犻櫎鏈�鍚庝竴涓� "," + /// </summary> + /// <param name="s">瀛楃涓�</param> + /// <returns></returns> + public string RemoveLastStr(string s) + { + if (string.IsNullOrEmpty(s)) + { + return string.Empty; + } + return s.Replace("[","").Replace("]","").Replace("\"","").TrimEnd(','); + } + } } -- Gitblit v1.8.0