From 2e7e5f9af5b32cfe1fc3c6ba40bf7eb984bbd0a4 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期一, 11 五月 2020 17:52:06 +0800
Subject: [PATCH] ???????
---
ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs | 308 ++++++++++++++++++++++++++++++++------------------
1 files changed, 196 insertions(+), 112 deletions(-)
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs
index 2d29c23..e5976fd 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/AddScenePage.cs
@@ -2,7 +2,6 @@
using System.Collections.Generic;
using Microsoft.AppCenter.Crashes;
using Shared.Common;
-using Shared.Phone.Device.Light;
using Shared.Phone.UserCenter.Device;
using ZigBee.Device;
using static ZigBee.Device.BindObj;
@@ -10,42 +9,63 @@
namespace Shared.Phone.UserCenter.DeviceBind
{
- public class AddScenePage : BindCommonLayout, ZigBee.Common.IStatus
+ public class AddScenePage : BindCommonLayout
{
- /// <summary>
- /// 鎸夐敭妯″紡鎺ユ敹
- /// </summary>
- /// <param name="common">Common.</param>
- public void Changed(CommonDevice common)
- {
- Shared.Application.RunOnMainThread(() =>
- {
- });
- }
-
/// 鏋勯�犲嚱鏁�
/// </summary>
/// <param name="doorLock"></param>
- public AddScenePage(ZigBee.Device.Panel key)
+ public AddScenePage(ZigBee.Device.Panel key, List<ScenesListInfo> gwScenesList)
{
this.currentKey = key;
+ gwCurScenesList = gwScenesList;
}
- #region 鈼� 鍙橀噺鐢虫槑__________________________
+ #region 鍙橀噺鐢虫槑
+ /// <summary>
+ /// 褰撳墠鎸夐敭
+ /// </summary>
ZigBee.Device.Panel currentKey;
- //鏄剧ず琚粦瀹氳澶囨垨鍦烘櫙鐨剉iew
+ /// <summary>
+ /// 鏄剧ず琚粦瀹氳澶囨垨鍦烘櫙鐨剉iew
+ /// </summary>
VerticalScrolViewLayout midVerticalScrolViewLayout;
+ /// <summary>
+ /// 鏄剧ず鎴块棿鐨剉iew
+ /// </summary>
HorizontalScrolViewLayout btnHorizontalScrolViewLayout;
/// <summary>
/// 鎸夐敭閰嶇疆鐨勭洰鏍囧垪琛�
/// </summary>
- List<CommonDevice> targetList = new List<CommonDevice>();//涓存椂鐩爣鍒楄〃
- List<Room> roomList = new List<Room>();//鏈湴鎴块棿鍒楄〃
+ List<CommonDevice> targetListDevice = new List<CommonDevice>();
+ /// <summary>
+ /// 鎸夐敭閰嶇疆鐨勫満鏅洰鏍囧垪琛�
+ /// </summary>
+ List<SceneUI> targetListScene = new List<SceneUI>();
+ /// <summary>
+ /// 鏈湴鎴块棿鍒楄〃
+ /// </summary>
+ List<Room> roomList = new List<Room>();
+ /// <summary>
+ /// 褰撶粦瀹氳〃鍙樺寲鍚庣殑鍥炶皟
+ /// </summary>
public Action<List<BindListResponseObj>> action;
+ /// <summary>
+ /// 淇濆瓨瀹屾垚鎸夐挳
+ /// </summary>
Button btnFinifh;
+ /// <summary>
+ /// 妤煎眰鏂囨湰
+ /// </summary>
Button btnFloorText;
- Dictionary<string, string> dicFloor;//妤煎眰鍒楄〃
+ /// <summary>
+ /// 妤煎眰鍒楄〃
+ /// </summary>
+ Dictionary<string, string> dicFloor;
List<SceneUI> currentKeyAllRoomSceneList = new List<SceneUI>();
+ /// <summary>
+ /// 缃戝叧涓殑鍦烘櫙鍒楄〃
+ /// </summary>
+ public List<ScenesListInfo> gwCurScenesList = new List<ScenesListInfo>();
#endregion
/// <summary>
@@ -59,52 +79,66 @@
{
RemoveFromParent();
};
- this.btnTitle.Width = Application.GetRealWidth(1080 - 161 - 200 - 58);
+ this.btnTitle.Width = Application.GetRealWidth(1080 - 161 - 300);
this.btnBack.MouseUpEventHandler += eHandlerBack;
this.btnBackFrameLayout.MouseUpEventHandler += eHandlerBack;
this.MidFrameLayout(this);
var btnAddFrameLayout = new FrameLayout
{
- X = Application.GetRealWidth(830),
+ X = Application.GetRealWidth(619),
};
this.titleFrameLayout.AddChidren(btnAddFrameLayout);
btnFloorText = new Button
{
- Width = Application.GetRealWidth(110),
+ Width = Application.GetRealWidth(300 - 69 - 58),
X = Application.GetRealWidth(15),
Text = Language.StringByID(R.MyInternationalizationString.FirstFloor),
TextColor = Shared.Common.ZigbeeColor.Current.XMBlack,
- TextSize = 15,
+ TextSize = 14,
+ IsBold = true,
TextAlignment = TextAlignment.CenterRight,
};
btnAddFrameLayout.AddChidren(btnFloorText);
+ var btnBindDownFrameLayout = new FrameLayout
+ {
+ Width = Application.GetMinReal(69 + 58),
+ X = Application.GetRealWidth(300 - 69 - 58),
+ };
+ btnAddFrameLayout.AddChidren(btnBindDownFrameLayout);
+
var btnBindDown = new Button
{
- Height = Application.GetRealHeight(69),
- Width = Application.GetRealWidth(69),
- X = Application.GetRealWidth(200 - 77),
+ Height = Application.GetMinReal(69),
+ Width = Application.GetMinReal(69),
UnSelectedImagePath = "BindPic/BindDown.png",
Gravity = Gravity.CenterVertical,
};
- btnAddFrameLayout.AddChidren(btnBindDown);
- btnBindDown.MouseDownEventHandler += (sender, e) =>
+ btnBindDownFrameLayout.AddChidren(btnBindDown);
+
+ EventHandler<MouseEventArgs> eHandlerBindDown = (sender, e) =>
{
SideslipFramelayout();
};
+ btnBindDown.MouseDownEventHandler += eHandlerBindDown;
+ btnBindDownFrameLayout.MouseDownEventHandler += eHandlerBindDown;
+
if (Common.Config.Instance.Home.FloorDics.Count == 0)
{
btnAddFrameLayout.Width = 0;
}
else
{
- btnAddFrameLayout.Width = Application.GetRealWidth(200);
+ btnAddFrameLayout.Width = Application.GetRealWidth(300);
}
MidFrameLayoutContent(btnFloorText);
}
+ /// <summary>
+ /// 涓儴甯冨眬
+ /// </summary>
async void MidFrameLayoutContent(Button btnFloorText)
{
#region UI
@@ -143,6 +177,7 @@
TextID = R.MyInternationalizationString.Save,
BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack,
TextColor = Shared.Common.ZigbeeColor.Current.XMWhite,
+ IsBold = true,
TextSize = 16,
};
bottomFrameLayout.AddChidren(btnFinifh);
@@ -150,14 +185,15 @@
#region 鏁版嵁澶勭悊
//鑾峰彇妤煎眰
- dicFloor = Common.Room.CurrentRoom.GetFloorSortList();
+ dicFloor = HdlRoomLogic.Current.GetFloorSortList();
currentKey.currentSelectFloorId = BindInfo.GetCurrentSelectFloorId();
btnFloorText.Text = BindInfo.GetCurrentSelectFloorIdName();
+ var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
if (Common.Config.Instance.Home.FloorDics.Count == 0)
{
// 鑾峰彇娌℃湁妤煎眰鎴块棿
- foreach (var room in Shared.Common.Room.Lists)
+ foreach (var room in listAllRoom)
{
if (string.IsNullOrEmpty(room.FloorId))
{
@@ -168,7 +204,7 @@
else
{
// 鑾峰彇妤煎眰瀵瑰簲瀵规埧闂�
- foreach (var room in Shared.Common.Room.Lists)
+ foreach (var room in listAllRoom)
{
if (room.FloorId == currentKey.currentSelectFloorId)
{
@@ -192,7 +228,7 @@
var sc = currentKey.bindList.Find(obj => (obj != null) && (obj.BindScenesId == scTemp.Id));
if (sc != null)
{
- targetList.Add(scTemp);
+ targetListScene.Add(scTemp);
}
}
}
@@ -201,9 +237,8 @@
Shared.Common.Room curRoom = roomList[0];
int index = 0;
RefreshRoomList(curRoom, ref index);
- //RefreshSceneList(roomList[index]);
- if (curRoom.SceneUIList.Count == 0)
+ if (curRoom.ListSceneId.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -213,7 +248,7 @@
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -228,7 +263,7 @@
bool isFinish = false;
try
{
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
Application.RunOnMainThread(() =>
{
@@ -317,7 +352,7 @@
var addBindeDev = new AddBindData();
addBindeDev.DeviceAddr = currentKey.DeviceAddr;
addBindeDev.Epoint = currentKey.DeviceEpoint;
- foreach (var de in targetList)
+ foreach (var de in targetListDevice)
{
if (de.DeviceAddr != null)
{
@@ -328,36 +363,25 @@
addBindInfo.BindEpoint = de.DeviceEpoint;
addBindeDev.BindList.Add(addBindInfo);
}
- else
- {
- var addBindInfo = new AddBindListObj();
- addBindInfo.BindType = 1;
- addBindInfo.BindCluster = 6;
- var sc1 = (SceneUI)de;
- addBindInfo.BindScenesId = sc1.Id;
- addBindeDev.BindList.Add(addBindInfo);
- }
+ }
+ foreach (var de in targetListScene)
+ {
+ var addBindInfo = new AddBindListObj();
+ addBindInfo.BindType = 1;
+ addBindInfo.BindCluster = 6;
+ addBindInfo.BindScenesId = de.Id;
+ addBindeDev.BindList.Add(addBindInfo);
}
var dev = new AddedDeviceBindResponseAllData();
dev = await currentKey.AddDeviceBindAsync(addBindeDev);
- if (dev.addedDeviceBindResponseData == null)
- {
- Application.RunOnMainThread(() =>
- {
- CommonPage.Loading.Hide();
- new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinifh);
- });
- btnFinifh.Enable = true;
- btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
- return;
- }
- else
+ if (dev != null && dev.addedDeviceBindResponseData != null)
{
if (dev.addedDeviceBindResponseData.Result == 0)
{
currentKey.bindList = dev.addedDeviceBindResponseData.BindList;
- targetList.Clear();
+ targetListDevice.Clear();
+ targetListScene.Clear();
isFinish = true;
if (isFinish)
{
@@ -413,6 +437,17 @@
return;
}
}
+ else
+ {
+ Application.RunOnMainThread(() =>
+ {
+ CommonPage.Loading.Hide();
+ new Tip() { MaxWidth = 150, Text = Language.StringByID(R.MyInternationalizationString.GwResponseOvertime), Direction = AMPopTipDirection.Up, CloseTime = 1 }.Show(btnFinifh);
+ });
+ btnFinifh.Enable = true;
+ btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
+ return;
+ }
}
}
catch { }
@@ -447,7 +482,7 @@
}
//濡傛灉鎴块棿涓病鏈夊満鏅紝鍒欎笉鏄剧ず
- if (room.SceneUIList.Count == 0)
+ if (room.ListSceneId.Count == 0)
{
continue;
}
@@ -462,8 +497,8 @@
var btnRoomFrameLayout = new FrameLayout
{
- Height = Application.GetRealHeight(159),
- Width = Application.GetRealWidth(255),
+ Height = Application.GetMinReal(159),
+ Width = Application.GetMinReal(255),
Y = Application.GetRealHeight(23),
X = Application.GetRealWidth(5),
BackgroundImagePath = "Item/RoomIconBackground.png",
@@ -516,8 +551,7 @@
curentOldRoomFrameLayout.BackgroundImagePath = "Item/RoomIconBackgroundSelected.png";
}
curRoom = room;
- currentKey.RoomId = room.Id;
- if (curRoom.SceneUIList.Count == 0)
+ if (curRoom.ListSceneId.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -527,7 +561,7 @@
btnFinifh.Enable = true;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMBlack;
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -548,17 +582,27 @@
RefreshSceneList(curRoom);
}
- //鎸夐敭缁戝畾鍦烘櫙琛ㄦ樉绀�
+ /// <summary>
+ /// 鎸夐敭缁戝畾鍦烘櫙琛ㄦ樉绀�
+ /// </summary>
+ /// <param name="curRoom"></param>
void RefreshSceneList(Shared.Common.Room curRoom)
{
midVerticalScrolViewLayout.RemoveAll();
- if (curRoom.SceneUIList.Count == 0)
+ if (curRoom.ListSceneId.Count == 0)
{
return;
}
Button oldScene = null;
int curIndex = 0;
- foreach (var scene in curRoom.SceneUIList)
+ var currentSceneUIList = GetMatchSceneUIList(curRoom);
+ if (currentSceneUIList.Count == 0)
+ {
+ btnFinifh.Enable = false;
+ btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
+ return;
+ }
+ foreach (var scene in currentSceneUIList)
{
#region 缁戝畾琛║I鏄撅紙鏃犳暟鎹鐞嗭級
var rowLayout = new FrameLayout()
@@ -572,25 +616,26 @@
{
X = Application.GetMinRealAverage(58),
Y = Application.GetMinRealAverage(46),
- Width = Application.GetMinRealAverage(81),
- Height = Application.GetMinRealAverage(81),
- UnSelectedImagePath = "Scene/SceneIcon.png",// scene.IconPath,
+ Width = Application.GetMinReal(81),
+ Height = Application.GetMinReal(81),
+ UnSelectedImagePath = "Scene/SceneIcon.png",// scene.IconPath,
};
rowLayout.AddChidren(devicePic);
var btnBindName = new Button()
{
- Width = Application.GetRealWidth(500 - 120),
+ Width = Application.GetRealWidth(790),
X = devicePic.Right + Application.GetRealWidth(20),
TextColor = Shared.Common.ZigbeeColor.Current.TextBlack,
TextAlignment = TextAlignment.CenterLeft,
+ TextSize = 15,
};
rowLayout.AddChidren(btnBindName);
var btnChoose = new Button()
{
- Width = Application.GetRealWidth(60),
- Height = Application.GetRealHeight(60),
+ Width = Application.GetMinReal(60),
+ Height = Application.GetMinReal(60),
X = Application.GetRealWidth(861 + 81),
Y = Application.GetRealHeight(35),
SelectedImagePath = "DoorLock/SelectedIcon.png",
@@ -608,7 +653,7 @@
};
rowLayout.AddChidren(line2);
- if (curIndex == curRoom.SceneUIList.Count - 1)
+ if (curIndex == curRoom.ListSceneId.Count - 1)
{
line2.Visible = false;
}
@@ -623,7 +668,7 @@
{
btnBindName.Text = scene.Name;
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
foreach (var bindedSc in currentKey.bindList)
{
@@ -632,16 +677,15 @@
btnChoose.IsSelected = true;
btnChoose.Visible = true;
oldScene = btnChoose;
- targetList.Add(scene);
+ targetListScene.Add(scene);
}
}
}
else
{
- foreach (var bindedSc in targetList)
+ foreach (var bindedSc in targetListScene)
{
- var sc1 = (SceneUI)bindedSc;
- if (scene.Id == sc1.Id)
+ if (scene.Id == bindedSc.Id)
{
btnChoose.IsSelected = true;
btnChoose.Visible = true;
@@ -677,11 +721,11 @@
oldScene = btnChoose;
oldScene.IsSelected = true;
oldScene.Visible = true;
- currentKey.curSelectSceneID = scene.Id.ToString();
- targetList.Clear();
- targetList.Add(scene);
+ targetListDevice.Clear();
+ targetListScene.Clear();
+ targetListScene.Add(scene);
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -698,7 +742,7 @@
btnChoose.MouseUpEventHandler += hander;
curIndex++;
}
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -710,7 +754,9 @@
}
}
- // 渚ц竟瀵艰埅鏍�
+ /// <summary>
+ /// 妤煎眰閫夋嫨鐨勪晶杈瑰鑸爮
+ /// </summary>
void SideslipFramelayout()
{
var dialog = new Dialog
@@ -727,8 +773,7 @@
var sidelipFrameLayout = new FrameLayout()
{
- Height = Application.GetRealHeight(783),
- Width = Application.GetRealWidth(449),
+ Width = Application.GetMinReal(449),
Y = Application.GetRealHeight(161),
X = Application.GetRealWidth(596),
BackgroundImagePath = "DoorLock/SideslipPic.png",
@@ -741,8 +786,9 @@
Height = Application.GetRealHeight(58),
X = Application.GetRealWidth(81),
Y = Application.GetRealHeight(81),
- TextColor = Shared.Common.ZigbeeColor.Current.XMGray3,
+ TextColor = Shared.Common.ZigbeeColor.Current.XMBlack,
TextSize = 14,
+ IsBold = true,
TextAlignment = TextAlignment.CenterLeft,
TextID = R.MyInternationalizationString.SelectFloor,
};
@@ -751,17 +797,19 @@
var sidelipVerticalScrolViewLayout = new VerticalScrolViewLayout()
{
Height = Application.GetRealHeight(600),
- Y = btnSelectFloor.Bottom,
+ Y = btnSelectFloor.Bottom + Application.GetRealHeight(45),
};
sidelipFrameLayout.AddChidren(sidelipVerticalScrolViewLayout);
Button oldbutton = null;
Button oldbuttonText = null;
+ int count = 0;
foreach (var floorId in dicFloor.Keys)
{
+ count++;
var rowFrameLayout = new RowLayout()
{
- Height = Application.GetRealHeight(150),
+ Height = Application.GetRealHeight(152),
LineColor = Shared.Common.ZigbeeColor.Current.XMRowLine,
X = Application.GetRealWidth(81),
};
@@ -769,9 +817,9 @@
var btnAllMethod = new Button()
{
- Width = Application.GetRealWidth(81),
- Height = Application.GetRealHeight(81),
- Y = Application.GetRealHeight(55),
+ Width = Application.GetMinReal(81),
+ Height = Application.GetMinReal(81),
+ Gravity = Gravity.CenterVertical,
UnSelectedImagePath = "Floor/Floor.png",
SelectedImagePath = "Floor/FloorSelected.png",
};
@@ -782,7 +830,7 @@
Width = Application.GetRealWidth(311),
Height = Application.GetRealHeight(58),
X = Application.GetRealWidth(92),
- Y = Application.GetRealHeight(69),
+ Gravity = Gravity.CenterVertical,
TextColor = Shared.Common.ZigbeeColor.Current.XMGray3,
TextSize = 14,
TextAlignment = TextAlignment.CenterLeft,
@@ -793,6 +841,7 @@
if (currentKey.currentSelectFloorId == floorId)
{
btnAllMethod.IsSelected = true;
+ btnAllMethod.IsBold = true;
btnMethodText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack;
}
@@ -820,10 +869,12 @@
oldbuttonText = btnMethodText;
btnMethodText.IsSelected = true;
oldbuttonText.TextColor = Shared.Common.ZigbeeColor.Current.XMBlack;
+ oldbuttonText.IsBold = true;
}
//鑾峰彇妤煎眰瀵瑰簲鐨勬埧闂�
- foreach (var room in Shared.Common.Room.Lists)
+ var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
+ foreach (var room in listAllRoom)
{
if (room.FloorId == currentKey.currentSelectFloorId)
{
@@ -844,7 +895,7 @@
int index = 0;
RefreshRoomList(curRoom, ref index);
RefreshSceneList(roomList[0]);
- if (targetList.Count == 0)
+ if (targetListDevice.Count == 0 && targetListScene.Count == 0)
{
btnFinifh.Enable = false;
btnFinifh.BackgroundColor = Shared.Common.ZigbeeColor.Current.XMUnSelect;
@@ -860,14 +911,31 @@
rowFrameLayout.MouseUpEventHandler += hander;
btnMethodText.MouseUpEventHandler += hander;
}
+
+ if (count == 0)
+ {
+ sidelipFrameLayout.Height = 0;
+ }
+ else if (count <= 4 && count > 0)
+ {
+ sidelipFrameLayout.Height = Application.GetRealHeight(180) + count * Application.GetRealHeight(150);
+ }
+ else
+ {
+ sidelipFrameLayout.Height = Application.GetMinReal(780);
+ }
}
- //褰撳墠鎸夐敭鎵�鏈夋樉绀烘埧闂寸殑鎵�鏈夊満鏅鐞�
+ /// <summary>
+ /// 褰撳墠鎸夐敭鎵�鏈夋樉绀烘埧闂寸殑鎵�鏈夊満鏅鐞�
+ /// </summary>
+ /// <returns></returns>
List<SceneUI> GetALlDispalyRoomSceneList()
{
currentKeyAllRoomSceneList.Clear();
// 鑾峰彇鎵�鏈夋埧闂�
- foreach (var room in Shared.Common.Room.Lists)
+ var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
+ foreach (var room in listAllRoom)
{
//濡傛灉鎴块棿涓哄枩鐖憋紝鍒欎笉鏄剧ず
if (room.IsLove == true)
@@ -875,29 +943,45 @@
continue;
}
//濡傛灉鎴块棿涓病鏈夊満鏅紝鍒欎笉鏄剧ず
- if (room.SceneUIList.Count == 0)
+ if (room.ListSceneId.Count == 0)
{
continue;
}
- foreach (var scene in room.SceneUIList)
+ foreach (var sceneId in room.ListSceneId)
{
+ var scene = HdlSceneLogic.Current.GetSceneUIBySceneId(sceneId);
+ if (scene == null)
+ {
+ continue;
+ }
currentKeyAllRoomSceneList.Add(scene);
}
}
return currentKeyAllRoomSceneList;
}
-
- public void DeviceInfoChange(CommonDevice common, string typeTag)
+ /// <summary>
+ /// 鑾峰彇缃戝叧涓瓨鍦ㄧ殑鏈湴鍦烘櫙鍒楄〃
+ /// </summary>
+ /// <param name="curRoom"></param>
+ /// <returns></returns>
+ List<SceneUI> GetMatchSceneUIList(Shared.Common.Room curRoom)
{
- }
-
- public void ChangedILogicStatus(ZigBee.Device.Logic logic)
- {
- }
-
- public void ChangedISceneStatus(Scene scene)
- {
+ var tempSceneUIList = new List<SceneUI>();
+ foreach (var sceneId in curRoom.ListSceneId)
+ {
+ var scene = HdlSceneLogic.Current.GetSceneUIBySceneId(sceneId);
+ if (scene == null)
+ {
+ continue;
+ }
+ var gwSc = gwCurScenesList.Find(obj => (obj.ScenesId == sceneId));
+ if (gwSc != null)
+ {
+ tempSceneUIList.Add(scene);
+ }
+ }
+ return tempSceneUIList;
}
}
}
--
Gitblit v1.8.0