SysUserExtOrgService.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. // Admin.NET 项目的版权、商标、专利和其他相关权利均受相应法律法规的保护。使用本项目应遵守相关法律法规和许可证的要求。
  2. //
  3. // 本项目主要遵循 MIT 许可证和 Apache 许可证(版本 2.0)进行分发和使用。许可证位于源代码树根目录中的 LICENSE-MIT 和 LICENSE-APACHE 文件。
  4. //
  5. // 不得利用本项目从事危害国家安全、扰乱社会秩序、侵犯他人合法权益等法律法规禁止的活动!任何基于本项目二次开发而产生的一切法律纠纷和责任,我们不承担任何责任!
  6. namespace Admin.NET.Core.Service;
  7. /// <summary>
  8. /// 系统用户扩展机构服务
  9. /// </summary>
  10. public class SysUserExtOrgService : ITransient
  11. {
  12. private SqlSugarRepository<SysUserExtOrg> sysUserExtOrgRep = null;
  13. public SysUserExtOrgService()
  14. {
  15. }
  16. public SqlSugarRepository<SysUserExtOrg> SysUserExtOrgRep
  17. {
  18. get
  19. {
  20. sysUserExtOrgRep ??= App.GetRequiredService<SqlSugarRepository<SysUserExtOrg>>();
  21. return sysUserExtOrgRep;
  22. }
  23. }
  24. /// <summary>
  25. /// 获取用户扩展机构集合
  26. /// </summary>
  27. /// <param name="userId"></param>
  28. /// <returns></returns>
  29. public async Task<List<SysUserExtOrg>> GetUserExtOrgList(long userId)
  30. {
  31. return await SysUserExtOrgRep.GetListAsync(u => u.UserId == userId);
  32. }
  33. /// <summary>
  34. /// 更新用户扩展机构
  35. /// </summary>
  36. /// <param name="userId"></param>
  37. /// <param name="extOrgList"></param>
  38. /// <returns></returns>
  39. public async Task UpdateUserExtOrg(long userId, List<SysUserExtOrg> extOrgList)
  40. {
  41. await SysUserExtOrgRep.DeleteAsync(u => u.UserId == userId);
  42. if (extOrgList == null || extOrgList.Count < 1) return;
  43. extOrgList.ForEach(u =>
  44. {
  45. u.UserId = userId;
  46. });
  47. await SysUserExtOrgRep.InsertRangeAsync(extOrgList);
  48. }
  49. /// <summary>
  50. /// 根据机构Id集合删除扩展机构
  51. /// </summary>
  52. /// <param name="orgIdList"></param>
  53. /// <returns></returns>
  54. public async Task DeleteUserExtOrgByOrgIdList(List<long> orgIdList)
  55. {
  56. await SysUserExtOrgRep.DeleteAsync(u => orgIdList.Contains(u.OrgId));
  57. }
  58. /// <summary>
  59. /// 根据用户Id删除扩展机构
  60. /// </summary>
  61. /// <param name="userId"></param>
  62. /// <returns></returns>
  63. public async Task DeleteUserExtOrgByUserId(long userId)
  64. {
  65. await SysUserExtOrgRep.DeleteAsync(u => u.UserId == userId);
  66. }
  67. /// <summary>
  68. /// 根据机构Id判断是否有用户
  69. /// </summary>
  70. /// <param name="orgId"></param>
  71. /// <returns></returns>
  72. public async Task<bool> HasUserOrg(long orgId)
  73. {
  74. return await SysUserExtOrgRep.IsAnyAsync(u => u.OrgId == orgId);
  75. }
  76. /// <summary>
  77. /// 根据职位Id判断是否有用户
  78. /// </summary>
  79. /// <param name="posId"></param>
  80. /// <returns></returns>
  81. public async Task<bool> HasUserPos(long posId)
  82. {
  83. return await SysUserExtOrgRep.IsAnyAsync(u => u.PosId == posId);
  84. }
  85. }