62 lines
2.7 KiB
C#
62 lines
2.7 KiB
C#
using OrpaonVision.Core.Results;
|
|
using OrpaonVision.Core.Production.Contracts;
|
|
using OrpaonVision.Core.Production.Contracts.Queries;
|
|
using OrpaonVision.Core.Training.Contracts;
|
|
|
|
namespace OrpaonVision.Core.Production;
|
|
|
|
/// <summary>
|
|
/// 生产应用服务接口。
|
|
/// </summary>
|
|
public interface IProductionAppService
|
|
{
|
|
/// <summary>
|
|
/// 分页查询产品会话。
|
|
/// </summary>
|
|
/// <param name="query">查询条件。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>分页结果。</returns>
|
|
Task<Result<PagedResult<ProductSessionDetailDto>>> GetProductSessionsAsync(ProductSessionQueryDto query, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 获取产品会话详情。
|
|
/// </summary>
|
|
/// <param name="sessionId">会话ID。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>产品会话详情。</returns>
|
|
Task<Result<ProductSessionDetailDto>> GetProductSessionDetailAsync(Guid sessionId, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 获取生产统计。
|
|
/// </summary>
|
|
/// <param name="query">统计查询条件。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>生产统计结果。</returns>
|
|
Task<Result<ProductionStatisticsDto>> GetProductionStatisticsAsync(ProductionStatisticsQueryDto query, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 获取实时生产状态。
|
|
/// </summary>
|
|
/// <param name="workstationId">工位ID。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>实时生产状态。</returns>
|
|
Task<Result<RealtimeProductionStatusDto>> GetRealtimeProductionStatusAsync(Guid workstationId, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 导出生产数据。
|
|
/// </summary>
|
|
/// <param name="query">导出查询条件。</param>
|
|
/// <param name="format">导出格式。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>导出文件信息。</returns>
|
|
Task<Result<ExportFileDto>> ExportProductionDataAsync(ProductSessionQueryDto query, string format = "Excel", CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 获取质量分析报告。
|
|
/// </summary>
|
|
/// <param name="query">分析查询条件。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>质量分析报告。</returns>
|
|
Task<Result<QualityAnalysisReportDto>> GetQualityAnalysisReportAsync(ProductionStatisticsQueryDto query, CancellationToken cancellationToken = default);
|
|
}
|