public HttpResponseMessage Inserir(InserirUsuarioRequest request) { try { var response = _service.InserirResponse(request); return(Response(response, response.Status)); } catch (Exception e) { return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)); } }
public InserirUsuarioResponse InserirResponse(InserirUsuarioRequest request) { var existeEmail = false; try { existeEmail = _repository.Existe(x => x.Email == request.Email); } catch (Exception e) { throw new Exception(e.Message); } if (existeEmail) { return(new InserirUsuarioResponse() { Mensagens = Mensagens.JA_EXISTE, Status = EnumStatusObjeto.Erro }); } var usuario = new Usuario(request.Nome, request.Email, request.Senha); var mensagem = usuario.ValidarCamposObrigatorios(); if (mensagem != null) { return new InserirUsuarioResponse() { Mensagens = mensagem, Status = EnumStatusObjeto.Erro } } ; _repository.Adicionar(usuario); return(new InserirUsuarioResponse() { Id = usuario.Id, Mensagens = Mensagens.OPERACAO_SUCESSO, Status = EnumStatusObjeto.Sucesso }); }
public UsuarioResponse Inserir(InserirUsuarioRequest request) { if (request == null) { throw new RequestInvalidoExcecao(); } if (string.IsNullOrWhiteSpace(request.Nome)) { throw new ParametroInvalidoExcecao("Favor informar um nome"); } if (string.IsNullOrWhiteSpace(request.Email)) { throw new ParametroInvalidoExcecao("Favor informar um e-mail"); } if (string.IsNullOrWhiteSpace(request.Senha)) { throw new ParametroInvalidoExcecao("Favor informar uma senha"); } if (string.IsNullOrWhiteSpace(request.Telefone)) { throw new ParametroInvalidoExcecao("Favor informar um telefone"); } if (this.usuarioRepositorio.RecuperarPorEmail(request.Email) != null) { throw new RegraDeNegocioExcecao("O e-mail informado já está cadastrado no D3vMyGame!"); } Usuario novoUsuario = this.usuarioRepositorio.Inserir(request.Nome, request.Email, request.Senha, request.Telefone); return(this.configuracoesDeMapeamento.CreateMapper().Map <Usuario, UsuarioResponse>(novoUsuario)); }
public IHttpActionResult Inserir([FromBody] InserirUsuarioRequest request) { var response = this.usuarioAppService.Inserir(request); return(Created(new Uri(Request.RequestUri + "/" + response.Codigo.ToString()), response)); }