UsersRepository.cs 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. using AutoMapper;
  2. using OASystem.Domain;
  3. using OASystem.Domain.Entities.System;
  4. using OASystem.Domain.ViewModels.System;
  5. using SqlSugar;
  6. using StackExchange.Redis;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.Linq;
  10. using System.Text;
  11. using System.Threading.Tasks;
  12. namespace OASystem.Infrastructure.Repositories.System
  13. {
  14. public class UsersRepository : BaseRepository<UserInfo, UserInfoWebView>
  15. {
  16. public UsersRepository(SqlSugarClient sqlSugar) : base(sqlSugar){}
  17. /// <summary>
  18. /// 用户查询列表
  19. /// </summary>
  20. /// <param name="_userRep"></param>
  21. /// <returns></returns>
  22. public async Task<Result> GetUserList(int portType,string sqlWhere)
  23. {
  24. Result result = new Result() { Code = -2 };
  25. //List<UserInfoWebView> _userList = _sqlSugar.Queryable<Sys_Users>()
  26. // .InnerJoin<Sys_Company>((u, c) => u.CompanyId == c.Id) //若是多个条件 用 &&
  27. // .InnerJoin<Sys_Department>((u, c, d) => u.DepId == d.Id)
  28. // .InnerJoin<Sys_JobPost>((u, c, d, j) => u.JobPostId == j.Id)
  29. // .Where((u) => u.Id == 208)
  30. // .Select
  31. // ((u, c, d, j) => new UserInfoWebView
  32. // {
  33. // Number = u.Number,
  34. // CompanyId = u.CompanyId,
  35. // CompanyName = c.CompanyName,
  36. // DepId=u.DepId,
  37. // DepName = d.DepName,
  38. // JobPostId = u.JobPostId,
  39. // JobName = j.JobName,
  40. // Id = u.Id,
  41. // CnName = u.CnName,
  42. // Phone = u.Phone,
  43. // UrgentPhone = u.UrgentPhone,
  44. // Ext =u.Ext,
  45. // Email = u.Email,
  46. // })
  47. // .ToList();
  48. if (portType == 1) //web
  49. {
  50. string userSqlWhere = string.Format(@"Select su.CompanyId, sc.CompanyName,su.DepId,sd.DepName,su.JobPostId,sjp.JobName,
  51. su.Id UserId,su.CnName,su.CnName,su.Number,su.Ext,su.Phone,su.UrgentPhone,su.Email
  52. From Sys_Users su
  53. Inner Join Sys_Company sc On su.CompanyId = sc.Id
  54. Inner Join Sys_Department sd On su.DepId = sd.Id
  55. Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id
  56. Where su.HrAudit = 1 And su.IsDel = 0");
  57. var _userList = await _sqlSugar.SqlQueryable<UserInfoWebView>(userSqlWhere).ToListAsync();
  58. if (_userList.Count != 0)
  59. {
  60. result.Code = 0;
  61. result.Msg = "成功!";
  62. result.Data = _userList;
  63. }
  64. else
  65. {
  66. result.Msg = "暂无数据!";
  67. }
  68. }
  69. else if (portType == 2) //Android
  70. {
  71. string userSqlWhere = string.Format(@"Select su.CompanyId, sc.CompanyName,su.DepId,sd.DepName,su.JobPostId,sjp.JobName,
  72. su.Id UserId,su.CnName,su.CnName,su.Number,su.Ext,su.Phone,su.UrgentPhone,su.Email
  73. From Sys_Users su
  74. Inner Join Sys_Company sc On su.CompanyId = sc.Id
  75. Inner Join Sys_Department sd On su.DepId = sd.Id
  76. Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id
  77. Where su.HrAudit = 1 And su.IsDel = 0 ");
  78. var _userList = await _sqlSugar.SqlQueryable<UserInfoWebView>(userSqlWhere).ToListAsync();
  79. if (_userList.Count != 0)
  80. {
  81. result.Code = 0;
  82. result.Msg = "成功!";
  83. result.Data = _userList;
  84. }
  85. else
  86. {
  87. result.Msg = "暂无数据!";
  88. }
  89. }
  90. else if (portType == 3) //IOS
  91. {
  92. }
  93. else
  94. {
  95. result.Msg = "暂无数据!";
  96. }
  97. return result;
  98. }
  99. /// <summary>
  100. /// 用户查询列表
  101. /// </summary>
  102. /// <param name="_userRep"></param>
  103. /// <returns></returns>
  104. public async Task<Result> GetUserNameList(int portType)
  105. {
  106. Result result = new Result() { Code = -2 };
  107. if (portType == 1 || portType == 2) //web
  108. {
  109. string sql = string.Format(@"Select Id,CnName From Sys_Users Where Isdel=0 And HrAudit = 1");
  110. var _userList = await _sqlSugar.SqlQueryable<UserNameView>(sql).ToListAsync();
  111. if (_userList.Count != 0)
  112. {
  113. result.Code = 0;
  114. result.Msg = "成功!";
  115. result.Data = _userList;
  116. }
  117. else
  118. {
  119. result.Msg = "暂无数据!";
  120. }
  121. }
  122. else if (portType == 2) //Android
  123. {
  124. }
  125. else if (portType == 3) //IOS
  126. {
  127. }
  128. else
  129. {
  130. result.Msg = "暂无数据!";
  131. }
  132. return result;
  133. }
  134. public async Task<List<UserInfo>> QueryUser(string sqlWhere)
  135. {
  136. string sql = string.Format(@"Select sc.CompanyName,sd.DepName,sjp.JobName,su.* From Sys_Users su
  137. left Join Sys_Company sc On su.CompanyId = sc.Id
  138. left Join Sys_Department sd On su.DepId = sd.Id
  139. left Join Sys_JobPost sjp On su.JobPostId = sjp.Id {0}", sqlWhere);
  140. return await _sqlSugar.SqlQueryable<UserInfo>(sql).ToListAsync();
  141. }
  142. }
  143. }