Пример #1
0
    public static string ObtenerSubmenus(int pIdMenu)
    {
        //Abrir Conexion
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        //¿La conexion se establecio?
        if (respuesta == "Conexion Establecida")
        {
            JObject OJson = new JObject();
            JObject Submenu;
            JArray  ArregloObjetos = new JArray();

            CPagina Pagina = new CPagina();
            foreach (CPagina OP in Pagina.LlenaObjetos(pIdMenu, ConexionBaseDatos))
            {
                Submenu = new JObject();
                Submenu.Add(new JProperty("IdPagina", OP.IdPagina));
                Submenu.Add(new JProperty("Submenu", OP.NombreMenu));
                ArregloObjetos.Add(Submenu);
            }
            OJson.Add("Success", true);
            OJson.Add("ListaSubmenus", ArregloObjetos);
            ConexionBaseDatos.CerrarBaseDatosSqlServer();
            return(OJson.ToString());
        }
        else
        {
            JObject OJson = new JObject();
            OJson.Add("Success", false);
            OJson.Add("Mensaje", respuesta);
            ConexionBaseDatos.CerrarBaseDatosSqlServer();
            return(OJson.ToString());
        }
    }
Пример #2
0
    public static string CambiarContrasena(int pIdUsuario, string pContrasena, string pConfirmar)
    {
        //Abrir Conexion
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        //¿La conexion se establecio?
        if (respuesta == "Conexion Establecida")
        {
            CUsuario Usuario = new CUsuario();
            Usuario.LlenaObjeto(pIdUsuario, ConexionBaseDatos);
            Usuario.Contrasena = pContrasena;
            Usuario.Editar(ConexionBaseDatos);
            HttpContext.Current.Session["IdUsuario"] = Usuario.IdUsuario;
            CPerfil Perfil = new CPerfil();
            Perfil.IdPerfil = Usuario.IdPerfil;
            Perfil.LlenaObjeto(Usuario.IdPerfil, ConexionBaseDatos);
            CPagina PaginaInicio = new CPagina();
            PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);
            CMenu Menu = new CMenu();
            Menu.LlenaObjeto(PaginaInicio.IdMenu, ConexionBaseDatos);
            respuesta = "0|Paginas/" + PaginaInicio.Pagina;
        }
        return(respuesta);
    }
Пример #3
0
    public void CrearTituloSeccion(string pPagina, bool pAccesoDirecto, CConexion pConexion)
    {
        CPagina Pagina = new CPagina();

        Pagina.FiltrarPagina(pPagina, pConexion);
        divTituloSeccion.InnerText = Pagina.Titulo;
        if (!pAccesoDirecto)
        {
            int      IdUsuario = Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]);
            CUsuario Usuario   = new CUsuario();
            Usuario.LlenaObjeto(IdUsuario, pConexion);

            int Actividades = 0;

            CSelectEspecifico Select = new CSelectEspecifico();

            Select.StoredProcedure.CommandText = "sp_Usuario_ContarActividadesHoy";
            Select.StoredProcedure.Parameters.Add("IdUsuario", SqlDbType.Int).Value = IdUsuario;
            Select.Llena(pConexion);

            if (Select.Registros.Read())
            {
                Actividades = Convert.ToInt32(Select.Registros["Actividades"]);
            }

            Select.CerrarConsulta();

            divUsuarioSesion.InnerHtml = "Actividades: (" + Actividades + ") Usuario: <span id='spanUsuario'>" + Usuario.Nombre + ' ' + Usuario.ApellidoPaterno + ' ' + Usuario.ApellidoMaterno + "<img id='imgEditarDatosUsuario' src='../images/editar.png' style='width:12px;'/></span>";
        }
    }
    public string ComboPagina()
    {
        //Abrir Conexion
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();
        int       idPerfil          = Convert.ToInt32(this.Request.Params["IdPerfil"]);
        CPerfil   Perfil            = new CPerfil();

        Perfil.LlenaObjeto(idPerfil, ConexionBaseDatos);
        CPagina Pagina = new CPagina();

        Pagina.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);

        //¿La conexion se establecio?
        if (respuesta == "Conexion Establecida")
        {
            CComboBox ComboPagina = new CComboBox();
            ComboPagina.StoredProcedure.CommandText = "sp_Pagina_Consulta";
            ComboPagina.StoredProcedure.Parameters.AddWithValue("@Opcion", 1);
            ComboPagina.Columnas           = new string[] { "IdPagina", "Titulo" };
            ComboPagina.CssClase           = "cmbComboBox";
            ComboPagina.Nombre             = "cmbPagina";
            ComboPagina.ValorInicio        = "Seleccione una opcion...";
            ComboPagina.TabIndex           = "3";
            ComboPagina.OpcionSeleccionada = Pagina.IdPagina;
            respuesta = ComboPagina.GeneraCombo(ConexionBaseDatos);
        }

        //Cerrar Conexion
        ConexionBaseDatos.CerrarBaseDatos();
        return(respuesta);
    }
Пример #5
0
    public static string OrdenarSubmenus(object pObjetoJSON)
    {
        //Abrir Conexion
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        //¿La conexion se establecio?
        if (respuesta == "Conexion Establecida")
        {
            CPagina Pagina = new CPagina();
            foreach (Dictionary <string, object> OPagina in (Array)pObjetoJSON)
            {
                Pagina.IdPagina = Convert.ToInt32(OPagina["IdPagina"]);
                Pagina.Orden    = Convert.ToInt32(OPagina["Orden"]);
                Pagina.OrdenarSubmenu(ConexionBaseDatos);
            }
            JObject OJson = new JObject();
            OJson.Add("Error", false);
            OJson.Add("Mensaje", "Los cambios se guardaron correctamente, actualiza la pagina para mostrar los cambios en el menú.");
            ConexionBaseDatos.CerrarBaseDatosSqlServer();
            return(OJson.ToString());
        }
        else
        {
            JObject OJson = new JObject();
            OJson.Add("Error", true);
            OJson.Add("Mensaje", respuesta);
            ConexionBaseDatos.CerrarBaseDatosSqlServer();
            return(OJson.ToString());
        }
    }
Пример #6
0
    public string ComboMenu()
    {
        //Llena etiquetas con la informacion solicitada
        int idPagina = Convert.ToInt32(this.Request.Params["IdPagina"]);

        //Abrir Conexion
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        //¿La conexion se establecio?
        if (respuesta == "Conexion Establecida")
        {
            CPagina Pagina = new CPagina();
            Pagina.LlenaObjeto(idPagina, ConexionBaseDatos);

            CComboBox ComboMenu = new CComboBox();
            ComboMenu.StoredProcedure.CommandText = "sp_Menu_Consulta";
            ComboMenu.StoredProcedure.Parameters.AddWithValue("@Opcion", 1);
            ComboMenu.Columnas           = new string[] { "IdMenu", "Menu" };
            ComboMenu.CssClase           = "cmbComboBox";
            ComboMenu.Nombre             = "cmbMenu";
            ComboMenu.ValorInicio        = "Eligir una opción...";
            ComboMenu.TabIndex           = "4";
            ComboMenu.OpcionSeleccionada = Pagina.IdMenu;
            respuesta = ComboMenu.GeneraCombo(ConexionBaseDatos);
        }

        //Cerrar Conexion
        ConexionBaseDatos.CerrarBaseDatos();
        return(respuesta);
    }
Пример #7
0
    public static string EditarPagina(int pIdPagina, string pPagina, string pTitulo, string pNombreMenu, int pIdMenu, bool pValidarSucursal)
    {
        string validacion = ValidaPagina(pPagina, pTitulo, pNombreMenu, pIdMenu);

        if (validacion != "")
        {
            return("1|" + validacion);
        }
        else
        {
            //Abrir Conexion
            CConexion ConexionBaseDatos = new CConexion();
            string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

            //¿La conexion se establecio?
            if (respuesta == "Conexion Establecida")
            {
                CPagina Pagina = new CPagina();
                Pagina.LlenaObjeto(pIdPagina, ConexionBaseDatos);
                Pagina.Pagina          = pPagina;
                Pagina.Titulo          = pTitulo;
                Pagina.NombreMenu      = pNombreMenu;
                Pagina.IdMenu          = pIdMenu;
                Pagina.ValidarSucursal = pValidarSucursal;
                Pagina.Editar(ConexionBaseDatos);
                string JsonPaginas = Pagina.ObtenerJsonArbol(ConexionBaseDatos);
                respuesta = "0|" + JsonPaginas;
            }

            //Cerrar Conexion
            ConexionBaseDatos.CerrarBaseDatosSqlServer();
            return(respuesta);
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        if (respuesta == "Conexion Establecida")
        {
            //Llena etiquetas con la informacion solicitada
            int     idPerfil = Convert.ToInt32(this.Request.Params["IdPerfil"]);
            CPerfil Perfil   = new CPerfil();
            Perfil.LlenaObjeto(idPerfil, ConexionBaseDatos);
            lblPerfilConsulta.Text      = Perfil.Perfil;
            chkEsPerfilSucursal.Checked = Perfil.EsPerfilSucursal;

            CPagina Pagina = new CPagina();
            Pagina.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);
            lblPaginaConsulta.Text = Pagina.Titulo;

            //Agreagar valores a etiquetas
            HtmlGenericControl divFormulario = Page.FindControl("divFormulario") as HtmlGenericControl;
            divFormulario.Attributes.Add("idPerfil", Convert.ToString(Perfil.IdPerfil));
            divFormulario.Attributes.Add("perfil", Perfil.Perfil);

            HtmlInputControl btnEditar = Page.FindControl("btnEditar") as HtmlInputControl;
            string           onclickFormaEditarPerfil = "javascript:SetFormaEditarPerfil(" + Convert.ToString(Perfil.IdPerfil) + ")";
            btnEditar.Attributes.Add("onclick", onclickFormaEditarPerfil);
        }
        ConexionBaseDatos.CerrarBaseDatos();
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        if (respuesta == "Conexion Establecida")
        {
            //Llena etiquetas con la informacion solicitada
            int     idPagina = Convert.ToInt32(this.Request.Params["IdPagina"]);
            CPagina Pagina   = new CPagina();
            Pagina.LlenaObjeto(idPagina, ConexionBaseDatos);
            lblPaginaConsulta.Text     = Pagina.Pagina;
            lblTituloConsulta.Text     = Pagina.Titulo;
            lblNombreMenuConsulta.Text = Pagina.NombreMenu;
            chkValidarSucursal.Checked = Pagina.ValidarSucursal;

            CMenu MenuPadre = new CMenu();
            MenuPadre.LlenaObjeto(Pagina.IdMenu, ConexionBaseDatos);
            lblMenuPadreConsulta.Text = MenuPadre.Menu;

            //Agreagar atributos en etiquetas
            HtmlGenericControl divFormulario = Page.FindControl("divFormulario") as HtmlGenericControl;
            divFormulario.Attributes.Add("idPagina", Convert.ToString(Pagina.IdPagina));
            divFormulario.Attributes.Add("pagina", Pagina.Pagina);

            HtmlInputControl btnEditar = Page.FindControl("btnEditar") as HtmlInputControl;
            string           onclickFormaEditarPagina = "javascript:SetFormaEditarPagina(" + Convert.ToString(Pagina.IdPagina) + ")";
            btnEditar.Attributes.Add("onclick", onclickFormaEditarPagina);
        }
        ConexionBaseDatos.CerrarBaseDatos();
    }
Пример #10
0
    private static string ValidaPagina(CPagina IdPagina)
    {
        string Mensaje = "";

        Mensaje += (IdPagina.Pagina == "") ? "<li>Favor de completar el campo página.</li>" : Mensaje;

        Mensaje = (Mensaje != "") ? "<p>Favor de completar los siguientes campos:<ul>" + Mensaje + "</ul></p>" : Mensaje;

        return(Mensaje);
    }
Пример #11
0
    public static string EditarPagina(int IdPagina, string Descripcion, int IdMenu, int IdPermiso, string Pagina)
    {
        CObjeto Respuesta = new CObjeto();

        CUnit.Firmado(delegate(CDB Conn)
        {
            string Error      = "";
            CSecurity permiso = new CSecurity();
            if (permiso.tienePermiso("puedeEditarPagina"))
            {
                if (Conn.Conectado)
                {
                    CObjeto Datos    = new CObjeto();
                    CPagina cPagina  = new CPagina();
                    cPagina.IdPagina = IdPagina;
                    cPagina.Obtener(Conn);
                    cPagina.Pagina      = Pagina;
                    cPagina.Descripcion = Descripcion;
                    cPagina.IdMenu      = IdMenu;
                    cPagina.IdPermiso   = IdPermiso;
                    Error = ValidaPagina(cPagina);
                    if (Error == "")
                    {
                        int ExisteNom = CPagina.ValidaExisteEditar(IdPagina, Pagina, Conn);
                        if (ExisteNom != 0)
                        {
                            Error = Error + "<li>Ya existe una página con el mismo Nombre.</li>";
                        }
                        else
                        {
                            cPagina.Editar(Conn);
                        }
                    }
                    Respuesta.Add("Datos", Datos);
                }
                else
                {
                    Error = Error + "<li>" + Conn.Mensaje + "</li>";
                }
            }
            else
            {
                Error = Error + "<li>No tienes los permisos necesarios</li>";
            }

            Respuesta.Add("Error", Error);
        });

        return(Respuesta.ToString());
    }
Пример #12
0
    public static string AgregarPagina(string Pagina, string Descripcion, int IdMenu, int IdPermiso)
    {
        CObjeto Respuesta = new CObjeto();

        CUnit.Firmado(delegate(CDB Conn)
        {
            string Error      = "";
            CSecurity permiso = new CSecurity();
            if (permiso.tienePermiso("puedeAgregarPagina"))
            {
                if (Conn.Conectado)
                {
                    CObjeto Datos       = new CObjeto();
                    CPagina cPagina     = new CPagina();
                    cPagina.Pagina      = Pagina;
                    cPagina.Descripcion = Descripcion;
                    cPagina.IdMenu      = IdMenu;
                    cPagina.IdPermiso   = IdPermiso;
                    cPagina.Baja        = false;
                    Error = ValidaPagina(cPagina);
                    if (Error == "")
                    {
                        CObjeto Valida = new CObjeto();
                        int IdPagina   = CPagina.ValidaExiste(Pagina, Conn);
                        if (IdPagina != 0)
                        {
                            Error = Error + "<li>La página ya existe.</li>";
                        }
                        else
                        {
                            cPagina.Agregar(Conn);
                        }
                    }
                    Respuesta.Add("Datos", Datos);
                }
                else
                {
                    Error = Error + "<li>" + Conn.Mensaje + "</li>";
                }
            }
            else
            {
                Error = Error + "<li>No tiene los permisos necesarios</li>";
            }

            Respuesta.Add("Error", Error);
        });
        return(Respuesta.ToString());
    }
Пример #13
0
    public static string ObtenerJsonArbolPaginas()
    {
        //Abrir Conexion
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        //¿La conexion se establecio?
        if (respuesta == "Conexion Establecida")
        {
            CPagina Pagina      = new CPagina();
            string  JsonPaginas = Pagina.ObtenerJsonArbol(ConexionBaseDatos);
            respuesta = JsonPaginas.ToString();
        }

        //Cerrar Conexion
        ConexionBaseDatos.CerrarBaseDatosSqlServer();
        return(respuesta);
    }
Пример #14
0
    public static string DesactivarPagina(int IdPagina, int Baja)
    {
        CObjeto Respuesta = new CObjeto();
        string  Error     = "";

        CUnit.Firmado(delegate(CDB Conn)
        {
            CSecurity permiso = new CSecurity();
            if (permiso.tienePermiso("puedeManipularBajaPagina"))
            {
                if (Conn.Conectado)
                {
                    CObjeto Datos   = new CObjeto();
                    bool desactivar = false;
                    if (Baja == 0)
                    {
                        desactivar = true;
                    }
                    else
                    {
                        desactivar = false;
                    }
                    CPagina cPagina  = new CPagina();
                    cPagina.IdPagina = IdPagina;
                    cPagina.Baja     = desactivar;
                    cPagina.Desactivar(Conn);
                    Respuesta.Add("Datos", Datos);
                }
                else
                {
                    Error = Error + "<li>" + Conn.Mensaje + "</li>";
                }
            }
            else
            {
                Error = Error + "<li>No tienes los permisos necesarios</li>";
            }


            Respuesta.Add("Error", Error);
        });

        return(Respuesta.ToString());
    }
Пример #15
0
    public static string EliminarPagina(int pIdPagina)
    {
        //Abrir Conexion
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        //¿La conexion se establecio?
        if (respuesta == "Conexion Establecida")
        {
            CPagina Pagina = new CPagina();
            Pagina.IdPagina = pIdPagina;
            Pagina.Eliminar(ConexionBaseDatos);
            string JsonPaginas = Pagina.ObtenerJsonArbol(ConexionBaseDatos);
            respuesta = "0|" + JsonPaginas;
        }

        //Cerrar Conexion
        ConexionBaseDatos.CerrarBaseDatosSqlServer();
        return(respuesta);
    }
Пример #16
0
    protected void Page_Load(object sender, EventArgs e)
    {
        CConexion ConexionBaseDatos = new CConexion();
        string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

        if (respuesta == "Conexion Establecida")
        {
            int     idPagina = Convert.ToInt32(this.Request.Params["IdPagina"]);
            CPagina Pagina   = new CPagina();
            Pagina.LlenaObjeto(idPagina, ConexionBaseDatos);
            txtPagina.Text             = Pagina.Pagina;
            txtTitulo.Text             = Pagina.Titulo;
            txtNombreMenu.Text         = Pagina.NombreMenu;
            chkValidarSucursal.Checked = Pagina.ValidarSucursal;

            HtmlGenericControl divFormulario = Page.FindControl("divFormulario") as HtmlGenericControl;
            divFormulario.Attributes.Add("idPagina", Convert.ToString(Pagina.IdPagina));
            divFormulario.Attributes.Add("pagina", Pagina.Pagina);
        }
        ConexionBaseDatos.CerrarBaseDatos();
    }
Пример #17
0
    public static string Reordenar(Dictionary <string, object> pRequest)
    {
        CObjeto Respuesta = new CObjeto();
        string  Error     = "";

        CUnit.Firmado(delegate(CDB conn)
        {
            //int IdUsuarioSesion = CUsuario.ObtieneUsuarioSesion(conn);
            CSecurity permiso = new CSecurity();
            if (permiso.tienePermiso("puedeEditarPagina"))
            {
                //    CObjeto Datos = new CObjeto();
                if (conn.Conectado)
                {
                    foreach (Dictionary <string, object> pPagina in (Array)pRequest["pPagina"])
                    {
                        int pIdPagina = Convert.ToInt32(pPagina["IdPagina"]);
                        int pOrden    = Convert.ToInt32(pPagina["Orden"]);

                        CPagina cPagina  = new CPagina();
                        cPagina.IdPagina = pIdPagina;
                        cPagina.Obtener(conn);
                        cPagina.Orden = pOrden;
                        cPagina.Editar(conn);
                    }
                }
                else
                {
                    Error = Error + "<li>" + conn.Mensaje + "</li>";
                }
            }
            else
            {
                Error = Error + "<li>No tienes los permisos necesarios</li>";
            }

            Respuesta.Add("Error", Error);
        });
        return(Respuesta.ToString());
    }
Пример #18
0
    public void CrearMenu(string pPagina, CConexion pConexion)
    {
        int IdUsuario = Convert.ToInt32(HttpContext.Current.Request.Cookies["IdUsuario"].Value.ToString());

        HttpContext.Current.Session["IdUsuario"] = IdUsuario;

        string  carpeta      = "";
        CPagina PaginaActual = new CPagina();

        PaginaActual.FiltrarPagina(pPagina, pConexion);
        CUsuario Usuario = new CUsuario();

        Usuario.LlenaObjeto(Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]), pConexion);
        CPerfil Perfil = new CPerfil();

        if (Usuario.IdPerfil != 0)
        {
            Perfil.LlenaObjeto(Usuario.IdPerfil, pConexion);
        }
        else if (Usuario.TieneSucursalAsignada(pConexion))
        {
            CSucursalAsignada           SucursalAsignada           = new CSucursalAsignada();
            Dictionary <string, object> ParametrosSucursalAsignada = new Dictionary <string, object>();
            ParametrosSucursalAsignada.Add("IdUsuario", Usuario.IdUsuario);
            ParametrosSucursalAsignada.Add("IdSucursal", Usuario.IdSucursalActual);
            SucursalAsignada.LlenaObjetoFiltros(ParametrosSucursalAsignada, pConexion);
            Perfil.LlenaObjeto(SucursalAsignada.IdPerfil, pConexion);
        }

        else
        {
            HttpContext.Current.Response.Redirect("../InicioSesion.aspx");
        }

        CPagina PaginaInicio = new CPagina();

        PaginaInicio.LlenaObjeto(Perfil.IdPagina, pConexion);
        CMenu MenuInicio = new CMenu();

        MenuInicio.LlenaObjeto(PaginaInicio.IdMenu, pConexion);
        CMenu MenuPrincipal = new CMenu();

        if (MenuInicio.IdMenu != PaginaActual.IdMenu)
        {
            carpeta = "../" + MenuInicio.Menu + "/";
        }
        string liTituloMenuPrincipal = "<li><a href='../Paginas/" + PaginaInicio.Pagina + "'>Inicio</a></li>";

        foreach (CMenu Menu in MenuPrincipal.ObtenerMenuPrincipal(Perfil.IdPerfil, "Seguridad", pConexion))
        {
            CPagina Pagina  = new CPagina();
            int     bandera = 0;
            foreach (CPagina MenuSecundario in Pagina.ObtenerMenuSecundario(Menu.IdMenu, Perfil.IdPerfil, "Seguridad", pConexion))
            {
                if (bandera == 0)
                {
                    liTituloMenuPrincipal = liTituloMenuPrincipal + "<li id='li" + Menu.Menu + "'>" + Menu.Menu + "";
                    liTituloMenuPrincipal = liTituloMenuPrincipal + "<ul>";
                    bandera = 1;
                }
                if (PaginaActual.IdMenu == MenuSecundario.IdMenu)
                {
                    carpeta = "";
                }
                else
                {
                    carpeta = "../" + Menu.Menu + "/";
                }
                liTituloMenuPrincipal = liTituloMenuPrincipal + "<li><a href='../Paginas/" + MenuSecundario.Pagina + "'>" + MenuSecundario.NombreMenu + "</a></li>";
            }
            if (bandera == 1)
            {
                liTituloMenuPrincipal = liTituloMenuPrincipal + "</ul>";
            }
            liTituloMenuPrincipal = liTituloMenuPrincipal + "</li>";
        }
        liTituloMenuPrincipal = liTituloMenuPrincipal + "<li><a href='http://www.tsk.com.mx/Procesos/consulta.asp' target='_blank'>Procesos</a></li>";
        liTituloMenuPrincipal = liTituloMenuPrincipal + "<li><a href='../InicioSesion.aspx'>Salir</a></li>";
        HtmlGenericControl ulMenu = this.Page.FindControl("ctl00$ulMenuSeguridad") as HtmlGenericControl;

        ulMenu.InnerHtml = liTituloMenuPrincipal;

        HttpCookie miSesion = new HttpCookie("IdUsuario");

        miSesion.Value = IdUsuario.ToString();
        HttpContext.Current.Response.SetCookie(miSesion);
    }
Пример #19
0
    public static void ValidarPermisos()
    {
        string pagina = HttpContext.Current.Request.Url.LocalPath;

        pagina = pagina.Substring(pagina.LastIndexOf("/") + 1);

        if (pagina != "InicioSesion.aspx")
        {
            if (Convert.ToString(HttpContext.Current.Session["IdUsuario"]) == "")
            {
                HttpContext.Current.Response.Redirect("../InicioSesion.aspx");
            }
            else
            {
                CConexion ConexionBaseDatos = new CConexion();
                string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

                CPagina Pagina = new CPagina();
                Dictionary <string, object> ParametrosPagina = new Dictionary <string, object>();
                ParametrosPagina.Add("Pagina", pagina);
                foreach (CPagina oPagina in Pagina.LlenaObjetoFiltros(ParametrosPagina, ConexionBaseDatos))
                {
                    Pagina = oPagina;
                }

                CUsuario Usuario = new CUsuario();
                Usuario.LlenaObjeto(Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]), ConexionBaseDatos);

                //--SIN PERFIL DIRECTO, PERFIL RELACIONADO CON LA SUCURSAL ASIGNADA.
                if (Usuario.IdPerfil == 0)
                {
                    if (Pagina.ValidarSucursal == true)
                    {
                        CSucursalAsignada           SucursalAsignada           = new CSucursalAsignada();
                        Dictionary <string, object> ParametrosSucursalAsignada = new Dictionary <string, object>();
                        ParametrosSucursalAsignada.Add("IdUsuario", Usuario.IdUsuario);
                        ParametrosSucursalAsignada.Add("IdSucursal", Usuario.IdSucursalActual);
                        SucursalAsignada.LlenaObjetoFiltros(ParametrosSucursalAsignada, ConexionBaseDatos);

                        CPerfil Perfil = new CPerfil();
                        Perfil.LlenaObjeto(SucursalAsignada.IdPerfil, ConexionBaseDatos);

                        CPagina PaginaInicio = new CPagina();
                        PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);

                        if (Usuario.TienePermisos(new string[] { "controlTotal" }, Perfil.IdPerfil, ConexionBaseDatos) != "")
                        {
                            if (Usuario.PermisoPerfilSucursal(Pagina.Pagina, SucursalAsignada.IdPerfil, ConexionBaseDatos) == true)
                            {
                                HttpContext.Current.Response.Redirect(PaginaInicio.Pagina);
                            }
                        }
                    }
                    else
                    {
                        CSucursalAsignada           SucursalAsignada           = new CSucursalAsignada();
                        Dictionary <string, object> ParametrosSucursalAsignada = new Dictionary <string, object>();
                        ParametrosSucursalAsignada.Add("IdUsuario", Usuario.IdUsuario);
                        ParametrosSucursalAsignada.Add("IdSucursal", Usuario.IdSucursalActual);
                        SucursalAsignada.LlenaObjetoFiltros(ParametrosSucursalAsignada, ConexionBaseDatos);

                        CPerfil Perfil = new CPerfil();
                        Perfil.LlenaObjeto(SucursalAsignada.IdPerfil, ConexionBaseDatos);

                        CPagina PaginaInicio = new CPagina();
                        PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);
                        if (Usuario.TienePermisos(new string[] { "controlTotal" }, Perfil.IdPerfil, ConexionBaseDatos) != "")
                        {
                            if (Usuario.PermisoPerfilSucursal(Pagina.Pagina, SucursalAsignada.IdPerfil, ConexionBaseDatos) == true)
                            {
                                HttpContext.Current.Response.Redirect(PaginaInicio.Pagina);
                            }
                        }
                    }
                }
                //--CON PERFIL DIRECTO Y PERFIL ASIGNADO A SUCURSAL.
                else
                {
                    if (Pagina.ValidarSucursal == true)
                    {
                        CSucursalAsignada           SucursalAsignada           = new CSucursalAsignada();
                        Dictionary <string, object> ParametrosSucursalAsignada = new Dictionary <string, object>();
                        ParametrosSucursalAsignada.Add("IdUsuario", Usuario.IdUsuario);
                        ParametrosSucursalAsignada.Add("IdSucursal", Usuario.IdSucursalActual);
                        SucursalAsignada.LlenaObjetoFiltros(ParametrosSucursalAsignada, ConexionBaseDatos);

                        CPerfil Perfil = new CPerfil();
                        Perfil.LlenaObjeto(SucursalAsignada.IdPerfil, ConexionBaseDatos);

                        CPagina PaginaInicio = new CPagina();
                        PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);
                        if (Usuario.TieneSucursalAsignada(ConexionBaseDatos) == true && Usuario.TienePermisos(new string[] { "controlTotal" }, Perfil.IdPerfil, ConexionBaseDatos) != "" && Usuario.PermisoPerfilSucursal(Pagina.Pagina, SucursalAsignada.IdPerfil, ConexionBaseDatos) == true)
                        {
                            if (PaginaInicio.ValidarSucursal == true || PaginaInicio.Pagina == pagina)
                            {
                                Perfil.LlenaObjeto(Usuario.IdPerfil, ConexionBaseDatos);
                                PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);

                                if (Usuario.TienePermisos(new string[] { "controlTotal" }, ConexionBaseDatos) == "" || Usuario.Permiso(pagina, ConexionBaseDatos))
                                {
                                    if (PaginaInicio.ValidarSucursal == true || PaginaInicio.Pagina == pagina)
                                    {
                                        HttpContext.Current.Response.Redirect("../InicioSesion.aspx");
                                    }
                                    else
                                    {
                                        HttpContext.Current.Response.Redirect(PaginaInicio.Pagina);
                                    }
                                }
                            }
                        }
                        else if (Usuario.TieneSucursalAsignada(ConexionBaseDatos) == false)
                        {
                            Perfil.LlenaObjeto(Usuario.IdPerfil, ConexionBaseDatos);
                            PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);

                            if (Usuario.TienePermisos(new string[] { "controlTotal" }, ConexionBaseDatos) == "" || Usuario.Permiso(pagina, ConexionBaseDatos))
                            {
                                if (PaginaInicio.ValidarSucursal == true || PaginaInicio.Pagina == pagina)
                                {
                                    HttpContext.Current.Response.Redirect("../InicioSesion.aspx");
                                }
                                else
                                {
                                    HttpContext.Current.Response.Redirect(PaginaInicio.Pagina);
                                }
                            }
                        }
                    }
                    else
                    {
                        CPerfil Perfil = new CPerfil();
                        Perfil.LlenaObjeto(Usuario.IdPerfil, ConexionBaseDatos);

                        CPagina PaginaInicio = new CPagina();
                        PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);

                        if (Usuario.TienePermisos(new string[] { "controlTotal" }, ConexionBaseDatos) != "")
                        {
                            if (Usuario.Permiso(pagina, ConexionBaseDatos) == false)
                            {
                                if (PaginaInicio.ValidarSucursal == true || PaginaInicio.Pagina == pagina)
                                {
                                    HttpContext.Current.Response.Redirect("../InicioSesion.aspx");
                                }
                                else
                                {
                                    HttpContext.Current.Response.Redirect(PaginaInicio.Pagina);
                                }
                            }
                        }
                    }
                }

                //Cerrar Conexion
                ConexionBaseDatos.CerrarBaseDatos();
            }
        }
    }
Пример #20
0
    public static string ObtenerMenuPredeterminado(string pPaginaActual)
    {
        JObject JRespuesta = new JObject();

        if (pPaginaActual != "InicioSesion.aspx")
        {
            CConexion ConexionBaseDatos = new CConexion();
            string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();
            if (respuesta == "Conexion Establecida")
            {
                JObject Modelo       = new JObject();
                string  carpeta      = "";
                CPagina PaginaActual = new CPagina();
                PaginaActual.FiltrarPagina(pPaginaActual, ConexionBaseDatos);
                CUsuario Usuario = new CUsuario();
                Usuario.LlenaObjeto(Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]), ConexionBaseDatos);
                CPerfil Perfil = new CPerfil();
                Perfil.IdPerfil = Usuario.IdPerfil;
                Perfil.LlenaObjeto(Usuario.IdPerfil, ConexionBaseDatos);
                CPagina PaginaInicio = new CPagina();
                PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);
                CMenu MenuInicio = new CMenu();
                MenuInicio.LlenaObjeto(PaginaInicio.IdMenu, ConexionBaseDatos);
                CMenu MenuPrincipal = new CMenu();

                if (MenuInicio.IdMenu != PaginaActual.IdMenu)
                {
                    carpeta = "../" + MenuInicio.Menu + "/";
                }
                Modelo.Add(new JProperty("PaginaInicio", PaginaInicio.Pagina));
                JArray JMenu = new JArray();
                foreach (CMenu Menu in MenuPrincipal.ObtenerMenuPrincipal(Usuario.IdPerfil, "Seguridad", ConexionBaseDatos))
                {
                    CPagina Pagina         = new CPagina();
                    JObject JMenuPrincipal = new JObject();
                    JMenuPrincipal.Add("MenuPrincipal", Menu.Menu);
                    JArray JMenusSecundarios  = new JArray();
                    int    noMenusSecundarios = 0;
                    foreach (CPagina MenuSecundario in Pagina.ObtenerMenuSecundario(Menu.IdMenu, Usuario.IdPerfil, "Seguridad", ConexionBaseDatos))
                    {
                        noMenusSecundarios = noMenusSecundarios + 1;
                        JObject JMenuSecundario = new JObject();
                        JMenuSecundario.Add(new JProperty("Pagina", MenuSecundario.Pagina));
                        JMenuSecundario.Add(new JProperty("MenuSecundario", MenuSecundario.NombreMenu));
                        JMenusSecundarios.Add(JMenuSecundario);
                    }
                    JMenuPrincipal.Add("NoMenusSecundarios", noMenusSecundarios);
                    JMenuPrincipal.Add("MenusSecundarios", JMenusSecundarios);
                    JMenu.Add(JMenuPrincipal);
                }
                Modelo.Add("Menu", JMenu);
                JRespuesta.Add(new JProperty("Error", 0));
                JRespuesta.Add(new JProperty("Modelo", Modelo));
                ConexionBaseDatos.CerrarBaseDatosSqlServer();
            }
            else
            {
                JRespuesta.Add(new JProperty("Error", 1));
                JRespuesta.Add(new JProperty("Descripcion", "Esto fue un error"));
            }
        }
        else
        {
            JRespuesta.Add(new JProperty("Error", 1));
            JRespuesta.Add(new JProperty("Descripcion", "No hay menu porque se encuentra en el login."));
        }
        return(JRespuesta.ToString());
    }
Пример #21
0
    public static string IniciarSesion(string pUsuario, string pContrasena)
    {
        string validacion = ValidaUsuario(pUsuario, pContrasena);

        if (validacion != "")
        {
            return("1|" + validacion);
        }
        else
        {
            //Abrir Conexion
            CConexion ConexionBaseDatos = new CConexion();
            string    respuesta         = ConexionBaseDatos.ConectarBaseDatosSqlServer();

            //¿La conexion se establecio?
            if (respuesta == "Conexion Establecida")
            {
                CUsuario Usuario = new CUsuario();
                Usuario.IniciarSesion(pUsuario, pContrasena, ConexionBaseDatos);
                if (Usuario.Usuario == "" || Usuario.Usuario == null || Usuario.Baja == true)
                {
                    respuesta = "1|El usuario o contraseña son incorrectos, intentalo de nuevo.";
                }
                else
                {
                    HttpContext.Current.Session["IdUsuario"]  = Usuario.IdUsuario;
                    HttpContext.Current.Session["IdSucursal"] = Usuario.IdSucursalPredeterminada;
                    HttpCookie sesion = new HttpCookie("IdUsuario");
                    sesion.Value = Usuario.IdUsuario.ToString();
                    CSucursal Sucursal = new CSucursal();
                    Sucursal.LlenaObjeto(Usuario.IdSucursalPredeterminada, ConexionBaseDatos);
                    HttpContext.Current.Session["IdEmpresa"] = Sucursal.IdEmpresa;
                    if (Usuario.IdPerfil != 0 && (Usuario.TienePermisos(new string[] { "controlTotal" }, ConexionBaseDatos) == "" || Usuario.TienePermisos(new string[] { "perfilConfigurador" }, ConexionBaseDatos) == ""))
                    {
                        Usuario.LlenaObjeto(Usuario.IdUsuario, ConexionBaseDatos);
                        Usuario.IdSucursalActual = Usuario.IdSucursalPredeterminada;
                        Usuario.Editar(ConexionBaseDatos);
                        CPerfil Perfil = new CPerfil();
                        Perfil.IdPerfil = Usuario.IdPerfil;
                        Perfil.LlenaObjeto(Usuario.IdPerfil, ConexionBaseDatos);
                        CPagina PaginaInicio = new CPagina();
                        PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);
                        CMenu Menu = new CMenu();
                        Menu.LlenaObjeto(PaginaInicio.IdMenu, ConexionBaseDatos);
                        respuesta = "0|Paginas/" + PaginaInicio.Pagina;
                    }
                    else if (Usuario.TieneSucursalAsignada(ConexionBaseDatos) == true)
                    {
                        Usuario.LlenaObjeto(Usuario.IdUsuario, ConexionBaseDatos);
                        Usuario.IdSucursalActual = Usuario.IdSucursalPredeterminada;
                        Usuario.Editar(ConexionBaseDatos);

                        CSucursalAsignada           SucursalAsignada           = new CSucursalAsignada();
                        Dictionary <string, object> ParametrosSucursalAsignada = new Dictionary <string, object>();
                        ParametrosSucursalAsignada.Add("IdUsuario", Usuario.IdUsuario);
                        ParametrosSucursalAsignada.Add("IdSucursal", Usuario.IdSucursalActual);
                        SucursalAsignada.LlenaObjetoFiltros(ParametrosSucursalAsignada, ConexionBaseDatos);

                        CPerfil Perfil = new CPerfil();
                        Perfil.LlenaObjeto(SucursalAsignada.IdPerfil, ConexionBaseDatos);
                        CPagina PaginaInicio = new CPagina();
                        PaginaInicio.LlenaObjeto(Perfil.IdPagina, ConexionBaseDatos);
                        CMenu Menu = new CMenu();
                        Menu.LlenaObjeto(PaginaInicio.IdMenu, ConexionBaseDatos);
                        respuesta = "0|Paginas/" + PaginaInicio.Pagina;
                    }
                    else
                    {
                        HttpContext.Current.Session["IdUsuario"] = 0;
                        sesion.Value = "0";
                        respuesta    = "1|No tienes ninguna sucursal asignada, favor de avisar al administrador.";
                    }
                    HttpContext.Current.Response.SetCookie(sesion);


                    CHistorialGenerico HistorialGenerico = new CHistorialGenerico();
                    HistorialGenerico.IdGenerico = Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]);
                    HistorialGenerico.IdUsuario  = Convert.ToInt32(HttpContext.Current.Session["IdUsuario"]);
                    HistorialGenerico.Fecha      = Convert.ToDateTime(DateTime.Now);
                    HistorialGenerico.Comentario = "El usuario " + Usuario.Nombre + " " + Usuario.ApellidoPaterno + " " + Usuario.ApellidoMaterno + " ingreso al sistema";
                    HistorialGenerico.AgregarHistorialGenerico("Usuario", ConexionBaseDatos);
                }
            }
            return(respuesta);
        }
    }