using FreeSql.DataAnnotations;
using F9MES.Common.Entities;
using System.ComponentModel;
namespace F9MES.Domain.ProQian;
///
/// 前缫工段模块实体(ProQian),表名前缀:ProQian_
///
/// 车间配置(车间信息、班次、车台数,树状配置)
[Table(Name = "ProQian_Workshop")]
public class ProQian_Workshop : BaseTreeEntity
{
/// 车间名称
[Description("车间名称")]
[Column(DbType = "varchar(100)")]
public string Name { get; set; } = "";
/// 车间编码
[Description("车间编码")]
[Column(DbType = "varchar(50)")]
public string? Code { get; set; }
/// 班次配置:0=单班 1=两班 2=三班
[Description("班次配置:0=单班 1=两班 2=三班")]
[Column]
public int ShiftConfig { get; set; } = 1;
/// 车台总数
[Description("车台总数")]
[Column]
public int MachineCount { get; set; }
/// 负责人
[Description("负责人")]
[Column(DbType = "varchar(50)")]
public string? Manager { get; set; }
}
/// 机组车位(机组-车位层级配置)
[Table(Name = "ProQian_Machine")]
public class ProQian_Machine : BaseEntity
{
/// 车间ID
[Description("车间ID")]
[Column]
public long WorkshopId { get; set; }
/// 机组名称(如 1号机组)
[Description("机组名称")]
[Column(DbType = "varchar(50)")]
public string GroupName { get; set; } = "";
/// 车号
[Description("车号")]
[Column(DbType = "varchar(20)")]
public string MachineNo { get; set; } = "";
/// 车位编号
[Description("车位编号")]
[Column(DbType = "varchar(20)")]
public string PositionNo { get; set; } = "";
/// 设备状态:0=空闲 1=运行 2=停机 3=维修
[Description("设备状态:0=空闲 1=运行 2=停机 3=维修")]
[Column]
public int Status { get; set; } = 0;
/// 是否启用
[Description("是否启用")]
[Column]
public int IsEnable { get; set; } = 1;
}
/// 看台排班(缫丝工/车头工看台位置和绪数)
[Table(Name = "ProQian_Schedule")]
public class ProQian_Schedule : BaseEntity
{
/// 日期
[Description("日期")]
[Column]
public DateTime ScheduleDate { get; set; }
/// 班次:0=白班 1=夜班
[Description("班次:0=白班 1=夜班")]
[Column]
public int Shift { get; set; } = 0;
/// 车间ID
[Description("车间ID")]
[Column]
public long WorkshopId { get; set; }
/// 车位ID(ProQian_Machine)
[Description("车位ID")]
[Column]
public long MachineId { get; set; }
/// 职工ID(缫丝工/车头工)
[Description("职工ID")]
[Column]
public long EmployeeId { get; set; }
/// 岗位:0=缫丝工 1=车头工
[Description("岗位:0=缫丝工 1=车头工")]
[Column]
public int PostType { get; set; } = 0;
/// 看台绪数
[Description("看台绪数")]
[Column]
public int XuCount { get; set; }
}
/// 看台时长(支持录入/调整/合并/分拆/临时安排)
[Table(Name = "ProQian_ShiftTime")]
public class ProQian_ShiftTime : BaseEntity
{
/// 职工ID
[Description("职工ID")]
[Column]
public long EmployeeId { get; set; }
/// 工艺庄口
[Description("工艺庄口")]
[Column]
public long ProcessZhuangkouId { get; set; }
/// 日期
[Description("日期")]
[Column]
public DateTime WorkDate { get; set; }
/// 班次:0=白班 1=夜班
[Description("班次:0=白班 1=夜班")]
[Column]
public int Shift { get; set; } = 0;
/// 车位ID
[Description("车位ID")]
[Column]
public long MachineId { get; set; }
/// 看台时长(小时)
[Description("看台时长(小时)")]
[Column(DbType = "decimal(6,2)")]
public decimal Hours { get; set; }
/// 操作类型:0=录入 1=调整 2=合并 3=分拆 4=临时安排
[Description("操作类型:0=录入 1=调整 2=合并 3=分拆 4=临时安排")]
[Column]
public int OpType { get; set; } = 0;
/// 来源记录ID(合并/分拆关联)
[Description("来源记录ID")]
[Column]
public long SourceId { get; set; }
}
/// 煮茧日报(逐日分庄分规格送茧量)
[Table(Name = "ProQian_CocoonBoiling")]
public class ProQian_CocoonBoiling : BaseEntity
{
/// 日期
[Description("日期")]
[Column]
public DateTime BoilDate { get; set; }
/// 工艺庄口
[Description("工艺庄口")]
[Column]
public long ProcessZhuangkouId { get; set; }
/// 规格ID(BaseCommon_SilkSpec)
[Description("规格ID")]
[Column]
public long SpecId { get; set; }
/// 送茧量(kg)
[Description("送茧量(kg)")]
[Column(DbType = "decimal(14,2)")]
public decimal InputWeight { get; set; }
/// 煮茧机台
[Description("煮茧机台")]
[Column(DbType = "varchar(50)")]
public string? BoilerNo { get; set; }
}
/// 落丝记录(逐日按机组下丝量)
[Table(Name = "ProQian_ThreadRecord")]
public class ProQian_ThreadRecord : BaseEntity
{
/// 日期
[Description("日期")]
[Column]
public DateTime RecordDate { get; set; }
/// 工艺庄口
[Description("工艺庄口")]
[Column]
public long ProcessZhuangkouId { get; set; }
/// 机组ID
[Description("机组ID")]
[Column]
public long MachineId { get; set; }
/// 班次:0=白班 1=夜班
[Description("班次:0=白班 1=夜班")]
[Column]
public int Shift { get; set; } = 0;
/// 下丝片数(小䈅丝片)
[Description("下丝片数")]
[Column]
public int ThreadCount { get; set; }
/// 下丝重量(kg)
[Description("下丝重量(kg)")]
[Column(DbType = "decimal(14,2)")]
public decimal Weight { get; set; }
/// 规格ID
[Description("规格ID")]
[Column]
public long SpecId { get; set; }
/// 缫丝工ID
[Description("缫丝工ID")]
[Column]
public long EmployeeId { get; set; }
}