Пример #1
0
        //[Authorize(Policy = "CanWritePermissao")]
        public IActionResult UsuarioGrupoAcessoRemover(UsuarioGrupoAcessoViewModel model)
        {
            if (!ModelState.IsValid)
            {
                NotificarErroModelInvalida();
                return(Response(model));
            }

            _usuarioService.RemoverUsuarioGrupoAcesso(model.UsuarioId, model.GrupoAcessoId);

            //var gruposDeAcessoUsuario = _usuarioService.ObterUsuarioGrupoAcessoPorUsuarioId(model.UsuarioId);
            //
            //List<PermissaoModel> permissoesManter = new List<PermissaoModel>();
            //foreach(var grupo in gruposDeAcessoUsuario.Where(g => g.GrupoAcessoId != model.GrupoAcessoId))
            //{
            //    var lstGrupoAcessoPermissao = _grupoAcessoService.ObterGrupoAcessoPermissaoPorGrupoId(grupo.GrupoAcessoId);
            //
            //    foreach(var gAPermissao in lstGrupoAcessoPermissao)
            //    {
            //        permissoesManter.Add(_permissaoService.ObterPorId(gAPermissao.PermissaoId));
            //    }
            //}
            //
            //var lstGrupoAcessoPermissaoRemover = _grupoAcessoService.ObterGrupoAcessoPermissaoPorGrupoId(model.GrupoAcessoId);
            //List<PermissaoModel> permissoesRemover = new List<PermissaoModel>();
            //
            //foreach (var gAPermissao in lstGrupoAcessoPermissaoRemover)
            //{
            //    permissoesRemover.Add(_permissaoService.ObterPorId(gAPermissao.PermissaoId));
            //}
            //
            ////Carrega Usuario App
            //var usuario = _usuarioService.ObterPorId(model.UsuarioId);
            //
            ////Carregar usuario do identity
            //var identityUser = _userManager.FindByIdAsync(Convert.ToString(usuario.AspNetUserId)).Result;
            ////TODO 1: Localizar todas permissoes do grupo de acesso
            //var permissoes = _grupoAcessoService.ObterGrupoAcessoPermissaoPorGrupoId(model.GrupoAcessoId);
            //
            ////Criar uma lista de claims
            ////Adicionar essas claims ao usuario
            //foreach (var permissao in permissoesRemover.Where(p => !permissoesManter.Select(m => m.Id).ToList().Contains(p.Id)))
            //{
            //    Claim removeClain = new Claim(permissao.Tipo.Nome, permissao.Valor);
            //
            //    //Verificar se o result é sucesso
            //    var result = _userManager.RemoveClaimAsync(identityUser, removeClain).Result;
            //
            //    if (!result.Succeeded)
            //        AdicionarErrosIdentity(result);
            //}

            return(Response());
        }
Пример #2
0
        //[Authorize(Policy = "CanWritePermissao")]
        public IActionResult UsuarioGrupoAcessoAdd(UsuarioGrupoAcessoViewModel model)
        {
            if (!ModelState.IsValid)
            {
                NotificarErroModelInvalida();
                return(Response(model));
            }

            _usuarioService.AdicionarGrupoAcesso(_mapper.Map <UsuarioGrupoAcesso>(model));

            //if (!OperacaoValida())
            //    return Response(model);
            //
            ////Carrega Usuario App
            //var usuario = _usuarioService.ObterPorId(model.UsuarioId);
            //
            ////Carregar usuario do identity
            //var identityUser = _userManager.FindByIdAsync(Convert.ToString(usuario.AspNetUserId)).Result;
            ////TODO 1: Localizar todas permissoes do grupo de acesso
            //var permissoes = _grupoAcessoService.ObterGrupoAcessoPermissaoPorGrupoId(model.GrupoAcessoId);
            //
            ////Criar uma lista de claims
            ////Adicionar essas claims ao usuario
            //foreach (var permissao in permissoes)
            //{
            //    var permissaoModel = _permissaoService.ObterPorId(permissao.PermissaoId);
            //
            //    Claim newClain = new Claim(permissaoModel.Tipo.Nome, permissaoModel.Valor);
            //
            //    //Verificar se o result é sucesso
            //    var result = _userManager.AddClaimAsync(identityUser, newClain).Result;
            //
            //    if (!result.Succeeded)
            //        AdicionarErrosIdentity(result);
            //}

            return(Response());
        }