From 9ef48d7b2da7c408b53f73be0f6eef3cbac1c84a Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 19 十一月 2020 10:23:45 +0800
Subject: [PATCH] Evoyo.Home1.1.0120111601_Release
---
ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs | 101 +++++++++++++++++++-------------------------------
1 files changed, 38 insertions(+), 63 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs
index 3a1f691..89bde90 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs
@@ -22,7 +22,7 @@
/// <summary>
/// 鍏ㄩ儴鐨勬暟鎹�(keys1:鎴块棿ID Keys2:R鏂囦欢鐨勬暟鍊�)
/// </summary>
- private Dictionary<string, Dictionary<int, uRowInformation>> dicAllData = new Dictionary<string, Dictionary<int, uRowInformation>>();
+ private Dictionary<string, Dictionary<string, uRowInformation>> dicAllData = new Dictionary<string, Dictionary<string, uRowInformation>>();
/// <summary>
/// 褰撳墠閫夋嫨鐨勬ゼ灞侷D
/// </summary>
@@ -93,7 +93,7 @@
var listRoom = new List<Common.Room>();
foreach (string roomId in this.dicAllData.Keys)
{
- listRoom.Add(Common.Room.CurrentRoom.GetRoomById(roomId));
+ listRoom.Add(HdlRoomLogic.Current.GetRoomById(roomId));
}
//鍒濆鍖栨埧闂磋彍鍗曟帶浠�
@@ -129,7 +129,7 @@
private void InitTopRightMenuControl()
{
//鑾峰彇妤煎眰
- var dicFloor = Common.Room.CurrentRoom.GetFloorSortList();
+ var dicFloor = HdlRoomLogic.Current.GetFloorSortList();
if (dicFloor.Count == 0)
{
return;
@@ -143,6 +143,7 @@
btnFloor.Gravity = Gravity.CenterVertical;
btnFloor.X = btnIconContr.X + btnIconContr.btnIcon.X - Application.GetRealWidth(300);
btnFloor.TextAlignment = TextAlignment.CenterRight;
+ btnFloor.IsBold = true;
topFrameLayout.AddChidren(btnFloor);
foreach (var floorId in dicFloor.Keys)
@@ -156,10 +157,10 @@
btnIconContr.ButtonClickEvent += (sender, e) =>
{
//妤煎眰鑿滃崟
- var contr = new TopRightMenuControl(dicFloor.Count, 449, Language.StringByID(R.MyInternationalizationString.SelectFloor));
+ var contr = new TopRightFloorMenuControl(dicFloor.Count, 2, this.nowSelectFloorId, Language.StringByID(R.MyInternationalizationString.SelectFloor));
foreach (var floorId in dicFloor.Keys)
{
- contr.AddRowMenu(dicFloor[floorId], "Floor/Floor.png", "Floor/FloorSelected.png", () =>
+ contr.AddRowMenu(floorId, () =>
{
//璁板綍璧烽�夋嫨鐨処D
this.nowSelectFloorId = floorId;
@@ -179,16 +180,16 @@
/// 鍒濆鍖栬鎺т欢
/// </summary>
/// <param name="dicRowData"></param>
- private void InitRowControl(Dictionary<int, uRowInformation> dicRowData)
+ private void InitRowControl(Dictionary<string, uRowInformation> dicRowData)
{
this.listView.RemoveAll();
HdlThreadLogic.Current.RunMainInThread(() =>
{
int count = 0;
- foreach (var textId in dicRowData.Keys)
+ foreach (var strText in dicRowData.Keys)
{
count++;
- var rowData = dicRowData[textId];
+ var rowData = dicRowData[strText];
var rowlayout = new FrameRowControl(listView.rowSpace / 2);
listView.AddChidren(rowlayout);
@@ -197,7 +198,7 @@
btnIcon.UnSelectedImagePath = rowData.IconPath;
//璁惧鍚�
- var txtDevice = rowlayout.AddLeftCaption(Language.StringByID(textId), 750);
+ var txtDevice = rowlayout.AddLeftCaption(strText, 750);
txtDevice.TextSize = 15;
//鍚戝彸鍥炬爣
rowlayout.AddRightArrow();
@@ -237,12 +238,12 @@
/// 鑾峰彇璁惧鐨勬墍鏈夌被鍨嬶紝骞舵暣鐞嗘垚姣忎竴琛岀殑鏁版嵁(keys1:鎴块棿ID Keys2:R鏂囦欢鐨勬暟鍊�)
/// </summary>
/// <returns></returns>
- private Dictionary<string, Dictionary<int, uRowInformation>> GetAllListData()
+ private Dictionary<string, Dictionary<string, uRowInformation>> GetAllListData()
{
- var dicData = new Dictionary<string, Dictionary<int, uRowInformation>>();
+ var dicData = new Dictionary<string, Dictionary<string, uRowInformation>>();
//鑾峰彇鏈湴瀹夐槻鐨勫満鏅�
Dictionary<int, string> dicScene = HdlSafeguardLogic.Current.GetLocalSceneByZoneID(this.zoonID);
- var listRoom = Common.Room.CurrentRoom.GetFloorSortRoom(this.nowSelectFloorId);
+ var listRoom = HdlRoomLogic.Current.GetFloorSortRoom(this.nowSelectFloorId);
for (int i = 0; i < listRoom.Count; i++)
{
@@ -262,18 +263,18 @@
/// <param name="i_room"></param>
/// <param name="dicScene"></param>
/// <returns></returns>
- private Dictionary<int, uRowInformation> GetRoomDeviceAndSceneData(Common.Room i_room, Dictionary<int, string> dicScene)
+ private Dictionary<string, uRowInformation> GetRoomDeviceAndSceneData(Common.Room i_room, Dictionary<int, string> dicScene)
{
if (dicScene == null)
{
//鑾峰彇鏈湴瀹夐槻鐨勫満鏅�
dicScene = HdlSafeguardLogic.Current.GetLocalSceneByZoneID(this.zoonID);
}
- var dicRoomData = new Dictionary<int, uRowInformation>();
+ var dicRoomData = new Dictionary<string, uRowInformation>();
- for (int j = 0; j < i_room.DeviceUIList.Count; j++)
+ for (int j = 0; j < i_room.ListDevice.Count; j++)
{
- var device = i_room.DeviceUIList[j].CommonDevice;
+ var device = Common.LocalDevice.Current.GetDevice(i_room.ListDevice[j]);
//濡傛灉閭d釜璁惧宸茬粡娣诲姞浜嗭紝鍒欎笉鍐嶆樉绀�
if (device == null || HdlSafeguardLogic.Current.IsAlarmDeviceExist(this.zoonID, device) == true)
{
@@ -283,69 +284,43 @@
|| device.Type == DeviceType.DimmableLight//璋冨厜鍣�
|| device.Type == DeviceType.ColorDimmableLight//褰╃伅
|| device.Type == DeviceType.OnOffOutput//缁х數鍣�
+ || device.Type == DeviceType.ColorTemperatureLight//鑹叉俯鐏�
|| device.Type == DeviceType.WindowCoveringDevice)//绐楀笜
{
string unSelectPath = string.Empty;
string selectPath = string.Empty;
- var typeInfo = Common.LocalDevice.Current.GetNotHdlMyDeviceEnumInfo(new List<CommonDevice>() { device });
- if (device.Type == DeviceType.OnOffOutput)
+ var typeInfo = Common.LocalDevice.Current.GetDeviceBelongEnumInfo(device);
+ //鑾峰彇鍥剧墖
+ Common.LocalDevice.Current.GetDeviceFunctionTypeMenuIcon(typeInfo, ref unSelectPath, ref selectPath);
+ if (dicRoomData.ContainsKey(typeInfo.BeloneText) == false)
{
- //缁х數鍣ㄧ殑鏃跺��,闇�瑕佺壒娈婂鐞�
- if (device.DfunctionType == DeviceFunctionType.A寮�鍏�)
- {
- typeInfo.BeloneTextId = R.MyInternationalizationString.uSwitch;
- unSelectPath = "Device/Switch.png";
- }
- else if (device.DfunctionType == DeviceFunctionType.A鎻掑骇)
- {
- typeInfo.BeloneTextId = R.MyInternationalizationString.uSocket1;
- unSelectPath = "Device/Socket1.png";
- }
- else if (device.DfunctionType == DeviceFunctionType.A鐏厜)
- {
- typeInfo.BeloneTextId = R.MyInternationalizationString.uLight;
- unSelectPath = "Device/Light.png";
- }
- else
- {
- //缁х數鍣�
- typeInfo.BeloneTextId = R.MyInternationalizationString.uDeviceBelongId2300;
- unSelectPath = "Device/Relay.png";
- }
- if (dicRoomData.ContainsKey(typeInfo.BeloneTextId) == false)
- {
- dicRoomData[typeInfo.BeloneTextId] = new uRowInformation();
- dicRoomData[typeInfo.BeloneTextId].IconPath = unSelectPath;
- }
+ dicRoomData[typeInfo.BeloneText] = new uRowInformation();
+ dicRoomData[typeInfo.BeloneText].IconPath = unSelectPath;
}
- else
- {
- //鑾峰彇鍥剧墖
- Common.LocalDevice.Current.GetDeviceBeloneIcon(typeInfo.ConcreteType, ref unSelectPath, ref selectPath);
- if (dicRoomData.ContainsKey(typeInfo.BeloneTextId) == false)
- {
- dicRoomData[typeInfo.BeloneTextId] = new uRowInformation();
- dicRoomData[typeInfo.BeloneTextId].IconPath = unSelectPath;
- }
- }
- dicRoomData[typeInfo.BeloneTextId].listDevice.Add(device);
+ dicRoomData[typeInfo.BeloneText].listDevice.Add(device);
}
}
- for (int j = 0; j < i_room.SceneUIList.Count; j++)
+ string strSceneText = Language.StringByID(R.MyInternationalizationString.uScence);
+ for (int j = 0; j < i_room.ListSceneId.Count; j++)
{
//濡傛灉閭d釜鍦烘櫙宸茬粡娣诲姞浜嗭紝鍒欎笉鍐嶆樉绀�
- if (dicScene.ContainsKey(i_room.SceneUIList[j].Id) == true)
+ if (dicScene.ContainsKey(i_room.ListSceneId[j]) == true)
{
continue;
}
- if (dicRoomData.ContainsKey(R.MyInternationalizationString.uScence) == false)
+ var sceneUi = HdlSceneLogic.Current.GetSceneUIBySceneId(i_room.ListSceneId[j]);
+ if (sceneUi == null)
{
- dicRoomData[R.MyInternationalizationString.uScence] = new uRowInformation();
- dicRoomData[R.MyInternationalizationString.uScence].IconPath = "Scene/SceneIcon.png";
- dicRoomData[R.MyInternationalizationString.uScence].listScene = new List<Common.SceneUI>();
+ continue;
}
- dicRoomData[R.MyInternationalizationString.uScence].listScene.Add(i_room.SceneUIList[j]);
+ if (dicRoomData.ContainsKey(strSceneText) == false)
+ {
+ dicRoomData[strSceneText] = new uRowInformation();
+ dicRoomData[strSceneText].IconPath = "Scene/SceneIcon.png";
+ dicRoomData[strSceneText].listScene = new List<Common.SceneUI>();
+ }
+ dicRoomData[strSceneText].listScene.Add(sceneUi);
}
return dicRoomData;
}
--
Gitblit v1.8.0