HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store | 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/UI/UI2/3-Intelligence/Automation/AutomationMenuPage.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/UI/UI2/3-Intelligence/Automation/InterfaceDsplaysLogic.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_StoreBinary files differ
HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs
@@ -103,7 +103,7 @@ LogicView.LogicTypeTitleView cyclicTitle = new LogicView.LogicTypeTitleView(); cyclicTitle.frameLayout.Height = Application.GetRealHeight(50); cyclicTitle.frameLayout.Radius = (uint)Application.GetRealHeight(12); cyclicTitle.btnText.Text = MainView.GetWeekText(Logic.currlogic); cyclicTitle.btnText.Text = MainView.GetCyclicText(Logic.currlogic); viewLayout.AddChidren(cyclicTitle.FLayoutView()); #endregion @@ -160,7 +160,7 @@ this.AddChidren(fLayout); AndOrMethod(fLayout, titleCondition.btnText); }; ///条件点击事件 ///条件添加点击事件 addInputIcon.btnClick.MouseUpEventHandler += (sen, e) => { var addInputType = new AddInputType(); @@ -168,7 +168,7 @@ addInputType.Show(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }; ///目标点击事件 ///目标添加点击事件 addOutputIcon.btnClick.MouseUpEventHandler += (sen, e) => { var addTarget = new AddTarget(); @@ -209,7 +209,7 @@ { list.Add(logic.name); } new LogicView.TipPopView().InputBox(StringId.editName, Logic.currlogic.name, StringId.nameNull, StringId.NameAlreadyExists, list, (logicName) => new LogicView.TipPopView().InputBox(StringId.editName, InterfaceDsplaysLogic.GetLogicName(Logic.currlogic), StringId.nameNull, StringId.NameAlreadyExists, list, (logicName) => { Logic.currlogic.name = logicName; Logic.currlogic.sid = LogicMethod.NewSid(); @@ -477,7 +477,7 @@ weekStateList.Clear(); if (Logic.currlogic.cycle.type == "week") { var list = GetWeekString(Logic.currlogic.cycle.value, "int"); var list = InterfaceDsplaysLogic.GetWeekString(Logic.currlogic.cycle.value, "int"); //加载之前保存的数据 weekStateList.AddRange(list); } @@ -485,7 +485,7 @@ weekView.MultiSelectShow(fLayout, weekStr, Language.StringByID(StringId.cyclic), weekStateList , (list) => { var statelist = GetWeekString(list, "str"); var statelist = InterfaceDsplaysLogic.GetWeekString(list, "str"); Logic.currlogic.cycle.type = "week"; Logic.currlogic.cycle.value = statelist; button.Text = MainView.GetWeekString(statelist); @@ -541,98 +541,8 @@ } /// <summary> /// 星期周期转换值的方法 /// </summary> /// <param name="list"></param> /// <param name="str_or_int"></param> /// <returns></returns> public List<string> GetWeekString(List<string> list, string str_or_int) { string weekTextName = ""; List<string> stateList = new List<string>(); for (int i = 0; i < list.Count; i++) { var s = list[i]; if (str_or_int == "int") { switch (s) { case "1": { weekTextName = Language.StringByID(StringId.monday); } break; case "2": { weekTextName = Language.StringByID(StringId.tuesday); } break; case "3": { weekTextName = Language.StringByID(StringId.wednesday); } break; case "4": { weekTextName = Language.StringByID(StringId.thursday); } break; case "5": { weekTextName = Language.StringByID(StringId.friday); } break; case "6": { weekTextName = Language.StringByID(StringId.saturday); } break; case "0": { weekTextName = Language.StringByID(StringId.sunday); } break; } } else { if (Language.StringByID(StringId.monday) == s) { weekTextName = "1"; } else if (Language.StringByID(StringId.tuesday) == s) { weekTextName = "2"; } else if (Language.StringByID(StringId.wednesday) == s) { weekTextName = "3"; } else if (Language.StringByID(StringId.thursday) == s) { weekTextName = "4"; } else if (Language.StringByID(StringId.friday) == s) { weekTextName = "5"; } else if (Language.StringByID(StringId.saturday) == s) { weekTextName = "6"; } else if (Language.StringByID(StringId.sunday) == s) { weekTextName = "0"; } } stateList.Add(weekTextName); } return stateList; } } } HDL_ON/UI/UI2/3-Intelligence/Automation/AutomationMenuPage.cs
File was deleted HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -15,6 +15,12 @@ for (int i = 0; i < Logic.currlogic.input.Count; i++) { Input inputCondition = Logic.currlogic.input[i]; if (inputCondition == null) { //防止有的空对象; //正常情况下不会该现象; continue; } ///各种条件的View LogicView.AddOutputInputView inputView = new LogicView.AddOutputInputView(); inputView.FLayoutView(viewLayout); @@ -177,6 +183,12 @@ for (int i = 0; i < Logic.currlogic.output.Count; i++) { Output outputTarget = Logic.currlogic.output[i]; if (outputTarget == null) { //防止有的空对象; //正常情况下不会该现象; continue; } ///各种条件的View LogicView.AddOutputInputView targetView = new LogicView.AddOutputInputView(); targetView.FLayoutView(viewLayout); @@ -550,14 +562,274 @@ }; } } /// <summary> /// 显示编辑之前的设备状态 /// </summary> /// <param name="device">编辑设备</param> /// <param name="button1">显示Btn</param> /// <param name="button2">显示Btn</param> /// <param name="button3">显示Btn</param> /// <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) { //开关灯光 case FunctionType.Relay: { 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 FunctionType.Dimmer: case FunctionType.RGB: case FunctionType.RGBW: case FunctionType.ColorTemperature: { foreach (var dic in dicList) { string value = dic["value"]; switch (dic["key"]) { case "on_off": { if (value == "on") { button1.Text = Language.StringByID(StringId.onLogic); } else { button1.Text = Language.StringByID(StringId.offLogic); } } break; case "brightness": { button2.Text = value + "%"; } break; } } } break; case FunctionType.Curtain: case FunctionType.MotorCurtain: case FunctionType.RollingShutter: { foreach (var dic in dicList) { string value = dic["value"]; switch (value) { case "on": { button1.Text = Language.StringByID(StringId.onLogic); } break; case "off": { button1.Text = Language.StringByID(StringId.offLogic); } break; case "stop": { button1.Text = Language.StringByID(StringId.stop); } break; } } } break; case FunctionType.AC: { 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_temp": { button2.Text = value + "℃"; } break; case "mode": { switch (value) { case "cool": { button3.Text = Language.StringByID(StringId.coolLogic); } break; case "heat": { button3.Text = Language.StringByID(StringId.heatingLogic); } break; case "auto": { button3.Text = Language.StringByID(StringId.autoLogic); } break; case "dry": { button3.Text = Language.StringByID(StringId.dehumidifyLogic); } break; } } break; case "fan": { switch (value) { case "high": { button4.Text = Language.StringByID(StringId.HighWindSpeed); } break; case "medium": { button4.Text = Language.StringByID(StringId.MiddleWindSpeed); } break; case "low": { button4.Text = Language.StringByID(StringId.LowWindSpeed); } break; case "auto": { button4.Text = Language.StringByID(StringId.Auto); } break; } } break; } } } break; case FunctionType.FloorHeating: { 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_temp": { button2.Text = value + "℃"; } break; case "mode": { switch (value) { case "day": { button3.Text = Language.StringByID(StringId.dayMode); } break; case "night": { button3.Text = Language.StringByID(StringId.nightMode); } break; case "away": { button3.Text = Language.StringByID(StringId.leaveMode); } break; case "normal": { button3.Text = Language.StringByID(StringId.ordinaryMode); } break; case "timer": { button3.Text = Language.StringByID(StringId.timeMode); } break; } } break; } } } break; } } /// <summary> /// 获取value键值 /// </summary> /// <param name="keyValue"></param> /// <param name="dicList"></param> /// <returns></returns> private static string GetKeyValue(string keyValue, List<Dictionary<string, string>> dicList) public static string GetKeyValue(string keyValue, List<Dictionary<string, string>> dicList) { string valueStr = ""; HDL_ON/UI/UI2/3-Intelligence/Automation/InterfaceDsplaysLogic.cs
New file @@ -0,0 +1,340 @@ using System; using Shared; using System.Collections.Generic; namespace HDL_ON.UI.UI2.Intelligence.Automation { public class InterfaceDsplaysLogic { /// <summary> ///获取自动化名称 /// </summary> /// <returns> 新建自动化命名规则</returns> public static string GetLogicName(Logic logic) { string name = ""; try { //默认取第一个条件 Input inputCondition = logic.input[0]; //显示条件各种类型状态 switch (inputCondition.condition_type) { case "1": { name = Language.StringByID(StringId.hour) + "-"; } break; case "2": { name = Language.StringByID(StringId.timeHorizon) + "-"; } break; case "3": { //用sid找到设备; var device = LogicMethod.GetDevice(inputCondition.sid); name = device.name + "-"; } break; } //默认取第一个目标 Output outputTarget = logic.output[0]; List<Dictionary<string, string>> dicList = outputTarget.status as List<Dictionary<string, string>>; //显示输出条件各种类型状态 switch (outputTarget.target_type) { case "1": { //用sid找到设备; var device = LogicMethod.GetDevice(outputTarget.sid); //显示设备名称 name += device.name; string stateStr = ""; //区别不同设备,显示不同设备状态 switch (device.functionType) { case FunctionType.Relay: {//开关灯 foreach (var dic in dicList) { string value = dic["value"]; if (value == "on") { stateStr = Language.StringByID(StringId.onLogic); } else { stateStr = Language.StringByID(StringId.offLogic); } } } break; case FunctionType.RGB: case FunctionType.RGBW: case FunctionType.ColorTemperature: case FunctionType.Dimmer: { string on_off = InpOrOutLogicMethod.GetKeyValue("on_off", dicList); string brightness = InpOrOutLogicMethod.GetKeyValue("brightness", dicList); if (on_off == "on" && brightness != "") { stateStr = Language.StringByID(StringId.onLogic) + brightness + "%"; } else if (on_off == "on") { stateStr = Language.StringByID(StringId.onLogic); } else if (on_off == "off") { stateStr = Language.StringByID(StringId.offLogic); } else if (brightness != "") { stateStr = brightness + "%"; } } break; case FunctionType.Curtain: case FunctionType.MotorCurtain: case FunctionType.RollingShutter: { foreach (var dic in dicList) { string value = dic["value"]; switch (value) { case "on": { stateStr = Language.StringByID(StringId.onLogic); } break; case "off": { stateStr = Language.StringByID(StringId.offLogic); } break; case "stop": { stateStr = Language.StringByID(StringId.stop); } break; } } } break; case FunctionType.AC: case FunctionType.FloorHeating: { foreach (var dic in dicList) { string value = dic["value"]; if (value == "on") { stateStr = Language.StringByID(StringId.onLogic); } else if (value == "off") { stateStr = Language.StringByID(StringId.offLogic); } } } break; } name += stateStr; } break; case "2": { //用sid找到场景; var scene = LogicMethod.GetSecne(outputTarget.sid); name += scene.name; } break; } } catch { } return name; } /// <summary> /// 星期int和string互相转换值的方法 /// </summary> /// <param name="list"></param> /// <param name="str_or_int"></param> /// <returns></returns> public static List<string> GetWeekString(List<string> list, string str_or_int) { string weekTextName = ""; List<string> stateList = new List<string>(); for (int i = 0; i < list.Count; i++) { var s = list[i]; if (str_or_int == "int") { switch (s) { case "1": { weekTextName = Language.StringByID(StringId.monday); } break; case "2": { weekTextName = Language.StringByID(StringId.tuesday); } break; case "3": { weekTextName = Language.StringByID(StringId.wednesday); } break; case "4": { weekTextName = Language.StringByID(StringId.thursday); } break; case "5": { weekTextName = Language.StringByID(StringId.friday); } break; case "6": { weekTextName = Language.StringByID(StringId.saturday); } break; case "0": { weekTextName = Language.StringByID(StringId.sunday); } break; } } else { if (Language.StringByID(StringId.monday) == s) { weekTextName = "1"; } else if (Language.StringByID(StringId.tuesday) == s) { weekTextName = "2"; } else if (Language.StringByID(StringId.wednesday) == s) { weekTextName = "3"; } else if (Language.StringByID(StringId.thursday) == s) { weekTextName = "4"; } else if (Language.StringByID(StringId.friday) == s) { weekTextName = "5"; } else if (Language.StringByID(StringId.saturday) == s) { weekTextName = "6"; } else if (Language.StringByID(StringId.sunday) == s) { weekTextName = "0"; } } stateList.Add(weekTextName); } return stateList; } /// <summary> /// 模式/风速互相转换值的方法 /// </summary> /// <param name="text"></param> /// <param name="type"></param> /// <returns></returns> public static string GetModeValueString(string text, string type) { string str = ""; switch (type) { case "mode": { if (text == Language.StringByID(StringId.coolLogic)) { str = "cool"; } else if (text == Language.StringByID(StringId.heatingLogic)) { str = "heat"; } else if (text == Language.StringByID(StringId.autoLogic)) { str = "auto"; } else if (text == Language.StringByID(StringId.dehumidifyLogic)) { str = "dry"; } } break; case "fan": { if (text == Language.StringByID(StringId.HighWindSpeed)) { str = "high"; } else if (text == Language.StringByID(StringId.MiddleWindSpeed)) { str = "medium"; } else if (text == Language.StringByID(StringId.LowWindSpeed)) { str = "low"; } else if (text == Language.StringByID(StringId.Auto)) { str = "auto"; } } break; case "FloorHeating": { if (text == Language.StringByID(StringId.dayMode)) { str = "day"; } else if (text == Language.StringByID(StringId.nightMode)) { str = "night"; } else if (text == Language.StringByID(StringId.leaveMode)) { str = "away"; } else if (text == Language.StringByID(StringId.ordinaryMode)) { str = "normal"; } else if (text == Language.StringByID(StringId.timeMode)) { str = "timer"; } } break; } return str; } } } HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs
@@ -43,7 +43,7 @@ LogicView.SingleLogicView logicView = new LogicView.SingleLogicView(); vv.AddChidren(logicView.FLayoutView()); logicView.btnLogicName.Text = currLogic.name; logicView.btnWeekText.Text = GetWeekText(currLogic); logicView.btnWeekText.Text = GetCyclicText(currLogic); logicView.btnclick.MouseUpEventHandler += (sen, e) => { Logic.currlogic = currLogic; @@ -135,7 +135,7 @@ ///返回循环描述文本 /// </summary> /// <param name="logic"></param> public static string GetWeekText(Logic logic) public static string GetCyclicText(Logic logic) { string weekName = ""; @@ -168,7 +168,7 @@ return weekName; } /// <summary> /// 获取星期的字符串 /// 返回星期描述文本 /// </summary> /// <param name="weekList"></param> /// <returns></returns> @@ -311,6 +311,12 @@ //2-功能图标 for (int i = 0; i < logic.input.Count; i++) { if (logic.input[i] == null) { //防止有的空对象; //正常情况下不会该现象; continue; } var int1 = int.Parse(logic.input[i].condition_type); int iconInt = 0; @@ -347,6 +353,12 @@ //14-延时图标 for (int i = 0; i < logic.output.Count; i++) { if (logic.output[i] == null) { //防止有的空对象; //正常情况下不会该现象; continue; } var int1 = int.Parse(logic.output[i].target_type); int iconInt = 0; switch (int1) HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
@@ -183,65 +183,28 @@ BackgroundColor = CSS.CSS_Color.viewTrans60lucence, }; this.AddChidren(frame); LogicView.DateView modeView = new LogicView.DateView(); modeView.btnTitle.TextID = StringId.modeLogic; modeView.FLayoutView(frame, modeStr.Count); modeView.btnCancel.MouseUpEventHandler += (sender2, e2) => { frame.RemoveFromParent(); }; ///定义一个Btn记录选中状态 Button checkBtn = new Button { Tag = "unknown", }; for (int i = 0; i < modeStr.Count; i++) { LogicView.CheckView modeTypeView = new LogicView.CheckView(); modeTypeView.frameLayout.Y = Application.GetRealHeight(56 + 50 * i); modeView.frameLayout.AddChidren(modeTypeView.FLayoutView()); modeTypeView.btnText.Text = modeStr[i]; modeTypeView.btnClick.Tag = modeStr[i];//标记 if (acModehView.btnState.Text == modeStr[i]) { //显示之前的选中状态 checkBtn.IsSelected = false; modeTypeView.btnCheckIcon.IsSelected = true; checkBtn = modeTypeView.btnCheckIcon; checkBtn.Tag = modeTypeView.btnClick.Tag.ToString(); } //星期的点击事件 modeTypeView.btnClick.MouseUpEventHandler += (sender1, e1) => { checkBtn.IsSelected = false; modeTypeView.btnCheckIcon.IsSelected = true; checkBtn = modeTypeView.btnCheckIcon; checkBtn.Tag = modeTypeView.btnClick.Tag.ToString(); }; } modeView.btnConfirm.MouseUpEventHandler += (sender1, e1) => { if (checkBtn.Tag.ToString() == "unknown") { return; } ///之前的状态文本 string currText = acModehView.btnState.Text; PublicInterface modeView = new PublicInterface(); modeView.SingleSelectionShow(frame, modeStr, Language.StringByID(StringId.modeLogic), currText , (stateValue) => { string keyVlaue = "mode"; Dictionary<string, string> dic = new Dictionary<string, string>(); LogicMethod.dictionary(dic, "key", "mode"); LogicMethod.dictionary(dic, "value", InterfaceDsplaysLogic.GetModeValueString(stateValue, "mode")); AddDictionaryData(dicSateteList, keyVlaue, dic); acModehView.btnState.Text = stateValue; selectedState = device.functionType + "_mode"; Dictionary<string, string> dic = new Dictionary<string, string>(); LogicMethod.dictionary(dic, "key", "mode"); string keyVlaue = "mode"; LogicMethod.dictionary(dic, "value", GetModeValueString(checkBtn.Tag.ToString(), keyVlaue)); acModehView.btnState.Text = checkBtn.Tag.ToString(); selectedState = device.functionType + "_mode"; AddDictionaryData(dicSateteList, keyVlaue, dic); RemView(frame); }; }); }; ///风速点击事件 acSpeedView.btnClick.MouseUpEventHandler += (sender, e) => { List<string> speedStr = new List<string> { Language.StringByID(StringId.LowWindSpeed), Language.StringByID(StringId.MiddleWindSpeed), @@ -253,60 +216,21 @@ BackgroundColor = CSS.CSS_Color.viewTrans60lucence, }; this.AddChidren(frame); LogicView.DateView speedView = new LogicView.DateView(); speedView.btnTitle.TextID = StringId.modeLogic; speedView.FLayoutView(frame, speedStr.Count); speedView.btnCancel.MouseUpEventHandler += (sender2, e2) => { frame.RemoveFromParent(); }; ///定义一个Btn记录选中状态 Button checkBtn = new Button { Tag = "unknown", }; for (int i = 0; i < speedStr.Count; i++) { LogicView.CheckView speedTypeView = new LogicView.CheckView(); speedTypeView.frameLayout.Y = Application.GetRealHeight(56 + 50 * i); speedView.frameLayout.AddChidren(speedTypeView.FLayoutView()); speedTypeView.btnText.Text = speedStr[i]; speedTypeView.btnClick.Tag = speedStr[i];//标记 if (acSpeedView.btnState.Text == speedStr[i]) { //显示之前的选中状态 checkBtn.IsSelected = false; speedTypeView.btnCheckIcon.IsSelected = true; checkBtn = speedTypeView.btnCheckIcon; checkBtn.Tag = speedTypeView.btnClick.Tag.ToString(); } //星期的点击事件 speedTypeView.btnClick.MouseUpEventHandler += (sender1, e1) => { checkBtn.IsSelected = false; speedTypeView.btnCheckIcon.IsSelected = true; checkBtn = speedTypeView.btnCheckIcon; checkBtn.Tag = speedTypeView.btnClick.Tag.ToString(); }; } speedView.btnConfirm.MouseUpEventHandler += (sender1, e1) => { if (checkBtn.Tag.ToString() == "unknown") { return; } Dictionary<string, string> dic = new Dictionary<string, string>(); LogicMethod.dictionary(dic, "key", "fan"); string keyVlaue = "fan"; LogicMethod.dictionary(dic, "value", GetModeValueString(checkBtn.Tag.ToString(), keyVlaue)); acSpeedView.btnState.Text = checkBtn.Tag.ToString(); selectedState = device.functionType + "_fan"; AddDictionaryData(dicSateteList, keyVlaue, dic); RemView(frame); }; ///之前的状态文本 string currText = acSpeedView.btnState.Text; PublicInterface modeView = new PublicInterface(); modeView.SingleSelectionShow(frame, speedStr, Language.StringByID(StringId.speedLogic), currText , (stateValue) => { string keyVlaue = "fan"; Dictionary<string, string> dic = new Dictionary<string, string>(); LogicMethod.dictionary(dic, "key", "fan"); LogicMethod.dictionary(dic, "value", InterfaceDsplaysLogic.GetModeValueString(stateValue, "fan")); AddDictionaryData(dicSateteList, keyVlaue, dic); acSpeedView.btnState.Text = stateValue; selectedState = device.functionType + "_fan"; }); }; if (edit) { @@ -434,7 +358,7 @@ string keyVlaue = "mode"; Dictionary<string, string> dic = new Dictionary<string, string>(); LogicMethod.dictionary(dic, "key", "mode"); LogicMethod.dictionary(dic, "value", GetModeValueString(stateValue, "FloorHeating")); LogicMethod.dictionary(dic, "value", InterfaceDsplaysLogic.GetModeValueString(stateValue, "FloorHeating")); AddDictionaryData(dicSateteList, keyVlaue, dic); floorHeatingModehView.btnState.Text = stateValue; selectedState = device.functionType + "_mode"; @@ -452,7 +376,7 @@ } #endregion #region 保存点击时间 #region 保存点击事件 saveView.btnClick.MouseUpEventHandler += (sen, e) => { @@ -462,7 +386,6 @@ Output outputDevice = new Output(); outputDevice.target_type = "1"; outputDevice.sid = device.sid; switch (device.functionType) { case FunctionType.Dimmer: @@ -557,84 +480,7 @@ #endregion } /// <summary> /// 获取模式/风速键值 /// </summary> /// <param name="text"></param> /// <param name="type"></param> /// <returns></returns> private string GetModeValueString(string text, string type) { string str = ""; switch (type) { case "mode": { if (text == Language.StringByID(StringId.coolLogic)) { str = "cool"; } else if (text == Language.StringByID(StringId.heatingLogic)) { str = "heat"; } else if (text == Language.StringByID(StringId.autoLogic)) { str = "auto"; } else if (text == Language.StringByID(StringId.dehumidifyLogic)) { str = "dry"; } } break; case "fan": { if (text == Language.StringByID(StringId.HighWindSpeed)) { str = "high"; } else if (text == Language.StringByID(StringId.MiddleWindSpeed)) { str = "medium"; } else if (text == Language.StringByID(StringId.LowWindSpeed)) { str = "low"; } else if (text == Language.StringByID(StringId.Auto)) { str = "auto"; } } break; case "FloorHeating": { if (text == Language.StringByID(StringId.dayMode)) { str = "day"; } else if (text == Language.StringByID(StringId.nightMode)) { str = "night"; } else if (text == Language.StringByID(StringId.leaveMode)) { str = "away"; } else if (text == Language.StringByID(StringId.ordinaryMode)) { str = "normal"; } else if (text == Language.StringByID(StringId.timeMode)) { str = "timer"; } } break; } return str; } /// <summary> ///开关=界面 /// </summary> @@ -799,14 +645,6 @@ } /// <summary> /// 移除控件 /// </summary> /// <param name="frame"></param> private void RemView(FrameLayout frame) { frame.RemoveFromParent(); } /// <summary> /// 显示编辑之前的设备状态 /// </summary> /// <param name="device">编辑设备</param> @@ -826,256 +664,7 @@ //有数据重新赋值 dicSateteList = dicList; } switch (device.functionType) { //开关灯光 case FunctionType.Relay: { 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 FunctionType.Dimmer: case FunctionType.RGB: case FunctionType.RGBW: case FunctionType.ColorTemperature: { foreach (var dic in dicList) { string value = dic["value"]; switch (dic["key"]) { case "on_off": { if (value == "on") { button1.Text = Language.StringByID(StringId.onLogic); } else { button1.Text = Language.StringByID(StringId.offLogic); } } break; case "brightness": { button2.Text = value+"%"; } break; } } } break; case FunctionType.Curtain: case FunctionType.MotorCurtain: case FunctionType.RollingShutter: { foreach (var dic in dicList) { string value = dic["value"]; switch (value) { case "on": { button1.Text = Language.StringByID(StringId.onLogic); } break; case "off": { button1.Text = Language.StringByID(StringId.offLogic); } break; case "stop": { button1.Text = Language.StringByID(StringId.stop); } break; } } } break; case FunctionType.AC: { 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_temp": { button2.Text = value + "℃"; } break; case "mode": { switch (value) { case "cool": { button3.Text = Language.StringByID(StringId.coolLogic); } break; case "heat": { button3.Text = Language.StringByID(StringId.heatingLogic); } break; case "auto": { button3.Text = Language.StringByID(StringId.autoLogic); } break; case "dry": { button3.Text = Language.StringByID(StringId.dehumidifyLogic); } break; } } break; case "fan": { switch (value) { case "high": { button4.Text = Language.StringByID(StringId.HighWindSpeed); } break; case "medium": { button4.Text = Language.StringByID(StringId.MiddleWindSpeed); } break; case "low": { button4.Text = Language.StringByID(StringId.LowWindSpeed); } break; case "auto": { button4.Text = Language.StringByID(StringId.Auto); } break; } } break; } } } break; case FunctionType.FloorHeating: { 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_temp": { button2.Text = value + "℃"; } break; case "mode": { switch (value) { case "day": { button3.Text = Language.StringByID(StringId.dayMode); } break; case "night": { button3.Text = Language.StringByID(StringId.nightMode); } break; case "away": { button3.Text = Language.StringByID(StringId.leaveMode); } break; case "normal": { button3.Text = Language.StringByID(StringId.ordinaryMode); } break; case "timer": { button3.Text = Language.StringByID(StringId.timeMode); } break; } } break; } } } break; } InpOrOutLogicMethod.EditState(device, dicList, button1, button2, button3, button4); } /// <summary> /// 添加处理选中数据 @@ -1139,6 +728,14 @@ } } /// <summary> /// 移除控件 /// </summary> /// <param name="frame"></param> private void RemView(FrameLayout frame) { frame.RemoveFromParent(); } }