public bool Cadastrar(Veiculo veiculo, string placa) { try { Veiculo obj1 = _veiculoDAL.BuscarPlaca(placa); Veiculo obj2 = _veiculoDAL.BuscarPlacaAlugado(placa); if (obj1 != null || obj2 != null) { throw new RegistroExisteException("Já existe um veículo com essa Placa no sistema!"); } if (veiculo.VeiculoAlugado != null) { return(_veiculoDAL.CadastrarAlugado(veiculo)); } else { return(_veiculoDAL.Cadastrar(veiculo)); } } catch (TransacaoException e) { throw new TransacaoException(e.Message); } catch (ConcorrenciaBancoException e) { throw new ConcorrenciaBancoException(e.Message); } }
public IHttpActionResult Post([FromBody] Viagem viagem) { if (viagem == null) { return(BadRequest()); } Motorista motorista = _motoristaDAL.BuscarCPF(viagem.CPF); if (motorista == null) { return(BadRequest()); } Veiculo veiculo = _veiculoDAL.BuscarPlaca(viagem.Placa); if (veiculo == null) { veiculo = _veiculoDAL.BuscarPlacaAlugado(viagem.Placa); if (veiculo == null) { return(BadRequest()); } } try { int requisicao = _viagemService.PopularRequisicao(); viagem.Requisicao = requisicao; viagem.Ocupante = false; bool result = _viagemService.Cadastrar(viagem, viagem.Requisicao); if (result) { return(Ok()); } else { return(BadRequest("Houve um erro na operação!")); } } catch (RegistroExisteException e) { return(BadRequest(e.Message)); } catch (ConcorrenciaBancoException e) { return(BadRequest(e.Message)); } }