wxr
2021-07-01 43b0d5870d528f23ecd6aeceb6cfd4325188b46f
HDL_ON/UI/UI2/4-PersonalCenter/RoomListManage/AddRoom/AddRoomPage.cs
@@ -264,7 +264,7 @@
            btnFunctionManagementTitle = new Button()
            {
                X = Application.GetRealWidth(16),
                Width = Application.GetRealWidth(120),
                Width = Application.GetRealWidth(220),
                TextAlignment = TextAlignment.CenterLeft,
                TextColor = CSS_Color.FirstLevelTitleColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
@@ -445,26 +445,52 @@
                        return;
                    }
                }
                var addResult = SpatialInfo.CurrentSpatial.AddRoom(room);//检查room是否为云端返回的最新数据
                if (addResult == StateCode.SUCCESS)
                var waitPage = new Loading();
                waitPage.Start();
                new Thread(() =>
                {
                    var deviceIds = new List<string>();
                    foreach (var f in roomFunctions)
                    try
                    {
                        deviceIds.Add(f.deviceId);
                        var addResult = SpatialInfo.CurrentSpatial.AddRoom(room, out room);//检查room是否为云端返回的最新数据
                        if (addResult == StateCode.SUCCESS)
                        {
                            var deviceIds = new List<string>();
                            foreach (var f in roomFunctions)
                            {
                                deviceIds.Add(f.deviceId);
                            }
                            if (deviceIds.Count > 0)
                            {
                                var bindResult = FunctionList.List.FunctionsBindRooms(new List<string>() { room.roomId }, deviceIds);
                                if (bindResult == StateCode.SUCCESS)
                                {
                                    foreach (var f in roomFunctions)
                                    {
                                        f.roomIds.Add(room.roomId);
                                    }
                                    room.GetRoomFunctions(true);
                                }
                            }
                            Application.RunOnMainThread(() =>
                            {
                                backAction(room);
                                RemoveFromParent();
                            });
                        }
                    }
                    var bindResult = FunctionList.List.FunctionsBindRooms(new List<string>() { room.roomId }, deviceIds);
                    if (bindResult == StateCode.SUCCESS)
                    catch (Exception ex)
                    {
                        room.GetRoomFunctions(true);
                        MainPage.Log($"添加房间失败msg:{ex.Message}");
                    }
                    else
                    finally
                    {
                        //Utlis.ShowTip(Language.StringByID(StringId.EditFunctionInfoFail) + "\r\nCode:" + pack.Code);
                        Application.RunOnMainThread(() =>
                        {
                            waitPage.Hide();
                        });
                    }
                    backAction(room);
                    RemoveFromParent();
                }
                })
                { IsBackground = true }.Start();
            };
        }
@@ -618,6 +644,7 @@
                pictureOptionView.Parent.RemoveFromParent();
                Action<string> action = (obj) => {
                    room.backgroundImage = obj;
                    btnRoomBg.ImageBytes = null;//解决有ImageBytes不加载ImagePath
                    btnRoomBg.ImagePath = room.backgroundImage;
                };