From aa8a3dcb1cb921c9f721aac4c9c87c696ce8a354 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期二, 30 三月 2021 09:19:10 +0800 Subject: [PATCH] Merge branch 'dev-tzy' into temp-wxr --- HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Energy.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan3Select.png | 0 HDL-ON_Android/Assets/Language.ini | 26 + HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan1.png | 0 HDL-ON_iOS/HDL-ON_iOS.csproj | 19 + HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan2.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_blue.png | 0 HDL_ON/HDL_ON.projitems | 1 DLL/Android/Shared.Droid.JLCountryCode.dll | 0 HDL-ON_Android/HDL-ON_Android.csproj | 19 + HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/HumidificationSelect.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan1.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/TempAndHumiBack.png | 0 HDL_ON/DAL/DriverLayer/Control_Udp.cs | 48 +- HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan3Select.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Comfortable.png | 0 HDL_ON/UI/UI2/2-Classification/FunctionPage.cs | 4 HDL_ON/UI/UI0-Stan/Controls/FrameLayoutControls/FrameRowControl.cs | 5 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/EnergySelect.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_white.png | 0 HDL_ON/UI/UI0-Stan/Form/Base/CommonFormBase.cs | 18 + HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_blue.png | 0 HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs | 4 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/VentilateSelect.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Ventilate.png | 0 HDL_ON/UI/UI0-Stan/Logic/HdlFormLogic.cs | 29 + HDL-ON_iOS/Resources/Language.ini | 30 + HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan1Select.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Humidification.png | 0 HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs | 7 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan1Select.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Ventilate.png | 0 HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs | 1 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/EnergySelect.png | 0 HDL_ON/DAL/DriverLayer/Packet.cs | 8 HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs | 24 - HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan2Select.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/airFreshjinmao.png | 0 HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs | 686 ++++++++++++++++++++++++++++++++++++++++ HDL_ON/UI/UI0-Stan/Form/Base/EditorCommonForm.cs | 36 + HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/HumidificationSelect.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Humidification.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/ComfortableSelect.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_white.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan2Select.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/airFreshjinmao.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/VentilateSelect.png | 0 HDL_ON/UI/UI0-Stan/Controls/BaseControl/ButtonCtrBase.cs | 11 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Comfortable.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan3.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan3.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Energy.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan2.png | 0 HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/Fan/DialogTitleMenuGroud2.png | 0 HDL_ON/Common/R.cs | 42 ++ HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/TempAndHumiBack.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/ComfortableSelect.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/Fan/DialogTitleMenuGroud2.png | 0 58 files changed, 960 insertions(+), 58 deletions(-) diff --git a/DLL/Android/Shared.Droid.JLCountryCode.dll b/DLL/Android/Shared.Droid.JLCountryCode.dll old mode 100755 new mode 100644 Binary files differ diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini index 0ee9f16..3c75eb6 100644 --- a/HDL-ON_Android/Assets/Language.ini +++ b/HDL-ON_Android/Assets/Language.ini @@ -430,7 +430,7 @@ 1001=V-chip 1002=Anion 1003=Sterilization -1004=Humidification +1004=Humidify 1005=Filter Element Reset 1006=Lighting 1007=Automatic @@ -502,7 +502,18 @@ 1073=Please turn on Bluetooth 1074=Location information(GBS) unavailable 1075=Network unavailable -1076=Select infrared remote control +1076=Select infrared remote control +1077=Air Fresh +1078=Residual filter screen +1079=Energy +1080=Ventilated +;鍒湅涓嬮潰閮戒竴鏍�,閮芥槸UI鐗规畩瑕佹眰鏁寸殑,鍐嶅姞涓婅�冭檻鑻辨枃闀垮害 +1081=1st Gear +1082=2nd Gear +1083=3rd Gear +1084=1st Gear +1085=2nd Gear +1086=3rd Gear 5000=Music 5001=Group @@ -1267,6 +1278,17 @@ 1074=浣嶇疆淇℃伅(GBS)涓嶅彲鐢� 1075=缃戠粶涓嶅彲鐢� 1076=閫夋嫨绾㈠閬ユ帶鍣� +1077=鏂伴 +1078=褰撳墠婊ょ綉鍓╀綑 +1079=鑺傝兘 +1080=閫氶 +1081=1妗� +1082=2妗� +1083=3妗� +1084=椋庨��1妗� +1085=椋庨��2妗� +1086=椋庨��3妗� + 5000=闊充箰 5001=缁勫悎 diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Comfortable.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Comfortable.png new file mode 100644 index 0000000..6c6a80c --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Comfortable.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/ComfortableSelect.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/ComfortableSelect.png new file mode 100644 index 0000000..e154c5e --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/ComfortableSelect.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Energy.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Energy.png new file mode 100644 index 0000000..181f206 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Energy.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/EnergySelect.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/EnergySelect.png new file mode 100644 index 0000000..69ed7d0 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/EnergySelect.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan1.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan1.png new file mode 100644 index 0000000..6509e14 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan1.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan1Select.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan1Select.png new file mode 100644 index 0000000..92931d6 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan1Select.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan2.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan2.png new file mode 100644 index 0000000..84b91c9 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan2.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan2Select.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan2Select.png new file mode 100644 index 0000000..aa86194 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan2Select.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan3.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan3.png new file mode 100644 index 0000000..05a3e27 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan3.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan3Select.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan3Select.png new file mode 100644 index 0000000..5cf8062 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Fan3Select.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Humidification.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Humidification.png new file mode 100644 index 0000000..193072a --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Humidification.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/HumidificationSelect.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/HumidificationSelect.png new file mode 100644 index 0000000..b027922 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/HumidificationSelect.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/TempAndHumiBack.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/TempAndHumiBack.png new file mode 100644 index 0000000..b50509a --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/TempAndHumiBack.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Ventilate.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Ventilate.png new file mode 100644 index 0000000..22d7028 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/Ventilate.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/VentilateSelect.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/VentilateSelect.png new file mode 100644 index 0000000..6760350 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/AirFresh/VentilateSelect.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/Fan/DialogTitleMenuGroud2.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/Fan/DialogTitleMenuGroud2.png new file mode 100644 index 0000000..efb85b7 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Electrical/Fan/DialogTitleMenuGroud2.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_blue.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_blue.png new file mode 100644 index 0000000..60153b5 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_blue.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_white.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_white.png new file mode 100644 index 0000000..0c3b90b --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_white.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/airFreshjinmao.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/airFreshjinmao.png new file mode 100644 index 0000000..b82b93d --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/airFreshjinmao.png Binary files differ diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj index 50d8794..b85e077 100644 --- a/HDL-ON_Android/HDL-ON_Android.csproj +++ b/HDL-ON_Android/HDL-ON_Android.csproj @@ -1078,6 +1078,25 @@ <AndroidAsset Include="Assets\Phone\PirIcon\add.png" /> <AndroidAsset Include="Assets\Phone\FunctionIcon\AC\More.png" /> <AndroidAsset Include="Assets\Phone\FunctionIcon\Energy\EnergyDrodDownIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\VentilateSelect.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\EnergySelect.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Fan2Select.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Fan3.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Energy.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Fan2.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\ComfortableSelect.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Fan1.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Fan3Select.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\TempAndHumiBack.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Comfortable.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Humidification.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\HumidificationSelect.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Ventilate.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\AirFresh\Fan1Select.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Electrical\Fan\DialogTitleMenuGroud2.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\airFreshjinmao.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\HomeIcon\airFreshjinmao_blue.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\HomeIcon\airFreshjinmao_white.png" /> </ItemGroup> <ItemGroup> <AndroidNativeLibrary Include="libs\armeabi-v7a\libelianjni.so" /> diff --git a/HDL-ON_iOS/HDL-ON_iOS.csproj b/HDL-ON_iOS/HDL-ON_iOS.csproj index ad85c72..c2f83ed 100644 --- a/HDL-ON_iOS/HDL-ON_iOS.csproj +++ b/HDL-ON_iOS/HDL-ON_iOS.csproj @@ -1197,6 +1197,25 @@ <BundleResource Include="Resources\Phone\PirIcon\add.png" /> <BundleResource Include="Resources\Phone\FunctionIcon\AC\More.png" /> <BundleResource Include="Resources\Phone\FunctionIcon\Energy\EnergyDrodDownIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\VentilateSelect.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\EnergySelect.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Fan2Select.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Fan3.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Energy.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Fan2.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\ComfortableSelect.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Fan1.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Fan3Select.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\TempAndHumiBack.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Comfortable.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Humidification.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\HumidificationSelect.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Ventilate.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\AirFresh\Fan1Select.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Electrical\Fan\DialogTitleMenuGroud2.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Icon\airFreshjinmao.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Icon\HomeIcon\airFreshjinmao_blue.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Icon\HomeIcon\airFreshjinmao_white.png" /> </ItemGroup> <ItemGroup> <ITunesArtwork Include="iTunesArtwork" /> diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini index 0ee9f16..0dcce54 100644 --- a/HDL-ON_iOS/Resources/Language.ini +++ b/HDL-ON_iOS/Resources/Language.ini @@ -424,13 +424,11 @@ 437=Device List 438=humidity:{0}% air:{1} wind:{2} - - -1000=Indoor Humidity +1000=Room Humidity 1001=V-chip 1002=Anion 1003=Sterilization -1004=Humidification +1004=Humidify 1005=Filter Element Reset 1006=Lighting 1007=Automatic @@ -502,7 +500,18 @@ 1073=Please turn on Bluetooth 1074=Location information(GBS) unavailable 1075=Network unavailable -1076=Select infrared remote control +1076=Select infrared remote control +1077=Air Fresh +1078=Residual filter screen +1079=Energy +1080=Ventilated +;鍒湅涓嬮潰閮戒竴鏍�,閮芥槸UI鐗规畩瑕佹眰鏁寸殑,鍐嶅姞涓婅�冭檻鑻辨枃闀垮害 +1081=1st Gear +1082=2nd Gear +1083=3rd Gear +1084=1st Gear +1085=2nd Gear +1086=3rd Gear 5000=Music 5001=Group @@ -1267,6 +1276,17 @@ 1074=浣嶇疆淇℃伅(GBS)涓嶅彲鐢� 1075=缃戠粶涓嶅彲鐢� 1076=閫夋嫨绾㈠閬ユ帶鍣� +1077=鏂伴 +1078=褰撳墠婊ょ綉鍓╀綑 +1079=鑺傝兘 +1080=閫氶 +1081=1妗� +1082=2妗� +1083=3妗� +1084=椋庨��1妗� +1085=椋庨��2妗� +1086=椋庨��3妗� + 5000=闊充箰 5001=缁勫悎 diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Comfortable.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Comfortable.png new file mode 100644 index 0000000..6c6a80c --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Comfortable.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/ComfortableSelect.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/ComfortableSelect.png new file mode 100644 index 0000000..e154c5e --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/ComfortableSelect.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Energy.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Energy.png new file mode 100644 index 0000000..181f206 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Energy.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/EnergySelect.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/EnergySelect.png new file mode 100644 index 0000000..69ed7d0 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/EnergySelect.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan1.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan1.png new file mode 100644 index 0000000..6509e14 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan1.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan1Select.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan1Select.png new file mode 100644 index 0000000..92931d6 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan1Select.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan2.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan2.png new file mode 100644 index 0000000..84b91c9 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan2.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan2Select.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan2Select.png new file mode 100644 index 0000000..aa86194 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan2Select.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan3.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan3.png new file mode 100644 index 0000000..05a3e27 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan3.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan3Select.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan3Select.png new file mode 100644 index 0000000..5cf8062 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Fan3Select.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Humidification.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Humidification.png new file mode 100644 index 0000000..193072a --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Humidification.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/HumidificationSelect.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/HumidificationSelect.png new file mode 100644 index 0000000..b027922 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/HumidificationSelect.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/TempAndHumiBack.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/TempAndHumiBack.png new file mode 100644 index 0000000..b50509a --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/TempAndHumiBack.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Ventilate.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Ventilate.png new file mode 100644 index 0000000..22d7028 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/Ventilate.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/VentilateSelect.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/VentilateSelect.png new file mode 100644 index 0000000..6760350 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/AirFresh/VentilateSelect.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/Fan/DialogTitleMenuGroud2.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/Fan/DialogTitleMenuGroud2.png new file mode 100644 index 0000000..efb85b7 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Electrical/Fan/DialogTitleMenuGroud2.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_blue.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_blue.png new file mode 100644 index 0000000..60153b5 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_blue.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_white.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_white.png new file mode 100644 index 0000000..0c3b90b --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/HomeIcon/airFreshjinmao_white.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/airFreshjinmao.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/airFreshjinmao.png new file mode 100644 index 0000000..b82b93d --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/airFreshjinmao.png Binary files differ diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs index 906c11f..498dfec 100644 --- a/HDL_ON/Common/R.cs +++ b/HDL_ON/Common/R.cs @@ -739,7 +739,47 @@ /// <summary> /// 閫夋嫨绾㈠閬ユ帶鍣� /// </summary> - public const int ChooseInfraredRemoteControl = 1076; + public const int ChooseInfraredRemoteControl = 1076; + /// <summary> + /// 鏂伴 + /// </summary> + public const int AirFresh = 1077; + /// <summary> + /// 褰撳墠婊ょ綉鍓╀綑 + /// </summary> + public const int ResidualFilterScreen = 1078; + /// <summary> + /// 鑺傝兘 + /// </summary> + public const int Energy = 1079; + /// <summary> + /// 閫氶 + /// </summary> + public const int Ventilated = 1080; + /// <summary> + /// 1妗� + /// </summary> + public const int OneGear = 1081; + /// <summary> + /// 2妗� + /// </summary> + public const int TwoGear = 1082; + /// <summary> + /// 3妗� + /// </summary> + public const int ThreeGear = 1083; + /// <summary> + /// 椋庨��1妗� + /// </summary> + public const int FanOneGear = 1084; + /// <summary> + /// 椋庨��2妗� + /// </summary> + public const int FanTwoGear = 1085; + /// <summary> + /// 椋庨��3妗� + /// </summary> + public const int FanThreeGear = 1086; diff --git a/HDL_ON/DAL/DriverLayer/Control_Udp.cs b/HDL_ON/DAL/DriverLayer/Control_Udp.cs index 05b0c56..fdb18ee 100644 --- a/HDL_ON/DAL/DriverLayer/Control_Udp.cs +++ b/HDL_ON/DAL/DriverLayer/Control_Udp.cs @@ -699,46 +699,60 @@ case SPK.AirFreshJinmao: //1 鏂伴缂栧彿 1~200 //2 绫诲瀷 绗笁鏂圭被鍨� 0锛氶噾鑼傛柊椋� + //3 寮�鍏� 0 - 鍏虫満锛�1 - 寮�鏈� + byte switchValue = 0; + if (commandDictionary.ContainsKey(FunctionAttributeKey.OnOff) == true + && commandDictionary[FunctionAttributeKey.OnOff] == "on") + { + switchValue = 1; + } + //4 杩愯妯″紡 1 - 閫氶锛�2 - 鍔犳箍 byte airFreshMode = 1; - if (function.GetAttrState(FunctionAttributeKey.Mode) == "fan") + if (commandDictionary.ContainsKey(FunctionAttributeKey.Mode) == true + && commandDictionary[FunctionAttributeKey.Mode] == "humidification") { airFreshMode = 2; } //5 鑺傝兘鑸掗�傞�夋嫨 1 - 鑸掗�傦紝2 - 鑺傝兘 byte airFreshEnergy = 1; - if( function.GetAttrState(FunctionAttributeKey.Energy)=="true") + if (commandDictionary.ContainsKey(FunctionAttributeKey.Energy) == true + && commandDictionary[FunctionAttributeKey.Energy] == "true") { airFreshEnergy = 2; } //6 椋庨�熸。浣� 0 - 鑷姩锛�1 - 1妗o紝2 - 2妗o紝3 - 3妗� byte airFreshFan = 0; - switch(function.GetAttrState(FunctionAttributeKey.FanSpeed)) + if (commandDictionary.ContainsKey(FunctionAttributeKey.FanSpeed) == true) { - case "auto": - airFreshFan = 0; - break; - case "level_1": - airFreshFan = 1; - break; - case "level_2": - airFreshFan = 2; - break; - case "level_3": - airFreshFan = 3; - break; + switch (commandDictionary[FunctionAttributeKey.FanSpeed]) + { + case "auto": + airFreshFan = 0; + break; + case "level_1": + airFreshFan = 1; + break; + case "level_2": + airFreshFan = 2; + break; + case "level_3": + airFreshFan = 3; + break; + } } + //7 婀垮害璁惧畾 % //8 瀹ゅ唴娓╁害鍊� 鈩� //9 瀹ゅ唴婀垮害鍊� 鈩� //10 杩囨护缃戝墿浣� % //11 杩囨护缃戜娇鐢ㄨ秴鏃� 1 瓒呮椂 0 鏃� ControlBytesSend(Command.FreshAirControl_JinMao, subnetId, deviceId, new byte[] { - function.bus.LoopId,0, function.trait_on_off.curValue.ToString() == "on" ? (byte)1 : (byte)0 , + function.bus.LoopId,0, switchValue , airFreshMode,airFreshEnergy, airFreshFan, - Convert.ToByte( function.GetAttrState(FunctionAttributeKey.Humidity)), + Convert.ToByte(function.GetAttrState(FunctionAttributeKey.Humidity)), 0,0,0,0 //Convert.ToByte( function.GetAttrState(FunctionAttributeKey.IndoorTemp)), //Convert.ToByte( function.GetAttrState(FunctionAttributeKey.IndoorHumidity)), diff --git a/HDL_ON/DAL/DriverLayer/Packet.cs b/HDL_ON/DAL/DriverLayer/Packet.cs index ad530d3..e67231e 100644 --- a/HDL_ON/DAL/DriverLayer/Packet.cs +++ b/HDL_ON/DAL/DriverLayer/Packet.cs @@ -97,7 +97,7 @@ { ddd += bb + ","; } - MainPage.Log(ddd); + MainPage.Log(((int)command) + " : " + ddd); #endif //澶勭悊鏄惁瑕侀噸鍙戞暟鎹� ManagerReceive(subnetID, deviceID, command, usefulBytes); @@ -666,8 +666,8 @@ /// 10 杩囨护缃戝墿浣� % /// 11 杩囨护缃戜娇鐢ㄨ秴鏃� 1 瓒呮椂 0 鏃� true/false airFresh.SetAttrState(FunctionAttributeKey.OnOff, receiveBytes[2] == 0 ? "off" : "on"); - airFresh.SetAttrState(FunctionAttributeKey.Mode, receiveBytes[3] == 1 ? "humidification" : "fan"); - airFresh.SetAttrState(FunctionAttributeKey.Energy, receiveBytes[4] == 1 ? "true" : "false"); + airFresh.SetAttrState(FunctionAttributeKey.Mode, receiveBytes[3] == 1 ? "fan" : "humidification"); + airFresh.SetAttrState(FunctionAttributeKey.Energy, receiveBytes[4] == 1 ? "false" : "true"); switch (receiveBytes[5]) { case 0: @@ -688,6 +688,8 @@ airFresh.SetAttrState(FunctionAttributeKey.IndoorHumidity, receiveBytes[8].ToString()); airFresh.SetAttrState(FunctionAttributeKey.FilterRemain, receiveBytes[9].ToString()); airFresh.SetAttrState(FunctionAttributeKey.FilterTimeout, receiveBytes[10] == 1 ? "true" : "false"); + //璁惧鐘舵�佹帹閫� + Stan.HdlFormLogic.Current.DeviceStatuPush(airFresh, true); } break; } diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems index 43cacb2..da8b8fb 100644 --- a/HDL_ON/HDL_ON.projitems +++ b/HDL_ON/HDL_ON.projitems @@ -392,6 +392,7 @@ <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Energy\EnergyMainPage.cs" /> <Compile Include="$(MSBuildThisFileDirectory)DAL\ThirdPartySdk\ESOnVideo.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Energy\EchartsOption_Energy.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\AirFreshControlPage.cs" /> </ItemGroup> <ItemGroup> <Folder Include="$(MSBuildThisFileDirectory)DAL\" /> diff --git a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs index f8dae98..3a84846 100644 --- a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs +++ b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs @@ -142,6 +142,10 @@ case SPK.IrLearn: var irLearinPage = new IrLearnPage(); irLearinPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor); + break; + case SPK.AirFreshJinmao: + var airFresh1 = new AirFreshControlPage(); + airFresh1.AddForm(function, btnCollectionIcon, btnName, btnFromFloor); break; } }; diff --git a/HDL_ON/UI/UI0-Stan/Controls/BaseControl/ButtonCtrBase.cs b/HDL_ON/UI/UI0-Stan/Controls/BaseControl/ButtonCtrBase.cs index 60c8d0a..fe412fb 100644 --- a/HDL_ON/UI/UI0-Stan/Controls/BaseControl/ButtonCtrBase.cs +++ b/HDL_ON/UI/UI0-Stan/Controls/BaseControl/ButtonCtrBase.cs @@ -360,13 +360,18 @@ /// <summary> /// 鏍规嵁鏂囨湰,璁$畻瀹冮渶瑕佺殑鎬昏鏁� /// </summary> + /// <param name="i_width">褰撳�间负-1鏃�,闇�瑕佺埗鎺т欢,鐪熷疄鍊�</param> /// <returns></returns> - public int GetRealRowCountByText() + public int GetRealRowCountByText(int i_width = -1) { + if (i_width == -1) + { + i_width = this.Width; + } //鍏堣幏鍙栧畠鐨勭湡瀹炲搴� int realWidth = this.GetRealWidthByText(); - int row = realWidth / this.Width; - if (realWidth % this.Width > 0) + int row = realWidth / i_width; + if (realWidth % i_width > 0) { row++; } diff --git a/HDL_ON/UI/UI0-Stan/Controls/FrameLayoutControls/FrameRowControl.cs b/HDL_ON/UI/UI0-Stan/Controls/FrameLayoutControls/FrameRowControl.cs index d88f1c0..ad91a5a 100644 --- a/HDL_ON/UI/UI0-Stan/Controls/FrameLayoutControls/FrameRowControl.cs +++ b/HDL_ON/UI/UI0-Stan/Controls/FrameLayoutControls/FrameRowControl.cs @@ -126,7 +126,8 @@ } var btnCaption = new NormalViewControl(i_width, i_height, real); btnCaption.X = XX; - + //2021.03.18 鏁磋嫳鏂囩増,鍔犱笂鑷姩鎹㈣ + btnCaption.IsMoreLines = true; btnCaption.Text = i_caption; return btnCaption; @@ -329,6 +330,8 @@ btnContr.TextColor = CSS_Color.PromptingColor1; btnContr.Text = i_text; btnContr.TextSize = CSS_FontSize.PromptFontSize_FirstLevel; + //2021.03.18 鏁磋嫳鏂囩増,鍔犱笂鑷姩鎹㈣ + btnContr.IsMoreLines = true; return btnContr; } diff --git a/HDL_ON/UI/UI0-Stan/Form/Base/CommonFormBase.cs b/HDL_ON/UI/UI0-Stan/Form/Base/CommonFormBase.cs index 814f7d7..6e906ef 100644 --- a/HDL_ON/UI/UI0-Stan/Form/Base/CommonFormBase.cs +++ b/HDL_ON/UI/UI0-Stan/Form/Base/CommonFormBase.cs @@ -215,6 +215,24 @@ return Application.GetRealWidth(i_size); } + /// <summary> + /// 鑾峰彇鍥剧墖閲岄潰,瀛愭帶浠舵枃鏈殑楂樺害 + /// </summary> + /// <param name="i_height">楂樺害</param> + /// <returns></returns> + public int GetPicChidrenTextHeight(int i_height) + { + int value1 = Application.GetRealHeight(i_height); + int value2 = Application.GetRealWidth(i_height); + //褰撳搴︽瘮鐜囧ぇ浜庨珮搴︽椂锛岀敤瀹藉害 + if (value2 > value1) + { + return value2; + } + //鍚﹀垯,鑰冭檻鍒版樉绀哄畬鍏ㄧ殑闂,闇�瑕佷娇鐢ㄩ珮搴︽瘮鐜� + return value1; + } + #endregion #region 鈻� 鍙嶅皠鏂规硶___________________________ diff --git a/HDL_ON/UI/UI0-Stan/Form/Base/EditorCommonForm.cs b/HDL_ON/UI/UI0-Stan/Form/Base/EditorCommonForm.cs index 31bdbe3..a592744 100644 --- a/HDL_ON/UI/UI0-Stan/Form/Base/EditorCommonForm.cs +++ b/HDL_ON/UI/UI0-Stan/Form/Base/EditorCommonForm.cs @@ -290,7 +290,7 @@ #region 鈻� 娣诲姞鍒楄〃娑堟伅鏄剧ず鎺т欢_______________ /// <summary> - /// 娣诲姞鍒楄〃娑堟伅鏄剧ず鎺т欢,杩斿洖鐨勬槸鏈�鍚庝竴涓帶浠剁殑搴曢儴鍧愭爣 + /// 娣诲姞鍒楄〃娑堟伅鏄剧ず鎺т欢,杩斿洖鐨勬槸鏈�鍚庝竴涓帶浠剁殑搴曢儴鍧愭爣(娌$湅鎳傝繖涓嚱鏁板墠,璇峰嬁浣跨敤) /// </summary> /// <param name="frameTable">妗屽竷瀹瑰櫒鎺т欢</param> /// <param name="i_msg">鏄剧ず鐨勬秷鎭�(鎹㈣璇蜂娇鐢ㄣ�恵0}銆戣繘琛屽垎鍓�)</param> @@ -303,12 +303,37 @@ /// <para>娉細闄や簡鏂板缓杩欎釜鍑芥暟鐨勫紑鍙戣�呬互澶栵紝閮戒笉寤鸿鎶婅繖涓�间笉璁剧疆涓簍rue</para> /// <para>璇存槑锛氫互鏈�闀跨殑鎺т欢鐨刋杞翠负鍩哄噯,鎵�鏈夋帶浠剁殑X杞撮兘鍙樻垚涓�鑷�</para> /// </param> + /// <param name="i_width">鏂囨湰瀹藉害,鐪熷疄鍊�,褰撲负-1鏃�,鍐呴儴鑷姩璁$畻</param> /// <returns></returns> public int AddListMsgControls(FrameLayout frameTable, string i_msg, int i_fontSize, uint i_fontColor, int i_height, - int i_yy, TextAlignment alignment = TextAlignment.Center, bool special = false) + int i_yy, TextAlignment alignment = TextAlignment.Center, bool special = false, int i_width = -1) { var listMsg = i_msg.Split(new string[] { "{0}" }, StringSplitOptions.RemoveEmptyEntries); - int defultWidth = this.bodyFrameLayout.Width - HdlControlResourse.XXLeft * 2; + int defultWidth = 0; + if (this.bodyFrameLayout != null) + { + defultWidth = i_width == -1 ? this.bodyFrameLayout.Width - HdlControlResourse.XXLeft * 2 : i_width; + } + else + { + defultWidth = i_width == -1 ? frameTable.Width - HdlControlResourse.XXLeft * 2 : i_width; + } + + //濡傛灉鍙槸涓�琛岀殑鏃跺�� + bool isMoreLine = false; + if (listMsg.Length == 1) + { + var btnTemp = new ButtonCtrBase(); + btnTemp.TextSize = i_fontSize; + btnTemp.Text = i_msg; + int rowCount = btnTemp.GetRealRowCountByText(defultWidth); + //瀹冪殑楂樺害鐢辫鏁板喅瀹�(鐞嗚涓婂簲璇ラ兘鏄�1琛�,杩欓噷鍋氱壒娈婂鐞嗚�屽凡) + if (rowCount > 1) + { + i_height = i_height * rowCount; + isMoreLine = true; + } + } var listContr = new List<NormalViewControl>(); int minXX = 10086;//鎺т欢闆嗗悎鏈�灏忕殑X杞� @@ -322,6 +347,11 @@ btnMsg.TextColor = i_fontColor; btnMsg.TextSize = i_fontSize; btnMsg.Text = strMsg; + if (isMoreLine == true) + { + //鍙互鎹㈣ + btnMsg.IsMoreLines = isMoreLine; + } //鐗规畩澶勭悊 if (special == true && alignment == TextAlignment.Center) diff --git a/HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs b/HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs index fca8398..8ae3705 100644 --- a/HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs +++ b/HDL_ON/UI/UI0-Stan/Logic/HdlDeviceStatuPushLogic.cs @@ -44,28 +44,8 @@ if (localDevice != null) { foreach (var attr in updateData) - { - //var localAttr2 = localDevice.attributes.Find((obj) => obj.key == attr.key); - //if (localAttr2 == null) - //{ - // //鏈韩瀹冨氨娌℃湁杩欎釜灞炴��,鍒欎笉澶勭悊 - // continue; - //} - ////鏇存敼灞炴�у�� - //localAttr2.curValue = attr.value; - - //var localAttr = localDevice.status.Find((obj) => obj.key == attr.key); - //if (localAttr == null) - //{ - // //status鏄綋鍓嶈澶囦笂鎶ヨ繃鐨勫睘鎬ф墠浼氬瓨鍦�,涔熷氨鏄畠鐨勪釜鏁版湁鍙兘鍜宎ttributes涓嶄竴鑷� - // localAttr = new AttributesStatus() { key = attr.key, value = attr.value }; - // localDevice.status.Add(localAttr); - //} - ////鏇存敼灞炴�у�� - //localAttr.value = attr.value; - - localDevice.SetAttrState(attr.key, attr.value); - + { + localDevice.SetAttrState(attr.key, attr.value); } //鍏ㄩ儴鐣岄潰鎺ㄩ�� HdlFormLogic.Current.DeviceStatuPush(localDevice); diff --git a/HDL_ON/UI/UI0-Stan/Logic/HdlFormLogic.cs b/HDL_ON/UI/UI0-Stan/Logic/HdlFormLogic.cs index 5d9902c..8b74ab9 100644 --- a/HDL_ON/UI/UI0-Stan/Logic/HdlFormLogic.cs +++ b/HDL_ON/UI/UI0-Stan/Logic/HdlFormLogic.cs @@ -147,7 +147,8 @@ /// 璁惧鐘舵�佹洿鏂版帹閫� /// </summary> /// <param name="i_LocalDevice">鏈湴璁惧瀵硅薄</param> - public void DeviceStatuPush(Entity.Function i_LocalDevice) + /// <param name="refreshCardContr">鏄惁鍒锋柊涓婚〉,鍒嗙被,鎴块棿绛夌瓑鐨勮澶囧崱鐗囩殑鐘舵��,榛樿涓嶅埛鏂�(姝ゅ彉閲忕洰鍓嶆槸缁檅us鎺ユ敹閭i噷浣跨敤鐨�)</param> + public void DeviceStatuPush(Entity.Function i_LocalDevice, bool refreshCardContr = false) { HdlThreadLogic.Current.RunMain(() => { @@ -155,11 +156,37 @@ { this.ListActionForm[i]?.DeviceStatuPush(i_LocalDevice); } + if (refreshCardContr == true) + { + //鍒锋柊涓婚〉,鍒嗙被,鎴块棿绛夌瓑鐨勮澶囧崱鐗囩姸鎬� + this.RefreshAllDeviceCardControl(i_LocalDevice); + } + }, ShowErrorMode.NO); } #endregion + #region 鈻� 鎵嬪姩鍒锋柊鍚勮澶囧崱鐗嘷________________ + + /// <summary> + /// 鎵嬪姩鍒锋柊涓婚〉,鍒嗙被,鎴块棿绛夌瓑鐨勮澶囧崱鐗囩姸鎬� + /// </summary> + /// <param name="i_device">闇�瑕佸埛鏂扮殑璁惧瀵硅薄</param> + public void RefreshAllDeviceCardControl(Entity.Function i_device) + { + //鍒锋柊涓婚〉 + UI.HomePage.UpdataFunctionStates(i_device); + //鍒锋柊鍒嗙被 + UI.ClassificationPage.UpdataInfo(i_device); + //鍒锋柊鎴块棿 + UI.RoomPage.UpdataStates(i_device); + //鍒锋柊鍔熻兘 + UI.FunctionPage.UpdataStates(i_device); + } + + #endregion + #region 鈻� 涓�鑸柟娉昣__________________________ /// <summary> diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs b/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs index b86e4c5..1506eb4 100644 --- a/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs +++ b/HDL_ON/UI/UI2/2-Classification/ClassificaitionPublicBLL.cs @@ -59,6 +59,7 @@ case FunctionCategory.AC: case FunctionCategory.FloorHeat: case FunctionCategory.Electric: + case FunctionCategory.AirFresh: #region 鎸夐挳鐘舵�佹洿鏂� if (cTag == updataFunction.sid + "_Switch") { diff --git a/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs b/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs index d6371a6..d480411 100644 --- a/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs +++ b/HDL_ON/UI/UI2/2-Classification/ClassificationPageBLL.cs @@ -51,6 +51,10 @@ case SPK.ClothesHanger: vv = ShowFunction.Electric; break; + case SPK.AirFreshJinmao: + case SPK.AirFreshStandard: + vv = ShowFunction.FreshAir; + break; } UpdataFunctionOnCount(vv, function.spk); UpdataCloseAllButton(function); @@ -118,6 +122,9 @@ case ShowFunction.Electric: btnText = FunctionList.List.GetElectricals().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count.ToString(); break; + case ShowFunction.FreshAir: + btnText = FunctionList.List.GetAirFreshList().FindAll((obj) => obj.trait_on_off.curValue.ToString() == "on").Count.ToString(); + break; } if (btn.Tag.ToString() == functionCategory + "_onCount") { diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs index 1536bbb..47a64cc 100644 --- a/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs +++ b/HDL_ON/UI/UI2/2-Classification/FunctionPage.cs @@ -108,6 +108,10 @@ else if (titleId == StringId.Sensor) { functionList.AddRange(FunctionList.List.GetArmSensorList()); + } + else if (titleId == StringId.FreshAir) + { + functionList.AddRange(FunctionList.List.GetAirFreshList()); } functionList.OrderByDescending(o => o.controlCounter).ToList(); diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs new file mode 100644 index 0000000..4cf8131 --- /dev/null +++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AirFreshControlPage.cs @@ -0,0 +1,686 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Text; +using HDL_ON.DriverLayer; +using HDL_ON.Entity; +using HDL_ON.Stan; +using HDL_ON.UI.CSS; +using Shared; + +namespace HDL_ON.UI +{ + /// <summary> + /// 閲戣寕鏂伴璁惧鐨勬帶鍒剁晫闈� + /// </summary> + public class AirFreshControlPage : DeviceFunctionCardCommonForm + { + #region 鈻� 鍙橀噺澹版槑___________________________ + + /// <summary> + /// 瀹ゅ唴婀垮害鎺т欢 + /// </summary> + private NormalViewControl btnHumidity = null; + /// <summary> + /// %鎺т欢 + /// </summary> + private NormalViewControl btnHumidityUnit = null; + /// <summary> + /// 瀹ゅ唴娓╁害鎺т欢 + /// </summary> + private NormalViewControl btnTemperature = null; + /// <summary> + /// 鈩冩帶浠� + /// </summary> + private NormalViewControl btnTemperatureUnit = null; + /// <summary> + /// 褰撳墠婊ょ綉鍓╀綑鎺т欢 + /// </summary> + private NormalViewControl btnFilterScreen = null; + /// <summary> + /// 鑺傝兘/鑸掗�傚浘鏍囨帶浠� + /// </summary> + private IconViewControl btnMode1 = null; + /// <summary> + /// 鑺傝兘/鑸掗�傛枃鏈帶浠� + /// </summary> + private NormalViewControl btnMode1View = null; + /// <summary> + /// 閫氶/鍔犳箍鍥炬爣鎺т欢 + /// </summary> + private IconViewControl btnMode2 = null; + /// <summary> + /// 閫氶/鍔犳箍鏂囨湰鎺т欢 + /// </summary> + private NormalViewControl btnMode2View = null; + /// <summary> + /// 椋庨�熷浘鏍囨帶浠� + /// </summary> + private IconViewControl btnFan = null; + /// <summary> + /// 椋庨�熸枃鏈帶浠� + /// </summary> + private NormalViewControl btnFanView = null; + /// <summary> + /// 寮�鍏冲浘鏍� + /// </summary> + private IconViewControl btnSwitch = null; + /// <summary> + /// 鏂伴鏁版嵁 + /// </summary> + private AirFreshData airFreshData = new AirFreshData(); + /// <summary> + /// 鍚勭鏂囨湰 + /// </summary> + private Dictionary<string, string> dicText = new Dictionary<string, string>(); + #endregion + + #region 鈻� 鍒濆鍖朹____________________________ + + /// <summary> + /// 鍒濆鍖栫櫧鑹插尯鍩熺殑鍐呭 + /// </summary> + public override void InitFrameWhiteContent() + { + base.SetTitleText(Language.StringByID(StringId.AirFresh)); + //杩欎釜涓滆タ鍔犱釜绌烘牸 + this.dicText["婊ょ綉鍓╀綑"] = Language.StringByID(StringId.ResidualFilterScreen) + " "; + this.dicText["鑺傝兘"] = Language.StringByID(StringId.Energy); + this.dicText["鑸掗��"] = Language.StringByID(StringId.Comfortable); + this.dicText["閫氶"] = Language.StringByID(StringId.Ventilated); + this.dicText["鍔犳箍"] = Language.StringByID(StringId.Humidification); + this.dicText["1妗�"] = Language.StringByID(StringId.OneGear); + this.dicText["2妗�"] = Language.StringByID(StringId.TwoGear); + this.dicText["3妗�"] = Language.StringByID(StringId.ThreeGear); + + //鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛� + this.RefreshNowDeviceStatuMemory(this.device); + //鍒濆鍖栫涓�涓储寮曢〉鐨勫唴瀹� + this.InitFrameWhiteContent1(); + } + + /// <summary> + /// 鍒濆鍖栫涓�涓储寮曢〉鐨勫唴瀹� + /// </summary> + private void InitFrameWhiteContent1() + { + //涓�涓儗鏅浘鐗� + var framePic = new FrameLayout(); + framePic.Y = Application.GetRealHeight(120); + framePic.Width = this.GetPictrueRealSize(303); + framePic.Height = this.GetPictrueRealSize(175); + framePic.Gravity = Gravity.CenterHorizontal; + framePic.BackgroundImagePath = "FunctionIcon/AirFresh/TempAndHumiBack.png"; + this.FrameWhiteCentet1.AddChidren(framePic); + + //瀹ゅ唴婀垮害 鐨勫鍣�(涓轰簡閲嶆柊璁$畻鍧愭爣浣跨敤) + int frameWidth = framePic.Width / 2 - this.GetPictrueRealSize(21); + var frameHumidity = new FrameLayout(); + frameHumidity.X = this.GetPictrueRealSize(21); + frameHumidity.Y = this.GetPictrueRealSize(12); + frameHumidity.Width = frameWidth; + frameHumidity.Height = frameWidth; + framePic.AddChidren(frameHumidity); + //瀹ゅ唴婀垮害鍊� + this.btnHumidity = new NormalViewControl(20, this.GetPicChidrenTextHeight(30), false); + btnHumidity.Y = this.GetPictrueRealSize(39); + btnHumidity.TextSize = 30; + btnHumidity.TextColor = CSS_Color.FirstLevelTitleColor; + btnHumidity.TextAlignment = TextAlignment.TopCenter; + frameHumidity.AddChidren(btnHumidity); + //% + this.btnHumidityUnit = new NormalViewControl(10, 10, true); + btnHumidityUnit.Y = btnHumidity.Y + this.GetPictrueRealSize(8); + btnHumidityUnit.TextColor = CSS_Color.TextualColor; + btnHumidityUnit.Text = "%"; + btnHumidityUnit.TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel; + btnHumidityUnit.Width = btnHumidityUnit.GetRealWidthByText(); + frameHumidity.AddChidren(btnHumidityUnit); + //瀹ゅ唴婀垮害 + var btnHumidityView = new NormalViewControl(frameHumidity.Width, this.GetPicChidrenTextHeight(18), false); + btnHumidityView.Y = btnHumidity.Bottom + this.GetPictrueRealSize(8); + btnHumidityView.TextAlignment = TextAlignment.Center; + btnHumidityView.TextColor = CSS_Color.TextualColor; + btnHumidityView.TextSize = CSS_FontSize.PromptFontSize_FirstLevel; + btnHumidityView.TextID = StringId.IndoorHumidity; + frameHumidity.AddChidren(btnHumidityView); + + //瀹ゅ唴娓╁害 鐨勫鍣�(涓轰簡閲嶆柊璁$畻鍧愭爣浣跨敤) + var frameTemperature = new FrameLayout(); + frameTemperature.Y = frameHumidity.Y; + frameTemperature.X = frameHumidity.Right; + frameTemperature.Width = frameWidth; + frameTemperature.Height = frameWidth; + framePic.AddChidren(frameTemperature); + //瀹ゅ唴娓╁害鍊� + this.btnTemperature = new NormalViewControl(20, this.GetPicChidrenTextHeight(30), false); + btnTemperature.Y = btnHumidity.Y; + btnTemperature.TextSize = 30; + btnTemperature.TextColor = CSS_Color.FirstLevelTitleColor; + btnTemperature.TextAlignment = TextAlignment.TopCenter; + btnTemperature.GetRealWidthByText(); + frameTemperature.AddChidren(btnTemperature); + //鈩� + this.btnTemperatureUnit = new NormalViewControl(10, 10, true); + btnTemperatureUnit.Y = btnTemperature.Y + this.GetPictrueRealSize(8); + btnTemperatureUnit.TextColor = CSS_Color.TextualColor; + btnTemperatureUnit.Text = "鈩�"; + btnTemperatureUnit.TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel; + btnTemperatureUnit.Width = btnTemperatureUnit.GetRealWidthByText(); + frameTemperature.AddChidren(btnTemperatureUnit); + //瀹ゅ唴娓╁害 + var btnTemperatureView = new NormalViewControl(frameTemperature.Width, this.GetPicChidrenTextHeight(18), false); + btnTemperatureView.Y = btnTemperature.Bottom + this.GetPictrueRealSize(8); + btnTemperatureView.TextAlignment = TextAlignment.Center; + btnTemperatureView.TextColor = CSS_Color.TextualColor; + btnTemperatureView.TextSize = CSS_FontSize.PromptFontSize_FirstLevel; + btnTemperatureView.TextID = StringId.IndoorTemp; + frameTemperature.AddChidren(btnTemperatureView); + + //褰撳墠婊ょ綉鍓╀綑0% + this.btnFilterScreen = new NormalViewControl(this.FrameWhiteCentet1.Width, Application.GetRealHeight(18), false); + btnFilterScreen.Y = framePic.Bottom; + btnFilterScreen.TextAlignment = TextAlignment.Center; + btnFilterScreen.TextSize = CSS_FontSize.PromptFontSize_FirstLevel; + btnFilterScreen.TextColor = CSS_Color.MainColor; + this.FrameWhiteCentet1.AddChidren(btnFilterScreen); + + //鑺傝兘/鑸掗�傚浘鏍� + this.btnMode1 = new IconViewControl(28); + btnMode1.X = Application.GetRealWidth(42); + btnMode1.Y = btnFilterScreen.Bottom + Application.GetRealHeight(61); + this.FrameWhiteCentet1.AddChidren(btnMode1); + btnMode1.ButtonClickEvent += (sender, e) => + { + //鏄剧ず鑺傝兘/鑸掗�傞�夋嫨鐣岄潰 + this.ShowMode1SelectView(); + }; + //鑺傝兘/鑸掗�傛枃鏈� + this.btnMode1View = new NormalViewControl(this.FrameWhiteCentet1.Width / 3, Application.GetRealHeight(18), false); + 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); + + //閫氶/鍔犳箍鍥炬爣 + this.btnMode2 = new IconViewControl(28); + btnMode2.Y = btnMode1.Y; + btnMode2.Gravity = Gravity.CenterHorizontal; + this.FrameWhiteCentet1.AddChidren(btnMode2); + btnMode2.ButtonClickEvent += (sender, e) => + { + //鏄剧ず閫氶/鍔犳箍閫夋嫨鐣岄潰 + this.ShowMode2SelectView(); + }; + //閫氶/鍔犳箍鏂囨湰 + this.btnMode2View = new NormalViewControl(this.FrameWhiteCentet1.Width / 3, 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); + + //椋庨�熷浘鏍� + this.btnFan = new IconViewControl(28); + btnFan.X = this.FrameWhiteCentet1.Width - btnMode1.X - btnFan.IconSize; + btnFan.Y = btnMode1.Y; + this.FrameWhiteCentet1.AddChidren(btnFan); + btnFan.ButtonClickEvent += (sender, e) => + { + //鏄剧ず椋庨�熼�夋嫨鐣岄潰 + this.ShowFanSelectView(); + }; + //椋庨�熸枃鏈� + this.btnFanView = new NormalViewControl(this.FrameWhiteCentet1.Width / 3, 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); + + //寮�鍏冲浘鏍� + this.btnSwitch = new IconViewControl(40); + btnSwitch.Gravity = Gravity.CenterHorizontal; + btnSwitch.Y = Application.GetRealHeight(468); + btnSwitch.UnSelectedImagePath = "Public/PowerClose.png"; + btnSwitch.SelectedImagePath = "Public/PowerOpen.png"; + FrameWhiteCentet1.AddChidren(btnSwitch); + btnSwitch.ButtonClickEvent += (sender, e) => + { + //鍙戦�佸紑鍏冲懡浠� + this.SendSwitchComand(); + }; + + //鍒锋柊鐣岄潰鐘舵�� + this.RefreshFormStatu(); + } + + #endregion + + #region 鈻� 鏄剧ず鑺傝兘/鑸掗�傞�夋嫨鐣岄潰______________ + + /// <summary> + /// 鏄剧ず鑺傝兘/鑸掗�傞�夋嫨鐣岄潰 + /// </summary> + private void ShowMode1SelectView() + { + //鏁翠釜鐏拌壊鐣岄潰 + var frameBack = new Dialog(); + + var dialogBody = new NormalFrameLayout(); + frameBack.AddChidren(dialogBody); + dialogBody.ButtonClickEvent = (sender, e) => + { + frameBack.Close(); + }; + frameBack.Show(); + + //鑿滃崟鎺т欢(妯″紡) + var menuContr = new DialogTitleMenuControl(2, Language.StringByID(StringId.Mode)); + menuContr.X = Application.GetRealWidth(6); + menuContr.Y = Application.GetRealHeight(277); + menuContr.Width = Application.GetRealWidth(160); + menuContr.Height = Application.GetRealHeight(154); + dialogBody.AddChidren(menuContr); + + //鑺傝兘 + var iconPath = this.airFreshData.Energy == "true" ? "FunctionIcon/AirFresh/EnergySelect.png" : "FunctionIcon/AirFresh/Energy.png"; + menuContr.AddRowMenu(this.dicText["鑺傝兘"], iconPath, this.airFreshData.Energy == "true", () => + { + frameBack.Close(); + //鍙戦�佽妭鑳藉懡浠� + this.SendOtherComand(this.btnMode1, FunctionAttributeKey.Energy, "true"); + }); + + //鑸掗�� + iconPath = this.airFreshData.Energy == "false" ? "FunctionIcon/AirFresh/ComfortableSelect.png" : "FunctionIcon/AirFresh/Comfortable.png"; + menuContr.AddRowMenu(this.dicText["鑸掗��"], iconPath, this.airFreshData.Energy == "false", () => + { + frameBack.Close(); + //鍙戦�佽垝閫傚懡浠� + this.SendOtherComand(this.btnMode1, FunctionAttributeKey.Energy, "false"); + }); + } + + #endregion + + #region 鈻� 鏄剧ず閫氶/鍔犳箍閫夋嫨鐣岄潰______________ + + /// <summary> + /// 鏄剧ず閫氶/鍔犳箍閫夋嫨鐣岄潰 + /// </summary> + private void ShowMode2SelectView() + { + //鏁翠釜鐏拌壊鐣岄潰 + var frameBack = new Dialog(); + + var dialogBody = new NormalFrameLayout(); + frameBack.AddChidren(dialogBody); + dialogBody.ButtonClickEvent = (sender, e) => + { + frameBack.Close(); + }; + frameBack.Show(); + + //鑿滃崟鎺т欢(妯″紡) + var menuContr = new DialogTitleMenuControl(2, Language.StringByID(StringId.Mode)); + menuContr.Y = Application.GetRealHeight(277); + menuContr.Gravity = Gravity.CenterHorizontal; + menuContr.Width = Application.GetRealWidth(160); + menuContr.Height = Application.GetRealHeight(154); + dialogBody.AddChidren(menuContr); + + //閫氶 + var iconPath = this.airFreshData.Mode == "fan" ? "FunctionIcon/AirFresh/VentilateSelect.png" : "FunctionIcon/AirFresh/Ventilate.png"; + menuContr.AddRowMenu(this.dicText["閫氶"], iconPath, this.airFreshData.Mode == "fan", () => + { + frameBack.Close(); + //鍙戦�侀�氶鍛戒护 + this.SendOtherComand(this.btnMode2, FunctionAttributeKey.Mode, "fan"); + }); + + //鍔犳箍 + iconPath = this.airFreshData.Mode == "humidification" ? "FunctionIcon/AirFresh/HumidificationSelect.png" : "FunctionIcon/AirFresh/Humidification.png"; + menuContr.AddRowMenu(this.dicText["鍔犳箍"], iconPath, this.airFreshData.Mode == "humidification", () => + { + frameBack.Close(); + //鍙戦�佸姞婀垮懡浠� + this.SendOtherComand(this.btnMode2, FunctionAttributeKey.Mode, "humidification"); + }); + } + + #endregion + + #region 鈻� 鏄剧ず椋庨�熼�夋嫨鐣岄潰___________________ + + /// <summary> + /// 鏄剧ず椋庨�熼�夋嫨鐣岄潰 + /// </summary> + private void ShowFanSelectView() + { + //鏁翠釜鐏拌壊鐣岄潰 + var frameBack = new Dialog(); + + var dialogBody = new NormalFrameLayout(); + frameBack.AddChidren(dialogBody); + dialogBody.ButtonClickEvent = (sender, e) => + { + frameBack.Close(); + }; + frameBack.Show(); + + //鑿滃崟鎺т欢(椋庨��) + var menuContr = new DialogTitleMenuControl(3, Language.StringByID(StringId.FanSpeed)); + menuContr.X = Application.GetRealWidth(209); + menuContr.Y = Application.GetRealHeight(231); + menuContr.Width = Application.GetRealWidth(160); + menuContr.Height = Application.GetRealHeight(199); + dialogBody.AddChidren(menuContr); + + //1妗� + var iconPath = this.airFreshData.Fan == "level_1" ? "FunctionIcon/AirFresh/Fan1Select.png" : "FunctionIcon/AirFresh/Fan1.png"; + menuContr.AddRowMenu(Language.StringByID(StringId.FanOneGear), iconPath, this.airFreshData.Fan == "level_1", () => + { + frameBack.Close(); + //鍙戦�佹。浣嶅懡浠� + this.SendOtherComand(this.btnFan, FunctionAttributeKey.FanSpeed, "level_1"); + }); + + //2妗� + iconPath = this.airFreshData.Fan == "level_2" ? "FunctionIcon/AirFresh/Fan2Select.png" : "FunctionIcon/AirFresh/Fan2.png"; + menuContr.AddRowMenu(Language.StringByID(StringId.FanTwoGear), iconPath, this.airFreshData.Fan == "level_2", () => + { + frameBack.Close(); + //鍙戦�佹。浣嶅懡浠� + this.SendOtherComand(this.btnFan, FunctionAttributeKey.FanSpeed, "level_2"); + }); + + //3妗� + iconPath = this.airFreshData.Fan == "level_3" ? "FunctionIcon/AirFresh/Fan3Select.png" : "FunctionIcon/AirFresh/Fan3.png"; + menuContr.AddRowMenu(Language.StringByID(StringId.FanThreeGear), iconPath, this.airFreshData.Fan == "level_3", () => + { + frameBack.Close(); + //鍙戦�佹。浣嶅懡浠� + this.SendOtherComand(this.btnFan, FunctionAttributeKey.FanSpeed, "level_3"); + }); + } + + #endregion + + #region 鈻� 璁惧鐘舵�佸弽棣坃______________________ + + /// <summary> + /// 璁惧鐘舵�佸弽棣� + /// </summary> + /// <param name="i_LocalDevice"></param> + public override void DeviceStatuPush(Function i_LocalDevice) + { + //涓嶆槸鍚屼竴涓笢瑗� + if (this.device.sid != i_LocalDevice.sid) { return; } + + //鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛� + this.RefreshNowDeviceStatuMemory(i_LocalDevice); + //鍒锋柊鐣岄潰鐘舵�� + this.RefreshFormStatu(); + } + + #endregion + + #region 鈻� 鍒锋柊鐣岄潰鐘舵�乢______________________ + + /// <summary> + /// 鍒锋柊鐣岄潰鐘舵�� + /// </summary> + private void RefreshFormStatu() + { + //寮�鍏� + this.btnSwitch.IsSelected = this.airFreshData.Open; + //婊ょ綉鍓╀綑 + this.btnFilterScreen.Text = this.dicText["婊ょ綉鍓╀綑"] + this.airFreshData.Filter_remain + "%"; + + //瀹ゅ唴婀垮害 + if (this.btnHumidity.Text == string.Empty || Convert.ToDecimal(this.btnHumidity.Text) != this.airFreshData.Indoor_humidity) + { + //鍙樻洿浜嗘墠鏀� + this.btnHumidity.Text = this.airFreshData.Indoor_humidity == 0 ? "0.0" : this.airFreshData.Indoor_humidity.ToString(); + this.btnHumidity.Width = this.btnHumidity.GetRealWidthByText(); + //閲嶆柊璁$畻鍧愭爣,璁╁畠浠眳涓� + this.btnHumidity.X = (btnHumidity.Parent.Width - btnHumidity.Width - btnHumidityUnit.Width) / 2; + this.btnHumidityUnit.X = btnHumidity.Right; + } + //瀹ゅ唴娓╁害 + if (this.btnTemperature.Text == string.Empty || Convert.ToDecimal(this.btnTemperature.Text) != this.airFreshData.Indoor_temp) + { + //鍙樻洿浜嗘墠鏀� + this.btnTemperature.Text = this.airFreshData.Indoor_temp == 0 ? "0.0" : this.airFreshData.Indoor_temp.ToString(); + this.btnTemperature.Width = this.btnTemperature.GetRealWidthByText(); + //閲嶆柊璁$畻鍧愭爣,璁╁畠浠眳涓� + this.btnTemperature.X = (btnHumidity.Parent.Width - btnTemperature.Width - btnTemperatureUnit.Width) / 2; + this.btnTemperatureUnit.X = btnTemperature.Right; + } + + //鑺傝兘/鑸掗�� + if (this.airFreshData.Energy == "true") + { + this.btnMode1.UnSelectedImagePath = "FunctionIcon/AirFresh/Energy.png"; + this.btnMode1.SelectedImagePath = "FunctionIcon/AirFresh/EnergySelect.png"; + this.btnMode1View.Text = this.dicText["鑺傝兘"]; + } + else + { + this.btnMode1.UnSelectedImagePath = "FunctionIcon/AirFresh/Comfortable.png"; + this.btnMode1.SelectedImagePath = "FunctionIcon/AirFresh/ComfortableSelect.png"; + this.btnMode1View.Text = this.dicText["鑸掗��"]; + } + this.btnMode1.IsSelected = this.airFreshData.Open; + this.btnMode1.CanClick = this.airFreshData.Open; + + //閫氶/鍔犳箍 + if (this.airFreshData.Mode == "fan") + { + this.btnMode2.UnSelectedImagePath = "FunctionIcon/AirFresh/Ventilate.png"; + this.btnMode2.SelectedImagePath = "FunctionIcon/AirFresh/VentilateSelect.png"; + this.btnMode2View.Text = this.dicText["閫氶"]; + } + else + { + this.btnMode2.UnSelectedImagePath = "FunctionIcon/AirFresh/Humidification.png"; + this.btnMode2.SelectedImagePath = "FunctionIcon/AirFresh/HumidificationSelect.png"; + this.btnMode2View.Text = this.dicText["鍔犳箍"]; + } + this.btnMode2.IsSelected = this.airFreshData.Open; + this.btnMode2.CanClick = this.airFreshData.Open; + + //椋庨�� + if (this.airFreshData.Fan == "level_3") + { + this.btnFan.UnSelectedImagePath = "FunctionIcon/AirFresh/Fan3.png"; + this.btnFan.SelectedImagePath = "FunctionIcon/AirFresh/Fan3Select.png"; + this.btnFanView.Text = this.dicText["3妗�"]; + } + else if(this.airFreshData.Fan == "level_2") + { + this.btnFan.UnSelectedImagePath = "FunctionIcon/AirFresh/Fan2.png"; + this.btnFan.SelectedImagePath = "FunctionIcon/AirFresh/Fan2Select.png"; + this.btnFanView.Text = this.dicText["2妗�"]; + } + else + { + this.btnFan.UnSelectedImagePath = "FunctionIcon/AirFresh/Fan1.png"; + this.btnFan.SelectedImagePath = "FunctionIcon/AirFresh/Fan1Select.png"; + this.btnFanView.Text = this.dicText["1妗�"]; + } + this.btnFan.IsSelected = this.airFreshData.Open; + this.btnFan.CanClick = this.airFreshData.Open; + } + + #endregion + + #region 鈻� 鍙戦�佸悇绉嶅懡浠______________________ + + /// <summary> + /// 鍙戦�佸叾浠栧懡浠� + /// </summary> + /// <param name="btnIcon">鎸夐挳</param> + /// <param name="comadKey">鍛戒护涓婚敭</param> + /// <param name="comadValue">鍛戒护</param> + private void SendOtherComand(IconViewControl btnIcon, string comadKey, string comadValue) + { + btnIcon.CanClick = false; + + HdlThreadLogic.Current.RunThread(() => + { + //鑾峰彇鍙戦�佸懡浠ょ殑鏍锋澘(bus鍗忚鏄渶瑕佷竴娆℃�ф妸鍏ㄩ儴鍛戒护涓�璧峰彂閫佺殑) + var dic = this.GetSendComandSample(); + dic[comadKey] = comadValue; + Control.Ins.SendWriteCommand(this.device, dic); + HdlThreadLogic.Current.RunMain(() => + { + btnIcon.CanClick = true; + }); + }); + } + + /// <summary> + /// 鍙戦�佸紑鍏冲懡浠� + /// </summary> + private void SendSwitchComand() + { + this.btnSwitch.CanClick = false; + + string statu = this.btnSwitch.IsSelected == true ? "off" : "on"; + HdlThreadLogic.Current.RunThread(() => + { + //鑾峰彇鍙戦�佸懡浠ょ殑鏍锋澘(bus鍗忚鏄渶瑕佷竴娆℃�ф妸鍏ㄩ儴鍛戒护涓�璧峰彂閫佺殑) + var dic = this.GetSendComandSample(); + dic[FunctionAttributeKey.OnOff] = statu; + Control.Ins.SendWriteCommand(this.device, dic); + HdlThreadLogic.Current.RunMain(() => + { + this.btnSwitch.CanClick = true; + }); + }); + } + + /// <summary> + /// 鑾峰彇鍙戦�佸懡浠ょ殑鏍锋澘(bus鍗忚鏄渶瑕佷竴娆℃�ф妸鍏ㄩ儴鍛戒护涓�璧峰彂閫佺殑) + /// </summary> + /// <returns></returns> + private Dictionary<string, string> GetSendComandSample() + { + var dic = new Dictionary<string, string>(); + //寮�鍏� + dic[FunctionAttributeKey.OnOff] = this.airFreshData.Open == true ? "on" : "off"; + //妯″紡 + dic[FunctionAttributeKey.Mode] = this.airFreshData.Mode; + //鑺傝兘 + dic[FunctionAttributeKey.Energy] = this.airFreshData.Energy; + //椋庨�� + dic[FunctionAttributeKey.FanSpeed] = this.airFreshData.Fan ; + + return dic; + } + + #endregion + + #region 鈻� 涓�鑸柟娉昣__________________________ + + /// <summary> + /// 鍒锋柊褰撳墠璁惧鐨勭姸鎬佺紦瀛� + /// </summary> + private void RefreshNowDeviceStatuMemory(Function i_LocalDevice) + { + for (int i = 0; i < i_LocalDevice.attributes.Count; i++) + { + var data = i_LocalDevice.attributes[i]; + //寮�鍏� + if (data.key == FunctionAttributeKey.OnOff) { this.airFreshData.Open = data.state == "on"; } + //妯″紡 + else if (data.key == FunctionAttributeKey.Mode) { this.airFreshData.Mode = data.state; } + //鑺傝兘 + else if (data.key == FunctionAttributeKey.Energy) { this.airFreshData.Energy = data.state; } + //椋庨�� + else if (data.key == FunctionAttributeKey.FanSpeed) { this.airFreshData.Fan = data.state; } + //婀垮害 + else if (data.key == FunctionAttributeKey.Humidity) + { + if (data.state != string.Empty) + { + this.airFreshData.Humidity = Convert.ToInt32(data.state); + } + } + //瀹ゅ唴娓╁害 + else if (data.key == FunctionAttributeKey.IndoorTemp) + { + if (data.state != string.Empty) + { + this.airFreshData.Indoor_temp = Math.Round(Convert.ToDecimal(data.state), 1); + } + } + //瀹ゅ唴婀垮害 + else if (data.key == FunctionAttributeKey.IndoorHumidity) + { + if (data.state != string.Empty) + { + this.airFreshData.Indoor_humidity = Math.Round(Convert.ToDecimal(data.state), 1); + } + } + //杩囨护缃戝墿浣欓噺 + else if (data.key == FunctionAttributeKey.FilterRemain) + { + if (data.state != string.Empty) + { + this.airFreshData.Filter_remain = Convert.ToInt32(data.state); + } + } + } + } + + #endregion + + #region 鈻� 缁撴瀯浣揰____________________________ + + /// <summary> + /// 鏂伴鐨勬暟鎹� + /// </summary> + private class AirFreshData + { + /// <summary> + /// 鏄惁鎵撳紑 + /// </summary> + public bool Open = false; + /// <summary> + /// humidification:鍔犳箍 fan:閫侀 + /// </summary> + public string Mode = string.Empty; + /// <summary> + /// true:鑺傝兘 false:鑸掗�� 杩欎釜鏈夐棶棰樼殑 + /// </summary> + public string Energy = string.Empty; + /// <summary> + /// level_1:1妗� level_2:2妗� level_3:3妗� auto:鑷姩(鐩墠杩欎釜涓嶇敤) + /// </summary> + public string Fan = string.Empty; + /// <summary> + /// 婀垮害(%) + /// </summary> + public int Humidity = 0; + /// <summary> + /// 瀹ゅ唴娓╁害(淇濈暀涓�浣嶅皬鏁�) + /// </summary> + public decimal Indoor_temp = 0; + /// <summary> + /// 瀹ゅ唴婀垮害(淇濈暀涓�浣嶅皬鏁�) + /// </summary> + public decimal Indoor_humidity = 0; + /// <summary> + /// 鍓╀綑婊ょ綉(%) + /// </summary> + public int Filter_remain = 0; + } + + #endregion + } +} -- Gitblit v1.8.0