wankeda
2 天以前 734f49c3f74e4a46cfb5892ce60dbf1bb86e74ab
WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob/ConveyorLineTaskCommand.cs
@@ -17,10 +17,10 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WIDESEAWCS_Common.Attributes;
using WIDESEAWCS_QuartzJob.DeviceBase;
namespace WIDESEAWCS_Tasks.ConveyorLineJob
@@ -34,23 +34,293 @@
        public int TargetAddress { get; set; }
        public int TaskNum { get; set; }
        public int EVENT { get; set; }
        public int TaskNo { get; set; }
    }
    public class ConveyorLineCommand
    public class R_ConveyorLineInfo : DeviceCommand
    {
        /// <summary>
        /// 站台编号
        /// </summary>
        public short CovNO { get; set; }
        /// <summary>
        /// 状态
        /// </summary>
        public byte Status { get; set; }
        /// <summary>
        /// 预留
        /// </summary>
        public byte Undefined { get; set; }
        /// <summary>
        /// 任务号
        /// </summary>
        public int TaskNo { get; set; }
        /// <summary>
        /// 起始地址
        /// </summary>
        public short StartPos { get; set; }
        /// <summary>
        /// 目标地址
        /// </summary>
        public short EndPos { get; set; }
        /// <summary>
        /// 重量
        /// </summary>
        public short GoodsWeight { get; set; }
        /// <summary>
        /// 货物类型
        /// </summary>
        public short GoodsType { get; set; }
        /// <summary>
        /// 0静止1前进2后退3上升/顺时针旋转4下降/逆时针旋转
        /// </summary>
        public short RunStatus { get; set; }
        private string _barcode;
        /// <summary>
        /// 条码
        /// </summary>
        [DataLength(20)]
        public string Barcode
        {
            get { return _barcode; }
            set { _barcode = value.Replace("\0", "").Replace("\\0", ""); }
        }
        /// <summary>
        /// 预留
        /// </summary>
        public short Spare1 { get; set; }
        /// <summary>
        /// 预留
        /// </summary>
        public short Spare2 { get; set; }
        /// <summary>
        /// 交互信号
        /// </summary>
        public byte Signal { get; set; }
        /// <summary>
        /// 预留
        /// </summary>
        public byte Undefined2 { get; set; }
    }
    public class R_ConveyorLineCPInfo : DeviceCommand
    {
        /// <summary>
        /// 到位指令
        /// </summary>
        public short ConveyArrivaled { get; set; }
        /// <summary>
        /// 起始地址
        /// </summary>
        public short StartPos { get; set; }
        /// <summary>
        /// 终点地址
        /// </summary>
        public short EndPos { get; set; }
        /// <summary>
        /// 托盘号
        /// </summary>
        /// <summary>
        [DataLength(20)]
        public string Barcode { get; set; }
        /// <summary>
        /// 任务号
        /// </summary>
        [DataLength(20)]
        public string TaskNo { get; set; }
        /// <summary>
        /// 类型
        /// </summary>
        public short WorkType { get; set; }
        /// <summary>
        /// 模式
        /// </summary>
        public short WorkMode { get; set; }
        /// <summary>
        /// 校验位
        /// </summary>
        public short CheckPos { get; set; }
    }
    public class R_ConveyorLineGMInfo : DeviceCommand
    {
        /// <summary>
        /// 箱号
        /// </summary>
        /// <summary>
        [DataLength(120)]
        public string Boxcode { get; set; }
    }
    public class R_ConveyorLineFLInfo : DeviceCommand
    {
        /// <summary>
        /// 托盘号
        /// </summary>
        /// <summary>
        [DataLength(20)]
        public string Barcode { get; set; }
        /// <summary>
        /// 任务号
        /// </summary>
        [DataLength(20)]
        public string TaskNum { get; set; }
    }
    public class R_ConveyorLineStatus
    {
        /// <summary>
        /// 握手信号
        /// </summary>
        [BoolIndex(0)]
        public bool HandShake { get; set; }
        /// <summary>
        /// 1联机 0脱机
        /// </summary>
        [BoolIndex(1)]
        public bool Online { get; set; }
        /// <summary>
        /// 1空闲 0繁忙
        /// </summary>
        [BoolIndex(2)]
        public bool Free { get; set; }
        /// <summary>
        /// 1有货 0无货
        /// </summary>
        [BoolIndex(3)]
        public bool Goods { get; set; }
        /// <summary>
        /// 1故障 0正常
        /// </summary>
        [BoolIndex(4)]
        public bool Alarm { get; set; }
        /// <summary>
        /// 1请求补盘 0无
        /// </summary>
        [BoolIndex(5)]
        public bool RequestPakcPallet { get; set; }
        /// <summary>
        /// 1请求拆盘 0无
        /// </summary>
        [BoolIndex(6)]
        public bool RequestUnpackPellet { get; set; }
    }
    public class ConveyorLineSignal
    {
        /// <summary>
        /// 请求信号
        /// </summary>
        [BoolIndex(0)]
        public bool STB { get; set; }
        /// <summary>
        /// 响应信号
        /// </summary>
        [BoolIndex(1)]
        public bool ACK { get; set; }
        public bool Free { get; set; }
        public bool Online { get; set; }
        public int TaskNo { get; set; }
        public string BarCode { get; set; }
        public int GoodsType { get; set; }
    }
    public class W_ConveyorLineInfo : DeviceCommand
    {
        /// <summary>
        /// 站台编号
        /// </summary>
        public short CovNO { get; set; }
        public byte Operate { get; set; }
        public byte Undefined { get; set; }
        /// <summary>
        /// 任务号
        /// </summary>
        public int TaskNo { get; set; }
        /// <summary>
        /// 起始地址
        /// </summary>
        public short StartPos { get; set; }
        /// <summary>
        /// 目标地址
        /// </summary>
        public short EndPos { get; set; }
        /// <summary>
        /// 货物类型
        /// </summary>
        public short GoodsType { get; set; }
        /// <summary>
        /// 预留
        /// </summary>
        public short Spare1 { get; set; }
        /// <summary>
        /// 预留
        /// </summary>
        public short Spare2 { get; set; }
        /// <summary>
        /// 交互信号
        /// </summary>
        public byte Signal { get; set; }
        /// <summary>
        /// 预留
        /// </summary>
        public byte Undefined2 { get; set; }
    }
    public class W_ConveyorLineOperate
    {
        /// <summary>
        /// 握手信号
        /// </summary>
        [BoolIndex(0)]
        public bool HandShake { get; set; }
        /// <summary>
        /// 复位报警
        /// </summary>
        [BoolIndex(1)]
        public bool ClearAlarm { get; set; }
        /// <summary>
        /// 退回
        /// </summary>
        [BoolIndex(2)]
        public bool Return { get; set; }
    }
}