//----------SysDept开始---------- using System.Threading.Tasks; using System.Collections.Generic; using SqlSugar; using System.Linq; using Admin.Core.IRepository.ISys; using Admin.Core.Model.Sys; namespace Admin.Core.Repository.Sys { /// <summary> /// 部门表Repository /// </summary> public class SysDeptRepository : BaseRepository<SysDept>, ISysDeptRepository { public SysDeptRepository(IUnitOfWork unitOfWork) : base(unitOfWork) { } /// <summary> /// 根据ID查询所有子部门(正常状态) /// </summary> /// <param name="deptId"> 部门ID </param> /// <returns> 子部ID及当前选中节点部门ID的List </returns> public async Task<List<int>> SelectNormalChildrenIDsById(int deptId) { var children = await SelectChildrenDeptById(deptId); var childrenIds = children.Select(x => x.DeptID).ToList(); childrenIds.Add(deptId); return childrenIds; } /// <summary> /// 获取所有子节点 /// </summary> /// <param name="deptId"></param> /// <returns></returns> public async Task<List<SysDept>> SelectChildrenDeptById(int deptId) { var sql = @"EXEC [dbo].[Pro_Dept_ChildrenByID] @DeptID"; SugarParameter[] parameters = new SugarParameter[] { new SugarParameter("@DeptID", deptId) }; return await QuerySqlAsync(sql, parameters); } } } //----------SysDept结束----------