using CZFW.Framework.Model;
using CZFW.Framework.Model.Entity;
using CZFW.Framework.Model.ViewModel;
using System.Collections.Generic;
namespace CZFW.Framework.Interface
{
public interface IPrivilegeGroupApi
{
///
/// 获取当前组下的直接子节点权限
///
///
///
IList GetPrivilegeInGroup(string mark);
///
/// 获取当前组下所有子节点以及子组下的所有节点
///
///
///
IList GetAllPrivilegeInGroup(string mark);
///
/// 通过标识获取Model
///
///
///
PrivilegeGroupModel GetModelByMark(string mark);
///
/// 获取所有子节点列表,以列表形式返回结果,不是树状结构
///
///
///
///
IList GetDescendantsByMark(string mark, bool includeSelf = false);
///
/// 通过Id获取Model
///
///
///
PrivilegeGroupModel GetModelById(int id);
///
/// 通过ID获取子节点,包含子节点的子节点列表, 以列表的形式返回
///
///
///
///
IList GetDescendantsById(int id, bool includeSelf = false);
///
/// 获取所有子节点, 不包含子节点的子节点
///
///
///
IList GetChildrenById(int id);
///
/// 获取所有子节点, 不包含子节点的子节点
///
///
///
IList GetChildrenByMark(string mark);
///
/// 通过Id获取所有子节点, 以树状结构返回
///
///
///
///
IList GetTreeById(int id, bool includeSelf = true);
///
/// 通过标识获取子节点, 以树状结构返回
///
///
///
///
IList GetTreeByMark(string mark, bool includeSelf = true);
///
/// 通过Id获取标识
///
///
///
string GetMarkById(int id);
///
/// 通过标识获取ID
///
///
///
int GetIdByMark(string mark);
ResultModel Add(PrivilegeGroupEntity entity);
}
}