| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- using Admin.NET.Plugin.AiDOP.Dto.S8;
- using Admin.NET.Plugin.AiDOP.Service.S8;
- namespace Admin.NET.Plugin.AiDOP.Controllers.S8;
- [ApiController]
- [Route("api/aidop/s8/dashboard")]
- [NonUnify]
- public class AdoS8DashboardController : ControllerBase
- {
- private readonly S8DashboardService _svc;
- private readonly S8DashboardCellDataService _cellSvc;
- public AdoS8DashboardController(S8DashboardService svc, S8DashboardCellDataService cellSvc)
- {
- _svc = svc;
- _cellSvc = cellSvc;
- }
- [HttpGet("overview")]
- public async Task<IActionResult> OverviewAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1) =>
- Ok(await _svc.GetOverviewAsync(tenantId, factoryId));
- [HttpGet("trends")]
- public async Task<IActionResult> TrendsAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1,
- [FromQuery] int days = 14) =>
- Ok(await _svc.GetTrendsAsync(tenantId, factoryId, days));
- [HttpGet("distributions")]
- public async Task<IActionResult> DistributionsAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1) =>
- Ok(await _svc.GetDistributionsAsync(tenantId, factoryId));
- [HttpGet("quick-exceptions")]
- public async Task<IActionResult> QuickExceptionsAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1,
- [FromQuery] string mode = "latest") =>
- Ok(await _svc.GetQuickExceptionsAsync(tenantId, factoryId, mode));
- [HttpGet("dept-backlog")]
- public async Task<IActionResult> DeptBacklogAsync([FromQuery] long tenantId = 1, [FromQuery] long factoryId = 1) =>
- Ok(await _svc.GetDeptBacklogAsync(tenantId, factoryId));
- [HttpGet("dim-trends")]
- public async Task<IActionResult> DimTrendsAsync(
- [FromQuery] long tenantId = 1,
- [FromQuery] long factoryId = 1,
- [FromQuery] string dim = "object",
- [FromQuery] int days = 14) =>
- Ok(await _svc.GetDimTrendsAsync(tenantId, factoryId, dim, days));
- /// <summary>
- /// 按配置获取单个大屏卡片的数据。配置来源 ado_s8_dashboard_cell_config。
- /// </summary>
- [HttpGet("cell-data")]
- public async Task<IActionResult> CellDataAsync([FromQuery] AdoS8CellDataQueryDto q)
- {
- try { return Ok(await _cellSvc.GetAsync(q)); }
- catch (S8BizException ex) { return BadRequest(new { message = ex.Message }); }
- }
- }
|