AdoS8ConfigNotificationLayersController.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  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/notification-layers")]
  6. [NonUnify]
  7. public class AdoS8ConfigNotificationLayersController : ControllerBase
  8. {
  9. private readonly S8NotificationLayerService _svc;
  10. public AdoS8ConfigNotificationLayersController(S8NotificationLayerService svc) => _svc = svc;
  11. [HttpGet("role-options")]
  12. public async Task<IActionResult> GetRoleOptionsAsync() =>
  13. Ok(await _svc.GetRoleOptionsAsync());
  14. [HttpGet]
  15. public async Task<IActionResult> ListAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1) =>
  16. Ok(await _svc.ListAsync(tenantId, factoryId));
  17. [HttpPost]
  18. public async Task<IActionResult> CreateAsync([FromBody] AdoS8NotificationLayer body)
  19. {
  20. try { return Ok(await _svc.CreateAsync(body)); }
  21. catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); }
  22. }
  23. [HttpPut("{id:long}")]
  24. public async Task<IActionResult> UpdateAsync(long id, [FromBody] AdoS8NotificationLayer body)
  25. {
  26. try { return Ok(await _svc.UpdateAsync(id, body)); }
  27. catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); }
  28. }
  29. [HttpDelete("{id:long}")]
  30. public async Task<IActionResult> DeleteAsync(long id)
  31. {
  32. await _svc.DeleteAsync(id);
  33. return Ok();
  34. }
  35. }