コード例 #1
0
 private IdentityUser CarregarUsuarioIdentity(IdentityUser identityUser, UsuarioIdentityVM usuario)
 {
     identityUser.Email       = usuario.Email;
     identityUser.PhoneNumber = usuario.PhoneNumber;
     identityUser.UserName    = usuario.UserName;
     return(identityUser);
 }
コード例 #2
0
        public Usuario AtualizarUsuarioEntidade(Usuario userOld, UsuarioIdentityVM newUser)
        {
            userOld.Ativo        = newUser.Ativo;
            userOld.Cpf          = newUser.Cpf;
            userOld.IdentityUser = newUser.IdentityUser;
            userOld.Id_Usuario   = newUser.Id_Usuario;
            userOld.Nome         = newUser.Nome;
            userOld.Perfil       = newUser.Perfil;
            userOld.Id_Endereco  = newUser.Id_Endereco;

            return(userOld);
        }
コード例 #3
0
        public async Task <JsonResult> EditarUsuario(UsuarioIdentityVM usuario)
        {
            try
            {
                var userOld         = _usuarioService.GetById(usuario.Id_Usuario);
                var userIdentityOld = await _userManager.FindByIdAsync(usuario.IdentityUser);

                IdentityUser userIdentity   = CarregarUsuarioIdentity(userIdentityOld, usuario);
                var          resultIdentity = await _userManager.UpdateAsync(userIdentity);

                if (resultIdentity.Succeeded)
                {
                    if (userOld.Perfil != usuario.Perfil)
                    {
                        var resultPerfil = await _userManager.RemoveFromRoleAsync(userIdentity, userOld.Perfil.ToString());

                        if (resultPerfil.Succeeded)
                        {
                            var resultAddPerfil = await _userManager.AddToRoleAsync(userIdentity, usuario.Perfil.ToString());

                            if (resultAddPerfil.Succeeded)
                            {
                                var usuarioEntidade = AtualizarUsuarioEntidade(userOld, usuario);//_mapper.Map<Usuario>(usuario);
                                _usuarioService.Update(usuarioEntidade);

                                var endereco = usuario.Id_Endereco == null ? null : _enderecoService.GetById(usuario.Id_Endereco.Value);
                                if (endereco != null)
                                {
                                    endereco.LinkGoogleMaps       = usuario.LinkGoogleMaps;
                                    endereco.Endereco_Complemento = usuario.Endereco_Complemento;
                                }
                                _enderecoService.Update(endereco);

                                return(Json("OK OK OK"));
                            }
                        }
                    }
                    return(Json(""));
                }

                return(Json(""));
            }
            catch (Exception ex)
            {
                return(Json(ex));

                throw;
            }
        }
コード例 #4
0
        public async Task <IActionResult> NovoUsuario(UsuarioIdentityVM usuario)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    string empresa_Global = Request.Cookies["empresa_global"];

                    IdentityUser userIdentity = CarregarUsuarioIdentity(new IdentityUser(), usuario);

                    var resultIdentity = await _userManager.CreateAsync(userIdentity, usuario.Password);

                    if (resultIdentity.Succeeded)
                    {
                        var usuarioEntity = _mapper.Map <Usuario>(usuario);
                        var userGetId     = await _userManager.FindByNameAsync(usuario.UserName);

                        usuarioEntity.IdentityUser = userGetId.Id;
                        _usuarioService.Add(usuarioEntity);

                        var resultPerfil = await _userManager.AddToRoleAsync(userIdentity, EnumHelper.GetName(usuario.Perfil));

                        if (resultPerfil.Succeeded)
                        {
                            var            empresa  = _empresaService.GetById(Convert.ToInt32(empresa_Global));
                            EmpresaUsuario eUsuario = new EmpresaUsuario(usuarioEntity.Id_Usuario, empresa.IdEmpresa);
                            _empresaUsuarioService.Add(eUsuario);
                            Endereco endereco = new Endereco(usuario.Endereco_Complemento, usuario.LinkGoogleMaps);
                            var      end      = _enderecoService.Add(endereco);
                            usuarioEntity.Id_Endereco = end.Id_Endereco;
                            _usuarioService.Update(usuarioEntity);

                            var resultRole = await _userManager.AddClaimsAsync(userGetId, new Claim[] {
                                new Claim(EnumTypeClaims.Perfil.ToString(), usuario.Perfil.ToString()),
                                new Claim(EnumTypeClaims.Nome.ToString(), usuarioEntity.Nome),
                                new Claim(EnumTypeClaims.Id_Usuario.ToString(), usuarioEntity.Id_Usuario.ToString())
                            });

                            if (resultRole.Succeeded)
                            {
                                return(Redirect("Index"));
                            }


                            return(View(usuario));
                        }
                    }

                    //StringBuilder errors = new StringBuilder();

                    //foreach (var error in resultIdentity.Errors)
                    //{
                    //    errors.AppendLine(error.Description);
                    //}

                    return(View(usuario));
                }
                return(View(usuario));
            }
            catch (Exception ex)
            {
                return(Json(ex));

                throw;
            }
        }
コード例 #5
0
        private UsuarioIdentityVM CarregarUsuarioIdentityVM(IdentityUser identityUser, UsuarioIdentityVM usuario)
        {
            usuario.Email        = identityUser.Email;
            usuario.PhoneNumber  = identityUser.PhoneNumber;
            usuario.IdentityUser = identityUser.Id;
            usuario.UserName     = identityUser.UserName;

            return(usuario);
        }