From bff7d177c77523195575cca5ca550da4ae5270bd Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 10 一月 2023 09:34:00 +0800
Subject: [PATCH] 空调界面完善
---
HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs | 244 ++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 234 insertions(+), 10 deletions(-)
diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
index 436d5f9..08772f9 100644
--- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
+++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
@@ -1,7 +1,6 @@
锘縰sing System;
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
-using HDL_ON.UI.Music;
using Shared;
namespace HDL_ON.UI
@@ -9,7 +8,7 @@
public partial class FunctionControlZone : FrameLayout
{
#region 鍖哄煙鎺т欢
- static FrameLayout bodyDiv;
+ FunctionControlZone bodyDiv;
/// <summary>
/// 鍔熻兘/鍦烘櫙icon
/// </summary>
@@ -26,6 +25,11 @@
/// 鏀惰棌鎸夐挳
/// </summary>
Button btnCollectionIcon;
+ /// <summary>
+ /// 绂荤嚎鏂囨湰
+ /// </summary>
+ Button btnOffline;
+
#endregion
#region 鍖哄煙鍙橀噺
@@ -53,17 +57,22 @@
/// </summary>
public void LoadFunctionDiv()
{
- //todo 澧炲姞璁惧锛屽鍔犲姛鑳藉垪琛ㄥ崱鐗�
if (function == null)
{
this.RemoveFromParent();
return;
}
- LoadDiv();
+ //if (function.spk == SPK.IpCam_Imou)
+ //{
+ // InitIpCamDiv();
+ //}
+ //else
+ {
+ LoadDiv();
+ }
-
- btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/{function.IconName}.png";
-
+ btnIcon.UnSelectedImagePath = $"FunctionIcon/Icon/{function.IconName}.png";
+
if (SPK.CurtainSpkList().Contains(function.spk))
{//绐楀笜娌℃湁寮�鍏虫寜閽�
CurtainFragment();
@@ -91,16 +100,165 @@
this.AddChidren(btnTipPowerLow);
}
}
+
+
+
+ else if (function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose )
+ {
+ var btnStatus = new Button()
+ {
+ X = Application.GetRealWidth(51),
+ Y = Application.GetRealHeight(64),
+ Height = Application.GetRealHeight(18),
+ TextColor = CSS_Color.MainColor,
+ TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
+ Text = "",
+ TextAlignment = TextAlignment.CenterLeft,
+ Tag = function.sid + "_SenesorMegahealth_Status"
+ };
+ bodyDiv.AddChidren(btnStatus);
+
+
+
+ var tempStatus = function.attributes.Find((sta) => sta.key == FunctionAttributeKey.TargetStatus);
+ if (tempStatus != null)
+ {
+
+ switch (tempStatus.state)
+ {//0绌猴紝1璧帮紝2璺戯紝3鍧愶紝4璺屽�掞紝5绔�
+ case "0":
+ btnStatus.TextID = StringId.SensorNormalState;
+ btnStatus.TextColor = CSS_Color.MainColor;
+ break;
+ case "1":
+ btnStatus.TextID = StringId.SomeoneIn;
+ btnStatus.TextColor = CSS_Color.WarningColor;
+ break;
+ case "2":
+ if (function.extSet.labModel)
+ {
+ btnStatus.TextID = StringId.SomeoneRunning;
+ btnStatus.TextColor = CSS_Color.WarningColor;
+ }
+ else
+ {
+ btnStatus.TextID = StringId.SomeoneIn;
+ btnStatus.TextColor = CSS_Color.WarningColor;
+ }
+ break;
+ case "3":
+ if (function.extSet.labModel)
+ {
+ btnStatus.TextID = StringId.SomeoneSitting;
+ btnStatus.TextColor = CSS_Color.WarningColor;
+ }
+ else
+ {
+ btnStatus.TextID = StringId.SomeoneIn;
+ btnStatus.TextColor = CSS_Color.WarningColor;
+ }
+ break;
+ case "4":
+ btnStatus.TextID = StringId.SomeoneFell;
+ btnStatus.TextColor = CSS_Color.WarningColor;
+ break;
+ case "5":
+ if (function.extSet.labModel)
+ {
+ btnStatus.TextID = StringId.SomeoneStanding;
+ btnStatus.TextColor = CSS_Color.WarningColor;
+ }
+ else
+ {
+ btnStatus.TextID = StringId.SomeoneIn;
+ btnStatus.TextColor = CSS_Color.WarningColor;
+ }
+ break;
+ }
+
+
+ }
+
+ }
+
}
else if (function.spk == SPK.DoorLock)
{
btnIcon.UnSelectedImagePath = "FunctionIcon/DoorLock/DoorLock.png";
+ }
+ else if (function.spk == SPK.HvacCac)
+ {
+ var btnHumidityIcon = new Button()
+ {
+ X = Application.GetRealWidth(120),
+ Y = Application.GetRealHeight(66),
+ Width = Application.GetMinRealAverage(16),
+ Height = Application.GetMinRealAverage(18),
+ UnSelectedImagePath = "FunctionIcon/CAC/HvacCacHumidityIcon.png",
+ };
+ bodyDiv.AddChidren(btnHumidityIcon);
+ var btnHumidityValues = new TextButton()
+ {
+ X = Application.GetRealWidth(140),
+ Y = Application.GetRealHeight(64),
+ Height = Application.GetRealHeight(18),
+ TextColor = 0xFF161616,
+ TextSize = CSS_FontSize.TextFontSize,
+ Text = function.GetAttrState(FunctionAttributeKey.RoomHumidity) + "%",
+ TextAlignment = TextAlignment.CenterLeft,
+ Tag = function.sid + "_Humidity",
+ };
+ btnHumidityValues.Width = btnHumidityValues.GetTextWidth();
+ bodyDiv.AddChidren(btnHumidityValues);
+
+ Button btnTempIcon = new Button()
+ {
+ X = Application.GetRealWidth(51),
+ Y = Application.GetRealHeight(66),
+ Width = Application.GetMinRealAverage(17),
+ Height = Application.GetMinRealAverage(17),
+ UnSelectedImagePath = "FunctionIcon/CAC/HvacCacTempIcon.png",
+ };
+ bodyDiv.AddChidren(btnTempIcon);
+
+ var btnTempValues = new TextButton()
+ {
+ X = Application.GetRealWidth(70),
+ Y = Application.GetRealHeight(64),
+ Height = Application.GetRealHeight(18),
+ TextColor = 0xFF161616,
+ TextSize = CSS_FontSize.TextFontSize,
+ Text = function.GetAttrState(FunctionAttributeKey.RoomTemp) + "掳C",
+ TextAlignment = TextAlignment.CenterLeft,
+ Tag = function.sid + "_Temp",
+ };
+ btnTempValues.Width = btnTempValues.GetTextWidth();
+ bodyDiv.AddChidren(btnTempValues);
+
+ var btnJinMaoIcon = new Button()
+ {
+ X = Application.GetRealWidth(238),
+ Y = Application.GetRealHeight(64),
+ Width = Application.GetRealWidth(102),
+ Height = Application.GetRealHeight(29),
+ UnSelectedImagePath = "FunctionIcon/CAC/JinMaoIcon.png"
+ };
+ bodyDiv.AddChidren(btnJinMaoIcon);
+
+
+
+ }
+ else if (function.spk == SPK.AcstParent) {
}
else
{
if (function.spk == SPK.ClothesHanger)//鏅捐。鏋�
{
ClothesHangerFragment();
+ }
+ else if(function.spk == SPK.IpCam_Imou)
+ {
+
}
else
{
@@ -168,6 +326,58 @@
}
+ /// <summary>
+ /// 鍔犺浇ip鎽勫儚澶村崱鐗�
+ /// </summary>
+ private void InitIpCamDiv()
+ {
+ btnIcon = new Button()
+ {
+ X = Application.GetRealWidth(10),
+ Y = Application.GetRealHeight(15),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ };
+ bodyDiv.AddChidren(btnIcon);
+
+ btnName = new Button()
+ {
+ X = Application.GetRealWidth(8 + 10 + 32),
+ Y = Application.GetRealHeight(10),
+ Width = Application.GetRealWidth(200),
+ Height = Application.GetRealHeight(24),
+ Text = function.name,
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.TextFontSize,
+ };
+ bodyDiv.AddChidren(btnName);
+
+ btnFromFloor = new Button()
+ {
+ X = Application.GetRealWidth(8 + 10 + 32),
+ Y = Application.GetRealHeight(10 + 24),
+ Width = Application.GetRealWidth(200),
+ Height = Application.GetRealHeight(18),
+ Text = function.GetRoomListName(),
+ TextAlignment = TextAlignment.CenterLeft,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ bodyDiv.AddChidren(btnFromFloor);
+
+ btnCollectionIcon = new Button()
+ {
+ X = Application.GetRealWidth(299),
+ Y = Application.GetRealHeight(10),
+ Width = Application.GetMinRealAverage(40),
+ Height = Application.GetMinRealAverage(40),
+ SelectedImagePath = "Collection/CollectionIcon.png",
+ UnSelectedImagePath = "Collection/CollectionGrayIcon.png",
+ IsSelected = function.collect
+ };
+
+ }
/// <summary>
/// 鍔犺浇鎺у埗鍗$墖鍖哄煙
@@ -226,10 +436,15 @@
bodyDiv.AddChidren(btnCollectionIcon);
}
+ if(function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose)
+ {
+ bodyDiv.AddChidren(btnCollectionIcon);
+ }
+
if (!function.online)
{
bodyDiv.BackgroundColor = CSS_Color.PromptingColor2;
- var btnOffline = new Button()
+ btnOffline = new Button()
{
X = Application.GetRealWidth(8 + 10 + 32),
Y = Application.GetRealHeight(28 + 24),
@@ -251,6 +466,7 @@
switch (function.spk)
{
case SPK.LightDimming:
+ case SPK.LightRGBW:
case SPK.LightRGB:
#region Dimmer
var btnDimmerMinValues = new Button()
@@ -309,6 +525,14 @@
/// </summary>
void CurtainFragment()
{
+ var onoffString = function.GetAttrState(FunctionAttributeKey.OnOff);
+ var percent = onoffString == "off" ? 0 : 100;
+ if (function.GetAttributes().Contains(FunctionAttributeKey.Percent))
+ {
+ string percentString = function.GetAttrState(FunctionAttributeKey.Percent);
+ int.TryParse(percentString, out percent);
+ }
+
#region Curtain
var btnCurtainClose = new Button()
{
@@ -318,7 +542,7 @@
Height = Application.GetMinRealAverage(32),
UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png",
SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png",
- IsSelected = function.GetAttrState(FunctionAttributeKey.OnOff) == "off",
+ IsSelected = percent == 0,
Tag = function.sid + "_off"
};
bodyDiv.AddChidren(btnCurtainClose);
@@ -349,7 +573,7 @@
UnSelectedImagePath = "FunctionIcon/Curtain/CurtainOpenIcon.png",
SelectedImagePath = "FunctionIcon/Curtain/CurtainOpenOnIcon.png",
Tag = function.sid + "_on",
- IsSelected = function.GetAttrState(FunctionAttributeKey.OnOff) == "on",
+ IsSelected = percent != 0,
};
bodyDiv.AddChidren(btnCurtainOpen);
if (function.spk == SPK.CurtainRoller)
--
Gitblit v1.8.0