public HttpResponseMessage Cadastrarveiculo([FromBody] VeiculoDtos objVeiculo) { IVeiculoRepository objRepository = new VeiculoRepository(); try { Business.VeiculoBo Valida = new Business.VeiculoBo(); if (!Valida.ValidaVeiculo(objVeiculo.MarcaModelo)) { return(Request.CreateErrorResponse(HttpStatusCode.PaymentRequired, "Marca/Modelo inválida, deve ter no mínimo 6 letras, favor preencher o campo !")); } if (!Valida.ValidaValor(objVeiculo.valor)) { return(Request.CreateErrorResponse(HttpStatusCode.PaymentRequired, "O valor do veículo nao pode ser menor que R$ 2.000,00 !")); } Veiculo obj = new Veiculo() { MarcaModelo = objVeiculo.MarcaModelo, valor = objVeiculo.valor }; objRepository.Add(obj); objRepository.Save(); return(Request.CreateResponse(HttpStatusCode.OK, obj)); } catch (Exception ex) { return(Request.CreateResponse(HttpStatusCode.NotFound + " - Exceção: " + ex)); } }
public HttpResponseMessage AlterarVeiculo(int id, [FromBody] Veiculo veiculo) { try { Business.VeiculoBo Valida = new Business.VeiculoBo(); if (!Valida.ValidaVeiculo(veiculo.MarcaModelo)) { return(Request.CreateErrorResponse(HttpStatusCode.PaymentRequired, "Marca/Modelo inválida, favor preencher o campo !")); } if (!Valida.ValidaValor(veiculo.valor)) { return(Request.CreateErrorResponse(HttpStatusCode.PaymentRequired, "O valor do veículo não pode ser menor que R$ 2.000,00 !")); } IVeiculoRepository obj = new VeiculoRepository(); var exite = obj.GetById(veiculo.Id); if (exite.Count != 0) { /// Caso exista seguro para o veículo, a alteração não será efetivada Seguro objSeguro = new Seguro() { VeiculoRefId = veiculo.Id }; ISeguroRepository objSeguroRepository = new SeguroRepository(); var exiteSegu = objSeguroRepository.VerificarExisteSeguroParaVeiculo(objSeguro); if (exiteSegu.Count == 0) { IVeiculoRepository objRepository = new VeiculoRepository(); objRepository.Update(veiculo); objRepository.Save(); return(Request.CreateResponse(HttpStatusCode.OK, "Veículo " + veiculo.MarcaModelo + " foi alterado com sucesso, verifique !")); } else { return(Request.CreateResponse(HttpStatusCode.Ambiguous, "O Veículo " + veiculo.MarcaModelo + " não pode ser alterado porque possui seguro calculado, verifique !")); } } else { return(Request.CreateResponse(HttpStatusCode.NotFound, "Veículo não enccontrado!, verifique !")); } } catch (Exception ex) { return(Request.CreateResponse(HttpStatusCode.NotModified, "Veículo " + veiculo.MarcaModelo + " não foi alterado, ocorreu algum erro, verifique !, " + ex.InnerException)); } }