Example #1
0
        /// <summary>
        /// Método para la obtención de la(s) IP(s) registrada(s) al usuario logueado.
        /// </summary>
        /// <param name="par">Parametros de búsqueda.</param>
        /// <param name="login">Parametros de tipo OLogin.</param>
        /// <returns>Respuesta genérica de tipo OIpv4</returns>
        public Respuesta <OIpv4> ObtenerIPs(OBusquedaParametro par, OLogin login)
        {
            Respuesta <OIpv4> respuesta = new Respuesta <OIpv4>();

            try
            {
                if (String.IsNullOrEmpty(par.TipoBusqueda.ToString()))
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, par.TipoBusqueda.ToString());
                }
                if (String.IsNullOrEmpty(par.Descripcion))
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, par.Descripcion);
                }
                if (String.IsNullOrEmpty(par.UsuarioID.ToString()))
                {
                    throw new ArgumentException(Constantes.PARAMETROVACIOONULO, par.UsuarioID.ToString());
                }
            }
            catch (Exception ex)
            {
                respuesta.TipoEstatus  = TipoEstatus.Error;
                respuesta.ListaErrores = new List <string> {
                    ex.Message
                };

                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerIPs",
                    formulario  = "NGestionUsuarios",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                NGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
Example #2
0
        public JsonResult btnEntrar_Click(OLogin modelo)
        {
            OLogin login = (OLogin)Session["Login"];

            modelo.Cuenta   = "ceenlace.puebla";
            modelo.Password = "******";

            if (login == null)
            {
                login = new OLogin();
            }
            login.Cuenta   = modelo.Cuenta;
            login.Password = modelo.Password;

            Respuesta <string> respuestaLogin =
                NGestionAutenticacion.Instances.AutenticarUsuario(modelo);

            if (respuestaLogin.TipoEstatus == TipoEstatus.Ok)
            {
                //Validar que el usuario logueado exista
                OBusquedaParametro par = new OBusquedaParametro
                {
                    TipoBusqueda = (int)TipoBusquedaEnum.Usuario,
                    Descripcion  = modelo.Cuenta
                };
                Respuesta <OUsuario> respuestaUsuario = NGestionUsuarios.Instances.ObtenerUsuario(par, login);

                if (respuestaUsuario.TipoRespuesta == null || respuestaUsuario.TipoEstatus != TipoEstatus.Ok)
                {
                    return(Json(respuestaUsuario.MensajeUsuario, JsonRequestBehavior.AllowGet));
                }

                OBusquedaParametro parModulos =
                    new OBusquedaParametro
                {
                    TipoBusqueda = (int)TipoBusquedaEnum.Perfil,
                    PerfilID     = respuestaUsuario.TipoRespuesta.PerfilID
                };
                Respuesta <OPermisos> respuestPermisos = NGestionUsuarios.Instances.ObtenerPermisos(parModulos, login);

                //Cargar los accesos del usuario logueado
                login = new OLogin {
                    Usuario = respuestaUsuario.TipoRespuesta
                };

                if (respuestPermisos.TipoRespuesta != null)
                {
                    login.Modulos    = respuestPermisos.TipoRespuesta.Modulos.ToList();
                    login.SubModulos = respuestPermisos.TipoRespuesta.SubModulos.ToList();
                    login.Acciones   = null; // respuestPermisos.TipoRespuesta.Acciones.ToList(); revisar pa que sirve
                    login.Usuario.ip = GetDesarrollo_IP();
                }

                //Asignamos la variable de session Login con los objetos previamente cargados
                Session["Login"] = login;

                //si todo esta bien avanzar
                return(Json("", JsonRequestBehavior.AllowGet));

                //En la pantalla SIRF.aspx se seteará el lblNomUsuario
                //En la pantalla SIRF.aspx se cargara el Menu
                //No se cuenta con información de usuario capturado.
            }
            return(Json(respuestaLogin.MensajeUsuario, JsonRequestBehavior.AllowGet));
        }
Example #3
0
        /// <summary>
        /// Método para la obtención de la información del usuario.
        /// </summary>
        /// <param name="par">Parametros de búsqueda.</param>
        /// <param name="login">Parametros de tipo OLogin.</param>
        /// <returns>Respuesta genérica de tipo ObjetoUsuario.</returns>
        public Respuesta <OUsuario> ObtenerUsuario(OBusquedaParametro par, OLogin login)
        {
            Respuesta <OUsuario> respuesta = new Respuesta <OUsuario>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var lsUsuario = (from us in db.Usuario.Where(s => s.cuenta == par.Descripcion || s.numeroExpediente == par.NumeroExpediente)
                                     where (int)TipoBusquedaEnum.Usuario == par.TipoBusqueda || (int)TipoBusquedaEnum.Expediente == par.TipoBusqueda
                                     select new OUsuario
                    {
                        UsuarioID = us.usuarioID,
                        Usuario = us.cuenta,
                        Correo = us.correo,
                        UnidadAdministrativa = us.CatUnidadAdm.descripcion,
                        PerfilID = us.catPerfilID,
                        DescripcionPerfil = us.CatPerfil.descripcion,
                        Expediente = us.numeroExpediente,
                        EstatusLogico = us.estatusLogico,
                        RegionID = us.CatUnidadAdm.catRegionID,
                        CodUA = us.catUnidadAdmID,
                        DescripcionRol = us.CatRol.descripcion,
                        Proceso = "",
                        RolId = us.catRolID
                    }).FirstOrDefault();

                    respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                    respuesta.TipoEstatus    = TipoEstatus.Ok;

                    if (lsUsuario != null)
                    {
                        lsUsuario.DescripcionArea = (from us in db.Usuario.Where(u => u.usuarioID == lsUsuario.UsuarioID)
                                                     join c in db.AreaUnidadAdm on us.catUnidadAdmID equals c.catUnidadAdmID
                                                     join d in db.CatArea on c.catAreaID equals d.catAreaID
                                                     select d.descripcion).FirstOrDefault();

                        lsUsuario.AreaId = (from us in db.Usuario.Where(u => u.usuarioID == lsUsuario.UsuarioID)
                                            join c in db.AreaUnidadAdm on us.catUnidadAdmID equals c.catUnidadAdmID
                                            join d in db.CatArea on c.catAreaID equals d.catAreaID
                                            select d.catAreaID).FirstOrDefault();

                        lsUsuario.Nombre = GetUsuarioKardex(lsUsuario.Expediente).Nombre;

                        DGestionExpediente exp = new DGestionExpediente();
                        lsUsuario.codCentroDistribucion = exp.ObtenerCodCentroDistribucion(lsUsuario.Expediente);


                        respuesta.NumeroRegistros = 1;
                    }
                    else
                    {
                        respuesta.TipoEstatus    = TipoEstatus.Ok;
                        respuesta.MensajeUsuario = Constantes.SININFORMACION;
                    }
                    respuesta.TipoRespuesta = lsUsuario;
                }
            }
            catch (Exception ex)
            {
                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerUsuario",
                    formulario  = "DGestionUsuarios",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                DGestionLogError.Instances.GuardarError(_logError, login);
            }
            return(respuesta);
        }
Example #4
0
        /// <summary>
        /// Método para la obtención de los permisos del usuario logueado.
        /// </summary>
        /// <param name="par">Parametros de búsqueda.</param>
        /// <param name="login">Parametros de tipo OLogin.</param>
        /// <returns>Respuesta genérica de tipo OPermisos</returns>
        public Respuesta <OPermisos> ObtenerPermisos(OBusquedaParametro par, OLogin login)
        {
            Respuesta <OPermisos> respuesta = new Respuesta <OPermisos>();

            try
            {
                using (SIRFPROD_v2Entities db = new SIRFPROD_v2Entities())
                {
                    var modulosDelUsuario = (from pm in db.PerfilModulo
                                             where ((int)TipoBusquedaEnum.Perfil == par.TipoBusqueda && pm.catPerfilID == par.PerfilID)
                                             select new OModulo
                    {
                        ModuloID = pm.CatModulo.catModuloID,
                        DescripcionModulo = pm.CatModulo.descripcion,
                        EstatusLogico = pm.CatModulo.estatusLogico
                    }).ToList();

                    var subModulosDelUsuario = (from pm in db.PerfilModulo
                                                join ms in db.ModuloSubmodulo on pm.catModuloID equals ms.catModuloID
                                                where ((int)TipoBusquedaEnum.Perfil == par.TipoBusqueda && pm.catPerfilID == par.PerfilID)
                                                select new OSubModulo
                    {
                        SubmoduloID = ms.CatSubmodulo.catSubmoduloID,
                        DescripcionSubModulo = ms.CatSubmodulo.descripcion,
                        EstatusLogico = ms.CatSubmodulo.estatusLogico,
                        ModuloID = ms.CatModulo.catModuloID,
                        Url = ms.CatSubmodulo.url
                    }).ToList();

                    // ESTO PA QUE INGADOS SE OCUPA?????

                    /*var accionesDelUsuario = (from ea in db.EstatusAccion
                     *                        join pm in db.EstatusPerfil on ea.estatusAccionID equals pm.estatusAccionID
                     *                        where ((int)TipoBusquedaEnum.Perfil == par.TipoBusqueda && pm.perfilID == par.PerfilID)
                     *                        select new OAccion
                     *                        {
                     *                            AccionID = ea.CatAcciones.accionesID,
                     *                            Accion = ea.CatAcciones.accion,
                     *                            DescripcionAccion = ea.CatAcciones.descripcionAccion,
                     *                            EstatusLogico = ea.CatAcciones.estatusLogico
                     *                        }).ToList(); */

                    var permisos = new OPermisos
                    {
                        Modulos    = modulosDelUsuario,
                        SubModulos = subModulosDelUsuario,
                        //Acciones = accionesDelUsuario
                    };

                    respuesta.TipoRespuesta  = new OPermisos();
                    respuesta.TipoRespuesta  = permisos;
                    respuesta.MensajeUsuario = Constantes.CONINFORMACION;
                }
            }
            catch (Exception ex)
            {
                _logError = new OLogError
                {
                    codigoError = ex.HResult.ToString(),
                    error       = ex.Message,
                    evento      = "ObtenerPermisos",
                    formulario  = "DGestionUsuarios",
                    ex          = ex,
                    usuarioID   = login.Usuario.UsuarioID,
                    ipEquipo    = login.Usuario.ip
                };



                //Revisar por que no se ve el "Guardar"
                DGestionLogError.Instances.GuardarError(_logError, login);
            }

            return(respuesta);
        }