using System;
using System.Collections.Generic;
namespace NPP.SmartSchedue.Api.Contracts.Services.Work.Input;
///
/// 智能任务分配输入参数
///
public class SmartAssignmentInput
{
///
/// 偏好的人员ID
///
public long? PreferredPersonnelId { get; set; }
///
/// 分配策略 (如: "优先级", "负载均衡", "技能匹配"等)
///
public string AssignmentStrategy { get; set; }
///
/// 是否考虑人员技能匹配
///
public bool ConsiderSkills { get; set; } = true;
///
/// 是否考虑人员当前负载
///
public bool ConsiderWorkload { get; set; } = true;
///
/// 是否考虑时间约束
///
public bool ConsiderTimeConstraints { get; set; } = true;
///
/// 优先级权重
///
public int PriorityWeight { get; set; } = 1;
///
/// 技能匹配权重
///
public int SkillWeight { get; set; } = 1;
///
/// 负载均衡权重
///
public int WorkloadWeight { get; set; } = 1;
///
/// 最早开始时间
///
public DateTime? EarliestStartTime { get; set; }
///
/// 最晚完成时间
///
public DateTime? LatestEndTime { get; set; }
///
/// 所需技能列表
///
public List RequiredSkills { get; set; } = new List();
///
/// 所需设备列表
///
public List RequiredEquipmentIds { get; set; } = new List();
}