TrayInfo.cs 3.9 KB
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 

namespace OnlineStore.DeviceLibrary
{
    /// <summary>
    /// 托盘信息
    /// </summary>
    public class TrayInfo
    {

        //public TrayInfo(int trayNum, bool isFull = false, int inOrOut = 0)
        //{
        //    this.TrayCode = trayNum;
        //    this.IsFull = isFull;
        //    this.InOrOutStore = inOrOut;
        //}
        public TrayInfo(int trayNum, bool isFull, int inOrOut = 0, InOutParam inoutParam = null)
        {
            this.TrayCode = trayNum;
            this.IsFull = isFull;
            this.InOrOutStore = inOrOut;
            //this.WareCode = wareCode;
            //this.PosId = posId;
            //this.PlateH = plateH;
            //this.PlateW = plateW;
            if (inoutParam == null)
            {
                inoutParam = new InOutParam();
            }
            this.inoutPar = inoutParam;
        //    InStoreNG = false;
            ShowMsg = "";
        }
        public string ToStr()
        {
            string type = "无操作";
        
            if (InOrOutStore.Equals(1))
            {
                type = inoutPar.InStoreNg ? "[入料失败:" + ShowMsg + "]" : "入料" + "[" + inoutPar.ToStr() + "]";
            }
            else if (InOrOutStore.Equals(2))
            {
                type = inoutPar.urgentReel ? "[紧急出料]" : "出料[  " + inoutPar.ToStr() + "  ]";
            }

            //return "托盘 [" + TrayCode + "] [" + (IsFull ? "有料" : "空") +"] ["+ type + 
            //    "]二维码[" + WareCode + "]库位号[" + PosId + "] [" + PlateW + "X" + PlateH+ "]  " + err + "  "+ jinji + "" ;
            return "托盘 [" + TrayCode + "] [" + (IsFull ? "有料" : "空") + "] [" + type + "]";
        }
        /// <summary>
        /// 夹具编码值(1-32?)
        /// </summary>
        public int TrayCode = -1;
        /// <summary>
        /// 是否有料盘,true=有料盘
        /// </summary>
        public bool IsFull = false;
        /// <summary>
        /// 出库还是入库(有料盘时才有此操作)0=无操作,1=入库,2=出库
        /// </summary>
        public int InOrOutStore = 0;

        ///// <summary>
        ///// 物品二维码信息
        ///// </summary>
        //public string WareCode = "";
        ///// <summary>
        ///// 位置名(对应配置表的位置)
        ///// </summary>
        //public string PosId = "";
        ///// <summary>
        ///// 料盘高度
        ///// </summary>
        //public int PlateH = 0;
        ///// <summary>
        ///// 料盘宽度
        ///// </summary>
        //public int PlateW = 0;
        /// <summary>
        /// 入库失败料盘,未扫到码或获取库位号失败
        /// </summary>
     //   public bool InStoreNG = false;
        public string ShowMsg = "";

        //public bool EmergencyOut = false;

        private InOutParam inoutPar = null;
        public InOutParam InoutPar
        {
            get
            {
                if (inoutPar == null)
                {
                    inoutPar = new InOutParam();
                }
                inoutPar.TrayNumber = TrayCode; 
                return inoutPar;
            }
            set
            {
                this.inoutPar = value;
            }
        }
    }
    /// <summary>
    /// 托盘上的物料的类型
    /// </summary>
    internal class ReelType
    {
        /// <summary>
        /// 等待入库料盘
        /// </summary>
        internal static  int InStore = 1;

        /// <summary>
        /// 料仓出库料盘
        /// </summary>
        internal static int OutStore = 2;

        ///// <summary>
        ///// 紧急出库料盘
        ///// </summary>
        //internal static int OutStore_Equip = 3;

        ///// <summary>
        ///// 入库失败需要NG气缸退出的料盘
        ///// </summary>
        //internal static int InStoreNG = 4;
    }
}