using System;
using FreeSql.DataAnnotations;
using ZhonTai.Admin.Core.Entities;
using NPP.SmartSchedue.Api.Contracts.Core.Consts;
namespace NPP.SmartSchedue.Api.Contracts.Domain.Time;
///
/// 人员班次分配
///
[Table(Name = DbConsts.TableNamePrefix + "personnel_shift_assignment")]
public partial class PersonnelShiftAssignmentEntity : EntityTenant
{
///
/// 人员ID
///
public long PersonnelId { get; set; }
///
/// 班次ID
///
public long ShiftId { get; set; }
///
/// 分配日期
///
public DateTime AssignmentDate { get; set; }
///
/// 分配类型 (指定/自动)
///
[Column(StringLength = 20)]
public string AssignmentType { get; set; }
///
/// 分配原因
///
[Column(StringLength = 200)]
public string AssignmentReason { get; set; }
///
/// 分配状态
///
[Column(StringLength = 20)]
public string Status { get; set; }
///
/// 是否违反规则
///
public bool IsRuleViolation { get; set; } = false;
///
/// 违反规则描述
///
[Column(StringLength = 500)]
public string ViolationDescription { get; set; }
///
/// 年度累计班次数
///
public int YearlyShiftCount { get; set; } = 0;
///
/// 周累计班次数
///
public int WeeklyShiftCount { get; set; } = 0;
}