namespace OrpaonVision.Model.Production;
///
/// 产品会话模型。
///
public sealed class ProductionSessionModel
{
///
/// 会话ID。
///
public Guid SessionId { get; set; }
///
/// 产品类型编码。
///
public string ProductTypeCode { get; set; } = string.Empty;
///
/// 产品类型名称。
///
public string ProductTypeName { get; set; } = string.Empty;
///
/// 工位ID。
///
public string StationId { get; set; } = string.Empty;
///
/// 工位名称。
///
public string StationName { get; set; } = string.Empty;
///
/// 操作员ID。
///
public string OperatorId { get; set; } = string.Empty;
///
/// 操作员姓名。
///
public string OperatorName { get; set; } = string.Empty;
///
/// 班次ID。
///
public string ShiftId { get; set; } = string.Empty;
///
/// 班次名称。
///
public string ShiftName { get; set; } = string.Empty;
///
/// 开始时间(UTC)。
///
public DateTime StartedAtUtc { get; set; }
///
/// 结束时间(UTC)。
///
public DateTime? EndedAtUtc { get; set; }
///
/// 会话状态。
///
public ProductionSessionStatus Status { get; set; }
///
/// 最终结果。
///
public ProductionSessionResult Result { get; set; }
///
/// 当前层级。
///
public int CurrentLayer { get; set; }
///
/// 总层级数。
///
public int TotalLayers { get; set; }
///
/// NG原因。
///
public string? NgReason { get; set; }
///
/// 备注。
///
public string? Remark { get; set; }
///
/// 创建时间(UTC)。
///
public DateTime CreatedAtUtc { get; set; }
///
/// 更新时间(UTC)。
///
public DateTime UpdatedAtUtc { get; set; }
///
/// 创建人。
///
public string CreatedBy { get; set; } = string.Empty;
///
/// 更新人。
///
public string UpdatedBy { get; set; } = string.Empty;
}
///
/// 产品会话状态枚举。
///
public enum ProductionSessionStatus
{
///
/// 进行中。
///
InProgress = 0,
///
/// 已完成(OK)。
///
CompletedOk = 1,
///
/// 已完成(NG)。
///
CompletedNg = 2,
///
/// 已取消。
///
Cancelled = 3,
///
/// 已暂停。
///
Paused = 4
}
///
/// 产品会话结果枚举。
///
public enum ProductionSessionResult
{
///
/// 待定。
///
Pending = 0,
///
/// 合格。
///
Ok = 1,
///
/// 不合格。
///
Ng = 2
}