WJC
2020-04-02 94e4e5b9fd3da964c44b7b14227d6fe2bbb426d7
ZigbeeApp/Shared/Phone/UserCenter/Residence/ResidenceManagementForm.cs
@@ -194,7 +194,7 @@
                    frame.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uCreatFloor), "Item/CreatFloor.png", "Item/CreatFloorSelected.png", () =>
                    {
                        //创建楼层
                        this.CreatOrEditorFloor(null, string.Empty, string.Empty);
                        this.CreatOrEditorFloor(null, null, string.Empty, string.Empty);
                    });
                    //创建房间
                    frame.AddRowMenu(Language.StringByID(R.MyInternationalizationString.uCreatRoom), "Item/RoomIcon.png", "Item/RoomIconSelected.png", () =>
@@ -212,7 +212,7 @@
                else if (AppResidenceMode == 1)
                {
                    //创建楼层
                    this.CreatOrEditorFloor(null, string.Empty, string.Empty);
                    this.CreatOrEditorFloor(null, null, string.Empty, string.Empty);
                }
                //无楼层模式
                else if (AppResidenceMode == 2)
@@ -266,7 +266,7 @@
        private void InitFloorRow()
        {
            //获取楼层
            var dicFloor = Common.Room.CurrentRoom.GetFloorSortList();
            var dicFloor = HdlRoomLogic.Current.GetFloorSortList();
            this.listFloorSort.Clear();
            foreach (string keys in dicFloor.Keys)
            {
@@ -335,7 +335,7 @@
                btnChanged.ButtonClickEvent += (sender, e) =>
                {
                    //创建或者编辑楼层
                    this.CreatOrEditorFloor(btnFloor, keys, floorName);
                    this.CreatOrEditorFloor(frameRow, btnFloor, keys, floorName);
                };
                //删除
@@ -364,33 +364,29 @@
                                break;
                            }
                        }
                        if (Common.Room.CurrentRoom == null)
                        var listDeleteId = new List<string>();
                        var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
                        for (int i = 0; i < listAllRoom.Count; i++)
                        {
                            Common.Room.CurrentRoom = Common.Room.Lists[0];
                        }
                        var listDeleteFile = new List<string>();
                        for (int i = 0; i < Common.Room.Lists.Count; i++)
                        {
                            if (Common.Room.Lists[i].FloorId == keys)
                            if (listAllRoom[i].FloorId == keys)
                            {
                                listDeleteFile.Add(Common.Room.Lists[i].FileName);
                                listDeleteId.Add(listAllRoom[i].Id);
                            }
                        }
                        //如果当前选择的房间是删除对象的话
                        if (Common.Room.CurrentRoom.FloorId == keys)
                        if (HdlRoomLogic.Current.CurrentRoom.FloorId == keys)
                        {
                            Common.Room.CurrentRoom = Common.Room.Lists[0];
                            HdlRoomLogic.Current.CurrentRoom = HdlRoomLogic.Current.GetLoveRoom();
                        }
                        //删除房间
                        foreach (string fileName in listDeleteFile)
                        foreach (string roomId in listDeleteId)
                        {
                            Common.Room.CurrentRoom.Remove(fileName);
                            HdlRoomLogic.Current.RemoveRoom(roomId);
                        }
                        Common.Config.Instance.Home.Save();
                        //保存顺序
                        listFloorSort.Remove(keys);
                        Common.Room.CurrentRoom.SaveFloorSort(listFloorSort);
                        HdlRoomLogic.Current.SaveFloorSort(listFloorSort);
                        if (Common.Config.Instance.Home.FloorDics.Count == 0)
                        {
@@ -413,7 +409,7 @@
        /// <param name="btnFloor"></param>
        /// <param name="keys"></param>
        /// <param name="floorName"></param>
        private void CreatOrEditorFloor(NormalViewControl btnFloor, string keys, string floorName)
        private void CreatOrEditorFloor(RowLayoutControl frameRow, NormalViewControl btnFloor, string keys, string floorName)
        {
            //生成一个弹窗画面
            var dialogForm = new DialogInputControl();
@@ -445,6 +441,8 @@
                }
                //画面关闭
                dialogForm.CloseDialog();
                //还原左右菜单
                frameRow?.HideMenu();
                if (floorName != textValue)
                {
                    //编辑或者创建楼层名称
@@ -454,6 +452,10 @@
                    }
                    Common.Config.Instance.Home.FloorDics[keys] = textValue;
                    Common.Config.Instance.Home.Save();
                    if (Common.Config.Instance.Home.CurrentFloorId == string.Empty)
                    {
                        Common.Config.Instance.Home.CurrentFloorId = keys;
                    }
                    if (btnFloor != null)
                    {
                        btnFloor.Text = textValue;
@@ -506,7 +508,7 @@
        private void InitRoomListRow()
        {
            //获取楼层的房间
            var listRoom = Common.Room.CurrentRoom.GetFloorSortRoom(string.Empty);
            var listRoom = HdlRoomLogic.Current.GetFloorSortRoom(string.Empty);
            this.listRoomSort.Clear();
            for (int i = 0; i < listRoom.Count; i++)
            {
@@ -564,6 +566,8 @@
            var btnEditor = frameRow.AddEditorControl();
            btnEditor.ButtonClickEvent += (sender, e) =>
            {
                //关闭左右菜单
                frameRow.HideMenu();
                var form = new EditorRoomInforForm();
                form.AddForm(room);
                form.FinishEditorEvent += (roomName) =>
@@ -579,17 +583,18 @@
                //确认删除房间?
                this.ShowMassage(ShowMsgType.Confirm, Language.StringByID(R.MyInternationalizationString.uDeleteRoomMsg), () =>
                {
                    if (Common.Room.CurrentRoom.Id == room.Id)
                    if (HdlRoomLogic.Current.CurrentRoom.Id == room.Id)
                    {
                        //如果删除的是当前房间的话
                        Common.Room.CurrentRoom = Common.Room.Lists[0];
                        HdlRoomLogic.Current.CurrentRoom = HdlRoomLogic.Current.GetLoveRoom();
                    }
                    Common.Room.CurrentRoom.Remove(room.FileName);
                    HdlRoomLogic.Current.RemoveRoom(room.Id);
                    //保存顺序
                    this.listRoomSort.Remove(room.Id);
                    Common.Room.CurrentRoom.SaveRoomSort(string.Empty, this.listRoomSort);
                    HdlRoomLogic.Current.SaveRoomSort(string.Empty, this.listRoomSort);
                    if (Common.Room.Lists.Count <= 1)
                    var listAllRoom = HdlRoomLogic.Current.GetAllListRooms();
                    if (listAllRoom.Count <= 1)
                    {
                        //根据指定模式,初始化桌布控件
                        this.InitFrameTableByMode();
@@ -658,7 +663,7 @@
            //刷新个人中心的内存及线程
            await UserCenterLogic.InitUserCenterMenmoryAndThread(false);
            Common.Room.InitAllRoom();
            HdlRoomLogic.Current.InitAllRoom();
            //删除住宅
            Common.House.DeleteHouseByHouseId(deleteId);
@@ -710,7 +715,7 @@
                    //错误:网关对象丢失
                    continue;
                }
                var result = HdlGatewayLogic.Current.SetGatewaySite(gateway, longitude, latitude);
                var result = HdlGatewayLogic.Current.SetGatewaySite(gateway, longitude, latitude, ShowErrorMode.YES);
                if (result == false)
                {
                    //关闭进度条
@@ -746,7 +751,7 @@
                //拥有楼层
                return 1;
            }
            if (Common.Room.Lists.Count > 1)
            if (HdlRoomLogic.Current.GetAllListRooms().Count > 1)
            {
                //无楼层模式
                return 2;