using System;
using System.Collections.Generic;
namespace NPP.SmartSchedue.Api.Contracts.Services.Workbench.Output;
///
/// 用户本周日历数据输出
///
public class WeeklyCalendarOutput
{
///
/// 周开始日期(周一)
///
public DateTime WeekStartDate { get; set; }
///
/// 周结束日期(周日)
///
public DateTime WeekEndDate { get; set; }
///
/// 人员ID
///
public long PersonnelId { get; set; }
///
/// 人员姓名
///
public string PersonnelName { get; set; }
///
/// 每日日历数据
///
public List Days { get; set; } = new List();
}
///
/// 单日日历数据项
///
public class CalendarDayItem
{
///
/// 日期
///
public DateTime Date { get; set; }
///
/// 星期几(1=周一,7=周日)
///
public int DayOfWeek { get; set; }
///
/// 星期几中文名称
///
public string DayOfWeekName { get; set; }
///
/// 该日的班次数据
///
public List Shifts { get; set; } = new List();
}
///
/// 班次日历数据项
///
public class CalendarShiftItem
{
///
/// 班次ID
///
public long ShiftId { get; set; }
///
/// 班次名称
///
public string ShiftName { get; set; }
///
/// 班次开始时间
///
public TimeSpan StartTime { get; set; }
///
/// 班次结束时间
///
public TimeSpan EndTime { get; set; }
///
/// 该班次的工作任务
///
public List Tasks { get; set; } = new List();
///
/// 该班次的不可用时间段
///
public List UnavailableItems { get; set; } = new List();
}
///
/// 任务日历项
///
public class CalendarTaskItem
{
///
/// 任务ID
///
public long TaskId { get; set; }
///
/// 任务代码
///
public string TaskCode { get; set; }
///
/// 项目号
///
public string ProjectNumber { get; set; }
///
/// 工序名称
///
public string ProcessName { get; set; }
///
/// 任务状态
///
public int Status { get; set; }
///
/// 状态名称
///
public string StatusName { get; set; }
///
/// 优先级
///
public int Priority { get; set; }
///
/// 预计工时
///
public decimal? EstimatedHours { get; set; }
///
/// 计划开始时间
///
public DateTime PlannedStartTime { get; set; }
///
/// 计划结束时间
///
public DateTime PlannedEndTime { get; set; }
///
/// 备注
///
public string Remarks { get; set; }
}
///
/// 不可用时间段项
///
public class CalendarUnavailableItem
{
///
/// 不可用记录ID
///
public long UnavailabilityId { get; set; }
///
/// 不可用原因类型
///
public int ReasonType { get; set; }
///
/// 原因类型名称
///
public string ReasonTypeName { get; set; }
///
/// 备注说明
///
public string Remark { get; set; }
///
/// 生效开始时间(可选)
///
public TimeSpan? EffectiveStartTime { get; set; }
///
/// 生效结束时间(可选)
///
public TimeSpan? EffectiveEndTime { get; set; }
///
/// 优先级权重
///
public int Priority { get; set; }
}