Esempio n. 1
0
 internal ActionResult RelationEditInternal(int id, PermissionRelation model = null)
 {
     if (model == null)
     {
         model = this.PermissionServer.GetPermissionRelation(id, true);
     }
     return(this.View(model));
 }
Esempio n. 2
0
        public ActionResult RelationEdit(int id, PermissionRelation model)
        {
            var model0 = this.PermissionServer.GetPermissionRelation(id, true);

            model.ID = id;
            model.PermissionResource = model0.PermissionResource;

            var result = this.PermissionAllow(model0.PermissionNo, "Admin.PermissionRelationEditAll", false) ? this.PermissionServer.UpdatePermissionRelation(model) : AOPResult.Failed("Access Denied");

            this.ViewBag.Result = result;
            return(this.RelationEditInternal(id, model));
        }
Esempio n. 3
0
 internal ActionResult RelationCreateInternal(PermissionRelation model = null)
 {
     this.ViewBag.PermissionResources = this.PermissionServer.GetPermissionResources();
     this.ViewBag.Roles = this.PermissionServer.GetPermissionRoles();
     if (model == null)
     {
         model = new PermissionRelation {
             Enabled = true, Granted = true
         };
     }
     return(this.View(model));
 }
Esempio n. 4
0
        public ActionResult RelationCreate(PermissionRelation model)
        {
            var allowed    = true;
            var permission = PermissionClientService.GetUserPermissions(model.PermissionNo).FirstOrDefault();

            if (permission == null || !permission.Grantable)              //当前用户没有此权限或不可转授,需要进一步判断
            {
                allowed = PermissionClientService.Authorize("Admin.PermissionRelationCreateAll", includeStack: false);
            }
            if (allowed)
            {
                //判断用户是否可对用户授权或对角色授权
                allowed = PermissionClientService.Authorize(model.TargetObject == 1 ? "Admin.PermissionRelationCreateForUser" : "Admin.PermissionRelationCreateForRole", includeStack: false);
            }

            this.ViewBag.Result = allowed ? this.PermissionServer.AddPermissionRelation(model) : AOPResult.Failed("Access Denied");
            return(this.RelationCreateInternal(model));
        }
        public PermissionRelationRepositoryImpl() : base("permission_relations")
        {
            PermissionRelation permissionRelations = new PermissionRelation();

            base.Fields = "(" + base.JoinFieldStrings(permissionRelations) + ")";
        }
Esempio n. 6
0
 public void UpdatePermissionRelation(PermissionRelation relation)
 {
     DataService.Execute("UpdatePermissionRelation", relation);
 }
Esempio n. 7
0
 public void AddPermissionRelation(PermissionRelation relation)
 {
     DataService.Execute("AddPermissionRelation", relation);
 }