// Copyright (c) 2022-Now 少林寺驻北固山办事处大神父王喇嘛 // // SimpleAdmin 基于 Apache License Version 2.0 协议发布,可用于商业项目,但必须遵守以下补充条款: // 1.请不要删除和修改根目录下的LICENSE文件。 // 2.请不要删除和修改SimpleAdmin源码头部的版权声明。 // 3.分发源码时候,请注明软件出处 https://gitee.com/dotnetmoyu/SimpleAdmin // 4.基于本软件的作品,只能使用 SimpleAdmin 作为后台服务,除外情况不可商用且不允许二次分发或开源。 // 5.请不得将本软件应用于危害国家安全、荣誉和利益的行为,不能以任何形式用于非法为目的的行为。 // 6.任何基于本软件而产生的一切法律纠纷和责任,均于我司无关。 namespace SimpleAdmin.System; /// /// 组织架构服务 /// public interface ISysOrgService : ITransient { #region 查询 /// /// 检查组织是否存在 /// /// 组织列表 /// 组织名称 /// 父Id /// 组织Id /// 是否存在,存在返回组织ID bool IsExistOrgByName(List sysOrgList, string orgName, long parentId, out long orgId); /// /// 组织详情 /// /// id参数 /// 组织信息 Task Detail(BaseIdInput input); /// /// 根据组织ID获取 下级 /// /// 组织ID /// 是否包含自己 /// 组织列表 /// Task> GetChildListById(long orgId, bool isContainOneself = true, List sysOrgList = null); /// /// 获取所有组织 /// /// 是否显示禁用的 /// Task> GetListAsync(bool showDisabled = true); /// /// 获取机构及下级ID列表 /// /// /// /// 组织列表 /// Task> GetOrgChildIds(long orgId, bool isContainOneself = true, List sysOrgList = null); /// /// 根据组织Id递归获取上级 /// /// 组织列表 /// 组织Id /// 是否包含自己 /// List GetOrgParents(List allOrgList, long orgId, bool includeSelf = true); /// /// 获取组织信息 /// /// 组织id /// 组织信息 Task GetSysOrgById(long id); /// /// 组织分页查询 /// /// 查询参数 /// 分页信息 Task> Page(SysOrgPageInput input); /// /// 根据ID列表获取组织列表 /// /// /// Task> GetOrgListByIdList(IdListInput input); /// /// 获取租户列表 /// /// Task> GetTenantList(); /// /// 根据组织ID获取租户ID /// /// 组织id /// 租户id /// Task GetTenantIdByOrgId(long orgId, List sysOrgList = null); #endregion 查询 #region 新增 /// /// 添加组织 /// /// 添加参数 /// 名称 /// Task Add(SysOrgAddInput input, string name = SystemConst.SYS_ORG); /// /// 复制组织 /// /// 机构复制参数 /// Task Copy(SysOrgCopyInput input); #endregion 新增 #region 编辑 /// /// 编辑组织 /// /// 编辑参数 /// 名称 /// Task Edit(SysOrgEditInput input, string name = SystemConst.SYS_ORG); #endregion 编辑 #region 删除 /// /// 删除组织 /// /// 删除参数 /// 名称 /// Task Delete(BaseIdListInput input, string name = SystemConst.SYS_ORG); #endregion 删除 #region 其他 /// /// 构建组织树形结构 /// /// 组织列表 /// 父ID /// 树型结构 List ConstructOrgTrees(List orgList, long parentId = SimpleAdminConst.ZERO); /// /// 刷新缓存 /// /// Task RefreshCache(); /// /// 获取组织树型结构 /// /// 机构ID列表 /// 组织选择器(懒加载用) /// 组织树列表 Task> Tree(List orgIds = null, SysOrgTreeInput treeInput = null); #endregion 其他 }