using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MegaRobo.C00225155.Entities.Entity_DB
{
    public static class PlcPoints_React
    {
        /// <summary>
        /// 1s周期 0和1切换
        /// </summary>
        public readonly static ushort R_PLCHeartPluse = 3000;
        /// <summary>
        /// 0：None 1：手动  2：自动
        /// </summary>
        public readonly static ushort R_PLCMode = 3001;
        /// <summary>
        /// 0：None 1:停止  2：运行中 
        /// </summary>
        public readonly static ushort R_PLCRunStatus = 3002;
        /// <summary>
        /// 初始化状态 0：None 1：初始化中 2：初始化失败  3：初始化完成
        /// </summary>
        public readonly static ushort R_PLCInitialStatus = 3003;
        /// <summary>
        /// 消息状态  0：无消息  1：有消息
        /// </summary>
        public readonly static ushort R_PLCInfoStatus = 3004;
        /// <summary>
        /// 旋转料仓处理中任务队列序号
        /// </summary>
        public readonly static ushort R_RotatorRack_inProcessingTaskNo = 3100;
        /// <summary>
        /// 0：需初始化；
        /// 1：硬件故障中；
        /// 2：初始化中；
        /// 3：初始化失败；
        /// 4：功能完全屏蔽中；
        /// 5：准备就绪，空闲中；
        /// 6：与其他单元任务冲突，自主去往避让位置中；
        /// 10：此任务与其他单元任务冲突，是否继续等待？
        /// 11：运行上位机任务中；
        /// 12：运行上位机任务中，但在等待其他单元到避让位置；
        /// 15：运行上位机任务中，部分功能屏蔽；
        /// 16：任务暂停中；
        /// 21：失败；
        /// 22：完成；
        /// 99：任务撤销；
        /// </summary>
        public readonly static ushort R_RotatorRack_RunResult = 3101;
        
        /// <summary>
        /// 进出托盘处理中任务队列序号
        /// </summary>
        public static ushort R_InOutPlate_inProcessingTaskNo = 3200;
        /// <summary>
        /// 进出托盘执行结果  
        /// </summary>
        public readonly static ushort R_InOutPlate_RunResult = 3201;

        /// <summary>
        /// 龙门移载处理中任务队列序号
        /// </summary>
        public readonly static ushort R_GantryTransfer_inProcessingTaskNo = 3300;
        /// <summary>
        /// 开关盖&移液执行结果
        /// </summary>
        public readonly static ushort R_GantryTransfer_RunResult = 3301;
        /// <summary>
        /// 1ml移液枪Z轴初始化
        /// </summary>
        public readonly static ushort R_1mlPipetteZInit = 3320;
        /// <summary>
        /// 1ml移液枪初始化
        /// </summary>
        public readonly static ushort R_1mlPipetteInit = 3321;
        /// <summary>
        /// 允许上外瓶
        /// </summary>
        public readonly static ushort R_UploadOuterBottle = 3322;
        /// <summary>
        /// 允许上滤芯
        /// </summary>
        public readonly static ushort R_UploadInnerBottle = 3323;
        /// <summary>
        /// 允许加样本或者稀释剂
        /// </summary>
        public readonly static ushort R_AddSampleOrDiluent = 3324;
      
        /// <summary>
        /// 磁力搅拌处理中任务队列序号
        /// </summary>
        public static ushort R_LowTemperatureMagneticStir_inProcessingTaskNo = 3400;
        /// <summary>
        /// 磁力搅拌执行结果  
        /// </summary>
        public readonly static ushort R_LowTemperatureMagneticStir_RunResult = 3401;

        /// <summary>
        /// 磁力搅拌器1 盖子状态  1：打开  2：关闭
        /// </summary>
        public readonly static ushort R_LowTemperatureMagneticStir_LidState1 = 3420;
        /// <summary>
        /// 磁力搅拌器2 盖子状态  1：打开  2：关闭
        /// </summary>
        public readonly static ushort R_LowTemperatureMagneticStir_LidState2 = 3421;

        /// <summary>
        /// 氮吹 处理中任务队列序号
        /// </summary>
        public readonly static ushort R_NitrogenBlowing__inProcessingTaskNo = 3500;
        /// <summary>
        /// 氮吹运行结果
        /// </summary>
        public readonly static ushort R_NitrogenBlowing_RunResult = 3501;
        /// <summary>
        /// 氮吹 上盖状态 1:打开  2：关闭
        /// </summary>
        public readonly static ushort R_NitrogenBlowing_LidState = 3550;




        public readonly static Dictionary<ushort, ushort> W_PCHeartPluse = new Dictionary<ushort, ushort> {
            { (ushort)DeviceNames.Plc1, 2000 }, { (ushort)DeviceNames.Plc2, 2000 }};

        /// <summary>
        /// 模式切换 间隔200ms
        /// </summary>
        public readonly static ushort W_PCMode = 2001;
        /// <summary>
        /// 1:停止  2：运行中 
        /// </summary>
        public readonly static ushort W_PCRunStatus = 2002;
        /// <summary>
        /// 整机初始化
        /// </summary>
        public readonly static ushort W_Initial = 2003;
        /// <summary>
        /// 消息确认
        /// </summary>
        public readonly static ushort W_InformationConfirm = 2004;

        /// <summary>
        /// 上位机有报警提示 0：无  1：有（用于触发蜂鸣器响）
        /// </summary>
        public readonly static ushort W_PCErrorTip = 2008;

        /// <summary>
        /// 上位机有警告提示 0：无  1：有（用于触发蜂鸣器响）
        /// </summary>
        public readonly static ushort W_PCAlarmTip = 2009;

        /// <summary>
        /// 旋转料仓任务队列序号
        /// </summary>
        public readonly static ushort W_RotatorRack_TaskQueue = 2100;
        /// <summary>
        /// 旋转料仓任务号
        /// </summary>
        public readonly static ushort W_RotatorRack_TaskNo = 2101;
        /// <summary>
        /// 旋转料仓任务撤销
        /// </summary>
        public readonly static ushort W_RotatorRack_TaskCancel = 2199;


        /// <summary>
        /// 进出托盘任务队列序号
        /// </summary>
        public readonly static ushort W_InOutPlate_TaskQueue = 2200;
        /// <summary>
        /// 进出托盘任务号
        /// </summary>
        public readonly static ushort W_InOutPlate_TaskNo = 2201;
        /// <summary>
        /// 进出托盘任务撤销
        /// </summary>
        public readonly static ushort W_InOutPlate_TaskCancel = 2299;

        /// <summary>
        /// 龙门移载 任务队列序号
        /// </summary>
        public readonly static ushort W_GantryTransfer_TaskQueue = 2300;
        /// <summary>
        /// 龙门移载任务号
        /// </summary>
        public readonly static ushort W_GantryTransfer_TaskNo = 2301;


        /// <summary>
        /// 1ml移液枪Z轴初始化结果 1：OK  2:NG
        /// </summary>
        public readonly static ushort W_1mlPipetteZInitResult = 2320;
        /// <summary>
        /// 1ml移液枪初始化结果 1：OK  2:NG
        /// </summary>
        public readonly static ushort W_1mlPipetteInitResult = 2321;
        /// <summary>
        /// 请求转盘转动
        /// </summary>
        public readonly static ushort W_Rotate = 2322;
        /// <summary>
        /// 针加液管道编号
        /// </summary>
        public readonly static ushort W_NeedleAddLiquidNo = 2323;
        /// <summary>
        /// 针加液体积
        /// </summary>
        public readonly static ushort W_NeedleAddLiquidVolume = 2324;
        /// <summary>
        /// 龙门移载任务撤销
        /// </summary>
        public readonly static ushort W_GantryTransfer_TaskCancel = 2399;
        /// <summary>
        /// 低温磁力搅拌
        /// </summary>
        public readonly static ushort W_LowTemperatureMagneticStir_TaskQueue = 2400;
        /// <summary>
        /// 低温磁力搅拌任务号
        /// </summary>
        public readonly static ushort W_LowTemperatureMagneticStir_TaskNo = 2401;
        /// <summary>
        /// 低温磁力搅拌任务撤销
        /// </summary>
        public readonly static ushort W_LowTemperatureMagneticStir_TaskCancel = 2499;


        ///// <summary>
        ///// 高温震荡
        ///// </summary>
        //public readonly static ushort W_HighTemperatureShake_TaskQueue = 2400;
        ///// <summary>
        ///// 高温震荡搅拌任务号
        ///// </summary>
        //public readonly static ushort W_HighTemperatureShake_TaskNo = 2401;
        ///// <summary>
        ///// 高温震荡搅拌任务撤销
        ///// </summary>
        //public readonly static ushort W_HighTemperatureShake_TaskCancel = 2499;

        /// <summary>
        /// 氮吹 任务队列
        /// </summary>
        public readonly static ushort W_NitrogenBlowing_TaskQueue = 2500;
        /// <summary>
        /// 氮吹任务号
        /// </summary>
        public readonly static ushort W_NitrogenBlowing_TaskNo = 2401;
        /// <summary>
        /// 氮吹任务撤销
        /// </summary>
        public readonly static ushort W_NitrogenBlowing_TaskCancel = 2599;

    }
}
