From 3d7673c7b4aa0dc886d4816fe2d0ab400702e6e1 Mon Sep 17 00:00:00 2001
From: lss <lsc@hdlchina.com.cn>
Date: 星期四, 25 三月 2021 19:11:13 +0800
Subject: [PATCH] 2021-03-25 集成丰林可视对讲
---
HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSciencePage.cs | 114 ++++++++++++++++++++++++++++++++------------------------
1 files changed, 65 insertions(+), 49 deletions(-)
diff --git a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSciencePage.cs b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSciencePage.cs
index e3faad6..b830595 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSciencePage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/EnvironmentalScience/EnvironmentalSciencePage.cs
@@ -3,6 +3,7 @@
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
using System.Collections.Generic;
+using HDL_ON.DriverLayer;
namespace HDL_ON.UI
{
@@ -49,6 +50,7 @@
#region 鍖哄煙鍙橀噺
Room room;
+ Sensor sensorTemp = new Sensor();
#endregion
@@ -283,11 +285,7 @@
bodyView.AddChidren(contentView);
#region 鎴块棿椤堕儴鍒囨崲鏄剧ず鍖哄煙
- room = new Room();
- if (DB_ResidenceData.rooms.Count > 0)
- {
- room = DB_ResidenceData.rooms[0];
- }
+ room = new Room() { roomName = Language.StringByID(StringId.All)};
btnFoorDownIcon = new Button()
{
Width = Application.GetMinRealAverage(16),
@@ -307,7 +305,7 @@
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
TextAlignment = TextAlignment.CenterLeft,
- Text = room.name,
+ Text = room.roomName,
};
contentView.AddChidren(btnRoom);
@@ -331,12 +329,10 @@
};
contentView.AddChidren(sensorListView);
- int index = 0;
- foreach(var sensor in DB_ResidenceData.functionList.sensorsEnvironmentalScience)
- {
- LoadSensorDiv(sensor, index);
- index++;
- }
+ LoadSenesorList();
+
+ LoadEventList();
+
#endregion
@@ -346,18 +342,32 @@
new TopViewDiv(bodyView, Language.StringByID(StringId.EnvironmentalScience)).LoadTopView();
}
+
/// <summary>
/// 鍔犺浇浼犳劅鍣ㄥ垪琛�
/// </summary>
- void LoadSensorDiv(Sensor sensor,int index)
+ void LoadSenesorList()
{
- if (sensor.roomIdList.Contains(room.sid))
+ sensorListView.RemoveAll();
+ int index = 0;
+ foreach (var sensor in FunctionList.List.GetEnvirSensorsList())
+ {
+ LoadSensorDiv(sensor, index);
+ index++;
+ }
+ }
+
+ /// <summary>
+ /// 鍔犺浇浼犳劅鍣ㄥ垪琛�
+ /// </summary>
+ void LoadSensorDiv(Function sensor,int index)
+ {
+ var levelColorList = sensorTemp.GetLevelColorList(sensor.spk);
+ var levelTextList = sensorTemp.GetLevelTextList(sensor.spk);
+
+ if (room.roomId == "" || sensor.roomIds.Contains(room.roomId))
{
var sensorTag = sensor.sid;
- if (sensor.bus_Data != null)
- {
- sensorTag = ((int)sensor.functionType % 256) + "_" + sensor.bus_Data.SubnetID + "_" + sensor.bus_Data.DeviceID + "_" + sensor.bus_Data.LoopID;
- }
FrameLayout sensorView = new FrameLayout()
{
Width = Application.GetRealWidth(148),
@@ -382,10 +392,10 @@
Width = Application.GetRealWidth(48),
Height = Application.GetRealWidth(48),
OpenAngle = 10,
- ProgressBarColor = sensor.levelColorList[sensor.curLevel - 1],
+ ProgressBarColor = sensorTemp.GetLevelColorList(sensor.spk)[sensorTemp.GetCurLevel(sensor) - 1],
MinValue = 0,
MaxValue = 96,
- Progress = (96 / sensor.levelColorList.Count) * sensor.curLevel,
+ Progress = (96 / sensorTemp.GetLevelColorList(sensor.spk).Count * sensorTemp.GetCurLevel(sensor)),
IsClickable = false,
ArcColor = CSS_Color.BackgroundColor,
ArcWidth = Application.GetRealWidth(4),
@@ -403,15 +413,17 @@
TextAlignment = TextAlignment.Center,
TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
TextColor = CSS_Color.FirstLevelTitleColor,
- TextID = sensor.functionTypeNameId,
+ TextID = sensorTemp.GetFunctionTypeNameId(sensor.spk),
Tag = "SensorTitle"
};
sensorView.AddChidren(btnSensorTitle);
btnSensorTitle.MouseUpEventHandler = (sender, e) => {
+ #region
var esp = new EnvironmentalSensorPage(sensor);
MainPage.BasePageView.AddChidren(esp);
esp.LoadPage();
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+ #endregion
};
var btnInfoIcon = new Button()
@@ -437,7 +449,7 @@
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.EmphasisFontSize_Secondary,
IsBold = true,
- Text = sensor.values.ToString(),
+ Text = sensor.GetAttrState(FunctionAttributeKey.Value),
Tag = "SensorValues"
};
sensorView.AddChidren(btnSensorValues);
@@ -449,23 +461,24 @@
Width = Application.GetRealWidth(50),
Height = Application.GetRealWidth(18),
TextAlignment = TextAlignment.CenterLeft,
- TextColor = sensor.levelColorList[sensor.curLevel - 1],
+ TextColor = levelColorList[sensorTemp.GetCurLevel( sensor) - 1],
TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
- TextID = sensor.levelTextList[sensor.curLevel - 1],
+ TextID = levelTextList[sensorTemp.GetCurLevel(sensor) - 1],
Tag = "SensorLevel"
};
sensorView.AddChidren(btnLevel);
- //Control.Send(CommandType_A.read, sensor);
- Control.SendReadCommand(sensor);
+ Control.Ins.SendReadCommand(sensor);
}
}
/// <summary>
/// 鍔犺浇浼犳劅鍣ㄧ瓑绾х浉鍏充俊鎭�
/// </summary>
- void LoadInfo(Sensor sensor)
+ void LoadInfo(Function sensor)
{
+ var levelColorList = sensorTemp.GetLevelColorList(sensor.spk);
+ var levelTextList = sensorTemp.GetLevelTextList(sensor.spk);
Dialog dialog = new Dialog();
FrameLayout dialogBodyView = new FrameLayout();
@@ -474,13 +487,12 @@
{
dialog.Close();
};
-
VerticalScrolViewLayout infoView = new VerticalScrolViewLayout()
{
Gravity = Gravity.CenterHorizontal,
- Y = Application.GetRealHeight(667 - 94 - (sensor.levelColorList.Count * 44) - 20),
+ Y = Application.GetRealHeight(667 - 94 - (levelColorList.Count * 44) - 20),
Width = Application.GetRealWidth(343),
- Height = Application.GetRealHeight(94 + (sensor.levelColorList.Count * 44) + sensor.levelColorList.Count),
+ Height = Application.GetRealHeight(94 + (levelColorList.Count * 44) + levelColorList.Count),
Radius = (uint)Application.GetRealWidth(12),
BackgroundColor = CSS_Color.MainBackgroundColor,
Animate = Animate.DownToUp,
@@ -499,21 +511,21 @@
};
infoView.AddChidren(btnTitle);
- switch (sensor.functionType)
+ switch (sensor.spk)
{
- case FunctionType.PM25:
+ case SPK.SensorPm25:
btnTitle.Text = "PM2.5(ug/m虏)";
break;
- case FunctionType.Temp:
+ case SPK.SensorTemperature:
btnTitle.Text = Language.StringByID(StringId.Temp) + "(掳C)";
break;
- case FunctionType.TVOC:
+ case SPK.SensorTVOC:
btnTitle.Text = "TVOC(PPM)";
break;
- case FunctionType.CO2:
+ case SPK.SensorCO2:
btnTitle.Text = "CO2(PPM)";
break;
- case FunctionType.Humidity:
+ case SPK.SensorHumidity:
btnTitle.Text = Language.StringByID(StringId.Humidity) + "(%)";
break;
}
@@ -556,7 +568,7 @@
IsBold = true,
TextID = StringId.ColorValue,
});
- for (int index = 0; index < sensor.levelTextList.Count; index++)
+ for (int index = 0; index < levelTextList.Count; index++)
{
infoView.AddChidren(new Button()
{
@@ -580,7 +592,7 @@
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.TextFontSize,
IsBold = true,
- Text = sensor.intervalValue[index]
+ Text = sensorTemp.GetIntervalValue(sensor.spk)[index]
});
subInfoView.AddChidren(new Button()
@@ -591,7 +603,7 @@
TextColor = CSS_Color.FirstLevelTitleColor,
TextSize = CSS_FontSize.TextFontSize,
IsBold = true,
- TextID = sensor.levelTextList[index]
+ TextID = levelTextList[index]
});
subInfoView.AddChidren(new Button()
@@ -601,7 +613,7 @@
Width = Application.GetRealWidth(38),
Height = Application.GetRealHeight(18),
Radius = (uint)Application.GetRealWidth(4),
- BackgroundColor = sensor.levelColorList[index]
+ BackgroundColor = levelColorList[index]
});
}
@@ -627,7 +639,7 @@
var dispalyView = new FrameLayout()
{
X = Application.GetRealWidth(10),
- Y = Application.GetRealHeight(100),
+ Y = Application.GetRealHeight(266),
Width = Application.GetRealWidth(160),
Height = Application.GetRealHeight(110),
BackgroundImagePath = "PersonalCenter/HomeList1bg.png",
@@ -644,15 +656,15 @@
};
dispalyView.AddChidren(contentView);
- if (DB_ResidenceData.rooms.Count < 2)
+ if (SpatialInfo.CurrentSpatial.RoomList.Count < 2)
{
}
- else if (DB_ResidenceData.rooms.Count < 3)
+ else if (SpatialInfo.CurrentSpatial.RoomList.Count < 3)
{
dispalyView = new FrameLayout()
{
X = Application.GetRealWidth(10),
- Y = Application.GetRealHeight(100),
+ Y = Application.GetRealHeight(266),
Width = Application.GetRealWidth(160),
Height = Application.GetRealHeight(155),
BackgroundImagePath = "PersonalCenter/HomeList2bg.png",
@@ -662,12 +674,12 @@
contentView.Height = Application.GetRealHeight(45 * 3);
dispalyView.AddChidren(contentView);
}
- else if (DB_ResidenceData.rooms.Count < 4)
+ else if (SpatialInfo.CurrentSpatial.RoomList.Count < 4)
{
dispalyView = new FrameLayout()
{
X = Application.GetRealWidth(10),
- Y = Application.GetRealHeight(100),
+ Y = Application.GetRealHeight(266),
Width = Application.GetRealWidth(160),
Height = Application.GetRealHeight(200),
BackgroundImagePath = "PersonalCenter/HomeList3bg.png",
@@ -682,7 +694,7 @@
dispalyView = new FrameLayout()
{
X = Application.GetRealWidth(10),
- Y = Application.GetRealHeight(100),
+ Y = Application.GetRealHeight(266),
Width = Application.GetRealWidth(160),
Height = Application.GetRealHeight(245),
BackgroundImagePath = "PersonalCenter/HomeList4bg.png",
@@ -695,10 +707,13 @@
}
+ var showListRoom = new List<Room>();
+ showListRoom.Add(new Room() { roomName = Language.StringByID(StringId.All) });
+ showListRoom.AddRange(SpatialInfo.CurrentSpatial.RoomList);
- foreach (var roomTemp in DB_ResidenceData.rooms)
+ foreach (var roomTemp in showListRoom)
{
- string roomName = roomTemp.name;
+ string roomName = roomTemp.roomName;
var btnRoomName = new Button()
{
Gravity = Gravity.CenterHorizontal,
@@ -720,6 +735,7 @@
dialog.Close();
btnRoom.Text = roomName;
room = roomTemp;
+ LoadSenesorList();
};
}
--
Gitblit v1.8.0