From 4f2dbd1f6a1ec2d9c3c39b4a37b0b7c9ddece4aa Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期四, 23 九月 2021 15:24:01 +0800
Subject: [PATCH] 主页刷新优化
---
HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 163 +++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 155 insertions(+), 8 deletions(-)
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
index f057023..a99dee1 100644
--- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -27,6 +27,12 @@
/// </summary>
Button btnLinkStateTip;
/// <summary>
+ /// 瀹夐槻鐘舵�佸浘鏍�
+ /// </summary>
+ Button btnSecurityStatus;
+
+
+ /// <summary>
///浣忓畢鍚嶇О鏄剧ず
/// </summary>
Button btnResidenceName;
@@ -129,6 +135,10 @@
this.EndHeaderRefreshing();
Common.ApiUtlis.Ins.DownloadData();
LoadContentView();
+ if(!CurShowTypeIsFunction)
+ {
+ contentView.PageIndex = 1;
+ }
};
#region topView
@@ -194,6 +204,34 @@
#region 鐜鏁版嵁
var tempSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorTemperature);
var humiSensorList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => obj.spk == SPK.SensorHumidity);
+ var enviList = FunctionList.List.GetEnvirSensorsList().FindAll((obj) => SPK.EvironmentSensorList().Contains(obj.spk));
+ foreach (var enviTemp in enviList)
+ {
+ var humiAttr = enviTemp.attributes.Find((obj) => obj.key == "humidity");
+ if (humiAttr != null)
+ {
+ var newTemp = new Function()
+ {
+ name = enviTemp.name,
+ sid = enviTemp.sid,
+ deviceId = enviTemp.deviceId,
+ attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = humiAttr.state, curValue = humiAttr.curValue } },
+ };
+ humiSensorList.Add(newTemp);
+ }
+ var tempAttr = enviTemp.attributes.Find((obj) => obj.key == "temperature");
+ if (tempAttr != null)
+ {
+ var newTemp = new Function()
+ {
+ name = enviTemp.name,
+ sid = enviTemp.sid,
+ deviceId = enviTemp.deviceId,
+ attributes = new List<FunctionAttributes> { new FunctionAttributes { key = "value", state = tempAttr.state, curValue = tempAttr.curValue } },
+ };
+ tempSensorList.Add(newTemp);
+ }
+ }
var btnEnvirValuesTitle = new Button() {
X = Application.GetRealWidth(12),
@@ -245,15 +283,20 @@
{
btnIndoorTempValues.Text = "/--掳";
double tempTotalValues = 0;
+ double tempTotalCount = 0;
foreach (var temp in tempSensorList)
{
double tempValue = 0;
double.TryParse(temp.GetAttrState(FunctionAttributeKey.Value), out tempValue);
- tempTotalValues += tempValue;
+ if (tempValue > 0)
+ {
+ tempTotalValues += tempValue;
+ tempTotalCount++;
+ }
}
if (tempTotalValues > 0)
{
- btnIndoorTempValues.Text = "/" + tempTotalValues + "掳";
+ btnIndoorTempValues.Text = "/" + (tempTotalValues/ tempTotalCount).ToString("0.0") + "掳";
}
}
btnIndoorTempValues.Width = btnIndoorTempValues.GetTextWidth();
@@ -294,15 +337,20 @@
{
btnIndoorHumiValues.Text = "/--%";
double humiTotalValues = 0;
+ double humiTotalCount = 0;
foreach (var humi in humiSensorList)
{
double humiValue = 0;
double.TryParse(humi.GetAttrState(FunctionAttributeKey.Value), out humiValue);
- humiTotalValues += humiValue;
+ if (humiValue > 0)
+ {
+ humiTotalValues += humiValue;
+ humiTotalCount++;
+ }
}
if (humiTotalValues > 0)
{
- btnIndoorHumiValues.Text = "/" + humiTotalValues + "%";
+ btnIndoorHumiValues.Text = "/" + (humiTotalValues / humiTotalCount).ToString("0") + "%";
}
}
btnIndoorHumiValues.Width = btnIndoorHumiValues.GetTextWidth();
@@ -330,6 +378,44 @@
btnPm25Values.Width = btnPm25Values.GetTextWidth();
environmentalView.AddChidren(btnPm25Values);
#endregion
+
+ btnSecurityStatus = new Button()
+ {
+ X = Application.GetRealWidth(329),
+ Y = Application.GetRealHeight(34),
+ Width = Application.GetRealWidth(30),
+ Height = Application.GetRealWidth(30),
+ SelectedImagePath = "Collection/DefenseStatusIcon.png",
+ UnSelectedImagePath = "Collection/DisarmStatusIcon.png"
+ };
+ if (DB_ResidenceData.Instance.GatewayType == 1)
+ {
+ topView.AddChidren(btnSecurityStatus);
+ foreach (var temp in FunctionList.List.securities)
+ {
+ if (temp.status == "enable")
+ {
+ btnSecurityStatus.IsSelected = true;
+ if (temp.alarm)
+ {
+ btnSecurityStatus.SelectedImagePath = "Collection/DefenseAlarmIcon.png";
+ }
+ else
+ {
+ btnSecurityStatus.SelectedImagePath = "Collection/DefenseStatusIcon.png";
+ }
+ break;
+ }
+ }
+
+ btnSecurityStatus.MouseUpEventHandler = (sender, e) => {
+ var page = new ArmCenterPage();
+ MainPage.BasePageView.AddChidren(page);
+ page.LoadPage();
+ MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+ };
+ }
+
#region msg
FrameLayout msgView;
@@ -463,6 +549,50 @@
#if DEBUG
+
+
+ FunctionList.List.Functions.Add(new Function()
+ {
+ spk = SPK.SensorDryContact,
+ name = "骞叉帴鐐�",
+ attributes = new List<FunctionAttributes>()
+ {
+ new FunctionAttributes(){ key = "status",curValue= "on",state = "on" },
+ },
+ });
+
+ FunctionList.List.Functions.Add(new Function()
+ {
+ spk = SPK.AirSwitch,
+ name = "鏅鸿兘绌哄紑",
+ attributes = new List<FunctionAttributes>()
+ {
+ new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
+ },
+ });
+
+ //FunctionList.List.Functions.Add(new Function()
+ //{
+ // spk = SPK.AirFreshStandard,
+ // name = "娴嬭瘯鏂伴",
+ // attributes = new List<FunctionAttributes>()
+ // {
+ // new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
+ // new FunctionAttributes(){ key = "fan",curValue= "low",state = "low" ,value = new List<string>(){ "high", "medium", "low" } },
+ // },
+ //});
+
+ //FunctionList.List.Functions.Add(new Function()
+ //{
+ // spk = SPK.SensorGas,
+ // name = "鐕冩皵浼犳劅鍣�",
+ // attributes = new List<FunctionAttributes>()
+ // {
+ // new FunctionAttributes(){ key = "enable",curValue= "true",state = "true" ,value = new List<string>(){ "true", "false" } },
+ // new FunctionAttributes(){ key = "status",curValue= "normal",state = "normal" ,value = new List<string>(){ "alarm", "normal" } },
+ // },
+ //});
+
//FunctionList.List.Functions.Add(new Function() { spk = SPK.PjtIr, name = "娴嬭瘯鎶曞奖浠�",
// attributes = new List<FunctionAttributes>() {
// new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
@@ -578,8 +708,13 @@
sceneFunctionView = new VerticalScrolViewLayout();
contentView.AddChidren(sceneFunctionView);
LoadSceneFunctionControlZone();
- contentView.PageIndex = 0;
-
+ if (CurShowTypeIsFunction)
+ {
+ contentView.PageIndex = 0;
+ }else
+ {
+ contentView.PageIndex = 1;
+ }
LoadEvent_ChangeShowedFunctionType();
@@ -587,7 +722,11 @@
GetUnreadPushMessages();
RegisterGetPushMessageAction();
- waitPage.Hide();
+ if (waitPage != null)
+ {
+ waitPage.RemoveFromParent();
+ waitPage = null;
+ }
});
}
catch (Exception ex) {
@@ -606,7 +745,15 @@
sceneFunctionView = new VerticalScrolViewLayout();
contentView.AddChidren(sceneFunctionView);
LoadSceneFunctionControlZone();
- contentView.PageIndex = 0;
+
+ if (CurShowTypeIsFunction)
+ {
+ contentView.PageIndex = 0;
+ }
+ else
+ {
+ contentView.PageIndex = 1;
+ }
LoadEvent_ChangeShowedFunctionType();
--
Gitblit v1.8.0