private Veiculo RegistraEntrada(FormCollection formCollection) { string placa = formCollection["placaVeiculo"].ToUpper(); string cliente = formCollection["nomeCliente"]; int modelo = int.Parse(formCollection["modeloVeiculo"]); string observacao = formCollection["observacaoVeiculo"]; Veiculo veiculo = new Veiculo { Placa = placa, Modelo = new Modelo { Id = modelo }, Observacao = observacao, Cliente = new Cliente() }; int registroId = 0; using (IConnection conn = new Connection()) { EstacionamentoDAO estacionamentoDAO = new EstacionamentoDAO(conn); estacionamento = estacionamentoDAO.BuscarItem("vagas"); RegistroDAO registroDAO = new RegistroDAO(conn); int vagasOcupadas = registroDAO.ContaVagasOcupadas(estacionamento.Id); //Verifica se existem vagas disponiveis if (estacionamento.NumeroDeVagas > vagasOcupadas) { VeiculoDAO veiculoDAO = new VeiculoDAO(conn); //Verifica se o Veiculo já existe no DB Veiculo verificaVeiculo = veiculoDAO.BuscarItem("placa", veiculo.Placa); if (verificaVeiculo == null) { veiculo = veiculoDAO.Inserir(veiculo); } else { veiculo = verificaVeiculo; } //Verifica se o Veiculo já está estacionado Registro registro = registroDAO.BuscarItem("placa", veiculo.Placa); if (registro == null) { registro = new Registro { DataDeEntrada = DateTime.Now, Estacionamento = estacionamento, UsuarioEntrada = AutenticaFuncionarioFake(), Veiculo = veiculo, }; Registro novoRegistro = registroDAO.Inserir(registro); registroId = novoRegistro.Id; } conn.FecharConexao(); } } return(veiculo); }