public bool Cadastrar(Motorista motorista, CNH cnh) //Mudança na Query, Verificar { try { Motorista obj = _motoristaDAL.BuscarCPF(motorista.CPF); //Metodo criado, falta validar if (obj != null) { throw new RegistroExisteException("Já existe um motorista com esse CPF no sistema!"); } return(_motoristaDAL.Cadastrar(motorista, cnh)); } catch (ConcorrenciaBancoException) { throw new ConcorrenciaBancoException("Favor tentar novamente mais tarde."); } }
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)); } }