Ver Fonte

二次码垛筛选多规格垛型执行

林豪 左 há 1 ano atrás
pai
commit
c9c129856d

+ 1 - 1
业务工程/分拣库/WCS.WorkEngineering/Systems/分拣支线/桁架分流点.cs

@@ -173,7 +173,6 @@ namespace WCS.WorkEngineering.Systems.分拣支线
             {
                 World.Log($"无可用线体:{taskInfo.ID}", LogLevelEnum.Mid);
                 //如果当前工字轮是18,不会触发当前逻辑,因为所有在桁架码垛的18工字轮仅一种规格
-                if (taskInfo.GoodsType == 18) return false;
                 var endTime = DateTime.Now.AddMinutes(-30);
                 //找一个当前时间最早且已超过30分钟未码垛的码垛信息半托入库
                 //未结束且包含当前物料编号的垛形,按时间排序,创建时间早的优先分配,当前任务的仓库号必须要等于码垛信息绑定的仓库号
@@ -182,6 +181,7 @@ namespace WCS.WorkEngineering.Systems.分拣支线
                     .Where(x => !x.Finish && x.WarehouseCode == taskInfo.WarehouseCode &&
                                 x.Layers.Any(l => l.Rows.Any(r => r.Finish)))
                     .Where(x => x.EditTime < endTime).ToList()
+                    .Where(x => x.Layers.SelectMany(l => l.Rows).GroupBy(r => r.MatCodeList).Count() > 1)
                     .MinBy(x => x.AddTime);
                 cacheLineList = db.Queryable<WCS.Entity.WCS_CacheLine>()
                     .Where(x => x.WarehouseCode == taskInfo.WarehouseCode && x.IsTruss).ToList();