using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WIDESEAWCS_Tasks
{
    /// 
    /// 运行模式
    /// 
    public enum RunModeEnum
    {
        /// 
        /// 未知
        /// 
        [Description("未知")]
        UnKnown = 0,
        /// 
        /// 自动
        /// 
        [Description("自动")]
        Automatic = 1,
        /// 
        /// 半自动
        /// 
        [Description("半自动")]
        SemiAutomatic = 2,
        /// 
        /// 手动
        /// 
        [Description("手动")]
        Manual = 3,
        /// 
        /// 维修
        /// 
        [Description("维修")]
        Maintenance = 4,
    }
    /// 
    /// 运行状态
    /// 
    public enum RunStateEnum
    {
        [Description("空闲")]
        Standby=0,
        [Description("取货行走")]
        PickUp=1,
        [Description("取货请求")]
        PickUpRequest=2,
        [Description("取货中")]
        PickUping=3,
        [Description("取货完成")]
        PickUpCompleted=4,
        [Description("放货行走")]
        Put=5,
        [Description("放货请求")]
        PutRequest=6,
        [Description("放货中")]
        Puting=7,
        [Description("放货完成")]
        PutCompleted=8,
        [Description("移动中")]
        Moving=9,
        [Description("移动完成")]
        MoveCompleted=10,
    }
    /// 
    /// 天车报警代码
    /// 
    public enum AlarmCodeEnum
    {
        [Description("正常")]
        Normal = 0,
        [Description("故障数字")]
        AlarmCode = 1,
        [Description("空取")]
        EmptyPickUp = 2
    }
    /// 
    /// 天车任务状态
    /// 
    public enum TaskStateEnum
    {
        [Description("默认")]
        Normal = 0,
        [Description("确认接收任务")]
        AcceptTaskConfirm = 1,
        [Description("任务执行中")]
        TaskExcuting = 2,
        [Description("正常完成任务")]
        TaskComplete = 3,
        [Description("任务暂停中")]
        TaskPausing = 4,
        [Description("无法完成任务")]
        TaskNOComplete = 5,
        [Description("任务被人工清除")]
        TaskManualClear = 6
    }
    public enum DeviceDBName
    {
        #region 读取DB块
        /// 
        /// 心跳
        /// 
        [Description("心跳")]
        R_HeartBeat,
        /// 
        /// 运行模式
        /// 
        [Description("运行模式")]
        R_RunMode,
        /// 
        /// 运行状态
        /// 
        [Description("运行状态")]
        R_RunState ,
        /// 
        /// 故障代码
        /// 
        [Description("故障代码")]
        R_AlarmCode,
        /// 
        /// 任务状态
        /// 
        [Description("任务状态")]
        R_TaskState,
        /// 
        /// 天车大车当前位置
        /// 
        [Description("天车大车当前位置")]
        R_CurrentLine,
        /// 
        /// 天车小车当前位置
        /// 
        [Description("天车小车当前位置")]
        R_CurrentColumn,
        /// 
        /// 起升当前位置
        /// 
        [Description("起升当前位置")]
        R_RiseUp_Position,
        /// 
        /// 任务号
        /// 
        [Description("任务号")]
        R_TaskNumber,
        /// 
        /// 1号货爪是否有货(保留)
        /// 
        [Description("1号货爪有货")]
        R_Loaded_1,
        /// 
        /// 2号货爪是否有货(保留)
        /// 
        [Description("2号货爪有货")]
        R_Loaded_2,
        /// 
        /// 1号货爪扫码结果
        /// 
        [Description("1号货爪扫码结果")]
        weight,
        
        #endregion
        #region 写DB块
        [Description("心跳")]
        W_HeartBeat,
        [Description("任务类型")]
        W_Task_Type,
        [Description("装车层数")]
        W_Load_Layer,
        [Description("取货行")]
        W_Pick_Line,
        [Description("取货列")]
        W_Pick_Column,
        [Description("取货层")]
        W_Pick_Layer,
        [Description("放货行")]
        W_Put_Line,
        [Description("放货列")]
        W_Put_Column,
        [Description("放货层")]
        W_Put_Layer,
        [Description("货爪1是否抓货")]
        W_Catch_1,
        [Description("货爪2是否抓货")]
        W_Catch_2,
        [Description("任务号")]
        W_TaskNumber,
        [Description("校验值")]
        W_CheckValue,
        [Description("确认信号")]
        W_ConfirmSignal,
        [Description("行车锁定剔除位")]
        W_ZXJ_LockLocation,
        [Description("行车锁定规整机")]
        W_GZJ_LockGZJ,
        [Description("重量读取成功")]
        R_WeightSuccess,
        [Description("厚度读取成功")]
        R_ThicknessSuccess,
        
        #endregion
    }
    public enum ZXJDBName 
    {
        /// 
        /// 心跳
        /// 
        [Description("心跳")]
        R_ZXJ_HeartBeat,
        /// 
        /// 整形机投入使用
        /// 
        [Description("整形机投入使用")]
        R_ZXJ_isWork,
        /// 
        /// 上料模式轨道车
        /// 
        [Description("上料模式轨道车")]
        R_ZXJ_RGVMode,
        /// 
        /// 上料模式行车
        /// 
        [Description("上料模式行车")]
        R_ZXJ_TCMode,
        /// 
        /// 剔除未可取板
        /// 
        [Description("剔除未可取板")]
        R_ZXJ_TC_isready,
        /// 
        /// 剔除模式行车
        /// 
        [Description("剔除模式行车")]
        R_TCMode_TC,
        /// 
        /// 剔除模式叉车
        /// 
        [Description("剔除模式叉车")]
        R_TCMode_CC,
        /// 
        /// 行车可准备取板
        /// 
        [Description("行车可准备取板")]
        R_HC_isReady,
        /// 
        /// 行车可放板
        /// 
        [Description("行车可放板")]
        R_HC_isReadyWork,
        /// 
        /// 进料小车安全位
        /// 
        [Description("进料小车安全位")]
        R_issafe,
        /// 
        /// 写脉冲信号
        /// 
        [Description("写脉冲信号")]
        W_ZXJ_HeartBeat,
        /// 
        /// 写脉冲信号
        /// 
        [Description("厚度记录时间")]
        R_ThicknessRecorder,
        /// 
        /// 写脉冲信号
        /// 
        [Description("重量记录时间")]
        R_WeightRecorder,
        /// 
        /// 写脉冲信号
        /// 
        [Description("上板数据记录")]
        R_CommonRecorder,
        /// 
        /// 写脉冲信号
        /// 
        [Description("剔除数据记录")]
        R_SpecialRecorder,
        /// 
        /// 写脉冲信号
        /// 
        [Description("极板总重量")]
        R_TotalWeight,
        /// 
        /// 记录上左数据
        /// 
        [Description("记录上左数据")]
        R_TopLeft,
        /// 
        /// 记录上中数据
        /// 
        [Description("记录上中数据")]
        R_TopMiddle,
        /// 
        /// 记录上右数据
        /// 
        [Description("记录上右数据")]
        R_TopRight,
        /// 
        /// 记录中左数据
        /// 
        [Description("记录中左数据")]
        R_CentreLeft,
        /// 
        /// 记录中间数据
        /// 
        [Description("记录中间数据")]
        R_CentreMiddle,
        /// 
        /// 记录中右数据
        /// 
        [Description("记录中右数据")]
        R_CentreRight,
        /// 
        /// 记录下左数据
        /// 
        [Description("记录下左数据")]
        R_BottomLeft,
        /// 
        /// 记录下右数据
        /// 
        [Description("记录下右数据")]
        R_BottomRight,
        /// 
        /// 记录板重数据
        /// 
        [Description("记录板重数据")]
        R_Weight,
        /// 
        /// 记录上左上限
        /// 
        [Description("记录上左上限")]
        R_TopLeftUp,
        /// 
        /// 记录上左下限
        /// 
        [Description("记录上左下限")]
        R_TopLeftBelow,
        /// 
        /// 记录上中上限
        /// 
        [Description("记录上中上限")]
        R_TopMiddleUp,
        /// 
        /// 记录上中下限
        /// 
        [Description("记录上中下限")]
        R_TopMiddleBelow,
        /// 
        /// 记录上右上限
        /// 
        [Description("记录上右上限")]
        R_TopRightUp,
        /// 
        /// 记录上右下限
        /// 
        [Description("记录上右下限")]
        R_TopRightBelow,
        /// 
        /// 记录中左上限
        /// 
        [Description("记录中左上限")]
        R_CentreLeftUp,
        /// 
        /// 记录中左下限
        /// 
        [Description("记录中左下限")]
        R_CentreLeftBelow,
        /// 
        /// 记录中间上限
        /// 
        [Description("记录中间上限")]
        R_CentreMiddleUp,
        /// 
        /// 记录中间下限
        /// 
        [Description("记录中间下限")]
        R_CentreMiddleBelow,
        /// 
        /// 记录中右上限
        /// 
        [Description("记录中右上限")]
        R_CentreRightUp,
        /// 
        /// 记录中右下限
        /// 
        [Description("记录中右下限")]
        R_CentreRightBelow,
        /// 
        /// 记录下左上限
        /// 
        [Description("记录下左上限")]
        R_BottomLeftUp,
        /// 
        /// 记录下左下限
        /// 
        [Description("记录下左下限")]
        R_BottomLeftBelow,
        /// 
        /// 记录下右上限
        /// 
        [Description("记录下右上限")]
        R_BottomRightUp,
        /// 
        /// 记录下右下限
        /// 
        [Description("记录下右下限")]
        R_BottomRightBelow,
        /// 
        /// 记录板重上限
        /// 
        [Description("记录板重上限")]
        R_WeightUp,
        /// 
        /// 记录板重下限
        /// 
        [Description("记录板重下限")]
        R_WeightBelow,
    }
    public enum GZJDBName 
    {
        /// 
        /// 读脉冲心跳
        /// 
        [Description("读脉冲心跳")]
        R_GZJ_HeartBeat,
        /// 
        /// 规整机投入使用
        /// 
        [Description("规整机投入使用")]
        R_GZJ_isWork,
        /// 
        /// 上料模式轨道车
        /// 
        [Description("上料模式轨道车")]
        R_RGVMode,
        /// 
        /// 上料模式叉车
        /// 
        [Description("上料模式叉车")]
        R_CCMode,
        /// 
        /// 剔除上料模式
        /// 
        [Description("剔除上料模式")]
        R_TCMode,
        /// 
        /// 东跨架子可取板
        /// 
        [Description("东跨架子可取板")]
        R_DK_isready,
        /// 
        /// 西跨架子可取板
        /// 
        [Description("西跨架子可取板")]
        R_XK_isready,
        /// 
        /// 剔除架子可取板
        /// 
        [Description("剔除架子可取板")]
        R_TC_isready,
        [Description("规整机写脉冲心跳")]
        W_GZJ_HeartBeat
    }
}