SystemController.cs 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. 
  2. using MySqlX.XDevAPI.Common;
  3. using OASystem.Domain.Dtos.System;
  4. using OASystem.Domain.Entities.System;
  5. using OASystem.Domain.ViewModels.System;
  6. using OASystem.Infrastructure.Repositories.Login;
  7. using OASystem.Infrastructure.Repositories.System;
  8. namespace OASystem.API.Controllers
  9. {
  10. /// <summary>
  11. /// 系统设置
  12. /// </summary>
  13. [Authorize]
  14. [Route("api/[controller]/[action]")]
  15. public class SystemController : ControllerBase
  16. {
  17. private readonly CompanyRepository _syscomRep;
  18. private readonly DepartmentRepository _sysDepRep;
  19. private readonly UsersRepository _userRep;
  20. private readonly IMapper _mapper;
  21. public SystemController( CompanyRepository syscom,DepartmentRepository sysDepRep, UsersRepository userRep,
  22. IMapper mapper)
  23. {
  24. _syscomRep = syscom;
  25. _sysDepRep = sysDepRep;
  26. _userRep = userRep;
  27. _mapper = mapper;
  28. }
  29. #region user 操作
  30. [HttpGet]
  31. [ProducesResponseType(typeof(LoginView), StatusCodes.Status200OK)]
  32. public async Task<IActionResult> GetUserList()
  33. {
  34. var userList = _userRep.GetUserList(_userRep);
  35. if (userList.Result.Code != 0)
  36. {
  37. return Ok(JsonView(false, userList.Result.Msg));
  38. }
  39. return Ok(JsonView(userList.Result.Data));
  40. }
  41. #endregion
  42. #region 企业操作
  43. [HttpGet]
  44. [ProducesResponseType(typeof(LoginView), StatusCodes.Status200OK)]
  45. public async Task<IActionResult> getCompanyList()
  46. {
  47. try
  48. {
  49. //var companyList = _sysDepRep.QueryDto<Sys_Company, CompanyView>(c=>c.IsDel!=null).ToList();
  50. string sqlWhere = "select * from Sys_Company";
  51. var companyList = _syscomRep.GetListBySqlWithNolock(sqlWhere);
  52. List<CompanyView> DataList = _mapper.Map<List<CompanyView>>(companyList);
  53. if (DataList.Count == 0)
  54. {
  55. return Ok(JsonView(false, "暂无数据!"));
  56. }
  57. return Ok(JsonView(DataList));
  58. }
  59. catch (Exception ex)
  60. {
  61. return Ok(JsonView(false, "程序错误!"));
  62. throw;
  63. }
  64. }
  65. #endregion
  66. #region 部门操作
  67. //[Authorize]
  68. [HttpPost]
  69. [ProducesResponseType(typeof(LoginView), StatusCodes.Status200OK)]
  70. public async Task<IActionResult> QueryDepartmentList(DepartmentDto dto)
  71. {
  72. try
  73. {
  74. var result = _sysDepRep.QueryDto<Sys_Department, DepartmentView>(s => s.CompanyId == dto.CompanyId).ToList();
  75. if (result.Count==0)
  76. {
  77. return Ok(JsonView(false, "暂无数据!"));
  78. }
  79. return Ok(JsonView(result));
  80. }
  81. catch (Exception ex)
  82. {
  83. return Ok(JsonView(false, "程序错误!"));
  84. throw;
  85. }
  86. //return Ok(JsonView(0, "调用完成:", result));
  87. }
  88. #endregion
  89. #region 用户操作
  90. [HttpPost]
  91. [ProducesResponseType(typeof(LoginView), StatusCodes.Status200OK)]
  92. public async Task<IActionResult> QueryUserList(UserDto dto)
  93. {
  94. try
  95. {
  96. string sqlWhere = string.Empty;
  97. if (dto.CompanyId!=0)
  98. {
  99. sqlWhere += string.Format(@" And su.CompanyId={0}", dto.CompanyId);
  100. }
  101. if (dto.DepId != 0)
  102. {
  103. sqlWhere += string.Format(@" And su.DepId={0}", dto.DepId);
  104. }
  105. string userSqlWhere = string.Format(@"Select sjp.JobName,sd.DepName,sc.CompanyName,su.* From Sys_Users su
  106. Inner Join Sys_Company sc On su.CompanyId = sc.Id
  107. Inner Join Sys_Department sd On su.DepId = sd.Id
  108. Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id where 1=1 {0}",sqlWhere);
  109. var _userList = _userRep.GetListBySqlWithNolock(userSqlWhere);
  110. List<UserInfoListView> _userDataList = _mapper.Map<List<UserInfoListView>>(_userList);//这一步,映射不上JobName,DepName,CompanyName,
  111. if (_userDataList.Count==0)
  112. {
  113. return Ok(JsonView(false, "暂无数据!"));
  114. }
  115. for (int i = 0; i < _userDataList.Count; i++)
  116. {
  117. _userDataList[i].CompanyName = _userList[i].CompanyName;
  118. _userDataList[i].DepName = _userList[i].DepName;
  119. _userDataList[i].JobName = _userList[i].JobName;
  120. }
  121. return Ok(JsonView(_userDataList));
  122. }
  123. catch (Exception)
  124. {
  125. return Ok(JsonView(false, "程序错误!"));
  126. throw;
  127. }
  128. }
  129. #endregion
  130. }
  131. }