namespace Admin.NET.Core.Service;
///
/// 系统用户机构服务
///
public class SysUserOrgService : ITransient
{
private readonly SqlSugarRepository _sysUserOrgRep;
public SysUserOrgService(SqlSugarRepository sysUserOrgRep)
{
_sysUserOrgRep = sysUserOrgRep;
}
///
/// 授权用户所属机构
///
///
///
[SqlSugarUnitOfWork]
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);
}
}