From f982455916297ab07379d902a7f15b7a7a867c94 Mon Sep 17 00:00:00 2001
From: wei <kaede@kaededeMacBook-Air.local>
Date: 星期三, 20 十月 2021 09:19:20 +0800
Subject: [PATCH] 1
---
HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 255 ++++++++++++++++++++++++++++++++++++--------------
1 files changed, 182 insertions(+), 73 deletions(-)
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
index d58d0ec..7de95a3 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,69 @@
#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.HvacAirFreshJinmao,
+ name = "娴嬭瘯閲戣寕鏂伴",
+ attributes = new List<FunctionAttributes>()
+ {
+ new FunctionAttributes(){ key = "on_off",curValue= "on",state = "on" },
+ new FunctionAttributes(){ key = "mode",curValue= "humidification",state = "humidification" ,value = new List<string>(){ "humidification", "fan" } },
+ new FunctionAttributes(){ key = "energy",curValue= "true",state = "true" ,value = new List<string>(){ "true", "false" } },
+ new FunctionAttributes(){ key = "fan",curValue= "level_1",state = "level_1" ,value = new List<string>(){ "level_1", "level_2", "level_3","auto" } },
+ new FunctionAttributes(){ key = "humidity",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 },
+ new FunctionAttributes(){ key = "indoor_temp",curValue= "26",state = "26" ,value = new List<string>(){ },min = 0,max = 100 },
+ new FunctionAttributes(){ key = "indoor_humidity",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 },
+ new FunctionAttributes(){ key = "filter_remain",curValue= "0",state = "0" ,value = new List<string>(){ },min = 0,max = 100 },
+ new FunctionAttributes(){ key = "filter_timeout",curValue= "false",state = "false" ,value = new List<string>(){ "true", "false" }},
+ },
+ });
+
+ //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 +727,13 @@
sceneFunctionView = new VerticalScrolViewLayout();
contentView.AddChidren(sceneFunctionView);
LoadSceneFunctionControlZone();
- contentView.PageIndex = 0;
-
+ if (CurShowTypeIsFunction)
+ {
+ contentView.PageIndex = 0;
+ }else
+ {
+ contentView.PageIndex = 1;
+ }
LoadEvent_ChangeShowedFunctionType();
@@ -587,7 +741,11 @@
GetUnreadPushMessages();
RegisterGetPushMessageAction();
- waitPage.Hide();
+ if (waitPage != null)
+ {
+ waitPage.RemoveFromParent();
+ waitPage = null;
+ }
});
}
catch (Exception ex) {
@@ -606,7 +764,15 @@
sceneFunctionView = new VerticalScrolViewLayout();
contentView.AddChidren(sceneFunctionView);
LoadSceneFunctionControlZone();
- contentView.PageIndex = 0;
+
+ if (CurShowTypeIsFunction)
+ {
+ contentView.PageIndex = 0;
+ }
+ else
+ {
+ contentView.PageIndex = 1;
+ }
LoadEvent_ChangeShowedFunctionType();
@@ -635,7 +801,7 @@
foreach (var function in list)
{
//闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞�
- if (function.Spk_Prefix == FunctionCategory.Music)
+ if (SPK.MusicSpkList().Contains( function.spk))
{
//var music = function as Music.A31MusicModel;
var music = Music.A31MusicModel.A31MusicModelList.Find((obj) => obj.sid == function.sid);
@@ -948,12 +1114,8 @@
LoadEvent_ControlCurtain(function, btnCurtainClose, btnCurtainOpen);
}
- else if (function.spk == SPK.ElectricTV || function.spk == SPK.TvIr || function.spk == SPK.TvXmIr
- || function.spk == SPK.StbIr || function.spk == SPK.PjtIr)
+ else if (SPK.NotStatusSpkList.Contains(function.spk))
{
- //btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png";
- //btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_white.png";
-
Button btnPower;
btnPower = new Button()
{
@@ -962,12 +1124,13 @@
Width = Application.GetRealWidth(32),
Height = Application.GetRealWidth(32),
UnSelectedImagePath = "Public/PowerClose.png",
+ SelectedImagePath = "Public/PowerOpen.png",
};
view.AddChidren(btnPower);
LoadEvent_ControlTV(function, btnPower);
}
- else if (function.spk == SPK.MusicStandard)
+ else if (function.spk == SPK.MusicStandard || function.spk == SPK.AvMusic)
{
btnIcon.UnSelectedImagePath = "FunctionIcon/Music/MusicIcon.png";
btnIcon.SelectedImagePath = "FunctionIcon/Music/MusicOnIcon.png";
@@ -1057,68 +1220,14 @@
};
view.AddChidren(btnSwitch);
-
btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_blue.png";
btnIcon.SelectedImagePath = $"FunctionIcon/Icon/HomeIcon/{function.IconName}_white.png";
-
- //switch (function.Spk_Prefix)
- //{
- // //todo 澧炲姞璁惧锛屼富椤垫敹钘忓浘鏍�
- // case FunctionCategory.Light:
- // #region 鐏厜 Light
- // btnIcon.UnSelectedImagePath = "FunctionIcon/Light/LightIcon.png";
- // btnIcon.SelectedImagePath = "FunctionIcon/Light/LightOnIcon.png";
- // UpdataFunctionStates(function);
- // #endregion
- // break;
- // case FunctionCategory.AC:
- // #region 绌鸿皟 AC
- // btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcIcon.png";
- // btnIcon.SelectedImagePath = "FunctionIcon/AC/AcOnIcon.png";
- // #endregion
- // break;
- // case FunctionCategory.FloorHeat:
- // #region 鍦扮儹
- // btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingIcon.png";
- // btnIcon.SelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingOnIcon.png";
- // #endregion
- // break;
- // case FunctionCategory.Electric:
- // switch (function.spk)
- // {
- // case SPK.ElectricSocket:
- // btnIcon.UnSelectedImagePath = "FunctionIcon/Socket/SocketIcon.png";
- // btnIcon.SelectedImagePath = "FunctionIcon/Socket/SocketOnIcon.png";
- // break;
- // case SPK.ElectricFan:
- // btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/FanIcon.png";
- // btnIcon.SelectedImagePath = "FunctionIcon/Electrical/FanOnIcon.png";
- // break;
- // case SPK.ElectricTuyaAirCleaner:
- // btnIcon.SelectedImagePath = "FunctionIcon/HomePageIcon/AirCleanerIcon.png";
- // btnIcon.UnSelectedImagePath = "FunctionIcon/HomePageIcon/AirCleanerIconOn.png";
- // break;
- // case SPK.ElectricTuyaFan:
- // btnIcon.SelectedImagePath = "FunctionIcon/HomePageIcon/FanIcon.png";
- // btnIcon.UnSelectedImagePath = "FunctionIcon/HomePageIcon/FanIconOn.png";
- // break;
- // case SPK.ElectricTuyaWaterValve:
- // btnIcon.SelectedImagePath = "FunctionIcon/HomePageIcon/WaterValveIcon.png";
- // btnIcon.UnSelectedImagePath = "FunctionIcon/HomePageIcon/WaterValveIconOn.png";
- // break;
- // case SPK.ElectricTuyaWeepRobot:
- // btnIcon.SelectedImagePath = "FunctionIcon/HomePageIcon/WeepRobotIcon.png";
- // btnIcon.UnSelectedImagePath = "FunctionIcon/HomePageIcon/WeepRobotIconOn.png";
- // break;
- // }
- // break;
- //}
LoadEvent_SwitchFunction(function, btnSwitch);
}
//鍙栨秷鏀惰棌浜嬩欢
Action cannelCollect = () => {
function.collect = false;
- if (function.Spk_Prefix == FunctionCategory.Music)//澶勭悊闊充箰涓讳粠鍏崇郴
+ if (SPK.MusicSpkList().Contains(function.spk))//澶勭悊闊充箰涓讳粠鍏崇郴
{
if ((function as Music.A31MusicModel).ServerClientType == 1)
{
@@ -1137,8 +1246,8 @@
btnName.MouseUpEventHandler = skipControlPageEvent;
btnIcon.MouseUpEventHandler = skipControlPageEvent;
btnState.MouseUpEventHandler = skipControlPageEvent;
- //鐢佃涓嶉渶瑕佹洿鏂扮姸鎬�
- if(function.spk!= SPK.ElectricTV && function.spk != SPK.StbIr && function.spk != SPK.PjtIr)
+ //涓嶉渶瑕佹洿鏂扮姸鎬佺殑鍔ㄨ兘鍒楄〃
+ if(!SPK.NotStatusSpkList.Contains(function.spk))
{
UpdataFunctionStates(function);
}
@@ -1184,7 +1293,7 @@
Width = Application.GetRealWidth(32),
UnSelectedImagePath = "Public/FuncInfoSetIcon_white.png",
};
- if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare)
+ if (scene.userId == UserInfo.Current.ID)
{
view.AddChidren(btnSettingIcon);
}
--
Gitblit v1.8.0