平安校园
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

BizUserController.cs 5.6 KiB

2 months ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232
  1. 
  2. //
  3. namespace SafeCampus.Web.Core;
  4. /// <summary>
  5. /// 人员管理控制器
  6. /// </summary>
  7. [ApiDescriptionSettings("Application", Tag = "人员管理")]
  8. [Route("biz/organization/user")]
  9. [RolePermission]
  10. public class BizUserController : IDynamicApiController
  11. {
  12. private readonly IUserService _userService;
  13. private readonly IOrgService _orgService;
  14. private readonly IPositionService _positionService;
  15. public BizUserController(IUserService userService, IOrgService orgService, IPositionService positionService)
  16. {
  17. _userService = userService;
  18. _orgService = orgService;
  19. _positionService = positionService;
  20. }
  21. #region Get请求
  22. /// <summary>
  23. /// 导入预览
  24. /// </summary>
  25. /// <param name="input"></param>
  26. /// <returns></returns>
  27. [HttpPost("preview")]
  28. [DisableRequestSizeLimit]
  29. [SuppressMonitor]
  30. [DisplayName("导入预览")]
  31. public async Task<dynamic> Preview([FromForm] ImportPreviewInput input)
  32. {
  33. return await _userService.Preview(input);
  34. }
  35. /// <summary>
  36. /// 模板下载
  37. /// </summary>
  38. /// <returns></returns>
  39. [HttpGet(template: "template")]
  40. [SuppressMonitor]
  41. public async Task<dynamic> Template()
  42. {
  43. return await _userService.Template();
  44. }
  45. /// <summary>
  46. /// 人员分页查询
  47. /// </summary>
  48. /// <param name="input"></param>
  49. /// <returns></returns>
  50. [HttpGet("page")]
  51. [DisplayName("人员分页查询")]
  52. public async Task<dynamic> Page([FromQuery] UserPageInput input)
  53. {
  54. return await _userService.Page(input);
  55. }
  56. /// <summary>
  57. /// 获取人员选择器
  58. /// </summary>
  59. /// <returns></returns>
  60. [HttpGet("selector")]
  61. [DisplayName("人员选择器")]
  62. public async Task<dynamic> Selector([FromQuery] UserSelectorInput input)
  63. {
  64. return await _userService.Selector(input);
  65. }
  66. /// <summary>
  67. /// 获取人员拥有角色
  68. /// </summary>
  69. /// <param name="input"></param>
  70. /// <returns></returns>
  71. [HttpGet("ownRole")]
  72. [DisplayName("获取人员拥有角色")]
  73. public async Task<dynamic> OwnRole([FromQuery] BaseIdInput input)
  74. {
  75. return await _userService.OwnRole(input);
  76. }
  77. /// <summary>
  78. /// 人员详情
  79. /// </summary>
  80. /// <param name="input"></param>
  81. /// <returns></returns>
  82. [HttpGet("detail")]
  83. [DisplayName("人员详情")]
  84. public async Task<dynamic> Detail([FromQuery] BaseIdInput input)
  85. {
  86. return await _userService.Detail(input);
  87. }
  88. #endregion Get请求
  89. #region Post请求
  90. /// <summary>
  91. /// 添加人员
  92. /// </summary>
  93. /// <param name="input"></param>
  94. /// <returns></returns>
  95. [HttpPost("add")]
  96. [DisplayName("添加人员")]
  97. public async Task Add([FromBody] UserAddInput input)
  98. {
  99. await _userService.Add(input);
  100. }
  101. /// <summary>
  102. /// 修改人员
  103. /// </summary>
  104. /// <param name="input"></param>
  105. /// <returns></returns>
  106. [HttpPost("edit")]
  107. [DisplayName("修改人员")]
  108. public async Task Edit([FromBody] UserEditInput input)
  109. {
  110. await _userService.Edit(input);
  111. }
  112. /// <summary>
  113. /// 批量修改人员
  114. /// </summary>
  115. /// <param name="input"></param>
  116. /// <returns></returns>
  117. [HttpPost("edits")]
  118. [DisplayName("批量修改人员")]
  119. public async Task Edits([FromBody] BatchEditInput input)
  120. {
  121. await _userService.Edits(input);
  122. }
  123. /// <summary>
  124. /// 删除人员
  125. /// </summary>
  126. /// <param name="input"></param>
  127. /// <returns></returns>
  128. [HttpPost("delete")]
  129. [DisplayName("删除人员")]
  130. public async Task Delete([FromBody] BaseIdListInput input)
  131. {
  132. await _userService.Delete(input);
  133. }
  134. /// <summary>
  135. /// 禁用人员
  136. /// </summary>
  137. /// <param name="input"></param>
  138. /// <returns></returns>
  139. [HttpPost("disableUser")]
  140. [DisplayName("禁用人员")]
  141. public async Task DisableUser([FromBody] BaseIdInput input)
  142. {
  143. await _userService.DisableUser(input);
  144. }
  145. /// <summary>
  146. /// 启用人员
  147. /// </summary>
  148. /// <param name="input"></param>
  149. /// <returns></returns>
  150. [HttpPost("enableUser")]
  151. [DisplayName("启用人员")]
  152. public async Task EnableUser([FromBody] BaseIdInput input)
  153. {
  154. await _userService.EnableUser(input);
  155. }
  156. /// <summary>
  157. /// 重置密码
  158. /// </summary>
  159. /// <param name="input"></param>
  160. /// <returns></returns>
  161. [HttpPost("resetPassword")]
  162. [DisplayName("重置密码")]
  163. public async Task ResetPassword([FromBody] BaseIdInput input)
  164. {
  165. await _userService.ResetPassword(input);
  166. }
  167. /// <summary>
  168. /// 给人员授权角色
  169. /// </summary>
  170. /// <param name="input"></param>
  171. /// <returns></returns>
  172. [HttpPost("grantRole")]
  173. [DisplayName("授权角色")]
  174. public async Task GrantRole([FromBody] UserGrantRoleInput input)
  175. {
  176. await _userService.GrantRole(input);
  177. }
  178. /// <summary>
  179. /// 人员导入
  180. /// </summary>
  181. /// <param name="input"></param>
  182. /// <returns></returns>
  183. [HttpPost("import")]
  184. [DisplayName("人员导入")]
  185. public async Task<dynamic> Import([SuppressMonitor][FromBody] ImportResultInput<BizUserImportInput> input)
  186. {
  187. return await _userService.Import(input);
  188. }
  189. /// <summary>
  190. /// 人员导出
  191. /// </summary>
  192. /// <param name="input"></param>
  193. /// <returns></returns>
  194. [HttpPost("export")]
  195. [DisplayName("人员导出")]
  196. public async Task<dynamic> Export([FromBody] UserPageInput input)
  197. {
  198. return await _userService.Export(input);
  199. }
  200. #endregion Post请求
  201. }