From 157be5220d9d81bce18e8248ef6ac056415405a1 Mon Sep 17 00:00:00 2001
From: Tong <1025782220@qq.com>
Date: 星期二, 31 八月 2021 09:29:45 +0800
Subject: [PATCH] 更新推送库
---
HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs | 190 +++++++++++++++++++++++++++++++++--------------
1 files changed, 134 insertions(+), 56 deletions(-)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
index 22fefd3..2b40f4b 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
@@ -1,6 +1,8 @@
-锘縰sing System;
+using System;
using Shared;
using System.Collections.Generic;
+using HDL_ON.Entity;
+
namespace HDL_ON.UI.UI2.Intelligence.Automation
{
public class TargetDeviceFunList : FrameLayout
@@ -43,13 +45,13 @@
this.AddChidren(saveView.FLayoutView());
#endregion
#region 缂栬緫璁惧鐘舵��
- switch (device.functionType)
+ switch (device.spk)
{
//寮�鍏崇伅鍏� light.Switch
- case FunctionType.Dimmer:
- case FunctionType.RGB:
- case FunctionType.RGBW:
- case FunctionType.ColorTemperature:
+ case SPK.LightDimming:
+ case SPK.LightRGB:
+ case SPK.LightRGBW:
+ case SPK.LightCCT:
{
#region 鐣岄潰
///寮�鍏�
@@ -82,7 +84,7 @@
#endregion
}
break;
- case FunctionType.Relay:
+ case SPK.LightSwitch:
{
#region 鐣岄潰
///寮�鍏�
@@ -105,9 +107,9 @@
}
break;
//绐楀笜
- case FunctionType.Curtain:
- case FunctionType.MotorCurtain:
- case FunctionType.RollingShutter:
+ case SPK.CurtainSwitch:
+ case SPK.CurtainTrietex:
+ case SPK.CurtainRoller:
{
#region 鐣岄潰
///寮�鍏�
@@ -129,7 +131,7 @@
#endregion
}
break;
- case FunctionType.AC:
+ case SPK.AcStandard:
{
#region 鐣岄潰
///寮�鍏�
@@ -173,7 +175,7 @@
temperatureView.btnState.Text = stateStr;
//璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
string keyVlaue = "set_temp";
- selectedState = device.functionType + "_" + keyVlaue;
+ selectedState = device.spk + "_" + keyVlaue;
string set_temp_value = stateStr.Replace("鈩�", "");
//鏁版嵁灏佽
AddDictionary(keyVlaue, set_temp_value);
@@ -188,7 +190,7 @@
string currText = acModehView.btnState.Text;
//璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
string keyVlaue = "mode";
- selectedState = device.functionType + "_" + keyVlaue;
+ selectedState = device.spk + "_" + keyVlaue;
PublicInterface modeView = new PublicInterface();
var modeListStr = modeView.GetViewList(keyVlaue);
modeView.SingleSelectionShow(this, modeListStr, Language.StringByID(StringId.modeLogic), currText
@@ -209,7 +211,7 @@
string currText = acSpeedView.btnState.Text;
//璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
string keyVlaue = "fan";
- selectedState = device.functionType + "_" + keyVlaue;
+ selectedState = device.spk + "_" + keyVlaue;
PublicInterface speedView = new PublicInterface();
var speedListStr = speedView.GetViewList(keyVlaue);
speedView.SingleSelectionShow(this, speedListStr, Language.StringByID(StringId.speedLogic), currText
@@ -231,7 +233,7 @@
#endregion
}
break;
- case FunctionType.FloorHeating:
+ case SPK.FloorHeatStandard:
{
#region 鐣岄潰
///寮�鍏�
@@ -271,7 +273,7 @@
temperatureView.btnState.Text = stateStr;
//璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
string keyVlaue = "set_temp";
- selectedState = device.functionType + "_" + keyVlaue;
+ selectedState = device.spk + "_" + keyVlaue;
string set_temp_value = stateStr.Replace("鈩�", "");
//鏁版嵁灏佽
AddDictionary(keyVlaue, set_temp_value);
@@ -288,7 +290,7 @@
string currText = floorHeatingModehView.btnState.Text;
//璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
string keyVlaue = "mode";
- selectedState = device.functionType + "_" + keyVlaue;
+ selectedState = device.spk + "_" + keyVlaue;
PublicInterface modeView = new PublicInterface();
var modeListStr = modeView.GetViewList("floorheatingmode");
modeView.SingleSelectionShow(this, modeListStr, Language.StringByID(StringId.modeLogic), currText
@@ -310,6 +312,88 @@
#endregion
}
break;
+ case SPK.AirFreshStandard:
+ {
+ #region 鐣岄潰
+ ///寮�鍏�
+ LogicView.FunTypeView AirFreshSwitchVie = new LogicView.FunTypeView();
+ AirFreshSwitchVie.btnText.TextID = StringId.switchLogic;
+ fLayout.AddChidren(AirFreshSwitchVie.FLayoutView());
+
+ ///椋庨��
+ LogicView.FunTypeView AirFreshSpeedView = new LogicView.FunTypeView();
+ AirFreshSpeedView.frameLayout.Y = AirFreshSwitchVie.frameLayout.Bottom;
+ AirFreshSpeedView.btnText.TextID = StringId.speedLogic;
+ fLayout.AddChidren(AirFreshSpeedView.FLayoutView());
+ #endregion
+ #region 鐐瑰嚮浜嬩欢
+ ///寮�鍏崇偣鍑讳簨浠�
+ AirFreshSwitchVie.btnClick.MouseUpEventHandler += (sender, e) =>
+ {
+
+ SwitchViewMethod(device, AirFreshSwitchVie.btnState, 2);
+ };
+ ///椋庨�熺偣鍑讳簨浠�
+ AirFreshSpeedView.btnClick.MouseUpEventHandler += (sender, e) =>
+ {
+ //瀹氫箟涓�涓复鏃跺垪琛�
+ List<string> fanAttrList = new List<string>();
+ //鍔ㄦ�佽鍙栨柊椋庨閫熷垪琛�
+ var fanAttr = device.GetAttribute(FunctionAttributeKey.FanSpeed);
+ foreach (var fanAttrValue in fanAttr.value)
+ {
+ switch (fanAttrValue)
+ {
+ case "high":
+ {
+ fanAttrList.Add(Language.StringByID(StringId.HighWindSpeed));
+ }
+ break;
+ case "medium":
+ {
+ fanAttrList.Add(Language.StringByID(StringId.MiddleWindSpeed));
+ }
+ break;
+ case "low":
+ {
+
+ fanAttrList.Add(Language.StringByID(StringId.LowWindSpeed));
+ }
+ break;
+ case "auto":
+ {
+ fanAttrList.Add(Language.StringByID(StringId.Auto));
+ break;
+ }
+
+ }
+ }
+ ///涔嬪墠鐨勭姸鎬佹枃鏈�
+ string currText = AirFreshSpeedView.btnState.Text;
+ //璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
+ string keyVlaue = "fan";
+ selectedState = device.spk + "_" + keyVlaue;
+ PublicInterface speedView = new PublicInterface();
+ var speedListStr = fanAttrList;// speedView.GetViewList(keyVlaue);
+ speedView.SingleSelectionShow(this, speedListStr, Language.StringByID(StringId.speedLogic), currText
+ , (stateValue) =>
+ {
+ //鐣岄潰鏄剧ず閫変腑鍊�
+ AirFreshSpeedView.btnState.Text = stateValue;
+ //鏁版嵁灏佽
+ AddDictionary(keyVlaue, speedView.GetModeValueString(stateValue, keyVlaue));
+
+ });
+ };
+ if (edit)
+ {
+ //鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬�
+ GetEditState(device, index, AirFreshSwitchVie.btnState, AirFreshSpeedView.btnState, null, null);
+ }
+
+ #endregion
+ }
+ break;
}
#endregion
@@ -321,12 +405,12 @@
Output outputDevice = new Output();
outputDevice.target_type = "1";
outputDevice.sid = device.sid;
- switch (device.functionType)
+ switch (device.spk)
{
- case FunctionType.Dimmer:
- case FunctionType.RGB:
- case FunctionType.RGBW:
- case FunctionType.ColorTemperature:
+ case SPK.LightDimming:
+ case SPK.LightRGB:
+ case SPK.LightRGBW:
+ case SPK.LightCCT:
{
//璋冨厜鍋氫簡涓�涓壒娈婂鐞嗭紱
if (dicSateteList.Count > 1)
@@ -352,11 +436,11 @@
}
break;
}
- case FunctionType.AC:
- case FunctionType.FloorHeating:
+ case SPK.AcStandard:
+ case SPK.FloorHeatStandard:
+ case SPK.AirFreshStandard:
{
-
- //(绌鸿皟/鍦扮儹)鍋氫簡涓�涓壒娈婂鐞嗭紱
+ //鍋氫簡涓�涓壒娈婂鐞嗭紱
bool _bool = false;
for (int i = 0; i < dicSateteList.Count; i++)
{
@@ -376,8 +460,6 @@
diction.Add("value", "on");
dicSateteList.Add(diction);
}
-
-
}
break;
}
@@ -385,6 +467,8 @@
if (edit)
{
+ //鏇存柊寤舵椂鏃堕棿
+ outputDevice.delay = Logic.currlogic.output[index].delay;
//绉婚櫎鏃ф暟鎹�
Logic.currlogic.output.RemoveAt(index);
//鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃�;
@@ -406,7 +490,7 @@
this.RemoveFromParent();
return;
}
- LogicMethod.RemoveAllView();
+ LogicMethod.CurrLogicMethod.RemoveAllView();
AddLogic addLogic = new AddLogic();
MainPage.BasePageView.AddChidren(addLogic);
addLogic.Show();
@@ -424,10 +508,7 @@
private void SwitchViewMethod(Entity.Function device, Button button, int len)
{
#region 鐣岄潰
- FrameLayout frame = new FrameLayout
- {
- BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
- };
+ FrameLayout frame = new FrameLayout { BackgroundColor = CSS.CSS_Color.viewTrans60lucence };
this.AddChidren(frame);
LogicView.SwitchView switchView = new LogicView.SwitchView();
switchView.FLayoutView(frame, len, button.Text, (strValue) =>
@@ -453,7 +534,7 @@
}
//鐣岄潰鏄剧ず閫変腑鍊�
button.TextID = id;
- selectedState = device.functionType + "_" + strValue;
+ selectedState = device.spk + "_" + strValue;
//璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
string keyVlaue = "on_off";
//鏁版嵁灏佽
@@ -476,22 +557,22 @@
{
//鐣岄潰鏄剧ず閫変腑鍊�
button.Text = brightnesValue + "%";
- selectedState = device.functionType + brightnesValue.ToString();
+ selectedState = device.spk + brightnesValue.ToString();
//璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�;
string keyVlaue = "";
- switch (device.functionType)
+ switch (device.spk)
{
//寮�鍏崇伅鍏� light.Switch
- case FunctionType.Dimmer:
- case FunctionType.RGB:
- case FunctionType.RGBW:
- case FunctionType.ColorTemperature:
+ case SPK.LightDimming:
+ case SPK.LightRGB:
+ case SPK.LightRGBW:
+ case SPK.LightCCT:
{
keyVlaue = "brightness";
}
break;
- case FunctionType.MotorCurtain:
- case FunctionType.RollingShutter:
+ case SPK.CurtainRoller:
+ case SPK.CurtainTrietex:
{
keyVlaue = "percent";
}
@@ -515,7 +596,7 @@
private void GetEditState(Entity.Function device, int index, Button button1, Button button2, Button button3, Button button4)
{
Output outputs = Logic.currlogic.output[index];
- var dicList = outputs.status as List<Dictionary<string, string>>;
+ var dicList = outputs.status;
//娓呴櫎涔嬪墠鏃ф暟鎹�
dicSateteList.Clear();
if (dicList.Count != 0)
@@ -534,23 +615,22 @@
{
//鏁版嵁灏佽
Dictionary<string, string> dic = new Dictionary<string, string>();
- LogicMethod.dictionary(dic, "key", KeyValue);
- LogicMethod.dictionary(dic, "value", selectedValue);
- AddDictionaryList(KeyValue, dic, dicSateteList);
+ LogicMethod.CurrLogicMethod.dictionary(dic, "key", KeyValue);
+ LogicMethod.CurrLogicMethod.dictionary(dic, "value", selectedValue);
+ AddDictionaryList(KeyValue, dic);
}
/// <summary>
/// 鏇存柊鏁版嵁鍒楄〃
/// </summary>
/// <param name="keyValue">璁惧灞炴�у�硷紝浜戦泙涓婂畾涔夊ソ鐨�</param>
- /// <param name="dictionary">閫変腑鏁版嵁</param>
- /// <param name="dicList">瀛樺偍鏁版嵁鍒楄〃</param>
+ /// <param name="dictionary">娣诲姞閫変腑鏁版嵁</param>
/// <returns></returns>
- private void AddDictionaryList(string keyValue, Dictionary<string, string> dictionary, List<Dictionary<string, string>> dicList)
+ private void AddDictionaryList(string keyValue, Dictionary<string, string> dictionary)
{
int indexValue = -1;
- for (int i = 0; i < dicList.Count; i++)
+ for (int i = 0; i < dicSateteList.Count; i++)
{
- var dic = dicList[i];
+ var dic = dicSateteList[i];
if (dic.ContainsValue(keyValue))
{
//鍒ゆ柇鏄惁瀛樺湪
@@ -562,14 +642,14 @@
if (indexValue != -1)
{
//瀛樺湪绉婚櫎
- dicList.RemoveAt(indexValue);
+ dicSateteList.RemoveAt(indexValue);
//閲嶆柊娣诲姞
- dicList.Insert(indexValue, dictionary);
+ dicSateteList.Insert(indexValue, dictionary);
}
else
{
//鏂版坊鍔�
- dicList.Add(dictionary);
+ dicSateteList.Add(dictionary);
}
}
@@ -600,8 +680,6 @@
}
}
-
-
}
}
--
Gitblit v1.8.0