Exemple #1
0
        public IActionResult Atualizar([FromBody] ViewPerfil usuario)
        {
            if (usuario == null)
            {
                return(BadRequest(EMensagensApi.DadosObrigatoriosNaoInformados));
            }

            try
            {
                return(Resultado(_servico.Atualizar(usuario)));
            }
            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
Exemple #2
0
        public Retorno Atualizar(ViewPerfil perfil)
        {
            try
            {
                if (perfil == null)
                {
                    return(Falha(ETipoFalha.DadosObrigatoriosNaoInformados));
                }

                var retorno = this.ObterPorId(perfil.Id);

                if (!retorno.Sucesso)
                {
                    return(retorno);
                }

                var usuario = retorno.ObterDados <Usuario>();

                usuario.Email    = perfil.Email;
                usuario.Nome     = perfil.Nome;
                usuario.Telefone = perfil.Telefone;
                usuario.FotoUrl  = perfil.FotoUrl;
                usuario.Ativo    = true;

                if (perfil.Tipo == (int)ETipoUsuario.Produtor)
                {
                    var produtor = _contexto.Produtores.FirstOrDefault(x => x.UsuarioId == usuario.Id);

                    if (produtor != null)
                    {
                        produtor.Comprador = perfil.Comprador;
                        produtor.Usuario   = null;

                        this.Update <Produtor>(produtor);
                    }
                }

                this.Update(usuario);
                this.Save();

                return(Sucesso("Perfil atualizado com sucesso."));
            }
            catch (Exception ex)
            {
                return(Erro(ex));
            }
        }