From d72ca686a3e262693f8a6e45e747e8e8da43335b Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期二, 06 七月 2021 09:39:03 +0800 Subject: [PATCH] 2021-07-06 1.更新 --- HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs | 430 +++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 399 insertions(+), 31 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs index 47fb936..214e0fc 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs @@ -17,12 +17,6 @@ for (int i = 0; i < Logic.currlogic.input.Count; i++) { Input inputCondition = Logic.currlogic.input[i]; - if (inputCondition == null) - { - //闃叉鏈夌殑绌哄璞★紱 - //姝e父鎯呭喌涓嬩笉浼氳鐜拌薄锛� - continue; - } ///鍚勭鏉′欢鐨刅iew LogicView.AddOutputInputView inputView = new LogicView.AddOutputInputView(); inputView.FLayoutView(viewLayout); @@ -56,7 +50,7 @@ { strtext = Language.StringByID(StringId.sunrise); statetext = Language.StringByID(StringId.advanced); - + } break; case "before_sunset": @@ -64,8 +58,9 @@ strtext = Language.StringByID(StringId.sunset); statetext = Language.StringByID(StringId.advanced); - - } break; + + } + break; case "before_noon": { strtext = Language.StringByID(StringId.at); @@ -76,12 +71,14 @@ { strtext = Language.StringByID(StringId.sunrise); statetext = Language.StringByID(StringId.delayLogic); - } break; + } + break; case "after_sunset": { strtext = Language.StringByID(StringId.sunset); statetext = Language.StringByID(StringId.delayLogic); - } break; + } + break; case "after_noon": { strtext = Language.StringByID(StringId.at); @@ -167,7 +164,197 @@ } } break; + //浼犳劅鍣� + case SPK.SensorSmoke: + case SPK.SensorGas: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "alarm") + { + inputView.btnState.Text = Language.StringByID(StringId.xieluo); + + } + else + { + inputView.btnState.Text = Language.StringByID(StringId.wuxieluo); + } + } + } + break; + case SPK.SensorWater: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "alarm") + { + inputView.btnState.Text = Language.StringByID(StringId.luoshui); + + } + else + { + inputView.btnState.Text = Language.StringByID(StringId.wuluoshui); + } + } + } + break; + case SPK.SensorDryContact: + { + foreach (var dic in dicList) + { + + string value = dic["value"]; + if (value == "on") + { + inputView.btnState.Text = Language.StringByID(StringId.onLogic); + + } + else + { + inputView.btnState.Text = Language.StringByID(StringId.offLogic); + } + } + } + break; + case SPK.SensorShanLan: + case SPK.SensorDuiShe: + case SPK.SensorPir: + { + foreach (var dic in dicList) + { + + string value = dic["value"]; + if (value == "true") + { + inputView.btnState.Text = Language.StringByID(StringId.youren); + + } + else + { + inputView.btnState.Text = Language.StringByID(StringId.wuren); + } + } + } + break; + case SPK.SensorDoorWindow: + { + foreach (var dic in dicList) + { + + string value = dic["value"]; + if (value == "open") + { + inputView.btnState.Text = Language.StringByID(StringId.kaiqi); + + } + else + { + inputView.btnState.Text = Language.StringByID(StringId.bihe); + } + } + } + break; + case SPK.SensoruUtrasonic: + { + string str = ""; + foreach (var dic in dicList) + { + string value = dic["value"]; + switch (dic["key"]) + { + case "status": + { + if (value == "true") + { + str+= Language.StringByID(StringId.youren)+";"; + } + else + { + str += Language.StringByID(StringId.wuren) + ";"; + } + + + } + break; + case "dismantle": + { + if (value == "true") + { + str += Language.StringByID(StringId.zaixian); + } + else + { + str += Language.StringByID(StringId.buzaixian); + } + } + break; + + } + + } + inputView.btnState.Text = str; + } + break; + } + } + break; + case "4": + { + inputView.btnIcon.UnSelectedImagePath = "LogicIcon/changesinoutdoor.png"; + string strtext = ""; + string strvalue = ""; + foreach (var dic in dicList) + { + string key = dic["key"]; + string comparator = dic["comparator"]; + string value = dic["value"]; + + switch (key) + { + case "outdoor_temp": + { + strvalue = value; + if (comparator == ">") + { + strtext = Language.StringByID(StringId.wendugaoyu); + } + else if (comparator == "<") + { + strtext = Language.StringByID(StringId.wendudiyu); + } + + } + break; + case "outdoor_humity": + { + strvalue = value; + if (comparator == ">") + { + strtext = Language.StringByID(StringId.shidugaoyu); + } + else if (comparator == "<") + { + strtext = Language.StringByID(StringId.shidudiyu); + } + + } + break; + case "pm2.5": + { + strtext = Language.StringByID(StringId.PM25); + strvalue = new OutdoorEnvironment { }.GetString(value); + } + break; + + } + + + } + inputView.btnText.Text = strtext; + inputView.btnState.Text = strvalue; } break; case "6": @@ -197,9 +384,9 @@ strtext = Language.StringByID(StringId.rain); } break; - + } - inputView.btnText.TextID =StringId.tianqibianhua; + inputView.btnText.TextID = StringId.tianqibianhua; inputView.btnState.Text = strtext; } } @@ -223,7 +410,6 @@ break; } } - //鏍囪缂栬緫鐘舵�� bool edit = true; switch (button.Name) @@ -291,6 +477,69 @@ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; } break; + case "4": + { + ///褰撳墠鐨勭储寮曞�兼暟鎹璞� + Input inputedit = Logic.currlogic.input[indexVulae]; + ///鐘舵�佸�� + string stateValue = ""; + ///鐘舵�佸�兼枃鏈� + int intValue = -1; + foreach (var dic in inputedit.condition) + { + string key = dic["key"]; + string comparator = dic["comparator"]; + stateValue = dic["value"]; + switch (key) + { + case "outdoor_temp": + { + if (comparator == ">") + { + intValue = StringId.wendugaoyu; + } + else if (comparator == "<") + { + intValue = StringId.wendudiyu; + + } + + } + break; + case "outdoor_humity": + { + + if (comparator == ">") + { + intValue = StringId.shidugaoyu; + } + else if (comparator == "<") + { + intValue = StringId.shidudiyu; + } + + } + break; + case "pm2.5": + { + intValue = StringId.PM25; + } + break; + + } + } + OutdoorEnvironment outdoorEnvironment = new OutdoorEnvironment(); + if (intValue == StringId.PM25) + { + outdoorEnvironment.PmAction(thisView, stateValue); + } + else + { + outdoorEnvironment.InputBoxAction(intValue, stateValue); + } + + } + break; case "6": { @@ -318,16 +567,10 @@ /// <param name="viewLayout">涓婁笅婊戝姩鎺т欢</param> public static void OutputTarget(FrameLayout thisView, VerticalScrolViewLayout viewLayout) { - + for (int i = 0; i < Logic.currlogic.output.Count; i++) { Output outputTarget = Logic.currlogic.output[i]; - if (outputTarget == null) - { - //闃叉鏈夌殑绌哄璞★紱 - //姝e父鎯呭喌涓嬩笉浼氳鐜拌薄锛� - continue; - } ///鍚勭鏉′欢鐨刅iew LogicView.AddOutputInputView targetView = new LogicView.AddOutputInputView(); targetView.FLayoutView(viewLayout); @@ -429,17 +672,19 @@ targetView.btnState.Text = stateStr; } break; - case SPK.AcStandard: { + case SPK.AcStandard: + { string on_off = GetKeyValue("on_off", dicList); string set_temp = GetKeyValue("set_temp", dicList); string mode = GetKeyValue("mode", dicList); string fan = GetKeyValue("fan", dicList); - if (on_off != "") { + if (on_off != "") + { switch (on_off) { case "on": { - stateStr = Language.StringByID(StringId.onLogic)+","; + stateStr = Language.StringByID(StringId.onLogic) + ","; } break; case "off": @@ -447,7 +692,7 @@ stateStr = Language.StringByID(StringId.offLogic) + ","; } break; - + } } @@ -464,7 +709,7 @@ { case "cool": { - stateStr += Language.StringByID(StringId.coolLogic)+","; + stateStr += Language.StringByID(StringId.coolLogic) + ","; } break; case "heat": @@ -493,7 +738,7 @@ { case "high": { - stateStr += Language.StringByID(StringId.HighWindSpeed)+","; + stateStr += Language.StringByID(StringId.HighWindSpeed) + ","; } break; case "medium": @@ -518,7 +763,8 @@ { targetView.btnState.Text = Language.StringByID(StringId.offLogic); } - else { + else + { targetView.btnState.Text = stateStr.TrimEnd(','); } @@ -559,7 +805,7 @@ { case "day": { - stateStr += Language.StringByID(StringId.dayMode)+","; + stateStr += Language.StringByID(StringId.dayMode) + ","; } break; case "night": @@ -613,7 +859,7 @@ } if (on_off != "" && on_off == "off") { - targetView.btnState.Text =Language.StringByID(StringId.offLogic); + targetView.btnState.Text = Language.StringByID(StringId.offLogic); } else { @@ -651,7 +897,7 @@ { Button button = (Button)sen; //鎵惧埌褰撳墠缂栬緫鐨勭储寮� - int indexVulae =0; + int indexVulae = 0; for (int index = 0; index < Logic.currlogic.output.Count; index++) { Output target = Logic.currlogic.output[index]; @@ -960,6 +1206,128 @@ } break; + case SPK.SensorGas: + case SPK.SensorSmoke: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "alarm") + { + button1.Text = Language.StringByID(StringId.xieluo); + } + else + { + button1.Text = Language.StringByID(StringId.wuxieluo); + } + } + } + break; + case SPK.SensorWater: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "alarm") + { + button1.Text = Language.StringByID(StringId.luoshui); + } + else + { + button1.Text = Language.StringByID(StringId.wuluoshui); + } + } + } + break; + case SPK.SensorDryContact: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "on") + { + button1.Text = Language.StringByID(StringId.onLogic); + } + else + { + button1.Text = Language.StringByID(StringId.offLogic); + } + } + } + break; + case SPK.SensorShanLan: + case SPK.SensorDuiShe: + case SPK.SensorPir: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "true") + { + button1.Text = Language.StringByID(StringId.youren); + } + else + { + button1.Text = Language.StringByID(StringId.wuren); + } + } + } + break; + case SPK.SensorDoorWindow: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "open") + { + button1.Text = Language.StringByID(StringId.kaiqi); + } + else + { + button1.Text = Language.StringByID(StringId.bihe); + } + } + } + break; + case SPK.SensoruUtrasonic: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + switch (dic["key"]) + { + case "status": + { + if (value == "true") + { + button1.Text = Language.StringByID(StringId.youren); + } + else + { + button1.Text = Language.StringByID(StringId.wuren); + } + + + } + break; + case "dismantle": + { + if (value == "true") + { + button1.Text = Language.StringByID(StringId.zaixian); + } + else + { + button1.Text = Language.StringByID(StringId.buzaixian); + } + } + break; + + } + + } + } + break; } } /// <summary> -- Gitblit v1.8.0