AdoS8MonitoringController.cs 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  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. [ApiController]
  5. [Route("api/aidop/s8/monitoring")]
  6. [NonUnify]
  7. public class AdoS8MonitoringController : ControllerBase
  8. {
  9. private readonly S8MonitoringService _svc;
  10. public AdoS8MonitoringController(S8MonitoringService svc)
  11. {
  12. _svc = svc;
  13. }
  14. /// <summary>
  15. /// 异常监控汇总——供 4 个监控页顶部徽标和模块汇总表使用。
  16. /// sceneCode 不传时返回全部模块聚合(综合全景页)。
  17. /// </summary>
  18. [HttpGet("summary")]
  19. public async Task<IActionResult> GetSummaryAsync([FromQuery] AdoS8MonitoringSummaryQueryDto q)
  20. => Ok(await _svc.GetSummaryAsync(q));
  21. /// <summary>
  22. /// 9宫格数据:S1-S7 订单健康分布 + S8业务类别汇总 + S9部门汇总。
  23. /// </summary>
  24. [HttpGet("order-grid")]
  25. public async Task<IActionResult> GetOrderGridAsync()
  26. => Ok(await _svc.GetOrderGridAsync());
  27. /// <summary>
  28. /// S8-DELIVERY-TREND-CHART-REPLACE-DUPLICATE-SECTION-1:Delivery 页近 N 日交付异常趋势。
  29. /// 口径 module_code IN (S1,S7) AND exception_type_code IN (ORDER_CHANGE / DELIVERY_DELAY / PENDING_SHIPMENT)。
  30. /// </summary>
  31. [HttpGet("delivery-trend")]
  32. public async Task<IActionResult> GetDeliveryTrendAsync(long tenantId = 1, long factoryId = 1, int days = 7)
  33. => Ok(await _svc.GetDeliveryTrendAsync(tenantId, factoryId, days));
  34. /// <summary>
  35. /// S8-PROD-SUPPLY-TREND-CHART-REPLACE-DUPLICATE-SECTION-1:Production 页近 N 日生产异常趋势。
  36. /// 口径 module_code IN (S2,S6) AND exception_type_code IN (EQUIP_FAULT / MFG_MATERIAL_ABNORMAL / MFG_QUALITY_ABNORMAL)。
  37. /// </summary>
  38. [HttpGet("production-trend")]
  39. public async Task<IActionResult> GetProductionTrendAsync(long tenantId = 1, long factoryId = 1, int days = 7)
  40. => Ok(await _svc.GetProductionTrendAsync(tenantId, factoryId, days));
  41. /// <summary>
  42. /// S8-PROD-SUPPLY-TREND-CHART-REPLACE-DUPLICATE-SECTION-1:Supply 页近 N 日供应异常趋势。
  43. /// 口径 module_code IN (S3,S4,S5) AND exception_type_code IN 7 类供应异常。
  44. /// </summary>
  45. [HttpGet("supply-trend")]
  46. public async Task<IActionResult> GetSupplyTrendAsync(long tenantId = 1, long factoryId = 1, int days = 7)
  47. => Ok(await _svc.GetSupplyTrendAsync(tenantId, factoryId, days));
  48. /// <summary>
  49. /// S8-SIDEBAR-TYPE-CARD-WINDOW-TOGGLE-1:专题页右侧异常类型卡同窗口同分母聚合。
  50. /// domain ∈ {DELIVERY, PRODUCTION, SUPPLY};window ∈ {LAST_24H(默认), LAST_7D}。
  51. /// </summary>
  52. [HttpGet("domain-type-metrics")]
  53. public async Task<IActionResult> GetDomainTypeMetricsAsync(string domain, string window = "LAST_24H", long tenantId = 1, long factoryId = 1)
  54. => Ok(await _svc.GetDomainTypeMetricsAsync(domain, window, tenantId, factoryId));
  55. }