Пример #1
0
        private void CargarPrivilegios()
        {
            userName = HttpContext.Current.User.Identity.Name;

            if (countRedireccion > 1)
            {
                pagRedireccion = "/";
            }

            countRedireccion++;

            ingreso = false;
            var empActivas = empresaCtrl.GetActivas(userName);

            if (empActivas.Count > 0)
            {
                ingreso = true;

                string empresaActiva = empActivas.ElementAt(0).RazonSocial;
                lblmensaje.Text = empresaActiva + " (" + userName + ")";
            }
            else
            {
                if (HttpContext.Current.User.IsInRole("SA"))
                {
                    ingreso         = true;
                    lblmensaje.Text = "(" + userName + ")";
                }
                else
                {
                    string empresaActiva = empresaCtrl.EmpresaActivada(userName);

                    if (!empresaActiva.Equals(""))
                    {
                        ingreso         = true;
                        lblmensaje.Text = empresaActiva + " (" + userName + ")";
                    }
                    else
                    {
                        lblmensaje.Text = "(" + userName + ")";
                    }
                }
            }

            var privilegios = rolCtrl.GetPrivilegios2(idRol);

            if (privilegios.Count > 0)
            {
                foreach (var privilegio in privilegios)
                {
                    int codigo = privilegio.CodPrivilegio;

                    switch (codigo)
                    {
                    case PRV_CONFIGURACION:
                        if (ingreso)
                        {
                            prvConfig.Visible = true;
                        }
                        break;

                    case PRV_USUARIOS:
                        prvUsuarios.Visible = true;
                        break;

                    case PRV_ROLES:
                        prvRoles.Visible = true;
                        break;

                    case PRV_PRIVILEGIOS:
                        prvPrivilegios.Visible = true;
                        break;

                    case PRV_ADMINISTRACION:
                        if (ingreso)
                        {
                            prvAdmin.Visible = true;
                        }
                        break;

                    case PRV_EMPRESA:
                        prvEmpresa.Visible = true;
                        break;

                    case PRV_PERSONAS:
                        prvPersonas.Visible = true;
                        break;

                    case PRV_ALARMAS:
                        prvAlarmas.Visible = true;
                        break;

                    case PRV_ZONAS:
                        prvZonas.Visible = true;
                        break;

                    case PRV_TIPOS_ZONA:
                        prvTiposZona.Visible = true;
                        break;

                    case PRV_MOVILES:
                        if (ingreso)
                        {
                            prvMoviles.Visible = true;
                        }
                        break;

                    case PRV_SEGUIMIENTO:
                        prvSeguimiento.Visible = true;
                        break;

                    case PRV_AUDITORIA:
                        prvAuditoria.Visible = true;
                        break;

                    case PRV_VEHICULOS:
                        prvVehiculos.Visible = true;
                        break;

                    case PRV_GPS:
                        prvGps.Visible = true;
                        break;

                    case PRV_REPORTES:
                        if (ingreso)
                        {
                            prvReportes.Visible = true;
                        }
                        break;

                    case PRV_TEMPERATURA:
                        prvTemperatura.Visible = true;
                        break;

                    case PRV_DETENCIONES:
                        prvDetenciones.Visible = true;
                        break;

                    case PRV_VELOCIDAD_MAX:
                        prvVelocidadMax.Visible = true;
                        break;

                    case PRV_ALERTAS:
                        prvAlertas.Visible = true;
                        break;

                    case PRV_APERTURA_CIERRE:
                        prvAperturaCierre.Visible = true;
                        break;

                    case PRV_ENTRADA_SALIDA:
                        prvEntradaSalida.Visible = true;
                        break;

                    case PRV_KILOMETRAJE:
                        prvKilometraje.Visible = true;
                        break;

                    case PRV_RPTAUDITORIA:
                        prvRptAuditoria.Visible = true;
                        break;

                    case PRV_ASIGNACION_USUARIO_VEHICULO:
                        prvAsigusuavehiculo.Visible = true;
                        break;

                    case PRV_IDButton:
                        prvIDButton.Visible = true;
                        break;

                    case PRV_REncendidoApagado:
                        prvEncendidoApagado.Visible = true;
                        break;

                    case PRV_RPTCONSOLIDADO:
                        prvConsolidado.Visible = true;
                        break;
                    }
                }

                if (prvUsuarios.Visible && (prvRoles.Visible || prvPrivilegios.Visible))
                {
                    div1.Visible = true;
                }

                if (prvRoles.Visible && prvPrivilegios.Visible)
                {
                    div2.Visible = true;
                }

                if (prvEmpresa.Visible && (prvPersonas.Visible || prvAlarmas.Visible || prvZonas.Visible || prvTiposZona.Visible))
                {
                    div3.Visible = true;
                }

                if (prvPersonas.Visible && (prvAlarmas.Visible || prvZonas.Visible || prvTiposZona.Visible))
                {
                    div4.Visible = true;
                }

                if (prvAlarmas.Visible && (prvZonas.Visible || prvTiposZona.Visible))
                {
                    div5.Visible = true;
                }

                if (prvZonas.Visible && prvTiposZona.Visible)
                {
                    div6.Visible = true;
                }

                if (prvSeguimiento.Visible && (prvAuditoria.Visible || prvVehiculos.Visible || prvGps.Visible || prvAsigusuavehiculo.Visible))
                {
                    div7.Visible = true;
                }

                if (prvAuditoria.Visible && (prvVehiculos.Visible || prvGps.Visible || prvAsigusuavehiculo.Visible))
                {
                    div8.Visible = true;
                }

                if (prvVehiculos.Visible && (prvGps.Visible || prvAsigusuavehiculo.Visible))
                {
                    div9.Visible = true;
                }

                if (prvGps.Visible && prvAsigusuavehiculo.Visible)
                {
                    div17.Visible = true;
                }

                if (prvAsigusuavehiculo.Visible && prvIDButton.Visible)
                {
                    div18.Visible = true;
                }

                if (prvAlertas.Visible && (prvAperturaCierre.Visible || prvRptAuditoria.Visible || prvDetenciones.Visible || prvEntradaSalida.Visible || prvKilometraje.Visible || prvTemperatura.Visible || prvVelocidadMax.Visible))
                {
                    div10.Visible = true;
                }

                if (prvAperturaCierre.Visible && (prvRptAuditoria.Visible || prvDetenciones.Visible || prvEntradaSalida.Visible || prvKilometraje.Visible || prvTemperatura.Visible || prvVelocidadMax.Visible))
                {
                    div11.Visible = true;
                }

                if (prvRptAuditoria.Visible && (prvDetenciones.Visible || prvEntradaSalida.Visible || prvKilometraje.Visible || prvTemperatura.Visible || prvVelocidadMax.Visible))
                {
                    div12.Visible = true;
                }

                if (prvDetenciones.Visible && (prvEntradaSalida.Visible || prvKilometraje.Visible || prvTemperatura.Visible || prvVelocidadMax.Visible))
                {
                    div13.Visible = true;
                }

                if (prvEntradaSalida.Visible && (prvKilometraje.Visible || prvTemperatura.Visible || prvVelocidadMax.Visible))
                {
                    div14.Visible = true;
                }

                if (prvKilometraje.Visible && (prvTemperatura.Visible || prvVelocidadMax.Visible))
                {
                    div15.Visible = true;
                }

                if (prvTemperatura.Visible && prvVelocidadMax.Visible)
                {
                    div16.Visible = true;
                }
                if (prvEncendidoApagado.Visible)
                {
                    div19.Visible = true;
                }
                if (prvConsolidado.Visible)
                {
                    div20.Visible = true;
                }
            }
        }