From 179c377723a79384efed619e0a5880390998035e Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期二, 03 九月 2024 19:45:26 +0800 Subject: [PATCH] 金茂备份 --- HDL_ON/UI/UI2/FuntionControlView/Acst/InverterJinmaoHistroyPage.cs | 1008 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 1,001 insertions(+), 7 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Acst/InverterJinmaoHistroyPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Acst/InverterJinmaoHistroyPage.cs index 87ae412..119e878 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Acst/InverterJinmaoHistroyPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Acst/InverterJinmaoHistroyPage.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; +using HDL_ON.DAL.Server; using HDL_ON.Entity; using HDL_ON.UI.CSS; using Shared; @@ -10,7 +11,41 @@ public class InverterJinmaoHistroyPage : FrameLayout { InverterJinmaoHistroyPage bodyView; - Function device; + Function function; + FrameLayout infoView1; + EchartsOption_Histogram echartOption1; + MyEchartsViewOn infoView1_EchartsView; + Button infoView1_Date_Day; + Button infoView1_Date_Month; + Button infoView1_Date_Year; + Button infoView1_DateInfo_PreClickButton; + Button infoView1_DateInfo_DateTextButton; + Button infoView1_DateInfo_NextClickButton; + Button infoView1_DateInfo_NextIconButton; + Button infoView1_DateInfo_PreIconButton; + QueryType queryType1 = QueryType.day_hour; + int queryTime_Day1 = DateTime.Now.Day; + int queryTime_Month1 = DateTime.Now.Month; + int queryTime_Year1 = DateTime.Now.Year; + string queryTimeString1 = DateTime.Now.ToString("yyyy/MM/dd"); + + + FrameLayout infoView2; + MyEchartsViewOn infoView2_EchartsView; + EchartsOption_Histogram echartOption2; + Button infoView2_Date_Day; + Button infoView2_Date_Month; + Button infoView2_Date_Year; + Button infoView2_DateInfo_PreClickButton; + Button infoView2_DateInfo_DateTextButton; + Button infoView2_DateInfo_NextClickButton; + Button infoView2_DateInfo_NextIconButton; + Button infoView2_DateInfo_PreIconButton; + QueryType queryType2 = QueryType.day_hour; + int queryTime_Day2 = DateTime.Now.Day; + int queryTime_Month2 = DateTime.Now.Month; + int queryTime_Year2 = DateTime.Now.Year; + string queryTimeString2 = DateTime.Now.ToString("yyyy/MM/dd"); /// <summary> @@ -18,10 +53,10 @@ /// </summary> MyEchartsViewOn tempEchartsView; - public InverterJinmaoHistroyPage(Function function) + public InverterJinmaoHistroyPage(Function deviceFunction) { bodyView = this; - device = function; + function = deviceFunction; } public void LoadPage() @@ -149,7 +184,7 @@ Gravity = Gravity.Center, Width = Application.GetRealWidth(200), TextAlignment = TextAlignment.Center, - Text = "2024-8-12", + Text = DateTime.Now.ToString("yyyy-MM-dd"), TextColor = CSS_Color.FirstLevelTitleColor, IsBold = true, TextSize = 16, @@ -169,6 +204,7 @@ var infoView1_DateInfo_NextClickButton = new Button() { + X = Application.GetRealWidth(343 - 18 - 6 -32), Width = Application.GetRealWidth(32 + 6), }; infoView1_DateInfoView.AddChidren(infoView1_DateInfo_NextClickButton); @@ -185,7 +221,7 @@ var echartOption = new EchartsOption_Histogram(); echartOption.xTitle = "鏃堕棿"; - echartOption.yTitle = "娓╁害锛堚剝锛�"; + echartOption.yTitle = "鐢甸噺锛坘w锛�"; echartOption.InitXdataText(new List<string>() { "21","22","23","24","25","26","26","27","28","29", @@ -353,7 +389,7 @@ Gravity = Gravity.Center, Width = Application.GetRealWidth(200), TextAlignment = TextAlignment.Center, - Text = "2024-8-12", + Text = DateTime.Now.ToString("yyyy-MM-dd"), TextColor = CSS_Color.FirstLevelTitleColor, IsBold = true, TextSize = 16, @@ -373,6 +409,7 @@ var infoView2_DateInfo_NextClickButton = new Button() { + X = Application.GetRealWidth(343 - 18 - 6 -32), Width = Application.GetRealWidth(32 + 6), }; infoView2_DateInfoView.AddChidren(infoView2_DateInfo_NextClickButton); @@ -389,7 +426,7 @@ var echartOption2 = new EchartsOption_Histogram(); echartOption2.xTitle = "鏃堕棿"; - echartOption2.yTitle = "娓╁害锛堚剝锛�"; + echartOption2.yTitle = "鐢甸噺锛坘w锛�"; echartOption2.InitXdataText(new List<string>() { "21","22","23","24","25","26","26","27","28","29", @@ -444,8 +481,965 @@ { Height = Application.GetRealWidth(26) }); + + initQueryButton(); } + + + /// <summary> + /// 璇诲彇娓╁害鍊煎巻鍙叉暟鎹� + /// hour=杩�24灏忔椂銆乨ay_hour =鏌愭棩24灏忔椂銆亀eek=杩戜竴鍛ㄣ�乵onth = 杩戜竴鏈堛�乧ustom_month=鏌愬勾鏌愭湀 y/M銆乧ustom_year=鏌愬勾 y + /// </summary> + private void getTempHistory() + { + if (MainPage.NoLoginMode) + { + return; + } + + var loadPage = new Loading() + { + LodingBackgroundColor = 0x88888888, + }; + infoView1.AddChidren(loadPage); + + new System.Threading.Thread(() => + { + try + { + Application.RunOnMainThread(() => + { + loadPage.Start(Language.StringByID(StringId.PleaseWait)); + }); + + switch (queryType1) + { + case QueryType.day_hour: + queryTimeString1 = queryTime_Year1.ToString() + "/" + queryTime_Month1 + "/" + queryTime_Day1; + break; + case QueryType.custom_month: + queryTimeString1 = queryTime_Year1.ToString() + "/" + queryTime_Month1; + break; + case QueryType.custom_year: + queryTimeString1 = queryTime_Year1.ToString(); + break; + } + + var revertObj = new HttpServerRequest().GetSensorHistory(queryType1.ToString(), function.deviceId, InverterJinmao_AttrEnum.pv_electricity.ToString(), queryTimeString1); + 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>(); + foreach (var data in revertData) + { + vs.Add(data.fieldName); + } + echartOption1.InitXdataText(vs); + echartOption1.InitYdataText(revertData); + + Application.RunOnMainThread(() => + { + infoView1_EchartsView.ShowWithOption(echartOption1.InitOption()); + }); + } + } + } + catch (Exception ex) + { + MainPage.Log($"history error : {ex.Message}"); + } + finally + { + Application.RunOnMainThread(() => + { + loadPage.Hide(); + }); + } + }) + { IsBackground = true }.Start(); + + } + /// <summary> + /// 鑾峰彇鐢ㄦ按閲忓巻鍙茶褰� + /// </summary> + private void getWaterHistory() + { + if (MainPage.NoLoginMode) + { + return; + } + var loadPage = new Loading() + { + LodingBackgroundColor = 0x88888888, + }; + infoView2.AddChidren(loadPage); + + new System.Threading.Thread(() => + { + try + { + Application.RunOnMainThread(() => + { + loadPage.Start(Language.StringByID(StringId.PleaseWait)); + }); + switch (queryType2) + { + case QueryType.day_hour: + queryTimeString2 = queryTime_Year2.ToString() + "/" + queryTime_Month2 + "/" + queryTime_Day2; + break; + case QueryType.custom_month: + queryTimeString2 = queryTime_Year2.ToString() + "/" + queryTime_Month2; + break; + case QueryType.custom_year: + queryTimeString2 = queryTime_Year2.ToString(); + break; + } + + var revertObj = new HttpServerRequest().GetSensorHistory(queryType2.ToString(), function.deviceId, InverterJinmao_AttrEnum.load_electricity.ToString(), queryTimeString2); + 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>(); + foreach (var data in revertData) + { + vs.Add(data.fieldName); + } + echartOption2.InitXdataText(vs); + echartOption2.InitYdataText(revertData); + + Application.RunOnMainThread(() => + { + infoView2_EchartsView.ShowWithOption(echartOption2.InitOption()); + }); + } + } + } + catch (Exception ex) + { + MainPage.Log($"history 2 error : {ex.Message}"); + } + finally + { + Application.RunOnMainThread(() => + { + loadPage.Hide(); + }); + } + }) + { IsBackground = true }.Start(); + + } + + private void initQueryButton() + { + infoView1_DateInfo_DateTextButton.MouseUpEventHandler = (sender, e) => + { + SetTempQureyDateDialog(); + }; + infoView1_DateInfo_PreClickButton.MouseUpEventHandler = (sender, e) => { + var tempQueryDate = new DateTime(queryTime_Year1, queryTime_Month1, queryTime_Day1); + if (queryType1 == QueryType.day_hour) + { + tempQueryDate = tempQueryDate.AddDays(-1); + if (tempQueryDate.Year == 2023 && tempQueryDate.Month == 1 && tempQueryDate.Day == 1) + { + infoView1_DateInfo_PreIconButton.Visible = false; + infoView1_DateInfo_PreClickButton.Enable = false; + } + if (tempQueryDate.Year == DateTime.Now.Year && tempQueryDate.Month == DateTime.Now.Month && tempQueryDate.Day == DateTime.Now.Day - 1) + { + infoView1_DateInfo_NextIconButton.Visible = true; + infoView1_DateInfo_NextClickButton.Enable = true; + } + } + else if (queryType1 == QueryType.custom_month) + { + tempQueryDate = tempQueryDate.AddMonths(-1); + if (tempQueryDate.Year == 2023 && tempQueryDate.Month == 1) + { + infoView1_DateInfo_PreIconButton.Visible = false; + infoView1_DateInfo_PreClickButton.Enable = false; + } + if (tempQueryDate.Year == DateTime.Now.Year && tempQueryDate.Month == DateTime.Now.Month - 1) + { + infoView1_DateInfo_NextIconButton.Visible = true; + infoView1_DateInfo_NextClickButton.Enable = true; + } + } + else if (queryType1 == QueryType.custom_year) + { + tempQueryDate = tempQueryDate.AddYears(-1); + if (tempQueryDate.Year == 2023) + { + infoView1_DateInfo_PreIconButton.Visible = false; + infoView1_DateInfo_PreClickButton.Enable = false; + } + if (tempQueryDate.Year == DateTime.Now.Year - 1) + { + infoView1_DateInfo_NextIconButton.Visible = true; + infoView1_DateInfo_NextClickButton.Enable = true; + } + } + queryTime_Year1 = tempQueryDate.Year; + queryTime_Month1 = tempQueryDate.Month; + queryTime_Day1 = tempQueryDate.Day; + infoView1_DateInfo_DateTextButton.Text = tempQueryDate.ToString("yyyy-MM-dd"); + getTempHistory(); + }; + infoView1_DateInfo_NextIconButton.Visible = false; + infoView1_DateInfo_NextClickButton.Enable = false; + infoView1_DateInfo_NextClickButton.MouseUpEventHandler = (sender, e) => { + var tempQueryDate = new DateTime(queryTime_Year1, queryTime_Month1, queryTime_Day1); + if (queryType1 == QueryType.day_hour) + { + tempQueryDate = tempQueryDate.AddDays(1); + if (tempQueryDate.Year == 2023 && tempQueryDate.Month == 1 && tempQueryDate.Day == 2) + { + infoView1_DateInfo_PreIconButton.Visible = true; + infoView1_DateInfo_PreClickButton.Enable = true; + } + if (tempQueryDate.Year == DateTime.Now.Year && tempQueryDate.Month == DateTime.Now.Month && tempQueryDate.Day == DateTime.Now.Day) + { + infoView1_DateInfo_NextIconButton.Visible = false; + infoView1_DateInfo_NextClickButton.Enable = false; + } + } + else if (queryType1 == QueryType.custom_month) + { + tempQueryDate = tempQueryDate.AddMonths(1); + if (tempQueryDate.Year == 2023 && tempQueryDate.Month == 2) + { + infoView1_DateInfo_PreIconButton.Visible = true; + infoView1_DateInfo_PreClickButton.Enable = true; + } + if (tempQueryDate.Year == DateTime.Now.Year && tempQueryDate.Month == DateTime.Now.Month) + { + infoView1_DateInfo_NextIconButton.Visible = false; + infoView1_DateInfo_NextClickButton.Enable = false; + } + } + else if (queryType1 == QueryType.custom_year) + { + tempQueryDate = tempQueryDate.AddYears(1); + if (tempQueryDate.Year == 2023) + { + infoView1_DateInfo_PreIconButton.Visible = false; + infoView1_DateInfo_PreClickButton.Enable = false; + } + if (tempQueryDate.Year == DateTime.Now.Year) + { + infoView1_DateInfo_NextIconButton.Visible = false; + infoView1_DateInfo_NextClickButton.Enable = false; + } + } + queryTime_Year1 = tempQueryDate.Year; + queryTime_Month1 = tempQueryDate.Month; + queryTime_Day1 = tempQueryDate.Day; + infoView1_DateInfo_DateTextButton.Text = tempQueryDate.ToString("yyyy-MM-dd"); + getTempHistory(); + }; + + infoView1_Date_Day.MouseUpEventHandler = (sender, e) => { + if (infoView1_Date_Day.IsSelected) + { + return; + } + infoView1_Date_Day.IsSelected = true; + infoView1_Date_Month.IsSelected = false; + infoView1_Date_Year.IsSelected = false; + queryType1 = QueryType.day_hour; + infoView1_DateInfo_DateTextButton.Text = new DateTime(queryTime_Year1, queryTime_Month1, queryTime_Day1).ToString("yyyy-MM-dd"); + getTempHistory(); + }; + infoView1_Date_Month.MouseUpEventHandler = (sender, e) => { + if (infoView1_Date_Month.IsSelected) + { + return; + } + infoView1_Date_Day.IsSelected = false; + infoView1_Date_Month.IsSelected = true; + infoView1_Date_Year.IsSelected = false; + queryType1 = QueryType.custom_month; + infoView1_DateInfo_DateTextButton.Text = new DateTime(queryTime_Year1, queryTime_Month1, queryTime_Day1).ToString("yyyy-MM"); + getTempHistory(); + }; + infoView1_Date_Year.MouseUpEventHandler = (sender, e) => { + if (infoView1_Date_Year.IsSelected) + { + return; + } + infoView1_Date_Day.IsSelected = false; + infoView1_Date_Month.IsSelected = false; + infoView1_Date_Year.IsSelected = true; + queryType1 = QueryType.custom_year; + infoView1_DateInfo_DateTextButton.Text = queryTime_Year1.ToString(); + getTempHistory(); + }; + //-----------鐢ㄦ按 + infoView2_DateInfo_DateTextButton.MouseUpEventHandler = (sender, e) => + { + SetWaterQureyDateDialog(); + }; + infoView2_DateInfo_PreClickButton.MouseUpEventHandler = (sender, e) => { + var waterQueryDate = new DateTime(queryTime_Year2, queryTime_Month2, queryTime_Day2); + if (queryType2 == QueryType.day_hour) + { + waterQueryDate = waterQueryDate.AddDays(-1); + if (waterQueryDate.Year == 2023 && waterQueryDate.Month == 1 && waterQueryDate.Day == 1) + { + infoView2_DateInfo_PreIconButton.Visible = false; + infoView2_DateInfo_PreClickButton.Enable = false; + } + if (waterQueryDate.Year == DateTime.Now.Year && waterQueryDate.Month == DateTime.Now.Month && waterQueryDate.Day == DateTime.Now.Day - 1) + { + infoView2_DateInfo_NextIconButton.Visible = true; + infoView2_DateInfo_NextClickButton.Enable = true; + } + } + else if (queryType2 == QueryType.custom_month) + { + waterQueryDate = waterQueryDate.AddMonths(-1); + if (waterQueryDate.Year == 2023 && waterQueryDate.Month == 1) + { + infoView2_DateInfo_PreIconButton.Visible = false; + infoView2_DateInfo_PreClickButton.Enable = false; + } + if (waterQueryDate.Year == DateTime.Now.Year && waterQueryDate.Month == DateTime.Now.Month - 1) + { + infoView2_DateInfo_NextIconButton.Visible = true; + infoView2_DateInfo_NextClickButton.Enable = true; + } + } + else if (queryType2 == QueryType.custom_year) + { + waterQueryDate = waterQueryDate.AddYears(-1); + if (waterQueryDate.Year == 2023) + { + infoView2_DateInfo_PreIconButton.Visible = false; + infoView2_DateInfo_PreClickButton.Enable = false; + } + if (waterQueryDate.Year == DateTime.Now.Year - 1) + { + infoView2_DateInfo_NextIconButton.Visible = true; + infoView2_DateInfo_NextClickButton.Enable = true; + } + } + queryTime_Year2 = waterQueryDate.Year; + queryTime_Month2 = waterQueryDate.Month; + queryTime_Day2 = waterQueryDate.Day; + infoView2_DateInfo_DateTextButton.Text = waterQueryDate.ToString("yyyy-MM-dd"); + getWaterHistory(); + }; + infoView2_DateInfo_NextIconButton.Visible = false; + infoView2_DateInfo_NextClickButton.Enable = false; + infoView2_DateInfo_NextClickButton.MouseUpEventHandler = (sender, e) => { + var waterQueryDate = new DateTime(queryTime_Year2, queryTime_Month2, queryTime_Day2); + if (queryType2 == QueryType.day_hour) + { + waterQueryDate = waterQueryDate.AddDays(1); + if (waterQueryDate.Year == 2023 && waterQueryDate.Month == 1 && waterQueryDate.Day == 2) + { + infoView2_DateInfo_PreIconButton.Visible = true; + infoView2_DateInfo_PreClickButton.Enable = true; + } + if (waterQueryDate.Year == DateTime.Now.Year && waterQueryDate.Month == DateTime.Now.Month && waterQueryDate.Day == DateTime.Now.Day) + { + infoView2_DateInfo_NextIconButton.Visible = false; + infoView2_DateInfo_NextClickButton.Enable = false; + } + } + else if (queryType2 == QueryType.custom_month) + { + waterQueryDate = waterQueryDate.AddMonths(1); + if (waterQueryDate.Year == 2023 && waterQueryDate.Month == 2) + { + infoView2_DateInfo_PreIconButton.Visible = true; + infoView2_DateInfo_PreClickButton.Enable = true; + } + if (waterQueryDate.Year == DateTime.Now.Year && waterQueryDate.Month == DateTime.Now.Month) + { + infoView2_DateInfo_NextIconButton.Visible = false; + infoView2_DateInfo_NextClickButton.Enable = false; + } + } + else if (queryType2 == QueryType.custom_year) + { + waterQueryDate = waterQueryDate.AddYears(1); + if (waterQueryDate.Year == 2023) + { + infoView2_DateInfo_PreIconButton.Visible = false; + infoView2_DateInfo_PreClickButton.Enable = false; + } + if (waterQueryDate.Year == DateTime.Now.Year) + { + infoView2_DateInfo_NextIconButton.Visible = false; + infoView2_DateInfo_NextClickButton.Enable = false; + } + } + queryTime_Year2 = waterQueryDate.Year; + queryTime_Month2 = waterQueryDate.Month; + queryTime_Day2 = waterQueryDate.Day; + infoView2_DateInfo_DateTextButton.Text = waterQueryDate.ToString("yyyy-MM-dd"); + getWaterHistory(); + }; + infoView2_Date_Day.MouseDownEventHandler = (sender, e) => { + if (infoView2_Date_Day.IsSelected) + { + return; + } + infoView2_Date_Day.IsSelected = true; + infoView2_Date_Month.IsSelected = false; + infoView2_Date_Year.IsSelected = false; + queryType2 = QueryType.day_hour; + infoView2_DateInfo_DateTextButton.Text = new DateTime(queryTime_Year2, queryTime_Month2, queryTime_Day2).ToString("yyyy-MM-dd"); + getWaterHistory(); + }; + infoView2_Date_Month.MouseDownEventHandler = (sender, e) => { + if (infoView2_Date_Month.IsSelected) + { + return; + } + infoView2_Date_Day.IsSelected = false; + infoView2_Date_Month.IsSelected = true; + infoView2_Date_Year.IsSelected = false; + queryType2 = QueryType.custom_month; + infoView2_DateInfo_DateTextButton.Text = new DateTime(queryTime_Year2, queryTime_Month2, queryTime_Day2).ToString("yyyy-MM"); + getWaterHistory(); + }; + infoView2_Date_Year.MouseDownEventHandler = (sender, e) => { + if (infoView2_Date_Year.IsSelected) + { + return; + } + infoView2_Date_Day.IsSelected = false; + infoView2_Date_Month.IsSelected = false; + infoView2_Date_Year.IsSelected = true; + queryType2 = QueryType.custom_year; + infoView2_DateInfo_DateTextButton.Text = queryTime_Year2.ToString(); + getWaterHistory(); + }; + + } + + /// <summary> + /// </summary> + public void SetTempQureyDateDialog() + { + var pickerItems_Year = new List<string>(); + List<string> pickerItems_Month = null; + List<string> pickerItems_Day = null; + + int item1 = queryTime_Year1; + int item2 = queryTime_Month1; + int item3 = queryTime_Day1; + + pickerItems_Year.Add("2023"); + while (DateTime.Now.Year > 2022 + pickerItems_Year.Count) + { + pickerItems_Year.Add((2023 + pickerItems_Year.Count).ToString()); + } + + if (queryType1 == QueryType.custom_month || queryType1 == QueryType.day_hour) + { + pickerItems_Month = new List<string>(); + if (queryTime_Year1 == DateTime.Now.Year) + { + int addMonth = 0; + while (DateTime.Now.Month > addMonth) + { + addMonth++; + pickerItems_Month.Add(addMonth.ToString()); + } + } + else + { + for (var i = 1; i < 13; i++) + { + pickerItems_Month.Add(i.ToString()); + } + } + if (queryType1 == QueryType.day_hour) + { + pickerItems_Day = new List<string>(); + if (queryTime_Month1 == DateTime.Now.Month) + { + int addDay = 0; + while (DateTime.Now.Day > addDay) + { + addDay++; + pickerItems_Day.Add(addDay.ToString()); + } + } + else + { + for (var i = 1; i <= DateTime.DaysInMonth(queryTime_Year1, queryTime_Month1); i++) + { + pickerItems_Day.Add(i.ToString()); + } + } + } + } + + Dialog dialog = new Dialog(); + + var pView = new FrameLayout() + { + BackgroundColor = CSS_Color.DialogTransparentColor1, + }; + dialog.AddChidren(pView); + + var optionBaseView = new FrameLayout() + { + Y = Application.GetRealHeight(456 - 60), + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(260), + AnimateSpeed = 0.3f, + Animate = Animate.DownToUp, + BackgroundColor = CSS_Color.MainBackgroundColor, + Radius = (uint)Application.GetRealWidth(12), + }; + pView.AddChidren(optionBaseView); + + var topView = new FrameLayout() + { + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(40), + BackgroundColor = CSS_Color.MainBackgroundColor, + Radius = (uint)Application.GetRealWidth(12), + }; + optionBaseView.AddChidren(topView); + topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor }); + + var btnCancel = new Button() + { + X = Application.GetRealWidth(21), + Width = Application.GetRealWidth(100), + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.TextFontSize, + TextID = StringId.Cancel, + }; + topView.AddChidren(btnCancel); + + var btnConfrim = new Button() + { + X = Application.GetRealWidth(160), + Width = Application.GetRealWidth(160), + TextAlignment = TextAlignment.CenterRight, + TextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.TextFontSize, + TextID = StringId.Confirm, + }; + topView.AddChidren(btnConfrim); + + UIPickerView uIPickerView = new UIPickerView() + { + Y = Application.GetRealHeight(40), + Height = Application.GetRealHeight(210), + Radius = (uint)Application.GetRealWidth(12), + }; + optionBaseView.AddChidren(uIPickerView); + uIPickerView.setNPicker(pickerItems_Year, pickerItems_Month, pickerItems_Day); + uIPickerView.setCurrentItems(pickerItems_Year.IndexOf(queryTime_Year1.ToString()), + pickerItems_Month == null ? 0 : pickerItems_Month.IndexOf(queryTime_Month1.ToString()), + pickerItems_Day == null ? 0 : pickerItems_Day.IndexOf(queryTime_Day1.ToString())); + + dialog.Show(); + + pView.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + }; + + btnCancel.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + }; + uIPickerView.OnSelectChangeEvent = (int1, int2, int3) => + { + if (pickerItems_Year[int1] != item1.ToString()) + { + int.TryParse(pickerItems_Year[int1], out item1); + if (queryType1 == QueryType.custom_month || queryType1 == QueryType.day_hour) + { + pickerItems_Month = new List<string>(); + if (item1 == DateTime.Now.Year) + { + int addMonth = 0; + while (DateTime.Now.Month > addMonth) + { + addMonth++; + pickerItems_Month.Add(addMonth.ToString()); + } + } + else + { + for (var i = 1; i < 13; i++) + { + pickerItems_Month.Add(i.ToString()); + } + } + if (queryType1 == QueryType.day_hour) + { + pickerItems_Day = new List<string>(); + if (item1 == DateTime.Now.Year && item2 == DateTime.Now.Month) + { + int addDay = 0; + while (DateTime.Now.Day > addDay) + { + addDay++; + pickerItems_Day.Add(addDay.ToString()); + } + } + else + { + for (var i = 1; i <= DateTime.DaysInMonth(item1, item2); i++) + { + pickerItems_Day.Add(i.ToString()); + } + } + } + } + uIPickerView.setNPicker(pickerItems_Year, pickerItems_Month, pickerItems_Day); + uIPickerView.setCurrentItems(pickerItems_Year.IndexOf(item1.ToString()), + pickerItems_Month == null ? 0 : pickerItems_Month.IndexOf(item2.ToString()), + pickerItems_Day == null ? 0 : pickerItems_Day.IndexOf(item3.ToString())); + + } + if (pickerItems_Month != null) + { + if (pickerItems_Month[int2] != item2.ToString()) + { + int.TryParse(pickerItems_Month[int2], out item2); + if (queryType1 == QueryType.day_hour) + { + pickerItems_Day = new List<string>(); + if (item1 == DateTime.Now.Year && item2 == DateTime.Now.Month) + { + int addDay = 0; + while (DateTime.Now.Day > addDay) + { + addDay++; + pickerItems_Day.Add(addDay.ToString()); + } + } + else + { + for (var i = 1; i <= DateTime.DaysInMonth(item1, item2); i++) + { + pickerItems_Day.Add(i.ToString()); + } + } + } + + uIPickerView.setNPicker(pickerItems_Year, pickerItems_Month, pickerItems_Day); + uIPickerView.setCurrentItems(pickerItems_Year.IndexOf(item1.ToString()), + pickerItems_Month == null ? 0 : pickerItems_Month.IndexOf(item2.ToString()), + pickerItems_Day == null ? 0 : pickerItems_Day.IndexOf(item3.ToString())); + } + } + if (pickerItems_Day != null) + { + if (int3 >= pickerItems_Day.Count) + { + int3 = 0; + } + if (pickerItems_Day[int3] != item3.ToString()) + { + int.TryParse(pickerItems_Day[int3], out item3); + } + } + }; + btnConfrim.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + queryTime_Year1 = item1; + infoView1_DateInfo_DateTextButton.Text = queryTime_Year1.ToString(); + if (queryType1 == QueryType.custom_month || queryType1 == QueryType.day_hour) + { + if (item2 != queryTime_Month1) + { + queryTime_Month1 = item2; + } + infoView1_DateInfo_DateTextButton.Text = new DateTime(queryTime_Year1, queryTime_Month1, queryTime_Day1).ToString("yyyy-MM"); + if (queryType1 == QueryType.day_hour) + { + if (item3 != queryTime_Day1) + { + queryTime_Day1 = item3; + } + infoView1_DateInfo_DateTextButton.Text = new DateTime(queryTime_Year1, queryTime_Month1, queryTime_Day1).ToString("yyyy-MM-dd"); + } + } + getTempHistory(); + }; + + } + + public void SetWaterQureyDateDialog() + { + var pickerItems_Year = new List<string>(); + List<string> pickerItems_Month = null; + List<string> pickerItems_Day = null; + + int item1 = queryTime_Year2; + int item2 = queryTime_Month2; + int item3 = queryTime_Day2; + + pickerItems_Year.Add("2023"); + while (DateTime.Now.Year > 2022 + pickerItems_Year.Count) + { + pickerItems_Year.Add((2023 + pickerItems_Year.Count).ToString()); + } + + if (queryType2 == QueryType.custom_month || queryType2 == QueryType.day_hour) + { + pickerItems_Month = new List<string>(); + if (queryTime_Year2 == DateTime.Now.Year) + { + int addMonth = 0; + while (DateTime.Now.Month > addMonth) + { + addMonth++; + pickerItems_Month.Add(addMonth.ToString()); + } + } + else + { + for (var i = 1; i < 13; i++) + { + pickerItems_Month.Add(i.ToString()); + } + } + if (queryType2 == QueryType.day_hour) + { + pickerItems_Day = new List<string>(); + if (queryTime_Month2 == DateTime.Now.Month) + { + int addDay = 0; + while (DateTime.Now.Day > addDay) + { + addDay++; + pickerItems_Day.Add(addDay.ToString()); + } + } + else + { + for (var i = 1; i <= DateTime.DaysInMonth(queryTime_Year2, queryTime_Month2); i++) + { + pickerItems_Day.Add(i.ToString()); + } + } + } + } + + Dialog dialog = new Dialog(); + + var pView = new FrameLayout() + { + BackgroundColor = CSS_Color.DialogTransparentColor1, + }; + dialog.AddChidren(pView); + + var optionBaseView = new FrameLayout() + { + Y = Application.GetRealHeight(456 - 60), + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(260), + AnimateSpeed = 0.3f, + Animate = Animate.DownToUp, + BackgroundColor = CSS_Color.MainBackgroundColor, + Radius = (uint)Application.GetRealWidth(12), + }; + pView.AddChidren(optionBaseView); + + var topView = new FrameLayout() + { + Gravity = Gravity.CenterHorizontal, + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(40), + BackgroundColor = CSS_Color.MainBackgroundColor, + Radius = (uint)Application.GetRealWidth(12), + }; + optionBaseView.AddChidren(topView); + topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor }); + + var btnCancel = new Button() + { + X = Application.GetRealWidth(21), + Width = Application.GetRealWidth(100), + TextAlignment = TextAlignment.CenterLeft, + TextColor = CSS_Color.PromptingColor1, + TextSize = CSS_FontSize.TextFontSize, + TextID = StringId.Cancel, + }; + topView.AddChidren(btnCancel); + + var btnConfrim = new Button() + { + X = Application.GetRealWidth(160), + Width = Application.GetRealWidth(160), + TextAlignment = TextAlignment.CenterRight, + TextColor = CSS_Color.MainColor, + TextSize = CSS_FontSize.TextFontSize, + TextID = StringId.Confirm, + }; + topView.AddChidren(btnConfrim); + + UIPickerView uIPickerView = new UIPickerView() + { + Y = Application.GetRealHeight(40), + Height = Application.GetRealHeight(210), + Radius = (uint)Application.GetRealWidth(12), + }; + optionBaseView.AddChidren(uIPickerView); + uIPickerView.setNPicker(pickerItems_Year, pickerItems_Month, pickerItems_Day); + uIPickerView.setCurrentItems(pickerItems_Year.IndexOf(queryTime_Year2.ToString()), + pickerItems_Month == null ? 0 : pickerItems_Month.IndexOf(queryTime_Month2.ToString()), + pickerItems_Day == null ? 0 : pickerItems_Day.IndexOf(queryTime_Day2.ToString())); + + dialog.Show(); + + pView.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + }; + + btnCancel.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + }; + uIPickerView.OnSelectChangeEvent = (int1, int2, int3) => + { + if (pickerItems_Year[int1] != item1.ToString()) + { + int.TryParse(pickerItems_Year[int1], out item1); + if (queryType2 == QueryType.custom_month || queryType2 == QueryType.day_hour) + { + pickerItems_Month = new List<string>(); + if (item1 == DateTime.Now.Year) + { + int addMonth = 0; + while (DateTime.Now.Month > addMonth) + { + addMonth++; + pickerItems_Month.Add(addMonth.ToString()); + } + } + else + { + for (var i = 1; i < 13; i++) + { + pickerItems_Month.Add(i.ToString()); + } + } + if (queryType2 == QueryType.day_hour) + { + pickerItems_Day = new List<string>(); + if (item1 == DateTime.Now.Year && item2 == DateTime.Now.Month) + { + int addDay = 0; + while (DateTime.Now.Day > addDay) + { + addDay++; + pickerItems_Day.Add(addDay.ToString()); + } + } + else + { + for (var i = 1; i <= DateTime.DaysInMonth(item1, item2); i++) + { + pickerItems_Day.Add(i.ToString()); + } + } + } + } + uIPickerView.setNPicker(pickerItems_Year, pickerItems_Month, pickerItems_Day); + uIPickerView.setCurrentItems(pickerItems_Year.IndexOf(item1.ToString()), + pickerItems_Month == null ? 0 : pickerItems_Month.IndexOf(item2.ToString()), + pickerItems_Day == null ? 0 : pickerItems_Day.IndexOf(item3.ToString())); + + } + if (pickerItems_Month != null) + { + if (pickerItems_Month[int2] != item2.ToString()) + { + int.TryParse(pickerItems_Month[int2], out item2); + if (queryType2 == QueryType.day_hour) + { + pickerItems_Day = new List<string>(); + if (item1 == DateTime.Now.Year && item2 == DateTime.Now.Month) + { + int addDay = 0; + while (DateTime.Now.Day > addDay) + { + addDay++; + pickerItems_Day.Add(addDay.ToString()); + } + } + else + { + for (var i = 1; i <= DateTime.DaysInMonth(item1, item2); i++) + { + pickerItems_Day.Add(i.ToString()); + } + } + } + + uIPickerView.setNPicker(pickerItems_Year, pickerItems_Month, pickerItems_Day); + uIPickerView.setCurrentItems(pickerItems_Year.IndexOf(item1.ToString()), + pickerItems_Month == null ? 0 : pickerItems_Month.IndexOf(item2.ToString()), + pickerItems_Day == null ? 0 : pickerItems_Day.IndexOf(item3.ToString())); + } + } + if (pickerItems_Day != null) + { + if (int3 >= pickerItems_Day.Count) + { + int3 = 0; + } + if (pickerItems_Day[int3] != item3.ToString()) + { + int.TryParse(pickerItems_Day[int3], out item3); + } + } + }; + btnConfrim.MouseUpEventHandler = (sender, e) => + { + dialog.Close(); + queryTime_Year2 = item1; + infoView2_DateInfo_DateTextButton.Text = queryTime_Year2.ToString(); + if (queryType2 == QueryType.custom_month || queryType2 == QueryType.day_hour) + { + if (item2 != queryTime_Month2) + { + queryTime_Month2 = item2; + } + infoView2_DateInfo_DateTextButton.Text = new DateTime(queryTime_Year2, queryTime_Month2, queryTime_Day2).ToString("yyyy-MM"); + if (queryType2 == QueryType.day_hour) + { + if (item3 != queryTime_Day2) + { + queryTime_Day2 = item3; + } + infoView2_DateInfo_DateTextButton.Text = new DateTime(queryTime_Year2, queryTime_Month2, queryTime_Day2).ToString("yyyy-MM-dd"); + } + } + getWaterHistory(); + }; + + } + + + } } -- Gitblit v1.8.0