public bool EntradaVeiculo(RegistroVeiculo registroVeiculo) { bool temVaga = true; try { Veiculo veiculo = veiculoRepository.Find(registroVeiculo.VeiculoId); if (veiculo == null) { return(false); } string tipoVeiculo = veiculo.Tipo; RegistroVeiculo _regVeic = this.GetAll().Where(r => r.VeiculoId == veiculo.Id && r.VagaEmUso == true).FirstOrDefault(); if (_regVeic != null) { return(false); } int capacidadeMaxVeic = estabelecimentoRepository.CapacidadeMaxVaga(registroVeiculo.EstabelecimentoId, tipoVeiculo); int totalVagaUsando = this.GetAll().Where(t => t.VagaEmUso == true).Count(); temVaga = (capacidadeMaxVeic - totalVagaUsando) > 0; if (temVaga) { registroVeiculo.Entrada = true; registroVeiculo.DataEntrada = DateTime.Now; registroVeiculo.Saida = false; registroVeiculo.DataSaida = DateTime.Now; registroVeiculo.VagaEmUso = true; this.Add(registroVeiculo); } } catch (Exception) { temVaga = false; } return(temVaga); }