Esempio n. 1
0
 /// <summary>
 ///  Método que obtiene un registro
 /// </summary>
 /// <param name="ds"></param>
 /// <returns></returns>
 internal static UsuarioGrupoInfo ObtenerPorDescripcion(DataSet ds)
 {
     try
     {
         Logger.Info();
         DataTable        dt      = ds.Tables[ConstantesDAL.DtDatos];
         UsuarioGrupoInfo entidad =
             (from info in dt.AsEnumerable()
              select
              new UsuarioGrupoInfo
         {
             UsuarioGrupoID = info.Field <int>("UsuarioGrupoID"),
             Usuario = new UsuarioInfo
             {
                 UsuarioID = info.Field <int>("UsuarioID"),
                 UsuarioActiveDirectory = info.Field <string>("UsuarioActiveDirectory")
             },
             Grupo = new GrupoInfo
             {
                 GrupoID = info.Field <int>("GrupoID"),
                 Descripcion = info.Field <string>("Grupo")
             },
             Activo = info.Field <bool>("Activo").BoolAEnum(),
         }).First();
         return(entidad);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 2
0
 /// <summary>
 /// Obtiene un registro de UsuarioGrupo
 /// </summary>
 /// <param name="descripcion">Descripción de la UsuarioGrupo</param>
 /// <returns></returns>
 internal UsuarioGrupoInfo ObtenerPorDescripcion(string descripcion)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxUsuarioGrupoDAL.ObtenerParametrosPorDescripcion(descripcion);
         DataSet          ds     = Retrieve("UsuarioGrupo_ObtenerPorDescripcion", parameters);
         UsuarioGrupoInfo result = null;
         if (ValidateDataSet(ds))
         {
             result = MapUsuarioGrupoDAL.ObtenerPorDescripcion(ds);
         }
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 3
0
 /// <summary>
 /// Metodo para Crear un registro de UsuarioGrupo
 /// </summary>
 /// <param name="info">Valores de la entidad que será creada</param>
 internal int Crear(UsuarioGrupoInfo info)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxUsuarioGrupoDAL.ObtenerParametrosCrear(info);
         int result = Create("UsuarioGrupo_Crear", parameters);
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 4
0
 /// <summary>
 /// Metodo para Guardar/Modificar una entidad UsuarioGrupo
 /// </summary>
 /// <param name="info"></param>
 internal int Guardar(UsuarioGrupoInfo info)
 {
     try
     {
         Logger.Info();
         var usuarioGrupoDAL = new UsuarioGrupoDAL();
         int result          = info.UsuarioGrupoID;
         if (info.UsuarioGrupoID == 0)
         {
             result = usuarioGrupoDAL.Crear(info);
         }
         else
         {
             usuarioGrupoDAL.Actualizar(info);
         }
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 5
0
        public UsuarioGrupoInfo ToUsuarioGrupoInfo()
        {
            UsuarioGrupoInfo lRetorno = new UsuarioGrupoInfo();

            lRetorno.NomeUsuarioGrupo   = this.Nome;
            lRetorno.CodigoUsuarioGrupo = this.Id;

            return(lRetorno);
        }
Esempio n. 6
0
        public string ResponderAtualizar()
        {
            string lretorno    = string.Empty;
            string lObjetoJson = Request["ObjetoJson"];

            TransporteSegurancaGrupo lDadosGrupo = null;

            MensagemResponseBase lResponse = null;

            SalvarUsuarioGrupoRequest lRequest = new SalvarUsuarioGrupoRequest();

            try
            {
                lDadosGrupo = JsonConvert.DeserializeObject <TransporteSegurancaGrupo>(lObjetoJson);
                ReceberUsuarioGrupoRequest lRequestGrupo = new ReceberUsuarioGrupoRequest()
                {
                    CodigoSessao       = this.CodigoSessao,
                    CodigoUsuarioGrupo = lDadosGrupo.Id
                };

                UsuarioGrupoInfo lUsuarioGrupoInfo = ((ReceberUsuarioGrupoResponse)this.ServicoSeguranca.ReceberUsuarioGrupo(lRequestGrupo)).UsuarioGrupo;

                lUsuarioGrupoInfo.NomeUsuarioGrupo = lDadosGrupo.Nome;

                lRequest.UsuarioGrupo = lUsuarioGrupoInfo;
                lRequest.CodigoSessao = this.CodigoSessao;

                lResponse = ServicoSeguranca.SalvarUsuarioGrupo(lRequest);

                if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    lretorno = RetornarSucessoAjax("Grupo alterado com sucesso");
                    base.RegistrarLogAlteracao();
                }
                else
                {
                    lretorno = RetornarErroAjax(lResponse.DescricaoResposta);
                }
            }
            catch (Exception ex)
            {
                lretorno = RetornarErroAjax(ex.Message);
            }

            return(lretorno);
        }
Esempio n. 7
0
 /// <summary>
 /// Obtiene una entidad por su Id
 /// </summary>
 /// <param name="usuarioGrupoID"></param>
 /// <returns></returns>
 public UsuarioGrupoInfo ObtenerPorID(int usuarioGrupoID)
 {
     try
     {
         Logger.Info();
         var usuarioGrupoBL      = new UsuarioGrupoBL();
         UsuarioGrupoInfo result = usuarioGrupoBL.ObtenerPorID(usuarioGrupoID);
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 8
0
 /// <summary>
 /// Metodo para Guardar/Modificar una entidad UsuarioGrupo
 /// </summary>
 /// <param name="info">Representa la entidad que se va a grabar</param>
 public int Guardar(UsuarioGrupoInfo info)
 {
     try
     {
         Logger.Info();
         var usuarioGrupoBL = new UsuarioGrupoBL();
         int result         = usuarioGrupoBL.Guardar(info);
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 9
0
 /// <summary>
 /// Obtiene una entidad UsuarioGrupo por su descripción
 /// </summary>
 /// <param name="descripcion"></param>
 /// <returns></returns>
 internal UsuarioGrupoInfo ObtenerPorDescripcion(string descripcion)
 {
     try
     {
         Logger.Info();
         var usuarioGrupoDAL     = new UsuarioGrupoDAL();
         UsuarioGrupoInfo result = usuarioGrupoDAL.ObtenerPorDescripcion(descripcion);
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 10
0
 /// <summary>
 /// Obtiene parametros para crear
 /// </summary>
 /// <param name="info">Valores de la entidad</param>
 /// <returns></returns>
 internal static Dictionary <string, object> ObtenerParametrosCrear(UsuarioGrupoInfo info)
 {
     try
     {
         Logger.Info();
         var parametros =
             new Dictionary <string, object>
         {
             { "@Usuario", info.Usuario.UsuarioID },
             { "@Grupo", info.Grupo.GrupoID },
             { "@UsuarioCreacionID", info.UsuarioCreacionID },
         };
         return(parametros);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 11
0
        public string ResponderCadastrar()
        {
            string lretorno    = string.Empty;
            string lObjetoJson = Request["ObjetoJson"];

            MensagemResponseBase      lResponse         = null;
            TransporteSegurancaGrupo  lDadosGrupo       = null;
            SalvarUsuarioGrupoRequest lRequest          = new SalvarUsuarioGrupoRequest();
            UsuarioGrupoInfo          lUsuarioGrupoInfo = new UsuarioGrupoInfo();

            try
            {
                lDadosGrupo = JsonConvert.DeserializeObject <TransporteSegurancaGrupo>(lObjetoJson);

                lRequest.UsuarioGrupo = lDadosGrupo.ToUsuarioGrupoInfo();

                lRequest.UsuarioGrupo.CodigoUsuarioGrupo = "0";

                lRequest.CodigoSessao = this.CodigoSessao;

                lResponse = ServicoSeguranca.SalvarUsuarioGrupo(lRequest);

                if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    base.RegistrarLogInclusao();

                    lretorno = RetornarSucessoAjax(new TransporteRetornoDeCadastro(lUsuarioGrupoInfo.CodigoUsuarioGrupo), "Grupo cadastrado com sucesso");
                }
                else
                {
                    lretorno = RetornarErroAjax(lResponse.DescricaoResposta);
                }
            }
            catch (Exception ex)
            {
                lretorno = RetornarErroAjax(ex.Message);
            }

            return(lretorno);
        }
Esempio n. 12
0
        private static void testesPersistenciaSeguranca()
        {
            IServicoPersistencia servicoPersistencia = Ativador.Get <IServicoPersistencia>();

            UsuarioGrupoInfo usuarioGrupo =
                new UsuarioGrupoInfo()
            {
                CodigoUsuarioGrupo = "grupo1",
                NomeUsuarioGrupo   = "grupo1",
                Permissoes         =
                    new List <PermissaoAssociadaInfo>()
                {
                    new PermissaoAssociadaInfo()
                    {
                        CodigoPermissao = "9C5DA26B-8C30-4c1d-AA7A-B7A22CF2CA8F",
                        Status          = PermissaoAssociadaStatusEnum.Permitido
                    },
                    new PermissaoAssociadaInfo()
                    {
                        CodigoPermissao = "D31AD6D1-FCA6-4529-ACBE-B5B9D60E5755",
                        Status          = PermissaoAssociadaStatusEnum.Negado
                    }
                }
            };

            SalvarObjetoResponse <UsuarioGrupoInfo> resposta1 =
                servicoPersistencia.SalvarObjeto <UsuarioGrupoInfo>(
                    new SalvarObjetoRequest <UsuarioGrupoInfo>()
            {
                Objeto = usuarioGrupo
            });

            ReceberObjetoResponse <UsuarioGrupoInfo> resposta0 =
                servicoPersistencia.ReceberObjeto <UsuarioGrupoInfo>(
                    new ReceberObjetoRequest <UsuarioGrupoInfo>()
            {
                CodigoObjeto = "grupo1"
            });
        }
Esempio n. 13
0
 /// <summary>
 /// Metodo para actualizar un registro de UsuarioGrupo
 /// </summary>
 /// <param name="info">Valores de la entidad que se actualizarán</param>
 internal void Actualizar(UsuarioGrupoInfo info)
 {
     try
     {
         Logger.Info();
         Dictionary <string, object> parameters = AuxUsuarioGrupoDAL.ObtenerParametrosActualizar(info);
         Update("UsuarioGrupo_Actualizar", parameters);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 14
0
 /// <summary>
 /// Obtiene un lista paginada
 /// </summary>
 /// <param name="pagina"></param>
 /// <param name="filtro"></param>
 /// <returns></returns>
 internal ResultadoInfo <UsuarioGrupoInfo> ObtenerPorPagina(PaginacionInfo pagina, UsuarioGrupoInfo filtro)
 {
     try
     {
         Logger.Info();
         var usuarioGrupoDAL = new UsuarioGrupoDAL();
         ResultadoInfo <UsuarioGrupoInfo> result = usuarioGrupoDAL.ObtenerPorPagina(pagina, filtro);
         return(result);
     }
     catch (ExcepcionGenerica)
     {
         throw;
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 15
0
 /// <summary>
 /// Obtiene parametros para obtener lista paginada
 /// </summary>
 /// <param name="pagina"></param>
 /// <param name="filtro"></param>
 /// <returns></returns>
 internal static Dictionary <string, object> ObtenerParametrosPorPagina(PaginacionInfo pagina, UsuarioGrupoInfo filtro)
 {
     try
     {
         Logger.Info();
         var parametros =
             new Dictionary <string, object>
         {
             { "@Nombre", filtro.Usuario.Nombre },
             { "@GrupoID", filtro.Grupo.GrupoID },
             { "@Activo", filtro.Activo },
             { "@Inicio", pagina.Inicio },
             { "@Limite", pagina.Limite }
         };
         return(parametros);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 16
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));
            }
        }
Esempio n. 17
0
 /// <summary>
 /// Obtiene un lista paginada
 /// </summary>
 /// <param name="pagina"></param>
 /// <param name="filtro"></param>
 /// <returns></returns>
 internal ResultadoInfo <UsuarioGrupoInfo> ObtenerPorPagina(PaginacionInfo pagina, UsuarioGrupoInfo filtro)
 {
     try
     {
         Dictionary <string, object> parameters = AuxUsuarioGrupoDAL.ObtenerParametrosPorPagina(pagina, filtro);
         DataSet ds = Retrieve("UsuarioGrupo_ObtenerPorPagina", parameters);
         ResultadoInfo <UsuarioGrupoInfo> result = null;
         if (ValidateDataSet(ds))
         {
             result = MapUsuarioGrupoDAL.ObtenerPorPagina(ds);
         }
         return(result);
     }
     catch (SqlException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (DataException ex)
     {
         Logger.Error(ex);
         throw new ExcepcionServicio(MethodBase.GetCurrentMethod(), ex);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
Esempio n. 18
0
        public string ResponderExcluir()
        {
            string lIdItemPermissao = Request["Id"];

            string lItemPaiID    = lIdItemPermissao.Split('|')[0];
            string lPerfilID     = lIdItemPermissao.Split('|')[1];
            string lTipoDeObjeto = lIdItemPermissao.Split('|')[2];

            MensagemRequestBase  lRequest;
            MensagemResponseBase lResponse;

            switch (lTipoDeObjeto)
            {
            case "Usuario":
                lRequest = new ReceberUsuarioRequest()
                {
                    CodigoUsuario = lItemPaiID,
                    CodigoSessao  = this.CodigoSessao
                };
                lResponse = this.ServicoSeguranca.ReceberUsuario((ReceberUsuarioRequest)lRequest);
                break;

            case "Grupo":
                lRequest = new ReceberUsuarioGrupoRequest()
                {
                    CodigoUsuarioGrupo = lItemPaiID,
                    CodigoSessao       = this.CodigoSessao
                };
                lResponse = this.ServicoSeguranca.ReceberUsuarioGrupo((ReceberUsuarioGrupoRequest)lRequest);
                break;

            default:
                return(RetornarErroAjax("Só é permitido listar os perfis se o tipo de objeto for Usuário ou Grupo."));
            }

            if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
            {
                MensagemRequestBase  lSalvarRequest;
                MensagemResponseBase lSalvarResponse;

                if (lResponse is ReceberUsuarioResponse)
                {
                    UsuarioInfo lUsuario = ((ReceberUsuarioResponse)lResponse).Usuario;
                    lUsuario.Perfis.Remove(lPerfilID);

                    lSalvarRequest = new SalvarUsuarioRequest()
                    {
                        CodigoSessao = this.CodigoSessao,
                        Usuario      = lUsuario
                    };
                    lSalvarResponse = ServicoSeguranca.SalvarUsuario((SalvarUsuarioRequest)lSalvarRequest);
                }
                else
                {
                    UsuarioGrupoInfo lUsuarioGrupo = ((ReceberUsuarioGrupoResponse)lResponse).UsuarioGrupo;
                    lUsuarioGrupo.Perfis.Remove(lPerfilID);

                    lSalvarRequest = new SalvarUsuarioGrupoRequest()
                    {
                        CodigoSessao = this.CodigoSessao,
                        UsuarioGrupo = lUsuarioGrupo
                    };
                    lSalvarResponse = ServicoSeguranca.SalvarUsuarioGrupo((SalvarUsuarioGrupoRequest)lSalvarRequest);
                }

                if (lSalvarResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    base.RegistrarLogExclusao();
                    return(RetornarSucessoAjax("Perfil excluido com sucesso."));
                }
                else
                {
                    return(RetornarErroAjax("Erro ao excluir o perfil"));
                }
            }
            else
            {
                return(RetornarErroAjax("Erro ao excluir o perfil"));
            }
        }
Esempio n. 19
0
        public string ResponderCarregarHtmlComDados()
        {
            string Id           = Request["Id"];
            string TipoDeObjeto = Request["TipoDeObjeto"];

            MensagemRequestBase  lRequest;
            MensagemResponseBase lResponse;

            switch (TipoDeObjeto)
            {
            case "Usuario":
                lRequest = new ReceberUsuarioRequest()
                {
                    CodigoSessao  = this.CodigoSessao,
                    CodigoUsuario = Id
                };

                var lRequestUsuario = new UsuarioPermissaoInfo();

                lRequestUsuario.CodigoUsuario = Convert.ToInt32(Id);

                lResponse = new UsuarioPermissoesDbLib().ListarIntranetPermissoesUsuario(lRequestUsuario);

                break;

            case "Grupo":
                lRequest = new ReceberUsuarioGrupoRequest()
                {
                    CodigoSessao       = this.CodigoSessao,
                    CodigoUsuarioGrupo = Id
                };
                lResponse = this.ServicoSeguranca.ReceberUsuarioGrupo((ReceberUsuarioGrupoRequest)lRequest);
                break;

            case "Perfil":
                lRequest = new ReceberPerfilRequest()
                {
                    CodigoSessao = this.CodigoSessao,
                    CodigoPerfil = Id
                };
                lResponse = this.ServicoSeguranca.ReceberPerfil((ReceberPerfilRequest)lRequest);
                break;

            default:
                return(RetornarErroAjax("Só é possível mostrar permissões para Grupos, usuários e perfis."));
            }



            if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
            {
                TransporteSegurancaPermissao lLista = new TransporteSegurancaPermissao();
                if (lResponse is ReceberUsuarioResponse)
                {
                    UsuarioInfo lUsuario = ((ReceberUsuarioResponse)lResponse).Usuario;
                    lLista = ReceberLista(lUsuario.Permissoes, Id, TipoDeObjeto);
                }
                else if (lResponse is ReceberUsuarioGrupoResponse)
                {
                    UsuarioGrupoInfo lUsuarioGrupo = ((ReceberUsuarioGrupoResponse)lResponse).UsuarioGrupo;
                    lLista = ReceberLista(lUsuarioGrupo.Permissoes, Id, TipoDeObjeto);
                }
                else
                {
                    PerfilInfo lPerfil = ((ReceberPerfilResponse)lResponse).Perfil;
                    lLista = ReceberLista(lPerfil.Permissoes, Id, TipoDeObjeto);
                }

                this.hidSeguranca_Permissoes_ListaJson.Value = JsonConvert.SerializeObject(lLista.Permissoes.ToArray());
            }
            else
            {
                return(RetornarErroAjax(lResponse.DescricaoResposta));
            }

            return(string.Empty);
        }
Esempio n. 20
0
        public string ResponderCarregarHtmlComDados()
        {
            string lCodigoItem  = Request["Id"];
            string TipoDeObjeto = Request["TipoDeObjeto"];
            List <TransporteSegurancaItemFilho> lItensRetorno = new List <TransporteSegurancaItemFilho>();
            MensagemRequestBase  lRequest;
            MensagemResponseBase lResponse;

            switch (TipoDeObjeto)
            {
            case "Usuario":
                lRequest = new ReceberUsuarioRequest()
                {
                    CodigoSessao  = this.CodigoSessao,
                    CodigoUsuario = lCodigoItem
                };
                lResponse = this.ServicoSeguranca.ReceberUsuario((ReceberUsuarioRequest)lRequest);
                break;

            case "Grupo":
                lRequest = new ReceberUsuarioGrupoRequest()
                {
                    CodigoSessao       = this.CodigoSessao,
                    CodigoUsuarioGrupo = lCodigoItem
                };
                lResponse = this.ServicoSeguranca.ReceberUsuarioGrupo((ReceberUsuarioGrupoRequest)lRequest);
                break;

            default:
                return(RetornarErroAjax("Só é permitido listar os perfis se o tipo de objeto for Usuário ou Grupo."));
            }



            if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
            {
                ListarPerfisRequest lPerfisRequest = new ListarPerfisRequest()
                {
                    CodigoSessao = this.CodigoSessao
                };

                ListarPerfisResponse lPerfisResponse = this.ServicoSeguranca.ListarPerfis(lPerfisRequest);

                if (lRequest is ReceberUsuarioRequest)
                {
                    UsuarioInfo lUsuario = ((ReceberUsuarioResponse)lResponse).Usuario;
                    lItensRetorno = RetornarItens(lUsuario.Perfis, lPerfisResponse.Perfis, lCodigoItem, TipoDeObjeto);
                }
                else
                {
                    UsuarioGrupoInfo lUsuarioGrupo = ((ReceberUsuarioGrupoResponse)lResponse).UsuarioGrupo;
                    lItensRetorno = RetornarItens(lUsuarioGrupo.Perfis, lPerfisResponse.Perfis, lCodigoItem, TipoDeObjeto);
                }

                hidSeguranca_Perfis_ListaJson.Value = JsonConvert.SerializeObject(lItensRetorno);
            }
            else
            {
                return(RetornarErroAjax("Erro: " + lResponse.DescricaoResposta));
            }

            return(string.Empty);
        }
Esempio n. 21
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));
            }
        }
Esempio n. 22
0
        public string ResponderSalvar()
        {
            string lRetorno     = string.Empty;
            string lObjetoJson  = Request.Params["ObjetoJson"];
            string TipoDeObjeto = Request["TipoDeObjetoPai"];

            MensagemRequestBase  lRequest;
            MensagemResponseBase lResponse;

            bool lTinhaGTI   = false;
            bool lTinhaStock = false;

            try
            {
                TransporteSegurancaPermissao lDados = JsonConvert.DeserializeObject <TransporteSegurancaPermissao>(lObjetoJson);

                switch (TipoDeObjeto)
                {
                case "Usuario":
                    lRequest = new ReceberUsuarioRequest()
                    {
                        CodigoSessao  = this.CodigoSessao,
                        CodigoUsuario = lDados.ParentId
                    };
                    lResponse = this.ServicoSeguranca.ReceberUsuario((ReceberUsuarioRequest)lRequest);
                    break;

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

                case "Perfil":
                    lRequest = new ReceberPerfilRequest()
                    {
                        CodigoSessao = this.CodigoSessao,
                        CodigoPerfil = lDados.ParentId
                    };
                    lResponse = this.ServicoSeguranca.ReceberPerfil((ReceberPerfilRequest)lRequest);
                    break;

                default:
                    return(RetornarErroAjax("Só é possível salvar permissões para grupos, usuários e perfis."));
                }

                if (lResponse.StatusResposta == MensagemResponseStatusEnum.OK)
                {
                    MensagemRequestBase  lRequestBase;
                    MensagemResponseBase lResponseBase = new MensagemResponseBase();

                    if (lResponse is ReceberUsuarioResponse)
                    {
                        PermissaoAssociadaInfo lPermissao;
                        UsuarioInfo            lUsuario = ((ReceberUsuarioResponse)lResponse).Usuario;

                        //precisa verificar todas que tinha antes pra não re-enviar o email quando uma outra permissão que não a do GTI ou Stock forem adicionadas
                        foreach (Gradual.OMS.Seguranca.Lib.PermissaoAssociadaInfo lPerm in lUsuario.Permissoes)
                        {
                            if (lPerm.CodigoPermissao.ToUpper() == ConfiguracoesValidadas.PermissaoDeAcesso_GTI.ToUpper())
                            {
                                lTinhaGTI = true;
                            }

                            if (lPerm.CodigoPermissao.ToUpper() == ConfiguracoesValidadas.PermissaoDeAcesso_Stock.ToUpper())
                            {
                                lTinhaStock = true;
                            }
                        }

                        lUsuario.Permissoes.Clear();

                        var lCount = default(int);

                        do
                        {
                            lPermissao = new PermissaoAssociadaInfo()
                            {
                                CodigoPermissao = lDados.Permissoes.Count > 0 ? lDados.Permissoes[lCount] : string.Empty,
                                Status          = PermissaoAssociadaStatusEnum.Permitido
                            };

                            lUsuario.Permissoes.Add(lPermissao);

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

                            lResponseBase = ServicoSeguranca.SalvarUsuario((SalvarUsuarioRequest)lRequestBase);

                            if (lResponseBase.StatusResposta == MensagemResponseStatusEnum.OK)
                            {
                                base.RegistrarLogInclusao(new LogIntranetInfo()
                                {
                                    CdBovespaClienteAfetado = lUsuario.CodigoUsuario.DBToInt32(),

                                    DsObservacao = string.Format("Cód. Usuário logado: {0}; Nome do cliente: {1}; e-Mail:", base.UsuarioLogado.Id, lUsuario.Nome, lUsuario.Email),
                                });

                                if (TipoDeObjeto == "Usuario")
                                {
                                    if (!lTinhaGTI && lPermissao.CodigoPermissao.ToUpper() == ConfiguracoesValidadas.PermissaoDeAcesso_GTI.ToUpper())
                                    {
                                        EnviarEmailDePermissaoGTI(lUsuario.CodigoUsuario.DBToInt32(), "Gradual Trader Interface (GTI)");
                                    }

                                    if (!lTinhaStock && lPermissao.CodigoPermissao.ToUpper() == ConfiguracoesValidadas.PermissaoDeAcesso_Stock.ToUpper())
                                    {
                                        EnviarEmailDePermissaoGTI(lUsuario.CodigoUsuario.DBToInt32(), "Stock Market");
                                    }
                                }
                            }

                            lCount++;
                        } while (lDados.Permissoes.Count > lCount);
                    }
                    else if (lResponse is ReceberUsuarioGrupoResponse)
                    {
                        PermissaoAssociadaInfo lPermissao;
                        UsuarioGrupoInfo       lUsuarioGrupo = ((ReceberUsuarioGrupoResponse)lResponse).UsuarioGrupo;
                        foreach (string itemPermissao in lDados.Permissoes)
                        {
                            lPermissao = new PermissaoAssociadaInfo()
                            {
                                CodigoPermissao = itemPermissao,
                                Status          = PermissaoAssociadaStatusEnum.Permitido
                            };
                            lUsuarioGrupo.Permissoes.Add(lPermissao);

                            lRequestBase = new SalvarUsuarioGrupoRequest()
                            {
                                CodigoSessao = this.CodigoSessao,
                                UsuarioGrupo = lUsuarioGrupo
                            };
                            lResponseBase = ServicoSeguranca.SalvarUsuarioGrupo((SalvarUsuarioGrupoRequest)lRequestBase);
                        }
                    }
                    else
                    {
                        PermissaoAssociadaInfo lPermissao;
                        PerfilInfo             lPerfil = ((ReceberPerfilResponse)lResponse).Perfil;
                        lPerfil.Permissoes.Clear();

                        foreach (string itemPermissao in lDados.Permissoes)
                        {
                            lPermissao = new PermissaoAssociadaInfo()
                            {
                                CodigoPermissao = itemPermissao,
                                Status          = PermissaoAssociadaStatusEnum.Permitido
                            };
                            lPerfil.Permissoes.Add(lPermissao);

                            lRequestBase = new SalvarPerfilRequest()
                            {
                                CodigoSessao = this.CodigoSessao,
                                Perfil       = lPerfil
                            };
                            lResponseBase = ServicoSeguranca.SalvarPerfil((SalvarPerfilRequest)lRequestBase);
                        }
                    }

                    if (lResponseBase.StatusResposta == MensagemResponseStatusEnum.OK)
                    {
                        return(RetornarSucessoAjax("Permissão associada com sucesso."));
                    }
                    else
                    {
                        return(RetornarErroAjax(lResponseBase.DescricaoResposta));
                    }
                }
                else
                {
                    return(RetornarErroAjax(lResponse.DescricaoResposta));
                }
            }
            catch (Exception ex)
            {
                return(RetornarErroAjax(ex.Message));
            }
        }
Esempio n. 23
0
 public TransporteSegurancaGrupo(UsuarioGrupoInfo pUsuarioGrupoInfo)
 {
     this.Id   = pUsuarioGrupoInfo.CodigoUsuarioGrupo;
     this.Nome = pUsuarioGrupoInfo.NomeUsuarioGrupo;
 }