| | |
| | | } |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 线程读取叠盘机数据 存放内存 |
| | | /// </summary> |
| | | /// <param name="device"></param> |
| | | internal static void DpjTrafficRead(Settings.deviceInfo device) |
| | | { |
| | | while (true) |
| | |
| | | |
| | | 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) |
| | | { |
| | | |
| | |
| | | |
| | | |
| | | } |
| | | |
| | | 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> |