コード例 #1
0
ファイル: Usuarios.aspx.cs プロジェクト: radtek/Gradual
        public string ResponderExcluir()
        {
            string lIdItem       = Request["Id"];
            string lItemPaiID    = lIdItem.Split('|')[0];
            string lUsuarioID    = lIdItem.Split('|')[1];
            string lTipoDeObjeto = lIdItem.Split('|')[2];

            ReceberUsuarioRequest lRequest = new ReceberUsuarioRequest()
            {
                CodigoSessao  = this.CodigoSessao,
                CodigoUsuario = lUsuarioID
            };

            try
            {
                ReceberUsuarioResponse lResponse = ServicoSeguranca.ReceberUsuario(lRequest);

                if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    UsuarioInfo lUsuario = lResponse.Usuario;

                    if (lTipoDeObjeto == "Perfil")
                    {
                        lUsuario.Perfis.Remove(lItemPaiID);
                    }
                    else if (lTipoDeObjeto == "Grupo")
                    {
                        lUsuario.Grupos.Remove(lItemPaiID);
                    }

                    var lSalvarUsuarioReq = new SalvarUsuarioRequest()
                    {
                        CodigoSessao = this.CodigoSessao,
                        Usuario      = lUsuario
                    };

                    SalvarUsuarioResponse lSalvarUsuarioRes = ServicoSeguranca.SalvarUsuario(lSalvarUsuarioReq);

                    if (lSalvarUsuarioRes.StatusResposta == MensagemResponseStatusEnum.OK)
                    {
                        base.RegistrarLogExclusao(string.Concat("Excluido usuário: ", lResponse.Usuario.Email));
                        return(RetornarSucessoAjax("Usuario excluido com sucesso."));
                    }
                    else
                    {
                        return(RetornarErroAjax("Erro: " + lSalvarUsuarioRes.DescricaoResposta));
                    }
                }
                else
                {
                    return(RetornarErroAjax("Erro:" + lResponse.DescricaoResposta));
                }
            }
            catch (Exception ex)
            {
                return(RetornarErroAjax("Erro:" + ex.Message));
            }
        }
コード例 #2
0
        public string ResponderCadastrar()
        {
            string lretorno    = string.Empty;
            string lObjetoJson = Request["ObjetoJson"];

            TransporteSegurancaUsuario lDadosUsuario = null;

            SalvarUsuarioResponse lResponse = null;
            SalvarUsuarioRequest  lRequest  = new SalvarUsuarioRequest();

            UsuarioInfo lUsuarioInfo = new UsuarioInfo();

            try
            {
                lDadosUsuario = JsonConvert.DeserializeObject <TransporteSegurancaUsuario>(lObjetoJson);

                lUsuarioInfo = lDadosUsuario.ToUsuarioInfo();

                lUsuarioInfo.CodigoUsuario = "0";

                lRequest.Usuario = lUsuarioInfo;

                lRequest.CodigoSessao = this.CodigoSessao;

                lResponse = ServicoSeguranca.SalvarUsuario(lRequest);

                if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    ReceberUsuarioResponse lREsponseUsuario = ServicoSeguranca.ReceberUsuario(
                        new ReceberUsuarioRequest()
                    {
                        CodigoSessao = this.CodigoSessao,
                        Email        = lUsuarioInfo.Email
                    });

                    if (lREsponseUsuario.StatusResposta == MensagemResponseStatusEnum.OK)
                    {
                        lretorno = RetornarSucessoAjax(new TransporteRetornoDeCadastro(lREsponseUsuario.Usuario.CodigoUsuario), "Usuário cadastrado com sucesso");
                        base.RegistrarLogInclusao(string.Concat("Usuário incluído: ", lDadosUsuario.Email));
                    }
                    else
                    {
                        lretorno = RetornarErroAjax(lREsponseUsuario.DescricaoResposta);
                    }
                }
                else
                {
                    lretorno = RetornarErroAjax(lResponse.DescricaoResposta);
                }
            }
            catch (Exception ex)
            {
                lretorno = RetornarErroAjax("Erro durante o envio do pedido para cadastrar usuário", ex);
            }
            return(lretorno);
        }
コード例 #3
0
        public string ResponderExcluir()
        {
            string lIdItem = Request["Id"];

            try
            {
                string lCodigoUsuario = lIdItem.Split('|')[0];
                string lCodigoGrupo   = lIdItem.Split('|')[1];

                ReceberUsuarioRequest lRequest = new ReceberUsuarioRequest()
                {
                    CodigoSessao  = this.CodigoSessao,
                    CodigoUsuario = lCodigoUsuario
                };

                ReceberUsuarioResponse lResponse = ServicoSeguranca.ReceberUsuario(lRequest);

                if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    lResponse.Usuario.Grupos.Remove(lCodigoGrupo);

                    MensagemResponseBase lREsponseAUx = ServicoSeguranca.SalvarUsuario(new SalvarUsuarioRequest()
                    {
                        CodigoSessao = this.CodigoSessao,
                        Usuario      = lResponse.Usuario
                    });

                    if (lREsponseAUx.StatusResposta == MensagemResponseStatusEnum.OK)
                    {
                        base.RegistrarLogExclusao();
                        return(RetornarSucessoAjax("Grupo removido com sucesso."));
                    }
                    else
                    {
                        return(RetornarErroAjax(lREsponseAUx.DescricaoResposta));
                    }
                }
            }
            catch (Exception ex)
            {
                return(RetornarErroAjax(ex.Message));
            }
            return(string.Empty);
        }
コード例 #4
0
        public string ResponderAtualizar()
        {
            string lretorno    = string.Empty;
            string lObjetoJson = this.Request.Form["ObjetoJson"];

            TransporteSegurancaUsuario lDadosUsuario = null;

            SalvarUsuarioResponse lResponseSalvar = null;
            SalvarUsuarioRequest  lRequestSalvar  = new SalvarUsuarioRequest()
            {
                CodigoSessao = this.CodigoSessao
            };

            UsuarioInfo lUsuarioInfo = null;

            try
            {
                lDadosUsuario = JsonConvert.DeserializeObject <TransporteSegurancaUsuario>(lObjetoJson);

                ReceberUsuarioResponse lResponseReceber = ServicoSeguranca.ReceberUsuario(
                    new ReceberUsuarioRequest()
                {
                    CodigoSessao  = this.CodigoSessao,
                    CodigoUsuario = lDadosUsuario.Id
                });

                if (lResponseReceber.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    lUsuarioInfo       = lResponseReceber.Usuario;
                    lUsuarioInfo.Nome  = lDadosUsuario.Nome;
                    lUsuarioInfo.Email = lDadosUsuario.Email;
                    int lTipoAcesso = 0;
                    if (int.TryParse(lDadosUsuario.TipoAcesso, out lTipoAcesso))
                    {
                        lUsuarioInfo.CodigoTipoAcesso = lTipoAcesso;
                    }

                    if ((eTipoAcesso)lTipoAcesso == eTipoAcesso.Assessor)
                    {
                        int lCodAssessor = -1;
                        if (int.TryParse(lDadosUsuario.CodAssessor, out lCodAssessor))
                        {
                            lUsuarioInfo.CodigoAssessor       = lCodAssessor;
                            lUsuarioInfo.CodigosFilhoAssessor = lDadosUsuario.CodAssessorAssociado;
                        }
                        else
                        {
                            throw new Exception("Codigo de assessor inválido.");
                        }
                    }

                    lRequestSalvar.Usuario = lUsuarioInfo;

                    lResponseSalvar = ServicoSeguranca.SalvarUsuario(lRequestSalvar);

                    if (lResponseSalvar.StatusResposta == MensagemResponseStatusEnum.OK)
                    {
                        lretorno = RetornarSucessoAjax("Usuário alterado com sucesso");
                        base.RegistrarLogAlteracao(string.Concat("Usuário alterado: ", lDadosUsuario.Email));
                    }
                    else
                    {
                        lretorno = RetornarErroAjax(lResponseSalvar.DescricaoResposta);
                    }
                }
                else
                {
                    lretorno = RetornarErroAjax(lResponseReceber.DescricaoResposta);
                }
            }
            catch (Exception ex)
            {
                lretorno = RetornarErroAjax("Erro durante o envio do request para cadastrar usuário", ex);
            }

            return(lretorno);
        }
コード例 #5
0
        public string Salvar()
        {
            string lObjetoJson = Request.Params["ObjetoJson"];

            try
            {
                TransporteSegurancaDadosAssociados lDados = JsonConvert.DeserializeObject <TransporteSegurancaDadosAssociados>(lObjetoJson);
                MensagemRequestBase  lRequestItem;
                MensagemRequestBase  lRequestSalvarItem;
                MensagemResponseBase lResponseItem, lResponseSalvar;
                UsuarioGrupoInfo     lUsuarioGrupo = null;
                UsuarioInfo          lUsuario      = null;

                if (lDados.EhGrupo)
                {
                    lRequestItem       = new ReceberUsuarioGrupoRequest();
                    lRequestSalvarItem = new SalvarUsuarioGrupoRequest();
                    lRequestSalvarItem.CodigoSessao = this.CodigoSessao;
                    lRequestItem.CodigoSessao       = this.CodigoSessao;

                    ((ReceberUsuarioGrupoRequest)lRequestItem).CodigoUsuarioGrupo = lDados.Grupo;
                    lResponseItem = ServicoSeguranca.ReceberUsuarioGrupo((ReceberUsuarioGrupoRequest)lRequestItem);
                }
                else if (lDados.EhUsuario)
                {
                    lRequestItem       = new ReceberUsuarioRequest();
                    lRequestSalvarItem = new SalvarUsuarioRequest();
                    lRequestSalvarItem.CodigoSessao = this.CodigoSessao;
                    lRequestItem.CodigoSessao       = this.CodigoSessao;

                    ((ReceberUsuarioRequest)lRequestItem).CodigoUsuario = lDados.Usuario;
                    lResponseItem = ServicoSeguranca.ReceberUsuario((ReceberUsuarioRequest)lRequestItem);
                }
                else
                {
                    return(RetornarErroAjax("Selecione um grupo ou usuário para associar as permissões"));
                }



                if (lResponseItem.StatusResposta != MensagemResponseStatusEnum.OK)
                {
                    return(RetornarErroAjax(lResponseItem.DescricaoResposta));
                }

                if (lResponseItem is ReceberUsuarioGrupoResponse)
                {
                    lUsuarioGrupo = ((ReceberUsuarioGrupoResponse)lResponseItem).UsuarioGrupo;
                }
                else
                {
                    lUsuario = ((ReceberUsuarioResponse)lResponseItem).Usuario;
                }

                string nomePermissao = string.Empty;

                nomePermissao = lDados.Interface.Trim() + "Consultar";
                this.AssociarPermissaoAoObjeto(lResponseItem, nomePermissao, lDados.Consultar);

                nomePermissao = lDados.Interface.Trim() + "Salvar";
                this.AssociarPermissaoAoObjeto(lResponseItem, nomePermissao, lDados.Salvar);

                nomePermissao = lDados.Interface.Trim() + "Excluir";
                this.AssociarPermissaoAoObjeto(lResponseItem, nomePermissao, lDados.Excluir);

                nomePermissao = lDados.Interface.Trim() + "Executar";
                this.AssociarPermissaoAoObjeto(lResponseItem, nomePermissao, lDados.Executar);

                if (lDados.EhGrupo)
                {
                    ((SalvarUsuarioGrupoRequest)lRequestSalvarItem).UsuarioGrupo = lUsuarioGrupo;
                    lResponseSalvar = ServicoSeguranca.SalvarUsuarioGrupo((SalvarUsuarioGrupoRequest)lRequestSalvarItem);
                }
                else
                {
                    ((SalvarUsuarioRequest)lRequestSalvarItem).Usuario = lUsuario;
                    lResponseSalvar = ServicoSeguranca.SalvarUsuario((SalvarUsuarioRequest)lRequestSalvarItem);
                }

                if (lResponseSalvar.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    base.RegistrarLogInclusao();
                    return(RetornarSucessoAjax("Itens Associados com sucesso"));
                }
                else
                {
                    return(RetornarErroAjax(lResponseSalvar.DescricaoResposta));
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message, ex);
                return(RetornarErroAjax(ex.Message, ex));
            }
        }
コード例 #6
0
        public string ReceberPermissoes()
        {
            string lObjetoJson = Request.Params["ObjetoJson"];

            try
            {
                TransporteSegurancaDadosAssociados lDados = JsonConvert.DeserializeObject <TransporteSegurancaDadosAssociados>(lObjetoJson);
                lDados.Consultar            =
                    lDados.Excluir          =
                        lDados.Salvar       =
                            lDados.Executar = false;
                if (lDados.EhGrupo)
                {
                    ReceberUsuarioGrupoRequest lReuqest = new ReceberUsuarioGrupoRequest()
                    {
                        CodigoSessao           = this.CodigoSessao,
                        CodigoUsuarioGrupo     = lDados.Grupo,
                        DescricaoUsuarioLogado = base.UsuarioLogado.Nome,
                        IdUsuarioLogado        = base.UsuarioLogado.Id
                    };

                    ReceberUsuarioGrupoResponse lRes = ServicoSeguranca.ReceberUsuarioGrupo(lReuqest);

                    List <PermissaoInfo> permissoes = ListaDePermissoes.Where(p => p.GetType().Name.Contains(lDados.Interface)).ToList();

                    foreach (PermissaoAssociadaInfo lPI in lRes.UsuarioGrupo.Permissoes)
                    {
                        PermissaoInfo lPermissao = permissoes.Find(p => p.CodigoPermissao == lPI.CodigoPermissao);
                        if (lPermissao != null)
                        {
                            if (lPermissao.GetType().Name.Contains("Excluir"))
                            {
                                lDados.Excluir = true;
                            }
                            if (lPermissao.GetType().Name.Contains("Executar"))
                            {
                                lDados.Executar = true;
                            }
                            if (lPermissao.GetType().Name.Contains("Consultar"))
                            {
                                lDados.Consultar = true;
                            }
                            if (lPermissao.GetType().Name.Contains("Salvar"))
                            {
                                lDados.Salvar = true;
                            }
                        }
                    }
                }
                else
                {
                    ReceberUsuarioRequest lReuqest = new ReceberUsuarioRequest()
                    {
                        CodigoSessao           = this.CodigoSessao,
                        CodigoUsuario          = lDados.Usuario,
                        DescricaoUsuarioLogado = base.UsuarioLogado.Nome,
                        IdUsuarioLogado        = base.UsuarioLogado.Id
                    };

                    ReceberUsuarioResponse lRes = ServicoSeguranca.ReceberUsuario(lReuqest);

                    List <PermissaoInfo> permissoes = ListaDePermissoes.Where(p => p.GetType().Name.Contains(lDados.Interface)).ToList();

                    foreach (PermissaoAssociadaInfo lPI in lRes.Usuario.Permissoes)
                    {
                        PermissaoInfo lPermissao = permissoes.Find(p => p.CodigoPermissao == lPI.CodigoPermissao);
                        if (lPermissao != null)
                        {
                            if (lPermissao.GetType().Name.Contains("Excluir"))
                            {
                                lDados.Excluir = true;
                            }
                            if (lPermissao.GetType().Name.Contains("Executar"))
                            {
                                lDados.Executar = true;
                            }
                            if (lPermissao.GetType().Name.Contains("Consultar"))
                            {
                                lDados.Consultar = true;
                            }
                            if (lPermissao.GetType().Name.Contains("Salvar"))
                            {
                                lDados.Salvar = true;
                            }
                        }
                    }
                }
                return(RetornarSucessoAjax(lDados, "Ok"));
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message, ex);
                return(RetornarErroAjax(ex.Message));
            }
        }
コード例 #7
0
        public string ResponderSalvar()
        {
            string lRetorno     = string.Empty;
            string lObjetoJson  = Request.Params["ObjetoJson"];
            string TipoDeObjeto = Request["TipoDeObjetoPai"];

            TransporteSegurancaItemFilho lDados;

            MensagemRequestBase lRequest;

            MensagemResponseBase lResponse;

            try
            {
                lDados = JsonConvert.DeserializeObject <TransporteSegurancaItemFilho>(lObjetoJson);
                switch (TipoDeObjeto)
                {
                case "Usuario":
                    lRequest = new ReceberUsuarioRequest();
                    ((ReceberUsuarioRequest)lRequest).CodigoUsuario = lDados.ParentId;
                    lRequest.CodigoSessao = this.CodigoSessao;
                    lResponse             = ServicoSeguranca.ReceberUsuario((ReceberUsuarioRequest)lRequest);
                    break;

                case "Grupo":
                    lRequest = new ReceberUsuarioGrupoRequest();
                    ((ReceberUsuarioGrupoRequest)lRequest).CodigoUsuarioGrupo = lDados.ParentId;
                    lRequest.CodigoSessao = this.CodigoSessao;
                    lResponse             = ServicoSeguranca.ReceberUsuarioGrupo((ReceberUsuarioGrupoRequest)lRequest);
                    break;

                default:
                    return(RetornarErroAjax("Não é possível associar um tipo de item que não seja Usuários ou Grupos."));
                }

                if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    MensagemResponseBase lSalvarResponse;
                    MensagemRequestBase  lSalvarRequest = null;
                    if (lResponse is ReceberUsuarioResponse)
                    {
                        UsuarioInfo lUsuario = ((ReceberUsuarioResponse)lResponse).Usuario;
                        lUsuario.Perfis.Add(lDados.Item);
                        lSalvarRequest = new SalvarUsuarioRequest()
                        {
                            CodigoSessao = this.CodigoSessao,
                            Usuario      = lUsuario
                        };
                        lSalvarResponse = ServicoSeguranca.SalvarUsuario((SalvarUsuarioRequest)lSalvarRequest);
                    }
                    else
                    {
                        UsuarioGrupoInfo lGrupo = ((ReceberUsuarioGrupoResponse)lResponse).UsuarioGrupo;

                        lGrupo.Perfis.Add(lDados.Item);
                        lSalvarRequest = new SalvarUsuarioGrupoRequest()
                        {
                            CodigoSessao = this.CodigoSessao,
                            UsuarioGrupo = lGrupo
                        };
                        lSalvarResponse = ServicoSeguranca.SalvarUsuarioGrupo((SalvarUsuarioGrupoRequest)lSalvarRequest);
                    }

                    if (lSalvarResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                    {
                        base.RegistrarLogInclusao();
                        return(RetornarSucessoAjax(new TransporteRetornoDeCadastro(lDados.ParentId + "|" + lDados.Item + "|" + TipoDeObjeto), "Dados associados com sucesso"));
                    }
                    else
                    {
                        return(RetornarErroAjax(lSalvarResponse.DescricaoResposta));
                    }
                }
                else
                {
                    return(RetornarErroAjax(lResponse.DescricaoResposta));
                }
            }
            catch (Exception ex)
            {
                return(RetornarErroAjax(ex.Message));
            }
        }