using System;
using System.ComponentModel.DataAnnotations;
using ZhonTai.Admin.Core.Dto;
using NPP.SmartSchedue.Api.Contracts.Core.Enums;
namespace NPP.SmartSchedue.Api.Contracts.Services.Time.Input;
///
/// 班次不可用标记分页查询输入模型
///
public class ShiftUnavailabilityGetPageInput
{
///
/// 员工ID(可选,用于过滤特定员工的记录)
///
public long? PersonnelId { get; set; }
///
/// 班次ID(可选,用于过滤特定班次的记录)
///
public long? ShiftId { get; set; }
///
/// 开始日期(可选,用于日期范围过滤)
///
public DateTime? StartDate { get; set; }
///
/// 结束日期(可选,用于日期范围过滤)
///
public DateTime? EndDate { get; set; }
///
/// 原因类型(可选,用于按原因类型过滤)
///
public UnavailabilityReasonType? ReasonType { get; set; }
///
/// 原因分组(可选,用于按分组过滤)
///
public UnavailabilityCategory? Category { get; set; }
///
/// 是否为模板生成(可选,用于过滤模板生成的记录)
///
public bool? IsFromTemplate { get; set; }
///
/// 关键字搜索(搜索备注内容)
///
[StringLength(100, ErrorMessage = "关键字长度不能超过100字符")]
public string Keyword { get; set; }
}