WJC
2020-03-23 bba578c2f0acf2eca747edcb69426771e0cadd32
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlRoomLogic.cs
@@ -136,7 +136,7 @@
        {
            Application.RunOnMainThread(() =>
            {
                Phone.Device.Room.RoomManagement.Instance.Show();
                MainPage.ListRoomViewFrom.Instance?.ShowForm();
            });
        }
@@ -683,12 +683,28 @@
        /// <returns></returns>
        public List<CommonDevice> GetRoomListDevice(Room i_room)
        {
            var listDevice = new List<CommonDevice>();
            var dicSort = new Dictionary<string, List<int>>();
            foreach (var mainKeys in i_room.ListDevice)
            {
                var device = LocalDevice.Current.GetDevice(mainKeys);
                if (device != null)
                {
                    if (dicSort.ContainsKey(device.DeviceAddr) == false)
                    {
                        dicSort[device.DeviceAddr] = new List<int>();
                    }
                    dicSort[device.DeviceAddr].Add(device.DeviceEpoint);
                }
            }
            var listDevice = new List<CommonDevice>();
            foreach (var strMac in dicSort.Keys)
            {
                var listEpont = dicSort[strMac];
                //排序
                listEpont.Sort();
                for (int i = 0; i < listEpont.Count; i++)
                {
                    var device = LocalDevice.Current.GetDevice(strMac, listEpont[i]);
                    listDevice.Add(device);
                }
            }
@@ -766,10 +782,6 @@
                    listDevice.Add(device);
                }
            }
            if (listDevice.Count == 0)
            {
                return null;
            }
            return listDevice;
        }
@@ -825,7 +837,7 @@
        #region ■ 楼层和房间顺序相关_________________
        /// <summary>
        /// 根据楼层的主键获取排序后的房间列表
        /// 根据楼层的主键获取排序后的房间列表(支持无楼层模式)
        /// </summary>
        /// <param name="i_floorKeys">楼层的主键</param>
        /// <param name="getShard">分享的房间是否也获取</param>
@@ -854,11 +866,16 @@
            var dicRoom = new Dictionary<string, Common.Room>();
            foreach (var room in this.dicRooms.Values)
            {
                if (room.FloorId != i_floorKeys || room.IsLove == true)
                if (room.FloorId != i_floorKeys && i_floorKeys != string.Empty)
                {
                    //不是同一个楼层
                    continue;
                }
                if (room.IsLove == true)
                {
                    //不要我的喜爱
                    continue;
                }
                if (listRoomSort.Contains(room.Id) == false)
                {
                    //新添加的房间