From ec9e37b92075752cd96c558a7d8bffbbc4adc07e Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期三, 13 十月 2021 11:35:43 +0800
Subject: [PATCH] 金茂新风湿度控制
---
HDL-ON_Android/Properties/AndroidManifest.xml | 2
HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 19 ++
HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs | 252 +++++++++++++++++++++++++++++++++++-
HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs | 5
HDL-ON_iOS/HDL-ON_iOS.csproj | 3
HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs | 1
HDL_ON/DAL/DriverLayer/Control_Udp.cs | 10 +
HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs | 2
HDL-ON_Android/HDL-ON_Android.csproj | 3
HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/HumiIcon.png | 0
HDL-ON_iOS/Info.plist | 4
HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs | 12 +
HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/btnCloseIcon.png | 0
HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/btnInfoIcon.png | 0
HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/btnCloseIcon.png | 0
.vs/HDL_APP_Project/xs/UserPrefs.xml | 61 +++-----
HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/btnInfoIcon.png | 0
HDL_ON/DAL/DriverLayer/Control.cs | 6
HDL_ON/UI/MainPage.cs | 2
HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/HumiIcon.png | 0
HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs | 5
21 files changed, 325 insertions(+), 62 deletions(-)
diff --git a/.vs/HDL_APP_Project/xs/UserPrefs.xml b/.vs/HDL_APP_Project/xs/UserPrefs.xml
index 0c5476a..551ff4d 100644
--- a/.vs/HDL_APP_Project/xs/UserPrefs.xml
+++ b/.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,45 +1,30 @@
-锘�<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default">
- <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneSimulatorTarget." />
- <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/DAL/DriverLayer/Packet.cs">
+锘�<Properties StartupConfiguration="{D998E133-F0DD-4760-BE3C-461632F54DA4}|Default">
+ <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget" />
+ <MonoDevelop.Ide.Workbench ActiveDocument="HDL-ON_iOS/Info.plist">
<Files>
- <File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="21" Column="89" />
- <File FileName="HDL_ON/UI/UI1-Login/LoginPage.cs" Line="237" Column="59" />
- <File FileName="HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs" Line="741" Column="23" />
- <File FileName="HDL_ON/UI/UI2/1-HomePage/HomePage.cs" Line="853" Column="21" />
- <File FileName="HDL_ON/UI/UI2/2-Classification/FunctionControlZoneBLL.cs" Line="340" Column="36" />
- <File FileName="HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs" Line="170" Column="1" />
- <File FileName="HDL_ON/DAL/Mqtt/MqttClient.cs" Line="315" Column="1" />
- <File FileName="HDL_ON/UI/MainPage.cs" Line="28" Column="55" />
- <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="1050" Column="1" />
- <File FileName="HDL_ON/DAL/DriverLayer/Control_Udp.cs" Line="272" Column="45" />
- <File FileName="HDL_ON/Entity/Function/Function.cs" Line="1326" Column="32" />
- <File FileName="HDL_ON/UI/UI2/FuntionControlView/AC/ACPage.cs" Line="8" Column="28" />
- <File FileName="HDL_ON/DAL/DriverLayer/Packet.cs" Line="384" Column="1" />
+ <File FileName="HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs" Line="211" Column="33" />
+ <File FileName="HDL_ON/DAL/DriverLayer/Control.cs" Line="356" Column="21" />
+ <File FileName="HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs" Line="331" Column="68" />
+ <File FileName="HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddAlarmDeploymentPage.cs" Line="306" Column="44" />
+ <File FileName="HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs" Line="89" Column="58" />
+ <File FileName="HDL_ON/UI/MainPage.cs" Line="5" Column="17" />
+ <File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="21" Column="36" />
+ <File FileName="HDL_ON/DAL/Mqtt/MqttClient.cs" Line="446" Column="41" />
+ <File FileName="HDL-ON_iOS/Info.plist" />
</Files>
<Pads>
<Pad Id="ProjectPad">
<State name="__root__">
<Node name="HDL_APP_Project" expanded="True">
- <Node name="HDL_ON" expanded="True">
- <Node name="DAL" expanded="True">
- <Node name="DriverLayer" expanded="True">
- <Node name="Packet.cs" selected="True" />
- </Node>
- <Node name="Server" expanded="True" />
- </Node>
- <Node name="Entity" expanded="True">
- <Node name="Function" expanded="True" />
- </Node>
- <Node name="UI" expanded="True">
- <Node name="UI0-Public" expanded="True" />
- <Node name="UI2" expanded="True">
- <Node name="FuntionControlView" expanded="True">
- <Node name="AC" expanded="True" />
- </Node>
- </Node>
- </Node>
+ <Node name="HDL-ON_iOS" expanded="True">
+ <Node name="Info.plist" selected="True" />
</Node>
</Node>
+ </State>
+ </Pad>
+ <Pad Id="MonoDevelop.Debugger.WatchPad">
+ <State>
+ <Value>function.spk</Value>
</State>
</Pad>
</Pads>
@@ -50,23 +35,20 @@
<String>Shared.Droid.TouchID/Shared.Droid.TouchID.csproj</String>
<String>Shared.IOS/Shared.IOS.csproj</String>
</DisabledProjects>
- <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|iPhone" />
- <MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.364c4b3158493098" />
+ <MonoDevelop.Ide.Workspace ActiveConfiguration="Release|iPhone" />
+ <MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.SelectDevice" />
<MonoDevelop.Ide.DebuggingService.Breakpoints>
<BreakpointStore>
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Electrical/IrFanPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Electrical/IrFanPage.cs" line="42" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Mqtt/MqttClient.cs" relfile="HDL_ON/DAL/Mqtt/MqttClient.cs" line="431" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs" line="758" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/Transfer/TransferUserConfirmPage.cs" line="106" column="1" />
- <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs" line="168" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/FaceManagement/FacePassagePage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/FaceManagement/FacePassagePage.cs" line="481" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/4-PersonalCenter/FaceManagement/FacePassagePage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/FaceManagement/FacePassagePage.cs" line="541" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/Entity/Function/Scene.cs" relfile="HDL_ON/Entity/Function/Scene.cs" line="343" column="1" />
- <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs" line="148" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSensorPage.cs" line="865" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="2691" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="2687" column="1" />
- <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Energy/EnergyMainPage.cs" line="524" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/Entity/Function/Scene.cs" relfile="HDL_ON/Entity/Function/Scene.cs" line="322" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" line="798" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" line="852" column="11" />
@@ -74,6 +56,7 @@
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalPage.cs" line="835" column="12" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Light/ColorTureLampPage.cs" line="200" column="1" />
<Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/DriverLayer/Control.cs" relfile="HDL_ON/DAL/DriverLayer/Control.cs" line="727" column="1" />
+ <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs" line="178" column="1" />
</BreakpointStore>
</MonoDevelop.Ide.DebuggingService.Breakpoints>
<MultiItemStartupConfigurations />
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/HumiIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/HumiIcon.png
new file mode 100644
index 0000000..59b2f44
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/HumiIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/btnCloseIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/btnCloseIcon.png
new file mode 100644
index 0000000..261e62c
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/btnCloseIcon.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/btnInfoIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/btnInfoIcon.png
new file mode 100644
index 0000000..416d299
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/btnInfoIcon.png
Binary files differ
diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj
index fa5f97f..8fe9c65 100644
--- a/HDL-ON_Android/HDL-ON_Android.csproj
+++ b/HDL-ON_Android/HDL-ON_Android.csproj
@@ -208,6 +208,9 @@
<None Include="Resources\AboutResources.txt" />
<None Include="Properties\AndroidManifest.xml" />
<None Include="Assets\AboutAssets.txt" />
+ <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\HumiIcon.png" />
+ <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\btnCloseIcon.png" />
+ <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\btnInfoIcon.png" />
</ItemGroup>
<ItemGroup>
<AndroidResource Include="Resources\values\colors.xml" />
diff --git a/HDL-ON_Android/Properties/AndroidManifest.xml b/HDL-ON_Android/Properties/AndroidManifest.xml
index 0ec5c06..7920cfd 100644
--- a/HDL-ON_Android/Properties/AndroidManifest.xml
+++ b/HDL-ON_Android/Properties/AndroidManifest.xml
@@ -1,5 +1,5 @@
锘�<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202110112" android:versionName="1.2.202110112" package="com.hdl.onpro">
+<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202110131" android:versionName="1.2.202110131" package="com.hdl.onpro">
<uses-sdk android:minSdkVersion="23" android:targetSdkVersion="28" />
<!-- 涔愭鍙瀵硅闇�瑕佺殑鏉冮檺 -->
<!--<uses-permission android:name="android.permission.INTERNET" />-->
diff --git a/HDL-ON_iOS/HDL-ON_iOS.csproj b/HDL-ON_iOS/HDL-ON_iOS.csproj
index 1ea9ff9..c4e15fc 100644
--- a/HDL-ON_iOS/HDL-ON_iOS.csproj
+++ b/HDL-ON_iOS/HDL-ON_iOS.csproj
@@ -1353,6 +1353,9 @@
<BundleResource Include="Resources\Phone\Public\HookIcon.png" />
<BundleResource Include="Resources\Phone\Collection\MesCenter\Property.png" />
<BundleResource Include="Resources\Phone\Collection\MesCenter\PropertyOn.png" />
+ <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\HumiIcon.png" />
+ <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\btnCloseIcon.png" />
+ <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\btnInfoIcon.png" />
</ItemGroup>
<ItemGroup>
<ITunesArtwork Include="iTunesArtwork" />
diff --git a/HDL-ON_iOS/Info.plist b/HDL-ON_iOS/Info.plist
index b9cecc9..2922c21 100644
--- a/HDL-ON_iOS/Info.plist
+++ b/HDL-ON_iOS/Info.plist
@@ -100,9 +100,9 @@
<key>UIStatusBarStyle</key>
<string>UIStatusBarStyleLightContent</string>
<key>CFBundleShortVersionString</key>
- <string>1.2.202109261</string>
+ <string>1.2.202110131</string>
<key>CFBundleVersion</key>
- <string>1.2.09261</string>
+ <string>1.2.10131</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Use geographic location to provide services such as weather</string>
<key>NSAppleMusicUsageDescription</key>
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/HumiIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/HumiIcon.png
new file mode 100644
index 0000000..59b2f44
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/HumiIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/btnCloseIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/btnCloseIcon.png
new file mode 100644
index 0000000..261e62c
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/btnCloseIcon.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/btnInfoIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/btnInfoIcon.png
new file mode 100644
index 0000000..416d299
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/btnInfoIcon.png
Binary files differ
diff --git a/HDL_ON/DAL/DriverLayer/Control.cs b/HDL_ON/DAL/DriverLayer/Control.cs
index d117157..4b93d06 100644
--- a/HDL_ON/DAL/DriverLayer/Control.cs
+++ b/HDL_ON/DAL/DriverLayer/Control.cs
@@ -1008,6 +1008,8 @@
case SPK.CurtainShades:
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
+ case SPK.AcIr:
Stan.HdlDeviceStatuPushLogic.Current.UpdateDeviceStatu(updateTemp.sid, updateTemp.status);
if (localFunction != null)
{
@@ -1046,7 +1048,7 @@
break;
}
localFunction.lastState += " " + localFunction.GetAttrState(FunctionAttributeKey.SetTemp) + new AC().GetTempUnitString(localFunction);
- ACPage.UpdataStates(localFunction);
+
}
break;
case SPK.HvacFloorHeat:
@@ -1123,8 +1125,6 @@
case SPK.SensorSmoke:
case SPK.SensorWater:
case SPK.ClothesHanger:
- case SPK.AcIr:
- case SPK.HvacAC:
case SPK.SenesorMegahealth:
case SPK.SenesorMegahealth2:
case SPK.AirFreshStandard:
diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
index 2179b3d..e5fb38e 100644
--- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs
+++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs
@@ -198,6 +198,7 @@
}
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
AC acTemp = new AC();
byte onoff = 0;
byte mode = 0;
@@ -552,6 +553,7 @@
}
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
var ac = new AC();
foreach (var dic in commandDictionary)
{
@@ -742,6 +744,11 @@
}
}
//7 婀垮害璁惧畾 %
+ byte hum = 0;
+ if (commandDictionary.ContainsKey(FunctionAttributeKey.Humidity) == true)
+ {
+ hum = Convert.ToByte(commandDictionary[FunctionAttributeKey.Humidity]);
+ }
//8 瀹ゅ唴娓╁害鍊� 鈩�
byte indoorTemp_airFrsh = 0;
if (commandDictionary.ContainsKey(FunctionAttributeKey.IndoorTemp) == true)
@@ -760,7 +767,7 @@
function.bus.LoopId,0, switchValue ,
airFreshMode,airFreshEnergy,
airFreshFan,
- Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Humidity)),
+ hum,
indoorTemp_airFrsh,
indoorHumidity_airFrsh,
//Convert.ToByte( function.GetAttrState(FunctionAttributeKey.FilterRemain)),
@@ -812,6 +819,7 @@
ControlBytesSend(Command.ReadCurtainStatus, subnetId, deviceId, new byte[] { function.bus.LoopId });
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
ControlBytesSend(Command.ReadACMode, subnetId, deviceId, new byte[] { function.bus.LoopId });
break;
case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:
diff --git a/HDL_ON/UI/MainPage.cs b/HDL_ON/UI/MainPage.cs
index 31e48ec..1e4cb9e 100644
--- a/HDL_ON/UI/MainPage.cs
+++ b/HDL_ON/UI/MainPage.cs
@@ -25,7 +25,7 @@
/// <summary>
/// 鐗堟湰鍙�
/// </summary>
- public static string VersionString = "1.2.1012";
+ public static string VersionString = "1.2.1013";
///// <summary>
///// 瀹㈡埛绔被鍨�
///// </summary>
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
index e936a60..7de95a3 100644
--- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -582,6 +582,25 @@
// },
//});
+
+ FunctionList.List.Functions.Add(new Function()
+ {
+ spk = SPK.HvacAirFreshJinmao,
+ name = "娴嬭瘯閲戣寕鏂伴",
+ attributes = new List<FunctionAttributes>()
+ {
+ new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
+ new FunctionAttributes(){ key = "mode",curValue= "humidification",state = "humidification" ,value = new List<string>(){ "humidification", "fan" } },
+ new FunctionAttributes(){ key = "energy",curValue= "true",state = "true" ,value = new List<string>(){ "true", "false" } },
+ new FunctionAttributes(){ key = "fan",curValue= "level_1",state = "level_1" ,value = new List<string>(){ "level_1", "level_2", "level_3","auto" } },
+ new FunctionAttributes(){ key = "humidity",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 },
+ new FunctionAttributes(){ key = "indoor_temp",curValue= "26",state = "26" ,value = new List<string>(){ },min = 0,max = 100 },
+ new FunctionAttributes(){ key = "indoor_humidity",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 },
+ new FunctionAttributes(){ key = "filter_remain",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 },
+ new FunctionAttributes(){ key = "filter_timeout",curValue= "false",state = "false" ,value = new List<string>(){ "true", "false" }},
+ },
+ });
+
//FunctionList.List.Functions.Add(new Function()
//{
// spk = SPK.SensorGas,
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
index 4b91725..4d390cb 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
@@ -59,6 +59,7 @@
case SPK.CurtainTrietex:
//绌鸿皟
case SPK.AcStandard:
+ case SPK.HvacAC:
//鍦扮儹
case SPK.FloorHeatStandard:
case SPK.HvacFloorHeat:
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
index 5173eb6..02d31f8 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -146,7 +146,7 @@
case SPK.CurtainRoller:
case SPK.CurtainTrietex:
//绌鸿皟
- case SPK.AcStandard:
+ case SPK.AcStandard:case SPK.HvacAC:
//鍦扮儹
case SPK.HvacFloorHeat:case SPK.FloorHeatStandard:
//鏂伴
@@ -978,6 +978,7 @@
}
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
{
string on_off = GetKeyValue("on_off", dicList);
string set_temp = GetKeyValue("set_temp", dicList);
@@ -1436,6 +1437,7 @@
}
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
{
foreach (var dic in dicList)
{
@@ -1990,6 +1992,7 @@
}
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
case SPK.FloorHeatStandard:case SPK.HvacFloorHeat:
{
foreach (var dic in dicList)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
index bffa5c8..d521916 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
@@ -335,6 +335,7 @@
}
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
{
strPath = "LogicIcon/airconditionerlogic.png";
}
@@ -407,7 +408,7 @@
deviceStrTypeList.Add(Language.StringByID(StringId.Curtain));
}
- var ac = deviceList.Find((device) => device.spk == SPK.AcStandard);
+ var ac = deviceList.Find((device) => device.spk == SPK.AcStandard || device.spk == SPK.HvacAC);
if (ac != null)
{
deviceStrTypeList.Add(Language.StringByID(StringId.AC));
@@ -476,6 +477,7 @@
else if (deviceType == Language.StringByID(StringId.AC))
{
functionTypeList.Add(SPK.AcStandard);
+ functionTypeList.Add(SPK.HvacAC);
}
else if (deviceType == Language.StringByID(StringId.FloorHeating))
{
@@ -532,8 +534,8 @@
deviceTypeList.Add(SPK.CurtainSwitch);
deviceTypeList.Add(SPK.CurtainRoller);
deviceTypeList.Add(SPK.CurtainTrietex);
- deviceTypeList.Add(SPK.AcStandard); deviceTypeList.Add(SPK.HvacAirFresh);
- deviceTypeList.Add(SPK.AirFreshStandard);
+ deviceTypeList.Add(SPK.AcStandard); deviceTypeList.Add(SPK.HvacAC);
+ deviceTypeList.Add(SPK.AirFreshStandard); deviceTypeList.Add(SPK.HvacAirFresh);
deviceTypeList.Add(SPK.FloorHeatStandard); deviceTypeList.Add(SPK.HvacFloorHeat);
deviceTypeList.Add(SPK.SensorSmoke);
deviceTypeList.Add(SPK.SensorWater);
@@ -568,9 +570,9 @@
deviceTypeList.Add(SPK.CurtainSwitch);
deviceTypeList.Add(SPK.CurtainRoller);
deviceTypeList.Add(SPK.CurtainTrietex);
- deviceTypeList.Add(SPK.AcStandard); deviceTypeList.Add(SPK.HvacAirFresh);
+ deviceTypeList.Add(SPK.AcStandard); deviceTypeList.Add(SPK.HvacAC);
deviceTypeList.Add(SPK.FloorHeatStandard); deviceTypeList.Add(SPK.HvacFloorHeat);
- deviceTypeList.Add(SPK.AirFreshStandard);
+ deviceTypeList.Add(SPK.AirFreshStandard); deviceTypeList.Add(SPK.HvacAirFresh);
}
break;
}
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
index 51ee8b6..dcbac35 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/TargetDeviceFunList.cs
@@ -132,6 +132,7 @@
}
break;
case SPK.AcStandard:
+ case SPK.HvacAC:
{
#region 鐣岄潰
///寮�鍏�
@@ -437,6 +438,7 @@
}
break;
}
+ case SPK.HvacAC:
case SPK.AcStandard:
case SPK.FloorHeatStandard:case SPK.HvacFloorHeat:
{
diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs
index e0a5cfe..283d38c 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs
@@ -37,6 +37,11 @@
/// </summary>
private NormalViewControl btnFilterScreen = null;
/// <summary>
+ /// 婊ょ綉浣跨敤瓒呮椂鎻愮ず
+ /// </summary>
+ FrameLayout filterScreenTipView;
+
+ /// <summary>
/// 鑺傝兘/鑸掗�傚浘鏍囨帶浠�
/// </summary>
private IconViewControl btnMode1 = null;
@@ -60,6 +65,14 @@
/// 椋庨�熸枃鏈帶浠�
/// </summary>
private NormalViewControl btnFanView = null;
+ /// <summary>
+ /// 婀垮害璁剧疆鍥炬爣鎺т欢
+ /// </summary>
+ private IconViewControl btnSetHumidity = null;
+ /// <summary>
+ /// 婀垮害璁剧疆鏂囨湰鎺т欢
+ /// </summary>
+ private NormalViewControl btnSetHumidityView = null;
/// <summary>
/// 寮�鍏冲浘鏍�
/// </summary>
@@ -186,6 +199,52 @@
btnFilterScreen.TextColor = CSS_Color.MainColor;
this.FrameWhiteCentet1.AddChidren(btnFilterScreen);
+ #region 婊ょ綉浣跨敤瓒呮椂鎻愰啋
+ filterScreenTipView = new FrameLayout()
+ {
+ Y = btnFilterScreen.Bottom + Application.GetRealWidth(8),
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(295),
+ Height = Application.GetRealHeight(28),
+ Radius = (uint)Application.GetRealWidth(4),
+ BackgroundColor = 0xFFffE8E8,
+ Visible = false,
+ };
+ this.FrameWhiteCentet1.AddChidren(filterScreenTipView);
+
+ Button btnFilterScreenUseTip = new Button()
+ {
+ X = Application.GetRealWidth(8),
+ Gravity = Gravity.CenterVertical,
+ Width = Application.GetRealWidth(20),
+ Height = Application.GetRealWidth(20),
+ UnSelectedImagePath = "FunctionIcon/AirFresh/btnInfoIcon.png"
+ };
+ filterScreenTipView.AddChidren(btnFilterScreenUseTip);
+
+ Button btnFilterScreenUseTipText = new Button()
+ {
+ X = Application.GetRealWidth(32),
+ Width = Application.GetRealWidth(340),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = 0xFFFF4747,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ if(Language.CurrentLanguage == "Chinese")
+ {
+ btnFilterScreenUseTipText.Text = "杩囨护缃戜娇鐢ㄨ秴鏃�";
+ }
+ else
+ {
+ btnFilterScreenUseTipText.Text = "Filter use timeout";
+ }
+ filterScreenTipView.AddChidren(btnFilterScreenUseTipText);
+
+
+ #endregion
+
+
+ #region 鑺傝兘
//鑺傝兘/鑸掗�傚浘鏍�
this.btnMode1 = new IconViewControl(28);
btnMode1.X = Application.GetRealWidth(42);
@@ -197,17 +256,20 @@
this.ShowMode1SelectView();
};
//鑺傝兘/鑸掗�傛枃鏈�
- this.btnMode1View = new NormalViewControl(this.FrameWhiteCentet1.Width / 3, Application.GetRealHeight(18), false);
+ this.btnMode1View = new NormalViewControl(Application.GetRealWidth(72), Application.GetRealHeight(18), false);
+ btnMode1View.X = Application.GetRealWidth(21);
btnMode1View.Y = btnMode1.Bottom + Application.GetRealHeight(6);
btnMode1View.TextAlignment = TextAlignment.Center;
btnMode1View.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
btnMode1View.TextColor = CSS_Color.TextualColor;
this.FrameWhiteCentet1.AddChidren(btnMode1View);
+ #endregion
+ #region 妯″紡
//閫氶/鍔犳箍鍥炬爣
this.btnMode2 = new IconViewControl(28);
btnMode2.Y = btnMode1.Y;
- btnMode2.Gravity = Gravity.CenterHorizontal;
+ btnMode2.X = Application.GetRealWidth(114);
this.FrameWhiteCentet1.AddChidren(btnMode2);
btnMode2.ButtonClickEvent += (sender, e) =>
{
@@ -215,17 +277,20 @@
this.ShowMode2SelectView();
};
//閫氶/鍔犳箍鏂囨湰
- this.btnMode2View = new NormalViewControl(this.FrameWhiteCentet1.Width / 3, Application.GetRealHeight(18), false);
+ this.btnMode2View = new NormalViewControl(Application.GetRealWidth(72), Application.GetRealHeight(18), false);
btnMode2View.X = btnMode1View.Right;
btnMode2View.Y = btnMode2.Bottom + Application.GetRealHeight(6);
btnMode2View.TextAlignment = TextAlignment.Center;
btnMode2View.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
btnMode2View.TextColor = CSS_Color.TextualColor;
this.FrameWhiteCentet1.AddChidren(btnMode2View);
+ #endregion
+ #region 椋庨��
//椋庨�熷浘鏍�
this.btnFan = new IconViewControl(28);
- btnFan.X = this.FrameWhiteCentet1.Width - btnMode1.X - btnFan.IconSize;
+ //btnFan.X = this.FrameWhiteCentet1.Width - btnMode1.X - btnFan.IconSize;
+ btnFan.X = Application.GetRealWidth(186);
btnFan.Y = btnMode1.Y;
this.FrameWhiteCentet1.AddChidren(btnFan);
btnFan.ButtonClickEvent += (sender, e) =>
@@ -234,13 +299,38 @@
this.ShowFanSelectView();
};
//椋庨�熸枃鏈�
- this.btnFanView = new NormalViewControl(this.FrameWhiteCentet1.Width / 3, Application.GetRealHeight(18), false);
+ this.btnFanView = new NormalViewControl(Application.GetRealWidth(72), Application.GetRealHeight(18), false);
btnFanView.X = btnMode2View.Right;
btnFanView.Y = btnFan.Bottom + Application.GetRealHeight(6);
btnFanView.TextAlignment = TextAlignment.Center;
btnFanView.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
btnFanView.TextColor = CSS_Color.TextualColor;
this.FrameWhiteCentet1.AddChidren(btnFanView);
+ #endregion
+
+
+ #region 婀垮害
+ //婀垮害鍥炬爣
+ this.btnSetHumidity = new IconViewControl(28);
+ btnSetHumidity.X = this.FrameWhiteCentet1.Width - btnMode1.X - btnSetHumidity.IconSize;
+ btnSetHumidity.Y = btnMode1.Y;
+ btnSetHumidity.UnSelectedImagePath = "FunctionIcon/AirFresh/HumiIcon.png";
+ this.FrameWhiteCentet1.AddChidren(btnSetHumidity);
+
+ btnSetHumidity.ButtonClickEvent += (sender, e) =>
+ {
+ LoadEditDialog_Humi();
+ };
+ //婀垮害鏂囨湰
+ this.btnSetHumidityView = new NormalViewControl(Application.GetRealWidth(72), Application.GetRealHeight(18), false);
+ btnSetHumidityView.X = btnFanView.Right;
+ btnSetHumidityView.Y = btnSetHumidity.Bottom + Application.GetRealHeight(6);
+ btnSetHumidityView.TextAlignment = TextAlignment.Center;
+ btnSetHumidityView.TextSize = CSS_FontSize.PromptFontSize_FirstLevel;
+ btnSetHumidityView.TextColor = CSS_Color.TextualColor;
+ btnSetHumidityView.Text = "0%";
+ this.FrameWhiteCentet1.AddChidren(btnSetHumidityView);
+ #endregion
//寮�鍏冲浘鏍�
this.btnSwitch = new IconViewControl(32);
@@ -329,7 +419,7 @@
//鑿滃崟鎺т欢(妯″紡)
var menuContr = new DialogTitleMenuControl(2, Language.StringByID(StringId.Mode));
menuContr.Y = Application.GetRealHeight(277);
- menuContr.Gravity = Gravity.CenterHorizontal;
+ menuContr.X = Application.GetRealWidth(72);
menuContr.Width = Application.GetRealWidth(160);
menuContr.Height = Application.GetRealHeight(154);
dialogBody.AddChidren(menuContr);
@@ -355,6 +445,132 @@
#endregion
+
+ /// <summary>
+ /// 鍔犺浇婀垮害閫夋嫨寮圭獥
+ /// </summary>
+ /// <param name="function"></param>
+ /// <param name="btn"></param>
+ void LoadEditDialog_Humi()
+ {
+ List<string> pickerItems = new List<string>();
+
+ Dialog dialog = new Dialog();
+
+ var pView = new FrameLayout()
+ {
+ BackgroundColor = CSS_Color.DialogTransparentColor1,
+ };
+ dialog.AddChidren(pView);
+
+ var optionBaseView = new FrameLayout()
+ {
+ Y = Application.GetRealHeight(456 - 60),
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(260),
+ AnimateSpeed = 0.3f,
+ Animate = Animate.DownToUp,
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ pView.AddChidren(optionBaseView);
+
+ var topView = new FrameLayout()
+ {
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(343),
+ Height = Application.GetRealHeight(40),
+ BackgroundColor = CSS_Color.MainBackgroundColor,
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ optionBaseView.AddChidren(topView);
+ topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
+
+ var btnTilteText = new Button()
+ {
+ Width = Application.GetRealWidth(200),
+ Gravity = Gravity.CenterHorizontal,
+ TextAlignment = TextAlignment.Center,
+ TextSize = CSS_FontSize.SubheadingFontSize,
+ IsBold = true,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ };
+ if(Language.CurrentLanguage == "Chinese")
+ {
+ btnTilteText.Text = "婀垮害璁惧畾";
+ }
+ else
+ {
+ btnTilteText.Text = "Humidity setting";
+ }
+ topView.AddChidren(btnTilteText);
+
+ var btnCancel = new Button()
+ {
+ X = Application.GetRealWidth(21),
+ Width = Application.GetRealWidth(100),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = StringId.Cancel,
+ };
+ topView.AddChidren(btnCancel);
+
+ var btnConfrim = new Button()
+ {
+ Width = Application.GetRealWidth(320),
+ TextAlignment = TextAlignment.CenterRight,
+ TextColor = CSS_Color.MainColor,
+ TextSize = CSS_FontSize.TextFontSize,
+ TextID = StringId.Confirm,
+ };
+ topView.AddChidren(btnConfrim);
+
+ UIPickerView uIPickerView = new UIPickerView()
+ {
+ Y = Application.GetRealHeight(40),
+ Height = Application.GetRealHeight(210),
+ Radius = (uint)Application.GetRealWidth(12),
+ };
+ for (int i = 0; i <= 100; i ++)
+ {
+ pickerItems.Add(i.ToString());
+ }
+ uIPickerView.setNPicker(pickerItems, null, null);
+ optionBaseView.AddChidren(uIPickerView);
+ //uIPickerView.setCurrentItems(pickerItems.IndexOf(trait.value.ToString()), 4, 5);
+
+ string selectItem = pickerItems[0];
+ //if (pickerItems.Contains(trait.value + trait.GetUintString()))
+ //{
+ // selectItem = trait.value.ToString() + trait.GetUintString();
+ //}
+
+ dialog.Show();
+
+ pView.MouseUpEventHandler = (sender, e) => {
+ dialog.Close();
+ };
+
+ btnCancel.MouseUpEventHandler = (sender, e) => {
+ dialog.Close();
+ };
+ uIPickerView.OnSelectChangeEvent = (int1, int2, int3) => {
+ selectItem = pickerItems[int1];
+ };
+ btnConfrim.MouseUpEventHandler = (sender, e) => {
+ dialog.Close();
+ this.SendOtherComand(this.btnSetHumidity, FunctionAttributeKey.Humidity, selectItem);
+ this.btnSetHumidityView.Text = selectItem + "%";
+ //btn.Text = selectItem;
+ //sceneFunction.status.Find((obj) => obj.key == FunctionAttributeKey.OnOff).value = trait.value.ToString() ;
+ //trait.value = selectItem.Replace(trait.GetUintString(), "");
+ };
+
+ }
+
+
#region 鈻� 鏄剧ず椋庨�熼�夋嫨鐣岄潰___________________
/// <summary>
@@ -375,7 +591,7 @@
//鑿滃崟鎺т欢(椋庨��)
var menuContr = new DialogTitleMenuControl(3, Language.StringByID(StringId.FanSpeed));
- menuContr.X = Application.GetRealWidth(209);
+ menuContr.X = Application.GetRealWidth(80+62);
menuContr.Y = Application.GetRealHeight(231);
menuContr.Width = Application.GetRealWidth(160);
menuContr.Height = Application.GetRealHeight(199);
@@ -441,6 +657,12 @@
this.btnSwitch.IsSelected = this.airFreshData.Open;
//婊ょ綉鍓╀綑
this.btnFilterScreen.Text = this.dicText["婊ょ綉鍓╀綑"] + this.airFreshData.Filter_remain + "%";
+
+ if(this.airFreshData.Filter_timeout)
+ {
+ this.filterScreenTipView.Visible = true;
+ }
+
//瀹ゅ唴婀垮害
if (this.btnHumidity.Text == string.Empty || Convert.ToDecimal(this.btnHumidity.Text) != this.airFreshData.Indoor_humidity)
@@ -516,6 +738,8 @@
}
this.btnFan.IsSelected = this.airFreshData.Open;
this.btnFan.CanClick = this.airFreshData.Open;
+
+ this.btnSetHumidityView.Text = this.airFreshData.Humidity.ToString() + "%";
}
#endregion
@@ -581,6 +805,8 @@
dic[FunctionAttributeKey.Energy] = this.airFreshData.Energy;
//椋庨��
dic[FunctionAttributeKey.FanSpeed] = this.airFreshData.Fan ;
+ //婀垮害
+ dic[FunctionAttributeKey.Humidity] = this.airFreshData.Humidity.ToString();
//瀹ゅ唴娓╁害
dic[FunctionAttributeKey.IndoorTemp] = this.airFreshData.Indoor_temp.ToString();
///瀹ゅ唴婀垮害
@@ -641,6 +867,14 @@
this.airFreshData.Filter_remain = Convert.ToInt32(data.state);
}
}
+ //杩囨护缃戞槸鍚﹁秴鏃惰鍛�
+ else if (data.key == FunctionAttributeKey.FilterTimeout)
+ {
+ if(data.state != string.Empty)
+ {
+ this.airFreshData.Filter_timeout = Convert.ToBoolean(data.state);
+ }
+ }
}
}
@@ -685,6 +919,10 @@
/// 鍓╀綑婊ょ綉(%)
/// </summary>
public int Filter_remain = 0;
+ /// <summary>
+ /// 杩囨护缃戞槸鍚﹁秴鏃惰鍛�
+ /// </summary>
+ public bool Filter_timeout = false;
}
#endregion
diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs
index 969d913..167b453 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/AddInputPage.cs
@@ -86,7 +86,7 @@
functionListView = new VerticalScrolViewLayout()
{
Y = showdFunctionTypeRow.Bottom,
- Height = Application.GetRealHeight(530),
+ Height = Application.GetRealHeight(530-60),
BackgroundColor = CSS_Color.BackgroundColor,
};
bodyView.AddChidren(functionListView);
@@ -168,7 +168,8 @@
switch(function.spk)
{
case SPK.SensorWater:
- inKey = "";
+ inKey = "alarm_status";
+ inValue = "alarm";
break;
case SPK.SensorPir:
inKey = "people_status";
--
Gitblit v1.8.0