Пример #1
0
        new public void Dispose()
        {
            if (proxy != null)
            {
                if (proxy.State != System.ServiceModel.CommunicationState.Closed)
                {
                    proxy.Close();
                }
            }

            proxyRole = new SoftvService.RoleClient();
            if (proxyRole != null)
            {
                if (proxyRole.State != System.ServiceModel.CommunicationState.Closed)
                {
                    proxyRole.Close();
                }
            }

            proxyModule = new SoftvService.ModuleClient();
            if (proxyModule != null)
            {
                if (proxyModule.State != System.ServiceModel.CommunicationState.Closed)
                {
                    proxyModule.Close();
                }
            }
        }
Пример #2
0
        public PermisoController()
        {
            proxy = new SoftvService.PermisoClient();

            proxyRole = new SoftvService.RoleClient();

            proxyModule = new SoftvService.ModuleClient();
        }
Пример #3
0
 public BaseController()
 {
     RemoteIp = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
     if (string.IsNullOrEmpty(RemoteIp))
     {
         RemoteIp = System.Web.HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
     }
     else
     {
         RemoteIp = "Undefined";
     }
     if (System.Web.HttpContext.Current.Session["username"] != null)
     {
         LoggedUserName = int.Parse(System.Web.HttpContext.Current.Session["idusuario"].ToString());
     }
     else
     {
         LoggedUserName = 0;
     }
     proxy        = new SoftvService.ModuleClient();
     proxyPermiso = new SoftvService.PermisoClient();
     proxyUsuario = new SoftvService.UsuarioClient();
     proxyRol     = new SoftvService.RoleClient();
 }
Пример #4
0
        protected override void ExecuteCore()
        {
            // Primero se valida que el usuario este autenticado por medio de las variables de session
            ValidateCookiesUser();
            Session["POptAdd"]    = true;
            Session["POptUpdate"] = true;
            Session["POptDelete"] = true;
            List <ModuleEntity> lstModule = null;

            if (HttpContext != null && HttpContext.User.Identity.IsAuthenticated)
            {
            }
            // si el usuario tiene esta autenticado
            if (this.Session == null || this.Session["Access"] != null)
            {
                UsuarioEntity        um              = new UsuarioEntity();
                List <PermisoEntity> permiso         = new List <PermisoEntity>();
                List <ModuleEntity>  lstModuleFilter = new List <ModuleEntity>();
                um = (UsuarioEntity)Session["Usuario"];
                if (um != null)
                {
                    if (proxyUsuario.GetUsuario(um.IdUsuario).Estado == true && proxyRol.GetRole(um.IdRol).Estado == true)
                    {
                        // una vez validado que el usuario este autenticado y su estado sea activo lista los modulos a los que tiene permiso
                        List <PermisoEntity> lstPermiso =
                            proxyPermiso.GetXmlPermiso(Globals.SerializeTool.Serialize <PermisoEntity>(new PermisoEntity()
                        {
                            IdRol = um.IdRol
                        })).ToList();

                        permiso         = proxyPermiso.GetPermisoList().Where(o => o.IdRol == um.IdRol).ToList();
                        lstModuleFilter = (from c in BuildMenu()
                                           where (from o in lstPermiso
                                                  select o.IdModule).Contains(c.IdModule)
                                           select c).ToList();

                        lstPermiso.ForEach(XPermiso => lstModuleFilter.Where(x => x.IdModule.HasValue).Where(x => x.IdModule == XPermiso.IdModule).ToList().ForEach(y => y.Permiso = XPermiso));


                        lstModule = (from c in lstModuleFilter
                                     where c.Permiso.OptSelect == true
                                     select c).ToList();

                        //lstPermiso.ForEach(Xpermiso => lstMoldeFilter.Where(x => x.IdModule.HasValue).Where(x => x.IdModule == Xpermiso.IdModule).ToList().ForEach(y => y.Permiso = Xpermiso));
                        lstPermiso.ForEach(Xpermiso => lstPermiso.Where(z => z.OptAdd == true || z.OptDelete == true || z.OptSelect == true || z.OptUpdate == true).ToList());
                    }
                    else
                    {
                        Session.RemoveAll();
                    }
                }


                proxy = new SoftvService.ModuleClient();
                List <ModuleEntity> lm = lstModule;
                ViewBag.Permisos = permiso;
                ViewBag.Menu2    = lm;
                TipoCambioPass();
            }
            if (this.Session == null || this.Session["Access"] == null)
            {
                Session["Access"] = "NG";
                // RedirectToRoute("Home/Access");
            }
            int culture = 0;

            if (this.Session == null || this.Session["CurrentCulture"] == null)
            {
                int.TryParse(System.Configuration.ConfigurationManager.AppSettings["Culture"], out culture);
                this.Session["CurrentCulture"] = culture;
            }

            else
            {
                culture = (int)this.Session["CurrentCulture"];
            }
            //
            //SessionManager.CurrentCulture = culture;
            //
            // Invokes the action in the current controller context.
            //


            base.ExecuteCore();
        }
Пример #5
0
 public ModuleController()
 {
     proxy = new SoftvService.ModuleClient();
 }