using FreeSql.DataAnnotations; using F9WebAiTest.Domain.Common; namespace F9WebAiTest.Domain.Entities.Prod; /// /// 考勤登记主表:一人一天一条(唯一:日期 + 职工)。 /// 对应 F9 WinClient\F9.Business.Prod\KQ\CQDJ 的 Cqdj 实体。 /// [Table(Name = "biz_prod_kq_cqdj")] public class Cqdj : BaseEntity { public DateTime Date { get; set; } // 考勤日期 public long DepId { get; set; } // 部门(车间) public long WorktypeId { get; set; } // 工种 public long EmployeeId { get; set; } // 职工 public int Banci { get; set; } // 班次(Prod_Banci_Enum:甲=1 乙=2) public bool IsXuegong { get; set; } // 是否学工(未转正) public decimal HoursStandard { get; set; } // 标准时长 public decimal HoursCq { get; set; } // 出勤时长(含正常/流动/代班/外派/工伤,不含加班) public decimal HoursQj { get; set; } // 请假时长 public decimal HoursLd { get; set; } // 流动时长 public decimal HoursJb { get; set; } // 加班时长 public decimal HoursDb { get; set; } // 代班时长 public decimal HoursWp { get; set; } // 外派时长 public decimal HoursKg { get; set; } // 旷工时长 public decimal HoursGs { get; set; } // 工伤时长 public int CsYeban { get; set; } // 夜班次数 public string Memo { get; set; } = ""; // 备注 } /// /// 考勤登记明细:一人一天多行,按出勤类型拆分。 /// 对应 F9 WinClient\F9.Business.Prod\KQ\CQDJ 的 Cqdj_Item 实体。 /// [Table(Name = "biz_prod_kq_cqdj_item")] public class CqdjItem : BaseEntity { public long CqdjId { get; set; } // 主表 Id public DateTime Date { get; set; } // 考勤日期 public long DepId { get; set; } // 出勤部门(流动/代班时可能是别的部门) public long WorktypeId { get; set; } // 出勤工种 public long EmployeeId { get; set; } // 职工 public int Banci { get; set; } // 班次 public int TypeCq { get; set; } // 出勤类型(Cqdj_CqType_Enum) public int TypeQj { get; set; } // 请假类型(Cqdj_QjType_Enum,非请假为 0) public decimal Hours { get; set; } // 时长 public string Jizu { get; set; } = ""; // 机组 public string CtStart { get; set; } = ""; // 开始车台 public string CtEnd { get; set; } = ""; // 结束车台 public int DangcheNum { get; set; } // 挡车数 public string Memo { get; set; } = ""; // 备注 }