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