public async Task CriarAsync(SalaDto dto)
        {
            try
            {
                var identificadorDuplicado = await _salaRepository.ObterAsync(dto.IdentificadorSala);

                if (identificadorDuplicado != null)
                {
                    AddNotification("CadastrarSala", MensagemValidacao.Sala.IdentificadorJaExiste);
                    return;
                }

                var sala = new Sala(dto.Tipo, dto.IdentificadorSala, dto.Observacao, Convert.ToDecimal(dto.Area.Replace('.', ',')), dto.Andar, dto.CapacidadeAlunos);

                if (dto.EquipamentoId != null && dto.EquipamentoId.Any())
                {
                    var equipamentos = await _equipamentoRepository.ObterAsync(dto.EquipamentoId);

                    if (equipamentos == null || !equipamentos.Any())
                    {
                        AddNotification("CadastrarSala", MensagemValidacao.Equipamento.NaoExiste);
                        return;
                    }

                    sala.AdicionarSalaEquipamento(equipamentos.Select(e => new SalaEquipamento(sala.Id, e.Id)).ToList());
                }


                await _salaRepository.CriarAsync(sala);
            }
            catch (Exception ex)
            {
                AddNotification("CadastrarSala", MensagemValidacao.ContacteSuporte);
                return;
            }
        }