SysUserExtOrgService.cs 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. namespace Admin.NET.Core.Service;
  2. /// <summary>
  3. /// 系统用户扩展机构服务
  4. /// </summary>
  5. public class SysUserExtOrgService : ITransient
  6. {
  7. private readonly SqlSugarRepository<SysUserExtOrg> _sysUserExtOrgRep;
  8. public SysUserExtOrgService(SqlSugarRepository<SysUserExtOrg> sysUserExtOrgRep)
  9. {
  10. _sysUserExtOrgRep = sysUserExtOrgRep;
  11. }
  12. /// <summary>
  13. /// 获取用户扩展机构集合
  14. /// </summary>
  15. /// <param name="userId"></param>
  16. /// <returns></returns>
  17. public async Task<List<SysUserExtOrg>> GetUserExtOrgList(long userId)
  18. {
  19. return await _sysUserExtOrgRep.GetListAsync(u => u.UserId == userId);
  20. }
  21. /// <summary>
  22. /// 更新用户扩展机构
  23. /// </summary>
  24. /// <param name="userId"></param>
  25. /// <param name="extOrgList"></param>
  26. /// <returns></returns>
  27. [UnitOfWork]
  28. public async Task UpdateUserExtOrg(long userId, List<SysUserExtOrg> extOrgList)
  29. {
  30. await _sysUserExtOrgRep.DeleteAsync(u => u.UserId == userId);
  31. if (extOrgList == null || extOrgList.Count < 1) return;
  32. extOrgList.ForEach(u =>
  33. {
  34. u.UserId = userId;
  35. });
  36. await _sysUserExtOrgRep.InsertRangeAsync(extOrgList);
  37. }
  38. /// <summary>
  39. /// 根据机构Id集合删除扩展机构
  40. /// </summary>
  41. /// <param name="orgIdList"></param>
  42. /// <returns></returns>
  43. public async Task DeleteUserExtOrgByOrgIdList(List<long> orgIdList)
  44. {
  45. await _sysUserExtOrgRep.DeleteAsync(u => orgIdList.Contains(u.OrgId));
  46. }
  47. /// <summary>
  48. /// 根据用户Id删除扩展机构
  49. /// </summary>
  50. /// <param name="userId"></param>
  51. /// <returns></returns>
  52. public async Task DeleteUserExtOrgByUserId(long userId)
  53. {
  54. await _sysUserExtOrgRep.DeleteAsync(u => u.UserId == userId);
  55. }
  56. /// <summary>
  57. /// 根据机构Id判断是否有用户
  58. /// </summary>
  59. /// <param name="orgId"></param>
  60. /// <returns></returns>
  61. public async Task<bool> HasUserOrg(long orgId)
  62. {
  63. return await _sysUserExtOrgRep.IsAnyAsync(u => u.OrgId == orgId);
  64. }
  65. /// <summary>
  66. /// 根据职位Id判断是否有用户
  67. /// </summary>
  68. /// <param name="posId"></param>
  69. /// <returns></returns>
  70. public async Task<bool> HasUserPos(long posId)
  71. {
  72. return await _sysUserExtOrgRep.IsAnyAsync(u => u.PosId == posId);
  73. }
  74. }