RobotEquip-NGBox.cs 1.3 KB
using OnlineStore.Common;
using OnlineStore.LoadCSVLibrary;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;

namespace OnlineStore.DeviceLibrary
{
    public partial class RobotEquip
    {
        /// <summary>
        /// NG箱子有料时的有效期(分钟)
        /// </summary>
        private int validityPeriod = Common.ConfigAppSettings.GetIntValue(Setting_Init.ValidityPeriod);
        /// <summary>
        /// NG箱可放置料盘的个数
        /// </summary>
        private int validityCnt = ConfigAppSettings.GetIntValue(Setting_Init.ValidityCnt);
        public int TrayCntInNGBox
        {
            get { return BufferDataManager.TraysInNGBoxInfo.Count; }
        }
        /// <summary>
        /// NG箱触发报警
        /// </summary>
        /// <returns></returns>
        public bool NGBoxAlarm()
        {
            List<InOutPosInfo> posInfos = BufferDataManager.TraysInNGBoxInfo;
            if (TrayCntInNGBox >= validityCnt ||
                (posInfos != null && posInfos.Count > 0 && (DateTime.Now - posInfos[0].CreateTime).TotalMinutes >= validityPeriod))
                return true;
            return false;
        }
    }
}