#region << 版 本 注 释 >>

/*--------------------------------------------------------------------
* 版权所有 (c) 2025 WenJY 保留所有权利。
* CLR版本：4.0.30319.42000
* 机器名称：Mr.Wen's MacBook Pro
* 命名空间：Sln.lmm.Collection.Model.Recipes.BasicRecipeVisibility
* 唯一标识：05E41B6E-B9BE-4811-BCAC-56D3BA342329
*
* 创建者：WenJY
* 电子邮箱：
* 创建时间：2025-10-16 14:18:29
* 版本：V1.0.0
* 描述：
*
*--------------------------------------------------------------------
* 修改人：
* 时间：
* 修改说明：
*
* 版本：V1.0.0
*--------------------------------------------------------------------*/

#endregion << 版 本 注 释 >>

using Sln.Iot.Model.api.Common.Stage;
using Sln.Iot.Model.api.Common.WorkOrderIdentifier;
using Sln.Iot.Model.api.Recipes.BasicRecipeVisibility.RecipeActivated.@enum;

namespace Sln.Iot.Model.api.Recipes.BasicRecipeVisibility.RecipeActivated
{
    /// <summary>
    /// 5.4.3.1.1 - 配方激活事件
    /// 当设备的配方进行任何切换时，需自动上传此消息给上端系统进行上报
    /// </summary>
    public class RecipeActivated
    {
        /// <summary>
        /// 配方名称
        /// </summary>
        public string RecipeName { get; set; }
    
        /// <summary>
        /// 配方版本
        /// </summary>
        public string Revision { get; set; }
    
        /// <summary>
        /// 生产通道序号 - 对于现有配方轨道的描述
        /// </summary>
        public int? Lane { get; set; }
    
        /// <summary>
        /// 工位信息 - 对于现有配方工位的描述
        /// </summary>
        public Stage Stage { get; set; }
    
        /// <summary>
        /// 预计加工一个产品的总时间，不包含堵塞或待料，包含转移及定位
        /// </summary>
        public double? ExpectedCycleTime { get; set; }
    
        /// <summary>
        /// 当前配方准许多少片板子或产品单位同步加工
        /// </summary>
        public double? ExpectedUnitsPerWorkTransaction { get; set; }
    
        /// <summary>
        /// 加工一组产品（如子母版）的总时间，单位：毫秒ms
        /// </summary>
        public double? ExpectedWorkTime { get; set; }
    
        /// <summary>
        /// 此次配方会作用于生产单位的零件数量
        /// </summary>
        public double? NumberOfComponentsPerUnit { get; set; }
    
        /// <summary>
        /// 工单信息
        /// </summary>
        public WorkOrderIdentifier WorkOrderIdentifier { get; set; }
    
        /// <summary>
        /// 此启用配方预计期望达到的生产量
        /// </summary>
        public double? TargetQuantity { get; set; }
    
        /// <summary>
        /// 配方作用于板子的表面
        /// 0=无特殊指名 1=作用于表面 2=作用于内层
        /// </summary>
        public RelevantSurface RelevantSurface { get; set; }
    
        /// <summary>
        /// 配方阶段信息列表 - 对于配方的多阶段描述
        /// </summary>
        public List<RecipeStageInformation> RecipeStagesInformation { get; set; }
    }

}