AdoS8IssueLedgerController.cs 997 B

1234567891011121314151617181920212223242526272829303132
  1. using Admin.NET.Plugin.AiDOP.Dto.S8;
  2. using Admin.NET.Plugin.AiDOP.Service.S8;
  3. namespace Admin.NET.Plugin.AiDOP.Controllers.S8;
  4. /// <summary>
  5. /// G-06 最小问题台账只读查询接口。仅一个只读 GET,鉴权走现有中间件。
  6. /// state 仅接受 discovered / processing / closed / 空;不接受别名、不兼容 hold / suspend / pending / all。
  7. /// </summary>
  8. [ApiController]
  9. [Route("api/aidop/s8/issues/ledger")]
  10. [NonUnify]
  11. public class AdoS8IssueLedgerController : ControllerBase
  12. {
  13. private readonly S8IssueLedgerService _svc;
  14. public AdoS8IssueLedgerController(S8IssueLedgerService svc) => _svc = svc;
  15. [HttpGet]
  16. public async Task<IActionResult> QueryAsync([FromQuery] AdoS8IssueLedgerQueryDto q)
  17. {
  18. try
  19. {
  20. var (total, list) = await _svc.QueryAsync(q);
  21. return Ok(new { total, list });
  22. }
  23. catch (S8BizException ex)
  24. {
  25. return BadRequest(new { message = ex.Message });
  26. }
  27. }
  28. }