From 271c46f52e74845dac76fa5ece4eb8b94d9168f4 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期五, 08 四月 2022 10:12:31 +0800 Subject: [PATCH] 金茂温控器 --- HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs | 4 HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 19 HDL-ON_Android/Assets/Language.ini | 18 HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacControlPage.cs | 545 ++--------------------- HDL-ON_iOS/HDL-ON_iOS.csproj | 4 HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs | 1 HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EchartsOption_BrokenLine.cs | 2 HDL-ON_Android/Assets/Phone/FunctionIcon/CAC/DataIcon.png | 0 HDL_ON/UI/UI0-Public/AppUnlockPage.cs | 1 HDL_ON/HDL_ON.projitems | 3 HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/hvaccac.png | 0 HDL-ON_Android/HDL-ON_Android.csproj | 4 HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs | 51 ++ HDL-ON_iOS/Resources/Phone/FunctionIcon/CAC/DataIcon.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs | 7 HDL_ON/UI/UI0-Public/PublicAssmebly.cs | 4 HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacDayHistoryPage.cs | 165 +++++++ HDL-ON_Android/Assets/Phone/FunctionIcon/CAC/JinMaoIcon.png | 0 HDL-ON_iOS/Resources/Phone/FunctionIcon/CAC/JinMaoIcon.png | 0 HDL_ON/DAL/DriverLayer/Control.cs | 4 DLL/Scan/HDL.Shared.IOS.ScanQRCode.dll | 0 HDL-ON_Android/Application.cs | 9 HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacHistoryChoosePage.cs | 108 ++++ HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacWeekHistoryPage.cs | 342 ++++++++++++++ HDL_ON/Entity/Function/Function.cs | 1 HDL_ON/Common/R.cs | 21 HDL_ON/DAL/Server/HttpServerRequest.cs | 8 HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/hvaccac.png | 0 HDL-ON_Android/Other/JPush/JPushReceiver.cs | 9 29 files changed, 818 insertions(+), 512 deletions(-) diff --git a/DLL/Scan/HDL.Shared.IOS.ScanQRCode.dll b/DLL/Scan/HDL.Shared.IOS.ScanQRCode.dll new file mode 100644 index 0000000..8d81fa4 --- /dev/null +++ b/DLL/Scan/HDL.Shared.IOS.ScanQRCode.dll Binary files differ diff --git a/HDL-ON_Android/Application.cs b/HDL-ON_Android/Application.cs index a441120..cf341fe 100644 --- a/HDL-ON_Android/Application.cs +++ b/HDL-ON_Android/Application.cs @@ -84,6 +84,7 @@ BusSocketStart(); //鍚庡彴鍥炲埌鍓嶅彴 new HDL_ON.UI.AppUnlockPage().LoadPage(); + } } @@ -114,11 +115,6 @@ public int mCount; - ///// <summary> - ///// 鏄惁杩涘叆鍚庡彴 - ///// </summary> - //public bool IsEnterBackground = false; - /// <summary> /// 杩涘叆鍚庡彴鐨勬椂闂� /// </summary> @@ -129,7 +125,6 @@ /// </summary> void BusSocketStop() { - //IsEnterBackground = true; CloseTime = DateTime.Now; MainPage.IsEnterBackground = true; //杩涘叆鍚庡彴mqtt姝e湪杩炴帴閲嶇疆鐘舵�� @@ -143,8 +138,6 @@ /// </summary> void BusSocketStart() { - //IsEnterBackground = false; - if (CloseTime.AddSeconds(10) < DateTime.Now) { //鍚庡彴瓒呰繃10s灏辨柇寮�MQTT閲嶈繛 diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini index ddab725..a27d7f0 100644 --- a/HDL-ON_Android/Assets/Language.ini +++ b/HDL-ON_Android/Assets/Language.ini @@ -518,6 +518,11 @@ 530=In order to prevent the wrong touch and click of opening and closing the door and ensure family safety, please enter your door lock password. 531=Password free unlocking within five minutes 532=The device is offline and cannot be operated temporarily +533=Statistical Chart +534=Data +535=Dew point temperature +536=Temperature statistics +537=Humidity statistics 1000=Room Humidity @@ -1659,6 +1664,11 @@ 530=涓洪槻姝㈠紑鍏抽棬鐨勮瑙︾偣鍑伙紝淇濊瘉瀹跺涵瀹夊叏锛岃杈撳叆鎮ㄧ殑闂ㄩ攣寮�闂ㄥ瘑鐮併�� 531=浜斿垎閽熷唴鍏嶅瘑鐮佸紑閿� 532=璁惧绂荤嚎涓紝鏆傛椂鏃犳硶鎿嶄綔 +533=24灏忔椂缁熻鍥� +534=鏁版嵁 +535=闇茬偣娓╁害 +536=娓╁害缁熻鍥� +537=婀垮害缁熻鍥� 1000=瀹ゅ唴婀垮害 1001=绔ラ攣 @@ -2781,6 +2791,11 @@ 530=In order to prevent the wrong touch and click of opening and closing the door and ensure family safety, please enter your door lock password. 531=Password free unlocking within five minutes 532=The device is offline and cannot be operated temporarily +533=Statistical Chart +534=Data +535=Dew point temperature +536=Temperature statistics +537=Humidity statistics @@ -3403,3 +3418,6 @@ 10031=校褋褌褉芯泄褋褌胁芯 薪械 写芯谢卸薪芯 斜褘褌褜 锌褍褋褌褘屑. 10032=校 锌芯谢褜蟹芯胁邪褌械谢褟 薪械褌 褉邪蟹褉械褕械薪懈褟. 10033=校褋褌褉芯泄褋褌胁芯 薪械 褋褍褖械褋褌胁褍械褌. + + + diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/CAC/DataIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/CAC/DataIcon.png new file mode 100644 index 0000000..9832d06 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/CAC/DataIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/CAC/JinMaoIcon.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/CAC/JinMaoIcon.png new file mode 100644 index 0000000..b5e26bf --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/CAC/JinMaoIcon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/hvaccac.png b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/hvaccac.png new file mode 100644 index 0000000..5b8b9fa --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/FunctionIcon/Icon/hvaccac.png Binary files differ diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj index d573dd5..8bf78f3 100644 --- a/HDL-ON_Android/HDL-ON_Android.csproj +++ b/HDL-ON_Android/HDL-ON_Android.csproj @@ -230,6 +230,9 @@ <AndroidAsset Include="Assets\Phone\Public\MsgIcon\CallIcon.png" /> <AndroidAsset Include="Assets\Phone\Public\MsgIcon\AnswerIcon.png" /> <AndroidAsset Include="Assets\Phone\Public\MsgIcon\HangUpIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\CAC\DataIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\CAC\JinMaoIcon.png" /> + <AndroidAsset Include="Assets\Phone\FunctionIcon\Icon\hvaccac.png" /> </ItemGroup> <ItemGroup> <AndroidResource Include="Resources\values\colors.xml" /> @@ -1436,6 +1439,7 @@ <ItemGroup> <Folder Include="libs\arm64-v8a\" /> <Folder Include="Zxing\" /> + <Folder Include="Assets\Phone\FunctionIcon\CAC\" /> </ItemGroup> <Import Project="..\HDL_ON\HDL_ON.projitems" Label="Shared" Condition="Exists('..\HDL_ON\HDL_ON.projitems')" /> <Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" /> diff --git a/HDL-ON_Android/Other/JPush/JPushReceiver.cs b/HDL-ON_Android/Other/JPush/JPushReceiver.cs index a7fba9f..4566b62 100644 --- a/HDL-ON_Android/Other/JPush/JPushReceiver.cs +++ b/HDL-ON_Android/Other/JPush/JPushReceiver.cs @@ -37,6 +37,9 @@ //2020-12-23 瑙e喅鐐瑰嚮閫氱煡鏍忔墦寮�涓嶄簡APP闂 //base.OnNotifyMessageOpened(context, notificationMessage); + //NotificationManager NotifyManager = (NotificationManager)GetSystemService(Context.NotificationService); + //NotificationManager notificationManager = NotifyManager; + OpenNotification(context, notificationMessage); } @@ -83,7 +86,11 @@ { HDLCommon.Current.AdjustPushMessage(pushMes); }); - + if (!MainPage.IsEnterBackground) + { + NotificationManager nMgr = (NotificationManager)Shared.Application.Activity.GetSystemService(Context.NotificationService); + nMgr.CancelAll(); + } } /// <summary> diff --git a/HDL-ON_iOS/HDL-ON_iOS.csproj b/HDL-ON_iOS/HDL-ON_iOS.csproj index 0df4dde..8c784f1 100644 --- a/HDL-ON_iOS/HDL-ON_iOS.csproj +++ b/HDL-ON_iOS/HDL-ON_iOS.csproj @@ -484,6 +484,7 @@ <Folder Include="Resources\Phone\PersonalCenter\FacePassage\" /> <Folder Include="Resources\Phone\FunctionIcon\Electrical\AirSwitch\" /> <Folder Include="Base.lproj\" /> + <Folder Include="Resources\Phone\FunctionIcon\CAC\" /> </ItemGroup> <ItemGroup> <InterfaceDefinition Include="LaunchScreen.storyboard" /> @@ -1388,6 +1389,9 @@ <BundleResource Include="Resources\Phone\Public\MsgIcon\CallIcon.png" /> <BundleResource Include="Resources\Phone\Public\MsgIcon\AnswerIcon.png" /> <BundleResource Include="Resources\Phone\Public\MsgIcon\HangUpIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\CAC\DataIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\CAC\JinMaoIcon.png" /> + <BundleResource Include="Resources\Phone\FunctionIcon\Icon\hvaccac.png" /> </ItemGroup> <ItemGroup> <ITunesArtwork Include="iTunesArtwork" /> diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/CAC/DataIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/CAC/DataIcon.png new file mode 100644 index 0000000..9832d06 --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/CAC/DataIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/CAC/JinMaoIcon.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/CAC/JinMaoIcon.png new file mode 100644 index 0000000..b5e26bf --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/CAC/JinMaoIcon.png Binary files differ diff --git a/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/hvaccac.png b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/hvaccac.png new file mode 100644 index 0000000..5b8b9fa --- /dev/null +++ b/HDL-ON_iOS/Resources/Phone/FunctionIcon/Icon/hvaccac.png Binary files differ diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs index 68b7cc3..3156a9c 100644 --- a/HDL_ON/Common/R.cs +++ b/HDL_ON/Common/R.cs @@ -6,6 +6,27 @@ { /// <summary> + /// 婀垮害缁熻鍥� + /// </summary> + public const int HumidityStatistics = 537; + + /// <summary> + /// 娓╁害缁熻鍥� + /// </summary> + public const int TemperatureStatistics = 536; + /// <summary> + /// 闇茬偣娓╁害 + /// </summary> + public const int DewPointTemp = 535; + /// <summary> + /// 鏁版嵁 + /// </summary> + public const int Data = 534; + /// <summary> + /// 24灏忔椂缁熻鍥� + /// </summary> + public const int StatisticalChart24Hour = 533; + /// <summary> /// 璁惧绂荤嚎涓紝鏆傛椂鏃犳硶鎿嶄綔 /// </summary> public const int DeviceOfflineCannotOption = 532; diff --git a/HDL_ON/DAL/DriverLayer/Control.cs b/HDL_ON/DAL/DriverLayer/Control.cs index f14125b..5f9b849 100644 --- a/HDL_ON/DAL/DriverLayer/Control.cs +++ b/HDL_ON/DAL/DriverLayer/Control.cs @@ -1066,6 +1066,10 @@ break; case SPK.CurtainShades: break; + case SPK.HvacCac: + Stan.HdlDeviceStatuPushLogic.Current.UpdateDeviceStatu(updateTemp.sid, updateTemp.status); + + break; case SPK.AcStandard: case SPK.HvacAC: case SPK.AcIr: diff --git a/HDL_ON/DAL/Server/HttpServerRequest.cs b/HDL_ON/DAL/Server/HttpServerRequest.cs index 738cd33..4741b1c 100644 --- a/HDL_ON/DAL/Server/HttpServerRequest.cs +++ b/HDL_ON/DAL/Server/HttpServerRequest.cs @@ -1029,10 +1029,10 @@ #endif //鏄惁鐢熶骇妯″紡 bool isProduce = true; -#if DEBUG - isProduce = false; -#endif - + if (HttpUtil.GlobalRequestHttpsHost == "https://test-gz.hdlcontrol.com") + { + isProduce = false; + } if (string.IsNullOrEmpty(OnAppConfig.Instance.PushDeviceToken)) { Utlis.WriteLine("PushDeviceToken 涓虹┖"); diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs index 5188fcc..6e3b439 100644 --- a/HDL_ON/Entity/Function/Function.cs +++ b/HDL_ON/Entity/Function/Function.cs @@ -1264,6 +1264,7 @@ spkList.Add(AcStandard); spkList.Add(HvacAC); spkList.Add(AcIr); + spkList.Add(HvacCac); return spkList; } #endregion diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems index 948b118..748a5ce 100644 --- a/HDL_ON/HDL_ON.projitems +++ b/HDL_ON/HDL_ON.projitems @@ -490,6 +490,9 @@ <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\4-PersonalCenter\AboutOn\FirmwareUpdateView.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\DoorLock\DoorLockUnlockPage.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\CacControlPage.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\CacWeekHistoryPage.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\CacDayHistoryPage.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\1ContorlPage\CacHistoryChoosePage.cs" /> </ItemGroup> <ItemGroup> <Folder Include="$(MSBuildThisFileDirectory)Entity\Device\" /> diff --git a/HDL_ON/UI/UI0-Public/AppUnlockPage.cs b/HDL_ON/UI/UI0-Public/AppUnlockPage.cs index e84c8e3..1129e4a 100644 --- a/HDL_ON/UI/UI0-Public/AppUnlockPage.cs +++ b/HDL_ON/UI/UI0-Public/AppUnlockPage.cs @@ -95,6 +95,7 @@ HDLCommon.Current.AdjustPushMessage(UserInfo.Current.pushMessageInfo); }); } + return; } } diff --git a/HDL_ON/UI/UI0-Public/PublicAssmebly.cs b/HDL_ON/UI/UI0-Public/PublicAssmebly.cs index be512b5..40d3b05 100644 --- a/HDL_ON/UI/UI0-Public/PublicAssmebly.cs +++ b/HDL_ON/UI/UI0-Public/PublicAssmebly.cs @@ -428,6 +428,10 @@ /// </summary> public void TipLinphoneCall(String msg, ESVideoInfo mESVideoInfo) { + if (UserInfo.Current.alreadyShowCallInDialog) + { + return; + } UserInfo.Current.alreadyShowCallInDialog = true; Dialog dialog = new Dialog(); diff --git a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs index 3cbd914..b4a926d 100644 --- a/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs +++ b/HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs @@ -182,6 +182,10 @@ var acPage = new AcControlPage(); acPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor); break; + case SPK.HvacCac: + var cacPage = new CacControlPage(); + cacPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor); + break; case SPK.IrLearn: var irLearinPage = new IrLearnPage(); irLearinPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor); diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs index ecea303..90bf91a 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs @@ -649,6 +649,25 @@ //}); + FunctionList.List.Functions.Add(new Function() + { + spk = SPK.HvacCac, + name = "娴嬭瘯閲戣寕娓╂帶鏋告潪", + attributes = new List<FunctionAttributes>() + { + new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" }, + new FunctionAttributes(){ key = "mode",curValue= "cool",state = "cool" ,value = new List<string>(){ "cool", "heat" } }, + new FunctionAttributes(){ key = "set_temp",curValue= "22",state = "22" ,value = new List<string>(){},min = 0,max = 30 }, + //new FunctionAttributes(){ key = "set_temp_step",curValue= "low",state = "low" ,value = new List<string>(){ "high", "medium", "low", "auto", "stop" } }, + new FunctionAttributes(){ key = "humidity",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 }, + new FunctionAttributes(){ key = "room_temp",curValue= "26",state = "26" ,value = new List<string>(){ },min = 0,max = 100 }, + new FunctionAttributes(){ key = "dew_point_temp",curValue= "20",state = "20" ,value = new List<string>(){ },min = 0,max = 100 }, + new FunctionAttributes(){ key = "room_humidity",curValue= "20",state = "20" ,value = new List<string>(){ },min = 0,max = 1000 }, + //new FunctionAttributes(){ key = "tvoc",curValue= "20",state = "20" ,value = new List<string>(){ },min = 0,max = 100 }, + }, + }); + + //FunctionList.List.Functions.Add(new Function() //{ // spk = SPK.HvacAirFreshJinmao, diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs index f8370df..1c9b2bc 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs @@ -61,6 +61,7 @@ //绌鸿皟 case SPK.AcStandard: case SPK.HvacAC: + case SPK.HvacCac://姣涚粏绌鸿皟 //鍦扮儹 case SPK.FloorHeatStandard: case SPK.HvacFloorHeat: diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs index bd6a462..942d93a 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs @@ -356,6 +356,9 @@ strPath = "LogicIcon/airconditionerlogic.png"; } break; + case SPK.HvacCac: + strPath = "FunctionIcon/Icon/hvaccac.png"; + break; case SPK.FloorHeatStandard: case SPK.HvacFloorHeat: { @@ -518,6 +521,7 @@ { functionTypeList.Add(SPK.AcStandard); functionTypeList.Add(SPK.HvacAC); + functionTypeList.Add(SPK.HvacCac); } ///鍦版殩绫� else if (deviceType == Language.StringByID(StringId.FloorHeating)) @@ -604,7 +608,7 @@ functionTypeList.Add(SPK.AirSwitch); functionTypeList.Add(SPK.PanelSocket); functionTypeList.Add(SPK.ElectricSocket); - + functionTypeList.Add(SPK.HvacCac); } @@ -657,6 +661,7 @@ deviceTypeList.Add(SPK.AirSwitch); deviceTypeList.Add(SPK.PanelSocket); deviceTypeList.Add(SPK.ElectricSocket); + deviceTypeList.Add(SPK.HvacCac); } break; diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacControlPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacControlPage.cs index b085c79..7683c79 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacControlPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacControlPage.cs @@ -37,10 +37,6 @@ /// </summary> Button btnMode; /// <summary> - /// 鎵鎸夐挳 - /// </summary> - Button btnSwing; - /// <summary> /// 椋庨�熸寜閽� /// </summary> Button btnWindSpeed; @@ -118,6 +114,17 @@ /// </summary> private void InitFrameWhiteContent1() { + Button btnJinmaoIcon = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(94), + Width = Application.GetRealWidth(164), + Height = Application.GetRealHeight(43), + UnSelectedImagePath = "FunctionIcon/CAC/JinMaoIcon.png" + }; + FrameWhiteCentet1.AddChidren(btnJinmaoIcon); + + temp = (int)Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.SetTemp).Replace(",", ".")); arcBar = new DiyArcSeekBar() { @@ -183,7 +190,7 @@ Y = btnTemp.Bottom, Width = Application.GetRealWidth(120), Height = Application.GetRealHeight(20), - Text = Language.StringByID(StringId.IndoorTemp) + "20掳C", + Text = Language.StringByID(StringId.IndoorTemp) + "20掳C/" + Language.StringByID(StringId.Humidity) +"45%", TextColor = CSS_Color.PromptingColor1, TextSize = CSS_FontSize.PromptFontSize_FirstLevel, }; @@ -215,34 +222,45 @@ Y = Application.GetRealHeight(334), Width = Application.GetRealWidth(30), Height = Application.GetRealWidth(30), - UnSelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode)), + UnSelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode),true), }; FrameWhiteCentet1.AddChidren(btnMode); - - btnSwing = new Button() + Button btnModeText = new Button() { - Gravity = Gravity.CenterHorizontal, - Y = Application.GetRealHeight(330), - Width = Application.GetRealWidth(40), - Height = Application.GetRealWidth(40), - UnSelectedImagePath = "FunctionIcon/AC/SweepIconNullOn.png", + X = Application.GetRealWidth(30), + Y = btnMode.Bottom, + Width = Application.GetRealWidth(90), + Height = Application.GetRealHeight(20), + TextAlignment = TextAlignment.Center, + TextSize = 12, + TextColor = CSS_Color.TextualColor, + TextID = StringId.Mode }; - if (device.GetAttribute(FunctionAttributeKey.Swing) != null) - { - FrameWhiteCentet1.AddChidren(btnSwing); - } - + FrameWhiteCentet1.AddChidren(btnModeText); btnWindSpeed = new Button() { - X = Application.GetRealWidth(235), - Y = Application.GetRealHeight(337), - Width = Application.GetRealWidth(30), - Height = Application.GetRealWidth(30), - UnSelectedImagePath = acFunction.GetFanIconPath(device.GetAttrState(FunctionAttributeKey.FanSpeed)), + X = Application.GetRealWidth(238), + Y = Application.GetRealHeight(333), + Width = Application.GetRealWidth(38), + Height = Application.GetRealWidth(38), + UnSelectedImagePath = "FunctionIcon/CAC/DataIcon.png", }; FrameWhiteCentet1.AddChidren(btnWindSpeed); + + Button btnDataText = new Button() + { + X = Application.GetRealWidth(215), + Y = btnWindSpeed.Bottom, + Width = Application.GetRealWidth(90), + Height = Application.GetRealHeight(20), + TextAlignment = TextAlignment.Center, + TextSize = 12, + TextColor = CSS_Color.TextualColor, + TextID = StringId.Data + }; + FrameWhiteCentet1.AddChidren(btnDataText); btnSwitch = new Button() { @@ -259,7 +277,6 @@ LoadEvent_TempChange(); LoadEvent_AcStatesChange(); - LoadDiv_IrView(); } /// <summary> @@ -397,456 +414,6 @@ dialog.Show(); } - /// <summary> - /// 鍔犺浇淇敼鎵妯″紡鍖哄煙 - /// </summary> - void LoadDiv_ChangeSwingView() - { - Dialog dialog = new Dialog(); - - FrameLayout dialogView = new FrameLayout() - { - BackgroundColor = CSS_Color.DialogTransparentColor1, - }; - dialog.AddChidren(dialogView); - - FrameLayout modeChangeView; - modeChangeView = new FrameLayout() - { - Gravity = Gravity.CenterHorizontal, - Y = Application.GetRealHeight(128), - Width = Application.GetRealWidth(160), - Height = Application.GetRealHeight(287), - BackgroundImagePath = "FunctionIcon/AC/DivBg2.png", - }; - dialogView.AddChidren(modeChangeView); - - Button btnTitle; - btnTitle = new Button() - { - X = Application.GetRealWidth(8 + 16), - Y = Application.GetRealHeight(8), - Width = Application.GetRealWidth(112), - Height = Application.GetRealHeight(44), - TextID = StringId.Swing, - TextAlignment = TextAlignment.CenterLeft, - TextColor = CSS_Color.FirstLevelTitleColor, - TextSize = CSS_FontSize.EmphasisFontSize_Secondary, - }; - modeChangeView.AddChidren(btnTitle); - - Button btnLine = new Button() - { - X = btnTitle.X, - Y = btnTitle.Bottom, - Width = Application.GetRealWidth(112), - Height = Application.GetRealHeight(1), - BackgroundColor = CSS_Color.BackgroundColor, - }; - modeChangeView.AddChidren(btnLine); - - var modeList = device.GetAttribute(FunctionAttributeKey.Swing).value; - foreach (var m in modeList) - { - Button btnModeIcon = new Button() - { - X = btnTitle.X, - Y = Application.GetRealHeight(44 * (modeList.IndexOf(m) + 1) + 10 + 8), - Width = Application.GetRealWidth(24), - Height = Application.GetRealWidth(24), - IsSelected = device.GetAttrState(FunctionAttributeKey.Swing) == m, - }; - modeChangeView.AddChidren(btnModeIcon); - - Button btnModeText = new Button() - { - X = Application.GetRealWidth(12) + btnModeIcon.Right, - Y = Application.GetRealHeight(44 * (modeList.IndexOf(m) + 1) + 8), - Height = Application.GetRealHeight(44), - Width = Application.GetRealWidth(90), - TextAlignment = TextAlignment.CenterLeft, - TextColor = CSS_Color.FirstLevelTitleColor, - SelectedTextColor = CSS_Color.MainColor, - IsSelected = device.GetAttrState(FunctionAttributeKey.Swing) == m, - TextSize = CSS_FontSize.TextFontSize, - }; - modeChangeView.AddChidren(btnModeText); - - if (modeList.IndexOf(m) < modeList.Count - 1) - { - modeChangeView.AddChidren(new Button() - { - X = btnTitle.X, - Y = btnModeText.Bottom, - Width = Application.GetRealWidth(112), - Height = Application.GetRealHeight(1), - BackgroundColor = CSS_Color.BackgroundColor, - }); - } - - btnModeIcon.UnSelectedImagePath = acFunction.GetSwingIconPath(m, false); - btnModeIcon.SelectedImagePath = acFunction.GetSwingIconPath(m); - btnModeText.Text = acFunction.GetSwingAttrText(m); - - EventHandler<MouseEventArgs> eventHandler = (sender, e) => - { - dialog.Close(); - }; - EventHandler<MouseEventArgs> eventHandler1 = (sender, e) => - { - //if (!device.online) - //{ - // new Tip() - // { - // CloseTime = 1, - // Text = Language.StringByID(StringId.DeviceOfflineCannotOption), - // Direction = AMPopTipDirection.None, - // }.Show(MainPage.BaseView); - //} - btnModeIcon.IsSelected = btnModeText.IsSelected = true; - device.SetAttrState(FunctionAttributeKey.Swing, m); - btnSwing.UnSelectedImagePath = acFunction.GetSwingIconPath(m); - Dictionary<string, string> d = new Dictionary<string, string>(); - d.Add(FunctionAttributeKey.Swing, m); - Control.Ins.SendWriteCommand(device, d); - dialog.Close(); - }; - btnModeIcon.MouseUpEventHandler = eventHandler1; - btnModeText.MouseUpEventHandler = eventHandler1; - dialogView.MouseUpEventHandler = eventHandler; - - } - - dialogView.MouseUpEventHandler = (sender, e) => { - dialog.Close(); - }; - dialog.Show(); - } - /// <summary> - /// 鍔犺浇淇敼妯″紡鍖哄煙 - /// </summary> - void LoadDiv_ChangeFanView() - { - Dialog dialog = new Dialog(); - - FrameLayout dialogView = new FrameLayout() - { - BackgroundColor = CSS_Color.DialogTransparentColor1, - }; - dialog.AddChidren(dialogView); - - FrameLayout modeChangeView; - modeChangeView = new FrameLayout() - { - X = Application.GetRealWidth(185), - Y = Application.GetRealHeight(172), - Width = Application.GetRealWidth(160), - Height = Application.GetRealHeight(243), - BackgroundImagePath = "FunctionIcon/AC/DivBg2.png", - }; - dialogView.AddChidren(modeChangeView); - - Button btnTitle; - btnTitle = new Button() - { - X = Application.GetRealWidth(8 + 16), - Y = Application.GetRealHeight(8), - Width = Application.GetRealWidth(112), - Height = Application.GetRealHeight(44), - TextID = StringId.ChooseFan, - TextAlignment = TextAlignment.CenterLeft, - TextColor = CSS_Color.FirstLevelTitleColor, - TextSize = CSS_FontSize.EmphasisFontSize_Secondary, - }; - modeChangeView.AddChidren(btnTitle); - - Button btnLine = new Button() - { - X = btnTitle.X, - Y = btnTitle.Bottom, - Width = Application.GetRealWidth(112), - Height = Application.GetRealHeight(1), - BackgroundColor = CSS_Color.BackgroundColor, - }; - modeChangeView.AddChidren(btnLine); - - var modeList = device.GetAttribute(FunctionAttributeKey.FanSpeed).value; - foreach (var m in modeList) - { - Button btnFanIcon = new Button() - { - X = btnTitle.X, - Y = Application.GetRealHeight(44 * (modeList.IndexOf(m) + 1) + 10 + 8), - Width = Application.GetRealWidth(24), - Height = Application.GetRealWidth(24), - IsSelected = device.GetAttrState(FunctionAttributeKey.FanSpeed) == m, - }; - modeChangeView.AddChidren(btnFanIcon); - - Button btnFanText = new Button() - { - X = Application.GetRealWidth(12) + btnFanIcon.Right, - Y = Application.GetRealHeight(44 * (modeList.IndexOf(m) + 1) + 8), - Height = Application.GetRealHeight(44), - Width = Application.GetRealWidth(70), - TextAlignment = TextAlignment.CenterLeft, - TextColor = CSS_Color.FirstLevelTitleColor, - SelectedTextColor = CSS_Color.MainColor, - IsSelected = device.GetAttrState(FunctionAttributeKey.FanSpeed) == m, - TextSize = CSS_FontSize.TextFontSize, - }; - modeChangeView.AddChidren(btnFanText); - btnFanIcon.UnSelectedImagePath = acFunction.GetFanIconPath(m, false); - btnFanIcon.SelectedImagePath = acFunction.GetFanIconPath(m); - btnFanText.Text = acFunction.GetFanAttrText(m); - - if (modeList.IndexOf(m) < modeList.Count - 1) - { - modeChangeView.AddChidren(new Button() - { - X = btnTitle.X, - Y = btnFanText.Bottom, - Width = Application.GetRealWidth(112), - Height = Application.GetRealHeight(1), - BackgroundColor = CSS_Color.BackgroundColor, - }); - } - - EventHandler<MouseEventArgs> closeDialogEvent = (sender, e) => - { - dialog.Close(); - }; - EventHandler<MouseEventArgs> eventHandler1 = (sender, e) => - { - //if (!device.online) - //{ - // new Tip() - // { - // CloseTime = 1, - // Text = Language.StringByID(StringId.DeviceOfflineCannotOption), - // Direction = AMPopTipDirection.None, - // }.Show(MainPage.BaseView); - //} - btnFanIcon.IsSelected = btnFanText.IsSelected = true; - device.SetAttrState(FunctionAttributeKey.FanSpeed, m); - btnWindSpeed.UnSelectedImagePath = acFunction.GetFanIconPath(m); - System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>(); - d.Add(FunctionAttributeKey.FanSpeed, m); - Control.Ins.SendWriteCommand(device, d); - //btnWindSpeed.UnSelectedImagePath = btnFanIcon.UnSelectedImagePath; - dialog.Close(); - }; - btnFanIcon.MouseUpEventHandler = eventHandler1; - btnFanText.MouseUpEventHandler = eventHandler1; - dialogView.MouseUpEventHandler = closeDialogEvent; - } - - dialog.Show(); - } - - /// <summary> - /// 鍔犺浇绾㈠閬ユ帶鍣紝棰濆鎸夐挳 - /// </summary> - void LoadDiv_IrView() - { - if (device.spk == SPK.AcIr) - { - var btnMore = new Button() - { - Gravity = Gravity.CenterHorizontal, - Y = Application.GetRealHeight(334 + 80), - Width = Application.GetRealWidth(35), - Height = Application.GetRealWidth(35), - UnSelectedImagePath = "FunctionIcon/AC/More.png", - }; - FrameWhiteCentet1.AddChidren(btnMore); - - btnMore.MouseUpEventHandler = (sender, e) => { - LoadDialog_IrMoreView(); - }; - } - } - - /// <summary> - /// 鍔犺浇棰濆瀵圭孩澶栨寜閽晫闈� - /// </summary> - void LoadDialog_IrMoreView() - { - Dialog dialog = new Dialog(); - - var div = new FrameLayout(); - dialog.AddChidren(div); - div.MouseUpEventHandler = (sender, e) => { - dialog.Close(); - }; - - var bodyView = new FrameLayout() - { - Y = Application.GetRealHeight(427),//667 - Height = Application.GetRealHeight(240), - BackgroundColor = CSS_Color.MainBackgroundColor, - }; - div.AddChidren(bodyView); - - var contentView = new VerticalScrolViewLayout() - { - Y = Application.GetRealHeight(16), - Gravity = Gravity.CenterHorizontal, - Width = Application.GetRealWidth(296 + 200), - }; - bodyView.AddChidren(contentView); - - - var row = new FrameLayout() - { - Height = Application.GetRealHeight(60), - Width = Application.GetRealWidth(296), - Gravity = Gravity.CenterHorizontal, - }; - contentView.AddChidren(row); - - int index = 0; - List<FunctionAttributes> attrList = new List<FunctionAttributes>(); - attrList.AddRange(device.attributes); - attrList.Add(new FunctionAttributes() - { - key = "+", - }); - - foreach (var attr in attrList) - { - if (attr.key == FunctionAttributeKey.Mode - || attr.key == FunctionAttributeKey.OnOff - || attr.key == FunctionAttributeKey.SetTemp - || attr.key == FunctionAttributeKey.SetTempStep - || attr.key == FunctionAttributeKey.FanSpeed - || attr.key == FunctionAttributeKey.FanManual - || attr.key == FunctionAttributeKey.FanAuto - ) - { - continue; - } - if (index != 0 && index % 3 == 0) - { - row = new FrameLayout() - { - Height = Application.GetRealHeight(56), - Width = Application.GetRealWidth(296), - Gravity = Gravity.CenterHorizontal, - }; - contentView.AddChidren(row); - } - if (attr.key == "+") - { - var addView = new FrameLayout() - { - Gravity = Gravity.CenterVertical, - Width = Application.GetRealWidth(88), - Height = Application.GetRealHeight(40), - Radius = (uint)Application.GetRealHeight(18), - BorderColor = CSS_Color.PromptingColor1, - BorderWidth = (uint)Application.GetRealWidth(2), - }; - - - if (index % 3 == 1) - { - addView.Gravity = Gravity.Center; - } - else if (index % 3 == 2) - { - addView.X = Application.GetRealWidth(208); - } - row.AddChidren(addView); - - var btnAdd = new Button() - { - Gravity = Gravity.Center, - UnSelectedImagePath = "Public/PlusSignIcon.png", - Width = Application.GetRealWidth(32), - Height = Application.GetRealWidth(32), - }; - addView.AddChidren(btnAdd); - - btnAdd.MouseUpEventHandler = (sender, e) => - { - dialog.Close(); - Action action = () => { - LoadDialog_IrMoreView(); - }; - var addButton = new AcControlPage_AddIrButton(action); - MainPage.BasePageView.AddChidren(addButton); - addButton.Show(device); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - }; - - - } - else - { - - var btn = new Button() - { - Gravity = Gravity.CenterVertical, - Width = Application.GetRealWidth(88), - Height = Application.GetRealHeight(40), - Radius = (uint)Application.GetRealHeight(18), - BorderColor = CSS_Color.PromptingColor1, - BorderWidth = (uint)Application.GetRealWidth(2), - TextAlignment = TextAlignment.Center, - TextSize = CSS_FontSize.TextFontSize, - TextColor = CSS_Color.FirstLevelTitleColor, - SelectedTextColor = CSS_Color.MainBackgroundColor, - SelectedBackgroundColor = CSS_Color.MainColor, - }; - if (attr.value.Count > 0) - { - btn.Text = attr.value[0]; - } - if (index % 3 == 1) - { - btn.Gravity = Gravity.Center; - } - else if (index % 3 == 2) - { - btn.X = Application.GetRealWidth(208); - } - row.AddChidren(btn); - - btn.MouseUpEventHandler = (sender, e) => - { - //if (!device.online) - //{ - // new Tip() - // { - // CloseTime = 1, - // Text = Language.StringByID(StringId.DeviceOfflineCannotOption), - // Direction = AMPopTipDirection.None, - // }.Show(MainPage.BaseView); - //} - Dictionary<string, string> d = new Dictionary<string, string>(); - d.Add(attr.key, ""); - Control.Ins.SendWriteCommand(device, d); - - new System.Threading.Thread(() => - { - System.Threading.Thread.Sleep(2000); - Application.RunOnMainThread(() => - { - btn.IsSelected = false; - }); - }) - { IsBackground = true }.Start(); - }; - - } - - index++; - } - - dialog.Show(); - } - #endregion @@ -975,22 +542,12 @@ } LoadDiv_ChangeModeView(); }; - //鎵鏀瑰彉妯″紡 - btnSwing.MouseUpEventHandler = (sender, e) => - { - if (device.trait_on_off.curValue.ToString() == "off") - { - return; - } - LoadDiv_ChangeSwingView(); - }; btnWindSpeed.MouseUpEventHandler = (sender, e) => { - if (device.trait_on_off.curValue.ToString() == "off") - { - return; - } - LoadDiv_ChangeFanView(); + var page = new CacHistoryChoosePage(device); + MainPage.BasePageView.AddChidren(page); + page.InitView(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }; btnSwitch.MouseUpEventHandler = (sender, e) => @@ -1042,13 +599,9 @@ } else { - btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.RoomTemp).Replace(",", "."))) + "掳C"; - btnMode.SelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode)); - btnSwing.SelectedImagePath = acFunction.GetSwingIconPath(device.GetAttrState(FunctionAttributeKey.Swing)); - btnWindSpeed.SelectedImagePath = acFunction.GetFanIconPath(device.GetAttrState(FunctionAttributeKey.FanSpeed)); - btnMode.UnSelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode), false); - btnSwing.UnSelectedImagePath = acFunction.GetSwingIconPath(device.GetAttrState(FunctionAttributeKey.Swing), false); - btnWindSpeed.UnSelectedImagePath = acFunction.GetFanIconPath(device.GetAttrState(FunctionAttributeKey.FanSpeed), false); + btnIndoorTemp.Text = Language.StringByID(StringId.IndoorTemp) + Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.RoomTemp).Replace(",", "."))) + "掳C" + + Language.StringByID(StringId.Humidity) + Convert.ToInt32(Convert.ToDouble(device.GetAttrState("room_humidity").Replace(", ", "."))) + "%"; + btnMode.UnSelectedImagePath = acFunction.GetModeIconPath(device.GetAttrState(FunctionAttributeKey.Mode)); temp = Convert.ToInt32(Convert.ToDouble(device.GetAttrState(FunctionAttributeKey.SetTemp).Replace(",", "."))); @@ -1057,7 +610,6 @@ if (device.trait_on_off.curValue.ToString() == "on") { - btnMode.IsSelected = btnSwing.IsSelected = btnWindSpeed.IsSelected = true; arcBar.IsOffline = false; btnSwitch.IsSelected = true; arcBar.ThumbImagePath = "FunctionIcon/AC/DiyThumbIconOn.png"; @@ -1072,7 +624,6 @@ } else { - btnMode.IsSelected = btnSwing.IsSelected = btnWindSpeed.IsSelected = false; arcBar.IsOffline = true; btnSwitch.IsSelected = false; arcBar.IsClickable = false; diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacDayHistoryPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacDayHistoryPage.cs new file mode 100644 index 0000000..6a8adb8 --- /dev/null +++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacDayHistoryPage.cs @@ -0,0 +1,165 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.DAL.Server; +using HDL_ON.Entity; +using HDL_ON.UI.CSS; +using Shared; + +namespace HDL_ON.UI +{ + public class CacDayHistoryPage : FrameLayout + { + CacDayHistoryPage bodyView; + EchartsOption_BrokenLine brokenLine; + MyEchartsViewOn myEchartsView_Line; + string curQueryType = "hour"; + public CacDayHistoryPage() + { + bodyView = this; + } + + + /// <summary> + /// + /// </summary> + public void InitView() + { + new TopViewDiv(bodyView, Language.StringByID(StringId.StatisticalChart24Hour)).LoadTopView(); + bodyView.BackgroundColor = CSS_Color.BackgroundColor; + + var contentView = new FrameLayout() + { + Y = Application.GetRealHeight(64), + Height = Application.GetRealHeight(603), + }; + bodyView.AddChidren(contentView); + + + var historyDataView = new FrameLayout() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealWidth(52), + Height = Application.GetRealWidth(350), + }; + contentView.AddChidren(historyDataView); + + + brokenLine = new EchartsOption_BrokenLine(); + + myEchartsView_Line = new MyEchartsViewOn() + { + Y = Application.GetRealWidth(10), + Height = Application.GetRealWidth(338), + }; + historyDataView.AddChidren(myEchartsView_Line); + + +#if DEBUG + + List<string> vs = new List<string>() { + "1","2","3","4","5","6","7","8","9","10","11","12","13","14" + }; + brokenLine.InitXdataText(vs); + brokenLine.InitYdataText("yData", new List<EnvironmentalSensorHistor>() { + new EnvironmentalSensorHistor{ fieldName = "1", fieldValue= "23" }, + new EnvironmentalSensorHistor{ fieldName = "2", fieldValue= "22" }, + new EnvironmentalSensorHistor{ fieldName = "3", fieldValue= "-11" }, + new EnvironmentalSensorHistor{ fieldName = "4", fieldValue= "21" }, + new EnvironmentalSensorHistor{ fieldName = "5", fieldValue= "-41" }, + new EnvironmentalSensorHistor{ fieldName = "6", fieldValue= "23" }, + new EnvironmentalSensorHistor{ fieldName = "7", fieldValue= "-31" }, + new EnvironmentalSensorHistor{ fieldName = "8", fieldValue= "-23" }, + new EnvironmentalSensorHistor{ fieldName = "9", fieldValue= "-11" }, + new EnvironmentalSensorHistor{ fieldName = "10", fieldValue= "-21" }, + new EnvironmentalSensorHistor{ fieldName = "11", fieldValue= "24" }, + new EnvironmentalSensorHistor{ fieldName = "12", fieldValue= "41" }, + new EnvironmentalSensorHistor{ fieldName = "13", fieldValue= "32" }, + new EnvironmentalSensorHistor{ fieldName = "14", fieldValue= "23" } + }, "#FF9D54"); + brokenLine.yTitle = "(鈩�)"; + brokenLine.xTitle = ""; + if (curQueryType != "hour") + { + brokenLine.xTitle = Language.StringByID(StringId.Date); + } + var opString = brokenLine.InitOption(); + + myEchartsView_Line.ShowWithOption(opString); +#endif + } + + /// <summary> + /// 璇诲彇鍘嗗彶鏁版嵁 + /// </summary> + void LoadMothed_GetHistoryData(Function sr, bool isDel) + { + + var loadPage = new Loading() + { + LodingBackgroundColor = 0x88888888, + }; + bodyView.AddChidren(loadPage); + + new System.Threading.Thread(() => + { + try + { + Application.RunOnMainThread(() => + { + loadPage.Start(Language.StringByID(StringId.PleaseWait)); + }); + + var sensorType = sr.spk.Split(".")[1]; + var revertObj = new HttpServerRequest().GetSensorHistory(curQueryType, sr.deviceId, "total_electricity"); + if (revertObj != null) + { + if (revertObj.Code == StateCode.SUCCESS) + { + var revertData = Newtonsoft.Json.JsonConvert.DeserializeObject<List<EnvironmentalSensorHistor>>(revertObj.Data.ToString()); + + List<string> vs = new List<string>(); + if (brokenLine.YvalueText == "") + { + foreach (var data in revertData) + { + vs.Add(data.fieldName); + } + brokenLine.InitXdataText(vs); + } + if (sr.GetAttribute("ydata") == null) + { + sr.attributes.Add(new FunctionAttributes() { key = "ydata" }); + } + sr.SetAttrState("ydata", brokenLine.InitYdataText(sr.name, revertData, sr.GetAttrState("color")) + ","); + } + } + brokenLine.yTitle = Language.StringByID(StringId.EnergyConsumption) + "(kW)"; + brokenLine.xTitle = Language.StringByID(StringId.timeMode); + if (curQueryType != "hour") + { + brokenLine.xTitle = Language.StringByID(StringId.Date); + } + var opString = brokenLine.InitOption(); + + Application.RunOnMainThread(() => + { + myEchartsView_Line.ShowWithOption(opString); + }); + } + catch (Exception ex) + { + MainPage.Log($"sensor history error : {ex.Message}"); + } + finally + { + Application.RunOnMainThread(() => + { + loadPage.Hide(); + }); + } + }) + { IsBackground = true }.Start(); + } + + } +} diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacHistoryChoosePage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacHistoryChoosePage.cs new file mode 100644 index 0000000..24d02f0 --- /dev/null +++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacHistoryChoosePage.cs @@ -0,0 +1,108 @@ +锘縰sing System; +using HDL_ON.Entity; +using HDL_ON.UI.CSS; +using Shared; +namespace HDL_ON.UI +{ + /// <summary> + /// 娓╂帶鍣ㄥ巻鍙叉暟鎹樉绀洪�夋嫨鐣岄潰 + /// </summary> + public class CacHistoryChoosePage : FrameLayout + { + FrameLayout bodyView; + Function device; + public CacHistoryChoosePage(Function function) + { + device = function; + bodyView = this; + } + + public void InitView() + { + new TopViewDiv(bodyView, Language.StringByID(StringId.Data)).LoadTopView(); + bodyView.BackgroundColor = CSS_Color.BackgroundColor; + + FrameLayout tempView = new FrameLayout() + { + Y = Application.GetRealHeight(64), + Height = Application.GetRealHeight(50), + BackgroundColor = CSS_Color.MainBackgroundColor, + }; + bodyView.AddChidren(tempView); + + Button btnTempRight = new Button() + { + X = Application.GetRealWidth(339), + Gravity = Gravity.CenterVertical, + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "Public/Right.png", + }; + tempView.AddChidren(btnTempRight); + + Button btnTempLine = new Button() + { + Y = Application.GetRealHeight(49), + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(1), + BackgroundColor = CSS_Color.DividingLineColor + }; + tempView.AddChidren(btnTempLine); + + Button btnTempName = new Button() + { + X = Application.GetRealWidth(16), + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextID = StringId.TemperatureStatistics + }; + tempView.AddChidren(btnTempName); + btnTempName.MouseUpEventHandler = (sender, e) => { + var page = new CacWeekHistoryPage(device,"temp"); + MainPage.BasePageView.AddChidren(page); + page.InitView(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + + + + FrameLayout humidityView = new FrameLayout() + { + Y = Application.GetRealHeight(64 + 50), + Height = Application.GetRealHeight(50), + BackgroundColor = CSS_Color.MainBackgroundColor, + }; + bodyView.AddChidren(humidityView); + + Button btnHumidityRight = new Button() + { + X = Application.GetRealWidth(339), + Gravity = Gravity.CenterVertical, + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "Public/Right.png", + }; + humidityView.AddChidren(btnHumidityRight); + + Button btnHumidityName = new Button() + { + X = Application.GetRealWidth(16), + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextID = StringId.HumidityStatistics + }; + humidityView.AddChidren(btnHumidityName); + btnHumidityName.MouseUpEventHandler = (sender, e) => { + var page = new CacWeekHistoryPage(device, "humidity"); + MainPage.BasePageView.AddChidren(page); + page.InitView(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + + + } + } +} diff --git a/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacWeekHistoryPage.cs b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacWeekHistoryPage.cs new file mode 100644 index 0000000..071bc9d --- /dev/null +++ b/HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/CacWeekHistoryPage.cs @@ -0,0 +1,342 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.DAL.Server; +using HDL_ON.Entity; +using HDL_ON.Stan; +using HDL_ON.UI.CSS; +using Shared; + +namespace HDL_ON.UI +{ + public class CacWeekHistoryPage : FrameLayout + { + + CacWeekHistoryPage bodyView; + Function device; + /// <summary> + /// 鏁版嵁鏄剧ず绫诲瀷 + /// temp 娓╁害 + /// humidity 婀垮害 + /// </summary> + string showType; + public CacWeekHistoryPage(Function device,string type) + { + bodyView = this; + this.device = device; + showType = type; + BackgroundColor = CSS_Color.BackgroundColor; + } + + public void InitView() + { + new TopViewDiv(bodyView, "鏁版嵁").LoadTopView(); + + + InitContentView(); + } + + + private void InitContentView() + { + FrameLayout contentView = new FrameLayout() + { + Y = Application.GetRealHeight(80), + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(482), + BackgroundColor = CSS_Color.MainBackgroundColor, + Radius = (uint)Application.GetRealWidth(5) + }; + bodyView.AddChidren(contentView); + + Button btnTitle = new Button() + { + Height = Application.GetRealHeight(60), + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.TextFontSize, + TextAlignment = TextAlignment.Center, + Text = "鏈�杩�7澶╂瘡澶╁钩鍧囧鍐呮俯搴︾粺璁″浘" + }; + contentView.AddChidren(btnTitle); + + FrameLayout dataView = new FrameLayout() + { + Y = Application.GetRealHeight(69), + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(293), + Height = Application.GetRealHeight(336), + }; + contentView.AddChidren(dataView); + + Button btnUnit = new Button() + { + Height = Application.GetRealHeight(15), + TextAlignment = TextAlignment.CenterLeft, + TextColor = 0xFF43425D, + TextSize = 8, + Text = "鍗曚綅锛氣剝" + }; + dataView.AddChidren(btnUnit); + + Dictionary<string, int> dataDic = new Dictionary<string, int>(); +#if DEBUG + dataDic.Add("0201", 20); + dataDic.Add("0202", -20); + dataDic.Add("0203", 10); + dataDic.Add("0204", 40); + dataDic.Add("0205", 20); + dataDic.Add("0206", 20); + dataDic.Add("0207", 20); + + //dataDic.Add("0201", -20); + //dataDic.Add("0202", -20); + //dataDic.Add("0203", -20); + //dataDic.Add("0204", -40); + //dataDic.Add("0205", -20); + //dataDic.Add("0206", -20); + //dataDic.Add("0207", -20); +#endif + + DataItemView dataShowView = new DataItemView("0"); + dataShowView.Height = Application.GetRealHeight(157 * 2 + 1); + dataShowView.Y = Application.GetRealHeight(21); + + List<string> items = new List<string>() + { + "50","40","30","20","10","0","-10","-20","-30","-40","-50" + }; + int index = 0; + foreach(var item in items) + { + DataItemView dataItemView; + if(item == "0") + { + dataItemView = dataShowView; + } + else + { + dataItemView = new DataItemView(item); + dataItemView.Y = index * Application.GetRealHeight(30) + Application.GetRealHeight(15); + } + dataItemView.InitView(); + dataView.AddChidren(dataItemView); + index++; + } + + RefrshDataView(dataDic, dataShowView); + + { + var dateHorView = new HorizontalScrolViewLayout() + { + X = Application.GetRealWidth(51), + Y = dataView.Bottom + Application.GetRealHeight(11), + Width = Application.GetRealWidth(267), + Height = Application.GetRealHeight(26), + }; + contentView.AddChidren(dateHorView); + + foreach(var dic in dataDic) + { + FrameLayout dateView = new FrameLayout() + { + Width = Application.GetRealWidth(39), + Height = Application.GetRealHeight(26), + }; + dateHorView.AddChidren(dateView); + + Button btnLineh = new Button() + { + Width = 1, + Height = Application.GetRealHeight(4), + Gravity = Gravity.CenterHorizontal, + BackgroundColor = 0xFFDBDBDB + }; + dateView.AddChidren(btnLineh); + + Button btnDate = new Button() + { + Y = Application.GetRealHeight(12), + Height = Application.GetRealHeight(14), + TextColor = 0xFF43425D, + TextSize = 10, + Text = dic.Key, + }; + dateView.AddChidren(btnDate); + } + + } + + Button btnTip = new Button() + { + Y = contentView.Bottom + Application.GetRealHeight(28), + Height = Application.GetRealHeight(20), + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, + TextAlignment = TextAlignment.Center, + Text = "*鍙�氳繃鐐瑰嚮鏌卞舰鍥炬煡鐪嬪綋澶�24灏忔椂娓╁害缁熻" + }; + bodyView.AddChidren(btnTip); + + + new System.Threading.Thread(() => { + var revertObj = new HttpServerRequest().GetSensorHistory("week", device.deviceId, "room_temp"); + + }) { IsBackground = true }.Start(); + } + + void RefrshDataView(Dictionary<string,int> dataDic, DataItemView dataShowView) + { + int valueIndex = 0; + foreach (var data in dataDic) + { + ColumnarView cv = new ColumnarView(data.Value); + cv.X = Application.GetRealWidth(valueIndex * 38 + 25); + cv.InitView(); + dataShowView.AddChidren(cv); + cv.Clicker(); + + + valueIndex++; + } + } + + + + } + + class DataItemView : FrameLayout + { + string value; + + public DataItemView(string value) + { + this.value = value; + Width = Application.GetRealWidth(293); + Height = Application.GetRealHeight(30); + } + + public void InitView() { + + Button btnValue = new Button() + { + Gravity = Gravity.CenterVertical, + Width = Application.GetRealWidth(18), + Height = Application.GetRealHeight(30), + TextAlignment = TextAlignment.CenterRight, + TextColor = 0xFF43425D, + TextSize = 8, + Text = value + }; + AddChidren(btnValue); + + Button btnLine = new Button() + { + Gravity = Gravity.CenterVertical, + X = Application.GetRealWidth(26), + Width = Application.GetRealWidth(267), + Height = 1, + BackgroundColor = CSS_Color.DividingLineColor, + }; + AddChidren(btnLine); + + + + + + } + } + + class ColumnarView : VerticalScrolViewLayout + { + int value; + /// <summary> + /// 鏂瑰悜锛氬悜涓娿�佸悜涓� + /// </summary> + bool isUpward; + Button btnValue; + Button btnValueText; + + + public ColumnarView(int value) + { + this.isUpward = value >= 0; + if (isUpward) + { + this.value = value; + } + else + { + this.value = value * -1; + } + Width = Application.GetRealWidth(39); + Height = Application.GetRealHeight(value * 3 + 30); + } + + public void InitView() + { + int yValue = 0; + btnValue = new Button() + { + Gravity = Gravity.CenterHorizontal, + Height = Application.GetRealHeight(value * 3), + Width = Application.GetRealWidth(16), + BackgroundColor = 0xFFFF9D54, + }; + + btnValueText = new Button() + { + Height = Application.GetRealHeight(30), + TextSize = CSS_FontSize.PromptFontSize_FirstLevel, + TextColor = 0xFF43425D, + Text = value + "鈩�", + }; + AddChidren(btnValueText); + + + if (isUpward) + { + //btnValue.Height += Application.GetRealHeight(1); + yValue = 158 - 30 - value * 3; + yValue = yValue > 0 ? yValue : 158; + Y = Application.GetRealHeight(yValue); + AddChidren(btnValueText); + AddChidren(btnValue); + } + else + { + btnValue.Height += Application.GetRealHeight(2); + Y = Application.GetRealHeight(157); + AddChidren(btnValue); + AddChidren(btnValueText); + } + + + + + + + + + + + } + + public void Clicker() + { + btnValue.MouseUpEventHandler = (sender, e) => + { + var page = new CacDayHistoryPage(); + MainPage.BasePageView.AddChidren(page); + page.InitView(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + btnValueText.MouseUpEventHandler = (sender, e) => + { + var page = new CacDayHistoryPage(); + MainPage.BasePageView.AddChidren(page); + page.InitView(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + } + } +} diff --git a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EchartsOption_BrokenLine.cs b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EchartsOption_BrokenLine.cs index c022001..b41bbcf 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EchartsOption_BrokenLine.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EchartsOption_BrokenLine.cs @@ -4,7 +4,7 @@ namespace HDL_ON.UI { /// <summary> - /// 鏇茬嚎鍥� + /// 鏇茬嚎鍥炬暟鎹� /// </summary> public class EchartsOption_BrokenLine { diff --git a/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs b/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs index feb241d..bf7e271 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs @@ -365,6 +365,57 @@ #endregion } + + if (function.spk == SPK.HvacCac) + { + #region 姣涚粏绌鸿皟 + var energyView1 = new FrameLayout() + { + Height = Application.GetRealHeight(55), + BackgroundColor = CSS_Color.MainBackgroundColor, + }; + contentView.AddChidren(energyView1); + + var btnEnergyText1 = new Button() + { + X = Application.GetRealWidth(16), + Width = Application.GetRealWidth(160), + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.FirstLevelTitleColor, + TextSize = CSS_FontSize.SubheadingFontSize, + TextID = StringId.DewPointTemp, + }; + energyView1.AddChidren(btnEnergyText1); + + + double realTimePower = 0; + double.TryParse(function.GetAttrState("dew_point_temp"), out realTimePower); + + var energyValue1 = new Button() + { + Width = Application.GetRealWidth(355), + TextAlignment = TextAlignment.CenterRight, + TextSize = CSS_FontSize.TextFontSize, + TextColor = CSS_Color.PromptingColor1, + Text = realTimePower + "掳C", + }; + energyView1.AddChidren(energyValue1); + + energyView1.AddChidren( + new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(54), + BackgroundColor = CSS_Color.DividingLineColor, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(1) + }); + //----------------- + + #endregion + } + + LoadEventList(); } -- Gitblit v1.8.0