AdoS8ConfigRolesController.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Admin.NET.Plugin.AiDOP.Entity.S8;
  2. using Admin.NET.Plugin.AiDOP.Service.S8;
  3. namespace Admin.NET.Plugin.AiDOP.Controllers.S8;
  4. [ApiController]
  5. [Route("api/aidop/s8/config/roles")]
  6. [NonUnify]
  7. public class AdoS8ConfigRolesController : ControllerBase
  8. {
  9. private readonly S8RoleConfigService _svc;
  10. public AdoS8ConfigRolesController(S8RoleConfigService svc) => _svc = svc;
  11. [HttpGet]
  12. public async Task<IActionResult> ListAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1) =>
  13. Ok(await _svc.ListAsync(tenantId, factoryId));
  14. [HttpPost]
  15. public async Task<IActionResult> CreateAsync([FromBody] AdoS8RolePermissionConfig body)
  16. {
  17. try { return Ok(await _svc.CreateAsync(body)); }
  18. catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); }
  19. }
  20. [HttpPut("{id:long}")]
  21. public async Task<IActionResult> UpdateAsync(long id, [FromBody] AdoS8RolePermissionConfig body)
  22. {
  23. try { return Ok(await _svc.UpdateAsync(id, body)); }
  24. catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); }
  25. }
  26. [HttpDelete("{id:long}")]
  27. public async Task<IActionResult> DeleteAsync(long id)
  28. {
  29. await _svc.DeleteAsync(id);
  30. return Ok();
  31. }
  32. /// <summary>
  33. /// 从系统角色表一键导入,返回本次新增条数。
  34. /// </summary>
  35. [HttpPost("import-from-sys")]
  36. public async Task<IActionResult> ImportFromSysAsync(
  37. [FromQuery] long tenantId = 1,
  38. [FromQuery] long factoryId = 1)
  39. => Ok(new { imported = await _svc.ImportFromSysRolesAsync(tenantId, factoryId) });
  40. }