using SqlSugar;
namespace MES.Service.Modes;
///
/// SPI/AOI 检测主表实体,用于保存单块 PCB 的批次检测概览数据。
///
[SugarTable("MES_SPI_AOI_HEADER")]
public class MesSpiAoiHeader
{
///
/// 主键ID,由 Oracle 序列 SEQ_SPI_AOI_HEADER 生成。
///
[SugarColumn(ColumnName = "ID", IsPrimaryKey = true, OracleSequenceName = "SEQ_SPI_AOI_HEADER")]
public decimal Id { get; set; }
///
/// 测试日期(设备上传的年月日)。
///
[SugarColumn(ColumnName = "TEST_DATE")]
public DateTime TestDate { get; set; }
///
/// 测试时间(HH:mm:ss 格式,保持原始值)。
///
[SugarColumn(ColumnName = "TEST_TIME")]
public string TestTime { get; set; } = string.Empty;
///
/// 测试结果原始字符串,例如 0:0:1;0、0;0;0:1、Fail。
///
[SugarColumn(ColumnName = "TEST_RESULT")]
public string TestResult { get; set; } = string.Empty;
///
/// 检测面(T = Top 顶面,B = Bottom 底面)。
///
[SugarColumn(ColumnName = "SURFACE")]
public string Surface { get; set; } = string.Empty;
///
/// 计划检测点数。
///
[SugarColumn(ColumnName = "TOTAL_POINTS")]
public int? TotalPoints { get; set; }
///
/// 实际不良点数。
///
[SugarColumn(ColumnName = "ACTUAL_DEFECTS")]
public int? ActualDefects { get; set; }
///
/// 设备型号。
///
[SugarColumn(ColumnName = "EQUIPMENT_MODEL")]
public string? EquipmentModel { get; set; }
///
/// 对应生产工单或批次号。
///
[SugarColumn(ColumnName = "WORK_ORDER")]
public string? WorkOrder { get; set; }
///
/// 机种名称。
///
[SugarColumn(ColumnName = "PRODUCT_MODEL")]
public string? ProductModel { get; set; }
///
/// 板件条码(唯一约束)。
///
[SugarColumn(ColumnName = "BOARD_BARCODE")]
public string BoardBarcode { get; set; } = string.Empty;
///
/// SMT 组别。
///
[SugarColumn(ColumnName = "SMT_GROUP")]
public string? SmtGroup { get; set; }
///
/// 线别名称。
///
[SugarColumn(ColumnName = "LINE_NAME")]
public string? LineName { get; set; }
///
/// 创建时间,默认写入数据库时间戳。
///
[SugarColumn(ColumnName = "CREATED_AT")]
public DateTime CreatedAt { get; set; }
///
/// 更新时间,默认写入数据库时间戳。
///
[SugarColumn(ColumnName = "UPDATED_AT")]
public DateTime UpdatedAt { get; set; }
}