private bool Validate(CreateClienteRequest createClienteRequest) { if (createClienteRequest == null) { return(false); } if (string.IsNullOrWhiteSpace(createClienteRequest.Codigo)) { return(false); } else if (repository.Contains(x => x.Id != createClienteRequest.Id && x.Codigo.Equals(createClienteRequest.Codigo))) { return(false); } if (repository.Contains(x => x.Id != createClienteRequest.Id && x.Documento.Tipo.Equals(createClienteRequest.TipoDocumento) && x.Documento.Numero.Equals(createClienteRequest.NumeroDocumento))) { return(false); } if (!ValidateEMailAddress(createClienteRequest)) { return(false); } return(true); }
public CreateClienteResponse Create(CreateClienteRequest request) { var cliente = request.ProjectedAs <Cliente>(); var response = _service.Create(cliente); if (response.IsSuccess) { _uow.Commit(); } return(response.ProjectedAs <CreateClienteResponse>()); }
public Cliente Save(CreateClienteRequest createRequest) { if (Validate(createRequest)) { Cliente cliente = new Cliente(); MapRequest(createRequest, cliente); return(base.Save(cliente)); } else { //TODO: HABRIA QUE DEVOLVER UNA RESPUESTA QUE CONTENGA EL MENSAJE DE ERROR throw new ALaMaronaException("Cliente invalido"); } }
private void MapRequest(CreateClienteRequest createRequest, Cliente cliente) { cliente.Codigo = createRequest.Codigo; cliente.Documento = new Documento() { Numero = createRequest.NumeroDocumento, Tipo = createRequest.TipoDocumento }; cliente.Domicilio = createRequest.Domicilio.MapDireccion(); cliente.EMail = createRequest.EMail; cliente.EstadoCivil = createRequest.EstadoCivil; cliente.FechaNacimiento = DateTimeHelper.ParseDateNullable(createRequest.FechaNacimiento); cliente.LugarNacimiento = createRequest.LugarNacimiento.MapDireccion(); cliente.Nombre = createRequest.MapNombre(); cliente.Telefono = createRequest.Telefono; }
public IActionResult CreateCliente([FromBody] CreateClienteRequest clienteRequest) { try { ClienteWithEnderecoDTO clienteDTO = _mapper.Map <CreateClienteRequest, ClienteWithEnderecoDTO>(clienteRequest); var cliente = _clienteService.CreateCliente(clienteDTO); return(Created(String.Empty, cliente)); } catch (ArgumentException) { return(BadRequest()); } catch { return(new StatusCodeResult(500)); } }
private bool ValidateEMailAddress(CreateClienteRequest createClienteRequest) { try { MailAddress mailAddress = new MailAddress(createClienteRequest.EMail); } catch (Exception) { return(false); } if (repository.Contains(x => x.Id != createClienteRequest.Id && createClienteRequest.EMail.Equals(x.EMail, System.StringComparison.InvariantCultureIgnoreCase))) { return(false); } return(true); }
public ActionResult Create([FromBody] CreateClienteRequest request) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState.GetErrorResponse())); } var response = _service.Create(request); if (!response.Success) { return(BadRequest(response.Erros)); } return(Ok()); } catch (Exception ex) { return(BadRequest(ex)); } }
public ClienteDTO Post([FromBody] CreateClienteRequest createRequest) { var cliente = ClienteBusiness.Save(createRequest); return(Mapper.Map <ClienteDTO>(cliente)); }