using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using Moonlight.Shared; using Moonlight.Shared.Admin.Sys.Diagnose; namespace Moonlight.Api.Admin.Sys.Diagnose; [ApiController] [Authorize(Policy = Permissions.System.Diagnose)] [Route("api/admin/system/diagnose")] public class DiagnoseController : Controller { private readonly DiagnoseService DiagnoseService; public DiagnoseController(DiagnoseService diagnoseService) { DiagnoseService = diagnoseService; } [HttpGet] public async Task> GetAsync() { var results = await DiagnoseService.DiagnoseAsync(); return results .OrderBy(x => x.Level) .ToDto() .ToArray(); } }