Пример #1
0
        private Endereco VerificaAlteracaoEndereco(Endereco endereco, AlterarUsuarioViewModel user)
        {
            if (endereco.Cidade != user.Cidade && user.Cidade != null && endereco != null)
            {
                endereco.Cidade = user.Cidade;
            }

            if (endereco.Cep != user.Cep && user.Cep != null && endereco != null)
            {
                endereco.Cep = user.Cep;
            }

            if (endereco.Endereco1 != user.Endereco && user.Endereco != null && endereco != null)
            {
                endereco.Endereco1 = user.Endereco;
            }

            if (endereco.Numero != Convert.ToInt32(user.Numero))
            {
                if (Convert.ToInt32(user.Numero) > 0)
                {
                    endereco.Numero = Convert.ToInt32(user.Numero);
                }
            }

            return(endereco);
        }
Пример #2
0
        public ActionResult <UsuarioViewModel> Put([FromBody] AlterarUsuarioViewModel usuario)
        {
            string Id = HttpContext.User.Claims.ToList()[0].Value;

            _repo.Alterar(usuario, Id);
            return(Ok(_repo.ObterUsuarioId(Id)));
        }
Пример #3
0
        public ActionResult Alterar(AlterarUsuarioViewModel modelo)
        {
            if (string.IsNullOrWhiteSpace(modelo.Senha))
            {
                ModelState.Remove("Senha");
            }

            this.ValidarCampos(modelo);

            if (ModelState.IsValid)
            {
                try
                {
                    this.UsuarioServico.Alterar(Mapper.Map <AlterarUsuarioViewModel, Usuario>(modelo));
                    ModelState.AddModelError(string.Empty, Recurso.AlteradoSucesso);
                    return(RedirectToAction("Index"));
                }
                catch (EntidadeNaoExistenteException ex)
                {
                    ModelState.AddModelError(string.Empty, ex.Message);
                }
            }

            return(this.Alterar(modelo.Id));
        }
Пример #4
0
        private Usuario VerificaAlteracao(Usuario usuario, AlterarUsuarioViewModel user)
        {
            // Iremos verificar se tem alguma alteração dos dados através do viewmodel caso tenha iremos atribuir
            // os valores, com a viewmodel conseguimos fazer as alterações em precisar preencher os campos obrigatórios

            if (usuario.Nome != user.Nome && user.Nome != null)
            {
                usuario.Nome = user.Nome;
            }

            if (usuario.Cnpj != user.Cnpj && user.Cnpj != null)
            {
                usuario.Cnpj = user.Cnpj;
            }

            var hash  = new Hash(SHA512.Create());
            var senha = hash.CriptografarSenha(user.Senha);

            if (usuario.Senha != senha && senha != null)
            {
                usuario.Senha = senha;
            }

            if (usuario.Email != user.Email && user.Email != null)
            {
                usuario.Email = user.Email;
            }

            if (usuario.TipoUsuarioId != Convert.ToInt32(user.TipoUsuarioId))
            {
                if (Convert.ToInt32(user.TipoUsuarioId) > 0 && (Convert.ToInt32(user.TipoUsuarioId) == 2 || Convert.ToInt32(user.TipoUsuarioId) == 3))
                {
                    usuario.TipoUsuarioId = Convert.ToInt32(user.TipoUsuarioId);
                }
            }
            // usuario.TipoUsuarioId = 2;

            if (Request.Form.Files.Count > 0)
            {
                var caminho = @"C:\Users\fic\Desktop\coo_react\coo_react\coorganicas\src\Assets";
                //var caminho = @"C:\Users\AlefW\Desktop\Coorganicas_Backend\assets";
                var pasta = "Perfil";

                var file       = Request.Form.Files[0];
                var folderName = Path.Combine(caminho, "images", pasta);
                // var pathToSave = Directory.Exists(folderName);
                var fileName = ContentDispositionHeaderValue.Parse(file.ContentDisposition).FileName.Trim('"');
                var fullPath = Path.Combine(folderName, fileName);
                // var dbPath = Path.Combine (folderName, fileName);

                using (var stream = new FileStream(fullPath, FileMode.Create)) {
                    file.CopyTo(stream);
                }

                usuario.ImagemUsuario = fileName;
            }

            return(usuario);
        }
Пример #5
0
        private Telefone VerificaAlteracaoTel(Telefone telefone, AlterarUsuarioViewModel user)
        {
            if (telefone.Telefone1 != user.Telefone && user.Telefone != null && telefone != null)
            {
                telefone.Telefone1 = user.Telefone;
            }

            return(telefone);
        }
Пример #6
0
        private bool ValidaForm(AlterarUsuarioViewModel usuario)
        {
            if (usuario.Cidade == null && usuario.Cep == null && usuario.Cnpj == null && usuario.Email == null &&
                usuario.Endereco == null && usuario.Endereco == null && usuario.Senha == null && usuario.ImagemUsuario == null &&
                usuario.Nome == null && usuario.Telefone == null && usuario.Numero == 0 && usuario.TipoUsuarioId == 00
                )
            {
                return(false);
            }

            return(true);
        }
Пример #7
0
        public ActionResult Excluir(AlterarUsuarioViewModel modelo)
        {
            try
            {
                this.UsuarioServico.Excluir(Mapper.Map <AlterarUsuarioViewModel, Usuario>(modelo));
                ModelState.AddModelError(string.Empty, Recurso.ExcluidoSucesso);
            }
            catch (EntidadeNaoExistenteException ex)
            {
                ModelState.AddModelError(string.Empty, ex.Message);
            }

            return(RedirectToAction("Index"));
        }
Пример #8
0
 public UsuarioViewModel Alterar(AlterarUsuarioViewModel usuario, string id)
 {
     return(_mapper.Map <UsuarioViewModel>(_repo.Alterar(id, usuario.UserName, usuario.Email, usuario.Role).GetAwaiter().GetResult()));;
 }
Пример #9
0
        public async Task <ActionResult> Put(int id, [FromForm] AlterarUsuarioViewModel usuario)
        {
            bool ok = ValidaForm(usuario);

            if (ok == false)
            {
                return(NoContent());
            }

            // Verifica se existe o usuario no banco através do id passado por parametro
            var ExisteUsuario = await _repositorio.BuscarPorID(id);

            TelefoneRepository _tel = new TelefoneRepository();
            var Tel = await _tel.BuscaTelefone(id) != null ? await _tel.BuscaTelefone(id) : null;

            EnderecoRepository _end = new EnderecoRepository();
            var End = await _end.BuscaEndereco(id) != null ? await _end.BuscaEndereco(id) : null;

            //Se o Id do objeto não existir
            if (ExisteUsuario == null)
            {
                return(NotFound(
                           new
                {
                    Mensagem = "Usuário não encontrado.",
                    Erro = true
                }));
            }

            try {
                var UsuarioAlterado = VerificaAlteracao(ExisteUsuario, usuario);
                var user            = await _repositorio.Alterar(UsuarioAlterado);

                if (Tel != null)
                {
                    var TelefoneAlterado = VerificaAlteracaoTel(Tel, usuario);
                    var tel = await _tel.Alterar(TelefoneAlterado);
                }

                if (End != null)
                {
                    var EnderecoAlterado = VerificaAlteracaoEndereco(End, usuario);
                    var end = await _end.Alterar(EnderecoAlterado);
                }
            } catch (DbUpdateConcurrencyException) {
                //Verificamos se o objeto realmente existe no banco
                var usuario_valido = await _repositorio.BuscarPorID(id);

                if (usuario_valido == null)
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(Ok(
                       new
            {
                Mensagem = "Usuário alterado com sucesso.",
                Erro = false
            }
                       ));
        }