using System; using System.Collections.Generic; using System.Threading.Tasks; using NPP.SmartSchedue.Api.Contracts.Services.Integration.Input; using NPP.SmartSchedue.Api.Contracts.Services.Integration.Output; using NPP.SmartSchedue.Api.Contracts.Services.Integration.Internal; using NPP.SmartSchedue.Api.Contracts.Domain.Work; namespace NPP.SmartSchedue.Api.Contracts.Services.Integration { /// /// 全局优化人员分配服务接口 /// 基于遗传算法和基尼系数的智能全局优化分配 /// public interface IGlobalPersonnelAllocationService { Task AllocatePersonnelGloballyAsync(GlobalAllocationInput input); /// /// 【性能优化】公共的人员可用性计算方法 - 专为遗传算法优化 /// 替代原有的反射调用,消除15-20%的性能开销 /// Task CalculatePersonnelAvailabilityForGeneticAsync( GlobalPersonnelInfo personnel, WorkOrderEntity task, List contextTasks); /// /// 【性能优化】公共的班次规则合规性评分方法 - 专为遗传算法优化 /// 替代原有的反射调用,提升约束检查性能 /// Task CalculateShiftRuleComplianceForGeneticAsync( long personnelId, DateTime workDate, long shiftId, GlobalAllocationContext context); } }