public JsonResult GetRol(Guid id) { Castellano.Membresia.Rol rol = Castellano.Membresia.Rol.Get(id); return(this.Json(new Castellano.Web.UI.Areas.Administracion.Models.Rol { Id = rol.Id, Nombre = rol.Nombre, Clave = rol.Clave }, JsonRequestBehavior.AllowGet)); }
public ActionResult GetPermissions(Guid rolId) { Castellano.Membresia.Rol rol = Castellano.Membresia.Rol.Get(rolId); return(this.View(new Castellano.Web.UI.Areas.Administracion.Models.RolAccion { RolId = rol.Id, Rol = rol, AplicacionId = default(Guid), MenuId = Castellano.Membresia.Menu.MenuPrincipal.Id, MenuItemId = default(Guid), AccionCodigo = default(int) })); }
public static bool Exists(Castellano.Empresa empresa, Castellano.Membresia.Rol rol) { List <Castellano.Empresa> empresas = Query.GetEmpresas(rol).ToList <Castellano.Empresa>(); if (empresas.Count == 0) { return(true); } else if (empresas.Count == 1) { return(empresas[0].Equals(empresa)); } else { return(false); } }
public JsonResult DeleteRol(Guid id) { Castellano.Membresia.Rol rol = Castellano.Membresia.Rol.Get(id); using (Castellano.Membresia.Context context = new Castellano.Membresia.Context()) { new Castellano.Membresia.Rol { Id = rol.Id, AmbitoCodigo = rol.AmbitoCodigo, Nombre = rol.Nombre, Clave = rol.Clave, }.Delete(context); context.SubmitChanges(); } return(this.Json("200 ok", JsonRequestBehavior.AllowGet)); }
public JsonResult GetRolAccion(Guid rolId, Guid aplicacionId) { Castellano.Membresia.Rol rol = Castellano.Membresia.Rol.Get(rolId); Castellano.Membresia.Aplicacion aplicacion = Castellano.Membresia.Aplicacion.Get(aplicacionId); List <Castellano.Membresia.Accion> acciones = Castellano.Membresia.Accion.GetAll(); Castellano.Web.UI.Areas.Administracion.Models.RolAccion.RolAcciones rolAcciones = new Castellano.Web.UI.Areas.Administracion.Models.RolAccion.RolAcciones(); foreach (Castellano.Membresia.MenuItem menuItem in Castellano.Membresia.MenuItem.GetAll(Castellano.Membresia.Menu.MenuPrincipal, aplicacion)) { Castellano.Web.UI.Areas.Administracion.Models.RolAccion model = new Castellano.Web.UI.Areas.Administracion.Models.RolAccion { RolId = rol.Id, AplicacionId = aplicacion.Id, MenuId = menuItem.MenuId, MenuItemId = menuItem.Id, MenuItem = menuItem.Nombre }; foreach (Castellano.Membresia.Accion accion in acciones) { model.Accion += string.Format("<label class='checkbox-inline'><input type='checkbox' checked='' name='Accion' class='icheck'>{0}</label>", accion.Nombre); model.Acciones.Add(new SelectListItem { Text = accion.Nombre, Value = accion.Codigo.ToString() }); } rolAcciones.data.Add(model); } return(this.Json(rolAcciones, JsonRequestBehavior.AllowGet)); }
public ActionResult Roles(Castellano.Web.UI.Areas.Administracion.Models.Rol model) { if (!this.ModelState.IsValid) { return(this.View(model)); } Castellano.Membresia.Rol rol = Castellano.Membresia.Rol.Get(model.Id); using (Castellano.Membresia.Context context = new Castellano.Membresia.Context()) { new Castellano.Membresia.Rol { Id = model.Id, AmbitoCodigo = model.AmbitoCodigo, Nombre = model.Nombre.Trim(), Clave = string.IsNullOrEmpty(model.Clave) ? default(string) : model.Clave.Trim() }.Save(context); context.SubmitChanges(); } return(this.Json("200 ok", JsonRequestBehavior.DenyGet)); }
internal static IQueryable <Castellano.CentroCosto> GetCentroCostos(Persona persona, Castellano.Empresa empresa, Aplicacion aplicacion) { Castellano.Membresia.Rol apoderado = Castellano.Membresia.Rol.Apoderado; if (aplicacion.Clave == "apoderados") { return (from centroCosto in GetCentroCostos() join rpc in GetRolPersonaCentroCostos(persona) on centroCosto equals rpc.CentroCosto where rpc.Rol == apoderado && centroCosto.Empresa == empresa && GetRolAcciones(aplicacion).Where <RolAccion>(x => x.Rol.Equals(apoderado)).Any <RolAccion>() && GetCentroCostoAplicaciones(empresa, aplicacion).Select <CentroCostoAplicacion, Castellano.CentroCosto>(x => x.CentroCosto).Contains <Castellano.CentroCosto>(centroCosto) && ( from item in (from rolPersona in GetRolPersonas(persona) select rolPersona.Rol) .Union <Rol>(from rolPersonaEmpresa in GetRolPersonaEmpresas(persona) where (rolPersonaEmpresa.Empresa == centroCosto.Empresa) select rolPersonaEmpresa.Rol) .Union <Rol>(from rolPersonaCentroCosto in GetRolPersonaCentroCostos(persona) where (rolPersonaCentroCosto.CentroCosto == centroCosto) select rolPersonaCentroCosto.Rol) select item ).Any <Rol>() select centroCosto); } else { if (Castellano.Membresia.RolPersonaCentroCosto.Exists(apoderado, persona)) { System.Collections.Generic.List <Castellano.CentroCosto> centrosCosto_apoderado = Castellano.Membresia.RolPersonaCentroCosto.GetAll(persona, empresa).Where <Castellano.Membresia.RolPersonaCentroCosto>(x => x.Rol.Clave == "apoderado" || x.Rol.Clave == "apoderado_academico" || x.Rol.Clave == "apoderado_delegado" || x.Rol.Clave == "apoderado_financiero").Select <Castellano.Membresia.RolPersonaCentroCosto, Castellano.CentroCosto>(x => x.CentroCosto).ToList <Castellano.CentroCosto>(); System.Collections.Generic.List <Castellano.CentroCosto> centrosCosto_acceso = Castellano.Membresia.RolPersonaCentroCosto.GetAll(persona, empresa).Where <Castellano.Membresia.RolPersonaCentroCosto>(x => x.Rol.Clave != "apoderado" && x.Rol.Clave != "apoderado_academico" && x.Rol.Clave != "apoderado_delegado" && x.Rol.Clave != "apoderado_financiero").Select <Castellano.Membresia.RolPersonaCentroCosto, Castellano.CentroCosto>(x => x.CentroCosto).ToList <Castellano.CentroCosto>(); if ((from cc_apoderado in centrosCosto_apoderado join cc_acceso in centrosCosto_acceso on cc_apoderado equals cc_acceso select cc_apoderado).Any()) { return (from centroCosto in GetCentroCostos() where centroCosto.Empresa == empresa && GetRolAcciones(aplicacion).Any <RolAccion>() && GetCentroCostoAplicaciones(empresa, aplicacion).Select <CentroCostoAplicacion, Castellano.CentroCosto>(x => x.CentroCosto).Contains <Castellano.CentroCosto>(centroCosto) && ( from rol in (from rolPersona in GetRolPersonas(persona) select rolPersona.Rol) .Union <Rol>(from rolPersonaEmpresa in GetRolPersonaEmpresas(persona) where (rolPersonaEmpresa.Empresa == centroCosto.Empresa) select rolPersonaEmpresa.Rol) .Union <Rol>(from rolPersonaCentroCosto in GetRolPersonaCentroCostos(persona) where (rolPersonaCentroCosto.CentroCosto == centroCosto) select rolPersonaCentroCosto.Rol) select rol ).Any <Rol>() select centroCosto); } else { return (from centroCosto in GetCentroCostos() join rpc in GetRolPersonaCentroCostos(persona) on centroCosto equals rpc.CentroCosto where centroCosto.Empresa == empresa && !GetRolPersonaCentroCostos(persona, empresa, apoderado).Select <Castellano.Membresia.RolPersonaCentroCosto, Castellano.CentroCosto>(x => x.CentroCosto).Contains <Castellano.CentroCosto>(centroCosto) && GetRolAcciones(aplicacion).Any <RolAccion>() && GetCentroCostoAplicaciones(empresa, aplicacion).Select <CentroCostoAplicacion, Castellano.CentroCosto>(x => x.CentroCosto).Contains <Castellano.CentroCosto>(centroCosto) && ( from rol in (from rolPersona in GetRolPersonas(persona) select rolPersona.Rol) .Union <Rol>(from rolPersonaEmpresa in GetRolPersonaEmpresas(persona) where (rolPersonaEmpresa.Empresa == centroCosto.Empresa) select rolPersonaEmpresa.Rol) .Union <Rol>(from rolPersonaCentroCosto in GetRolPersonaCentroCostos(persona) where (rolPersonaCentroCosto.CentroCosto == centroCosto) select rolPersonaCentroCosto.Rol) select rol ).Any <Rol>() select centroCosto); } } else { return (from centroCosto in GetCentroCostos() where centroCosto.Empresa == empresa && GetRolAcciones(aplicacion).Any <RolAccion>() && GetCentroCostoAplicaciones(empresa, aplicacion).Select <CentroCostoAplicacion, Castellano.CentroCosto>(x => x.CentroCosto).Contains <Castellano.CentroCosto>(centroCosto) && ( from rol in (from rolPersona in GetRolPersonas(persona) select rolPersona.Rol) .Union <Rol>(from rolPersonaEmpresa in GetRolPersonaEmpresas(persona) where (rolPersonaEmpresa.Empresa == centroCosto.Empresa) select rolPersonaEmpresa.Rol) .Union <Rol>(from rolPersonaCentroCosto in GetRolPersonaCentroCostos(persona) where (rolPersonaCentroCosto.CentroCosto == centroCosto) select rolPersonaCentroCosto.Rol) select rol ).Any <Rol>() select centroCosto); } } }