using System; using System.Collections.Generic; namespace NPP.SmartSchedue.Api.Contracts.Services.Work.Input; /// /// 任务分配推荐输入 /// public class WorkOrderAssignmentRecommendationInput { /// /// 任务ID列表 /// public List WorkOrderIds { get; set; } = new List(); /// /// 推荐开始日期 /// public DateTime StartDate { get; set; } /// /// 推荐结束日期 /// public DateTime EndDate { get; set; } /// /// 推荐策略 /// public string RecommendationStrategy { get; set; } = "balanced"; /// /// 是否考虑人员资质 /// public bool ConsiderQualification { get; set; } = true; /// /// 是否考虑工作负荷 /// public bool ConsiderWorkload { get; set; } = true; /// /// 是否考虑设备可用性 /// public bool ConsiderEquipmentAvailability { get; set; } = true; /// /// 是否考虑时间冲突 /// public bool ConsiderTimeConflict { get; set; } = true; /// /// 优先级权重配置 /// public PriorityWeightConfig PriorityWeights { get; set; } = new PriorityWeightConfig(); } /// /// 优先级权重配置 /// public class PriorityWeightConfig { /// /// 资质匹配权重 /// public double QualificationWeight { get; set; } = 0.3; /// /// 工作负荷权重 /// public double WorkloadWeight { get; set; } = 0.25; /// /// 设备可用性权重 /// public double EquipmentWeight { get; set; } = 0.2; /// /// 时间冲突权重 /// public double TimeConflictWeight { get; set; } = 0.15; /// /// 历史表现权重 /// public double PerformanceWeight { get; set; } = 0.1; }