namespace Admin.NET.Core.Service; /// /// 系统用户机构服务 /// public class SysUserOrgService : ITransient { private readonly SqlSugarRepository _sysUserOrgRep; public SysUserOrgService(SqlSugarRepository sysUserOrgRep) { _sysUserOrgRep = sysUserOrgRep; } /// /// 授权用户所属机构 /// /// /// [UnitOfWork] public async Task GrantUserOrg(UserOrgInput input) { await _sysUserOrgRep.DeleteAsync(u => u.UserId == input.Id); var userOrgs = input.OrgIdList.Select(u => new SysUserOrg { UserId = input.Id, OrgId = u }).ToList(); await _sysUserOrgRep.InsertRangeAsync(userOrgs); } /// /// 根据用户Id获取机构Id集合 /// /// /// public async Task> GetUserOrgIdList(long userId) { return await _sysUserOrgRep.AsQueryable() .Where(u => u.UserId == userId) .Select(u => u.OrgId).ToListAsync(); } /// /// 根据机构Id集合删除用户机构 /// /// /// public async Task DeleteUserOrgByOrgIdList(List orgIdList) { await _sysUserOrgRep.DeleteAsync(u => orgIdList.Contains(u.OrgId)); } /// /// 根据用户Id删除用户机构 /// /// /// public async Task DeleteUserOrgByUserId(long userId) { await _sysUserOrgRep.DeleteAsync(u => u.UserId == userId); } /// /// 增加用户机构 /// /// public async Task AddUserOrg(SysUserOrg userOrg) { await _sysUserOrgRep.InsertAsync(userOrg); } }