wxr
2024-10-23 47f179be722a61c95cc03c8f90e1aa91c12d1124
HDL_ON/UI/UI2/FuntionControlView/Acst/WetarHeaterJinmaoHistoryPage.cs
@@ -62,10 +62,15 @@
            var contentView = new VerticalScrolViewLayout()
            {
                Y = Application.GetRealHeight(74 + 16),
                Y = Application.GetRealHeight(74 ),
                Height = Application.GetRealHeight(Application.DesignHeight - 74),
            };
            bodyView.AddChidren(contentView);
            contentView.AddChidren(new Button()
            {
                Height = Application.GetRealWidth(16)
            });
            #region 温度值
            infoView1 = new FrameLayout()
@@ -130,7 +135,9 @@
                IsSelected = false,
            };
            infoView1_DateView.AddChidren(infoView1_Date_Month);
#if __IOS__
            infoView1_DateView.AddChidren(new Button() { Width = Application.GetRealWidth(2) });
#endif
            infoView1_Date_Year = new Button()
            {
                Width = Application.GetRealWidth(103),
@@ -269,7 +276,6 @@
                Height = Application.GetRealWidth(16)
            });
            if (function.attributes.Find((obj) => obj.key == WaterHeaterJinmao_AttrEnum.volume.ToString()) != null)
            {
                #region 用水量
@@ -338,7 +344,9 @@
                    IsSelected = false,
                };
                infoView2_DateView.AddChidren(infoView2_Date_Month);
#if __IOS__
                infoView2_DateView.AddChidren(new Button() { Width = Application.GetRealWidth(2) });
#endif
                infoView2_Date_Year = new Button()
                {
@@ -989,7 +997,7 @@
                Radius = (uint)Application.GetRealWidth(12),
            };
            optionBaseView.AddChidren(topView);
            topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
            optionBaseView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
            var btnCancel = new Button()
            {
@@ -1004,7 +1012,7 @@
            var btnConfrim = new Button()
            {
                X = Application.GetRealWidth(160),
                X = Application.GetRealWidth(163),
                Width = Application.GetRealWidth(160),
                TextAlignment = TextAlignment.CenterRight,
                TextColor = CSS_Color.MainColor,
@@ -1051,110 +1059,118 @@
            };
            uIPickerView.OnSelectChangeEvent = (int1, int2, int3) =>
            {
                if (int1 < 0)
                try
                {
                    int1 = 1;
                }
                if (pickerItems_Year[int1] != item1.ToString())
                {
                    int.TryParse(pickerItems_Year[int1], out item1);
                    if (tempQueryType == QueryType.custom_month || tempQueryType == QueryType.day_hour)
                    if (int1 < 0)
                    {
                        pickerItems_Month = new List<string>();
                        if (item1 == DateTime.Now.Year)
                        int1 = 1;
                    }
                    if (pickerItems_Year[int1] != item1.ToString())
                    {
                        int.TryParse(pickerItems_Year[int1], out item1);
                        if (tempQueryType == QueryType.custom_month || tempQueryType == QueryType.day_hour)
                        {
                            int addMonth = 0;
                            while (DateTime.Now.Month > addMonth)
                            pickerItems_Month = new List<string>();
                            if (item1 == DateTime.Now.Year)
                            {
                                addMonth++;
                                pickerItems_Month.Add(addMonth.ToString());
                            }
                        }
                        else
                        {
                            for (var i = 1; i < 13; i++)
                            {
                                pickerItems_Month.Add(i.ToString());
                            }
                        }
                        if (tempQueryType == 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)
                                int addMonth = 0;
                                while (DateTime.Now.Month > addMonth)
                                {
                                    addDay++;
                                    pickerItems_Day.Add(addDay.ToString());
                                    addMonth++;
                                    pickerItems_Month.Add(addMonth.ToString());
                                }
                            }
                            else
                            {
                                for (var i = 1; i <= DateTime.DaysInMonth(item1, item2); i++)
                                for (var i = 1; i < 13; i++)
                                {
                                    pickerItems_Day.Add(i.ToString());
                                    pickerItems_Month.Add(i.ToString());
                                }
                            }
                            if (tempQueryType == 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()));
                        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 (int2 >= pickerItems_Month.Count || int2 < 0)
                    {
                        int2 = 0;
                    }
                    if (pickerItems_Month[int2] != item2.ToString())
                    if (pickerItems_Month != null)
                    {
                        int.TryParse(pickerItems_Month[int2], out item2);
                        if (tempQueryType == QueryType.day_hour)
                        if (int2 >= pickerItems_Month.Count || int2 < 0)
                        {
                            pickerItems_Day = new List<string>();
                            if (item1 == DateTime.Now.Year && item2 == DateTime.Now.Month)
                            int2 = 0;
                        }
                        if (pickerItems_Month[int2] != item2.ToString())
                        {
                            int.TryParse(pickerItems_Month[int2], out item2);
                            if (tempQueryType == QueryType.day_hour)
                            {
                                int addDay = 0;
                                while (DateTime.Now.Day > addDay)
                                pickerItems_Day = new List<string>();
                                if (item1 == DateTime.Now.Year && item2 == DateTime.Now.Month)
                                {
                                    addDay++;
                                    pickerItems_Day.Add(addDay.ToString());
                                    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());
                                    }
                                }
                            }
                            else
                            try
                            {
                                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()));
                            }
                            catch (Exception ex)
                            {
                                MainPage.Log("Error", $"金茂历史数据控件异常:{ex.Message}");
                            }
                        }
                        try
                    }
                    if (pickerItems_Day != null)
                    {
                        if (int3 >= pickerItems_Day.Count || int3 < 0)
                        {
                            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()));
                        }catch(Exception ex)
                            int3 = 0;
                        }
                        if (pickerItems_Day[int3] != item3.ToString())
                        {
                            MainPage.Log("Error", $"金茂历史数据控件异常:{ex.Message}");
                            int.TryParse(pickerItems_Day[int3], out item3);
                        }
                    }
                }
                if (pickerItems_Day != null)
                catch (Exception ex)
                {
                    if (int3 >= pickerItems_Day.Count || int3 < 0)
                    {
                        int3 = 0;
                    }
                    if (pickerItems_Day[int3] != item3.ToString())
                    {
                        int.TryParse(pickerItems_Day[int3], out item3);
                    }
                    MainPage.Log("Error", $"金茂热水器日期选择异常:{ex.StackTrace}");
                }
            };
            btnConfrim.MouseUpEventHandler = (sender, e) =>
@@ -1189,6 +1205,10 @@
                    btnToday.Visible = btnToday.Enable = true;
                    btnToday.MouseUpEventHandler = (sender, e) =>
                    {
                        item3 = tempQueryTime_Day = DateTime.Now.Day;
                        item2 = tempQueryTime_Month = DateTime.Now.Month;
                        item1 = tempQueryTime_Year = DateTime.Now.Year;
                        pickerItems_Year = new List<string>();
                        pickerItems_Year.Add("2023");
                        while (DateTime.Now.Year > 2022 + pickerItems_Year.Count)
@@ -1196,50 +1216,21 @@
                            pickerItems_Year.Add((2023 + pickerItems_Year.Count).ToString());
                        }
                        if (tempQueryType == QueryType.custom_month || tempQueryType == QueryType.day_hour)
                        pickerItems_Month = new List<string>();
                        int addMonth = 0;
                        while (DateTime.Now.Month > addMonth)
                        {
                            pickerItems_Month = new List<string>();
                            if (tempQueryTime_Year == 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 (tempQueryType == QueryType.day_hour)
                            {
                                pickerItems_Day = new List<string>();
                                if (tempQueryTime_Month == 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(tempQueryTime_Year, tempQueryTime_Month); i++)
                                    {
                                        pickerItems_Day.Add(i.ToString());
                                    }
                                }
                            }
                            addMonth++;
                            pickerItems_Month.Add(addMonth.ToString());
                        }
                        pickerItems_Day = new List<string>();
                        int addDay = 0;
                        while (DateTime.Now.Day > addDay)
                        {
                            addDay++;
                            pickerItems_Day.Add(addDay.ToString());
                        }
                        item3 = tempQueryTime_Day = DateTime.Now.Day;
                        item2 = tempQueryTime_Month = DateTime.Now.Month;
                        item1 = tempQueryTime_Year = DateTime.Now.Year;
                        uIPickerView.setNPicker(pickerItems_Year, pickerItems_Month, pickerItems_Day);
                        uIPickerView.setCurrentItems(pickerItems_Year.IndexOf(tempQueryTime_Year.ToString()),
                            pickerItems_Month == null ? 0 : pickerItems_Month.IndexOf(tempQueryTime_Month.ToString()),
@@ -1386,105 +1377,112 @@
            };
            uIPickerView.OnSelectChangeEvent = (int1, int2, int3) =>
            {
                if (int1 < 0)
                try
                {
                    int1 = 0;
                }
                if (pickerItems_Year[int1] != item1.ToString())
                {
                    int.TryParse(pickerItems_Year[int1], out item1);
                    if (waterQueryType == QueryType.custom_month || waterQueryType == QueryType.day_hour)
                    if (int1 < 0)
                    {
                        pickerItems_Month = new List<string>();
                        if (item1 == DateTime.Now.Year)
                        int1 = 0;
                    }
                    if (pickerItems_Year[int1] != item1.ToString())
                    {
                        int.TryParse(pickerItems_Year[int1], out item1);
                        if (waterQueryType == QueryType.custom_month || waterQueryType == QueryType.day_hour)
                        {
                            int addMonth = 0;
                            while (DateTime.Now.Month > addMonth)
                            pickerItems_Month = new List<string>();
                            if (item1 == DateTime.Now.Year)
                            {
                                addMonth++;
                                pickerItems_Month.Add(addMonth.ToString());
                            }
                        }
                        else
                        {
                            for (var i = 1; i < 13; i++)
                            {
                                pickerItems_Month.Add(i.ToString());
                            }
                        }
                        if (waterQueryType == 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)
                                int addMonth = 0;
                                while (DateTime.Now.Month > addMonth)
                                {
                                    addDay++;
                                    pickerItems_Day.Add(addDay.ToString());
                                    addMonth++;
                                    pickerItems_Month.Add(addMonth.ToString());
                                }
                            }
                            else
                            {
                                for (var i = 1; i <= DateTime.DaysInMonth(item1, item2); i++)
                                for (var i = 1; i < 13; i++)
                                {
                                    pickerItems_Day.Add(i.ToString());
                                    pickerItems_Month.Add(i.ToString());
                                }
                            }
                            if (waterQueryType == 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 (int2 > pickerItems_Month.Count || int2 < 0)
                    {
                        int2 = 0;
                    }
                    if (pickerItems_Month[int2] != item2.ToString())
                    {
                        int.TryParse(pickerItems_Month[int2], out item2);
                        if (waterQueryType == 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 (int2 > pickerItems_Month.Count || int2 < 0)
                        {
                            int2 = 0;
                        }
                        if (pickerItems_Month[int2] != item2.ToString())
                        {
                            int.TryParse(pickerItems_Month[int2], out item2);
                            if (waterQueryType == 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)
                        {
                            int3 = 0;
                        }
                        if (pickerItems_Day[int3] != item3.ToString())
                        {
                            int.TryParse(pickerItems_Day[int3], out item3);
                        }
                    }
                }
                if (pickerItems_Day != null)
                catch (Exception ex)
                {
                    if (int3 >= pickerItems_Day.Count || int3 < 0)
                    {
                        int3 = 0;
                    }
                    if (pickerItems_Day[int3] != item3.ToString())
                    {
                        int.TryParse(pickerItems_Day[int3], out item3);
                    }
                    MainPage.Log("Error", $"金茂热水器日期2选择异常:{ex.StackTrace}");
                }
            };
            btnConfrim.MouseUpEventHandler = (sender, e) =>
@@ -1524,7 +1522,6 @@
            };
            topView.AddChidren(btnToday);
            if (waterQueryType == QueryType.day_hour)
            {
                try
@@ -1532,57 +1529,31 @@
                    btnToday.Visible = btnToday.Enable = true;
                    btnToday.MouseUpEventHandler = (sender, e) =>
                    {
                        item3 = waterQueryTime_Day = DateTime.Now.Day;
                        item2 = waterQueryTime_Month = DateTime.Now.Month;
                        item1 = waterQueryTime_Year = DateTime.Now.Year;
                        pickerItems_Year = new List<string>();
                        pickerItems_Year.Add("2023");
                        while (DateTime.Now.Year > 2022 + pickerItems_Year.Count)
                        {
                            pickerItems_Year.Add((2023 + pickerItems_Year.Count).ToString());
                        }
                        if (waterQueryType == QueryType.custom_month || waterQueryType == QueryType.day_hour)
                        pickerItems_Month = new List<string>();
                        int addMonth = 0;
                        while (DateTime.Now.Month > addMonth)
                        {
                            pickerItems_Month = new List<string>();
                            if (waterQueryTime_Year == 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 (waterQueryType == QueryType.day_hour)
                            {
                                pickerItems_Day = new List<string>();
                                if (waterQueryTime_Month == 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(waterQueryTime_Year, waterQueryTime_Month); i++)
                                    {
                                        pickerItems_Day.Add(i.ToString());
                                    }
                                }
                            }
                            addMonth++;
                            pickerItems_Month.Add(addMonth.ToString());
                        }
                        pickerItems_Day = new List<string>();
                        int addDay = 0;
                        while (DateTime.Now.Day > addDay)
                        {
                            addDay++;
                            pickerItems_Day.Add(addDay.ToString());
                        }
                        item3 = waterQueryTime_Day = DateTime.Now.Day;
                        item2 = waterQueryTime_Month = DateTime.Now.Month;
                        item1 = waterQueryTime_Year = DateTime.Now.Year;
                        uIPickerView.setNPicker(pickerItems_Year, pickerItems_Month, pickerItems_Day);
                        uIPickerView.setCurrentItems(pickerItems_Year.IndexOf(waterQueryTime_Year.ToString()),
                            pickerItems_Month == null ? 0 : pickerItems_Month.IndexOf(waterQueryTime_Month.ToString()),