public IEnumerable <ActionPermissionTreeNode> GetTreeNodes(PermissionTreeQuery query) { if (!query.UserId.HasValue && !query.GroupId.HasValue) { return(Enumerable.Empty <ActionPermissionTreeNode>()); } if (query.EntityTypeId.HasValue) { return(ActionPermissionTreeRepository.GetActionTreeNodes( query.EntityTypeId.Value, query.UserId, query.GroupId ).OrderBy(n => n.Text)); } return(ActionPermissionTreeRepository.GetEntityTypeTreeNodes( query.UserId, query.GroupId ).OrderBy(n => n.Text)); }
public ActionPermissionTreeNode GetTreeNode(PermissionTreeQuery query) { if (!query.UserId.HasValue && !query.GroupId.HasValue) { return(null); } ActionPermissionTreeNode result = null; if (query.EntityTypeId.HasValue && !query.ActionId.HasValue) { result = ActionPermissionTreeRepository.GetEntityTypeTreeNodes(query.UserId, query.GroupId, query.EntityTypeId).FirstOrDefault(); if (result != null) { result.Children = ActionPermissionTreeRepository.GetActionTreeNodes(query.EntityTypeId.Value, query.UserId, query.GroupId); } } else if (query.EntityTypeId.HasValue && query.ActionId.HasValue) { result = ActionPermissionTreeRepository.GetActionTreeNodes(query.EntityTypeId.Value, query.UserId, query.GroupId, query.ActionId).FirstOrDefault(); } return(result); }
public ActionResult GetTreeNode([FromBody] PermissionTreeQuery model) { return(Json(_service.GetTreeNode(model))); }