111
lss
2 天以前 23c28e3c0437081a78a48e54dc066c87500fa8bc
HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/DeviceProcess.cs
@@ -293,6 +293,10 @@
            }
        }
        /// <summary>
        /// 线程读取叠盘机数据 存放内存
        /// </summary>
        /// <param name="device"></param>
        internal static void DpjTrafficRead(Settings.deviceInfo device)
        {
            while (true)
@@ -324,10 +328,48 @@
                    LogHelper.Error($"ReadDpj DpjTraffic:{ex}", ex);
                }
                Thread.Sleep(1000);
            }
          
        }
        /// <summary>
        /// 叠盘机内存数据触发任务
        /// </summary>
        /// <param name="dpj"></param>
        internal static void DpjTraffic2(DpjInfo dpj)
        {
            try
            {
                LogHelper.Info($"叠盘机{dpj.Address},叠盘信号{dpj.PickUp},数量{dpj.qty}");
                if (dpj.qty >= 1 && dpj.PickUp == 1)
                {
                    //创建过未完成的任务不发起请求
                    var mst = WCSHelper.GetTaskByStartloc(dpj.Loc);
                    if (mst == null)
                    {
                        Traystacker(dpj.Loc, dpj.qty, 2);
                    }
                    else
                    {
                        LogHelper.Info($"有执行中的叠盘回库任务{mst.S_CODE},不触发叠盘任务");
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error($"ReadDpj DpjTraffic:{ex}", ex);
            }
        }
        /// <summary>
        /// 读取叠盘机数据触发任务
        /// </summary>
        /// <param name="device"></param>
        internal static void DpjTraffic1(Settings.deviceInfo device)
        {
@@ -405,59 +447,7 @@
        }
        internal static void DpjTraffic2(DpjInfo dpj)
        {
            try
            {
                LogHelper.Info($"叠盘机{dpj.Address},叠盘信号{dpj.PickUp},数量{dpj.qty}");
                if (dpj.qty >= 1 && dpj.PickUp == 1)
                {
                    //var cntr = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE.Trim() == item.S_CODE).ToList();
                    //if (cntr.Count > 0)
                    //{
                    //    var cntrcodes = cntr.Select(a => a.S_CNTR_CODE).ToArray();
                    //    cntrcode = string.Join(",", cntrcodes);
                    //}
                    //创建过未完成的任务不发起请求
                    var mst = WCSHelper.GetTaskByStartloc(dpj.Loc);
                    if (mst == null)
                    {
                        Traystacker(dpj.Loc, dpj.qty, 2);
                    }
                    else
                    {
                        LogHelper.Info($"有执行中的叠盘回库任务{mst.S_CODE},不触发叠盘任务");
                    }
                    //var loc = LocationHelper.GetLocByLoc(device.TN_Location);
                    //if (loc != null)
                    //{
                    //    if (loc.N_LOCK_STATE == 0) {
                    //        Traystacker(device.TN_Location, value, 2);
                    //    }
                    //    else
                    //    {
                    //        LogHelper.Info($"设备起点:{device.TN_Location}有锁,不生成任务");
                    //    }
                    //}
                    //else
                    //{
                    //    LogHelper.Info($"根据设备:{device.deviceName},起点:{device.TN_Location},未找到货位");
                    //}
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error($"ReadDpj DpjTraffic:{ex}", ex);
            }
        }
        /// <summary>
        /// 原材料库接口访问
        /// </summary>