public async Task <bool> Adicionar(Sala Sala) { if (!ExecutarValidacao(new SalaValidation(), Sala)) { return(false); } if (_SalaRepository.Buscar(f => f.Nome == Sala.Nome).Result.Any()) { Notificar("Já existe uma sala com este nome infomado."); return(false); } await _SalaRepository.Adicionar(Sala); return(true); }
public async Task <IEnumerable <Sala> > BuscarSalasDisponiveis(DateTime dataInicio, DateTime dataFim, TimeSpan horaInicio, TimeSpan horaFim) { var salasDisponiveis = new List <Sala>(); try { var salasReservadas = _reservaRepository .Buscar(x => x.DataInicio == dataInicio && x.DataFim == dataFim && x.HoraInicio == horaInicio && x.HoraFim == horaFim).Result .Select(x => x.SalaId) .ToArray(); salasDisponiveis = _salaRepository.Buscar(x => !salasReservadas.Contains(x.Id)).Result.ToList(); } catch (Exception) { throw; } return(salasDisponiveis); }