1
pulg
2025-06-16 56720402fb7a587016dc1d8488306d66758642ec
HH.WCS.QingXiNongfu/core/Monitor.cs
@@ -2465,10 +2465,15 @@
                    if (!c.Any() || c.FirstOrDefault()?.S_TYPE == BQ_PRA.B)
                    {
                        //回库。
                        LogHelper.Info($"循环有无退库==> 有 退库" + l2.S_LOC_CODE);
                        continue;
                    }
                    var cirs = ContainerHelper.GetCntrItemRel(c.FirstOrDefault().S_CNTR_CODE);
                    if (!cirs.Any()) continue;
                    if (!cirs.Any())
                    {
                        LogHelper.Info($"循环有无退库==> 没有物料信息 托盘:" + c.FirstOrDefault().S_CNTR_CODE);
                        continue;
                    }
                    var cir = cirs.OrderByDescending(x => x.T_CREATE).FirstOrDefault();
                    var xbqs = LocationHelper.GetAreaNormalLocList(WJ_BQ.RK_XBKQ);
@@ -2481,15 +2486,25 @@
                            var xc = LocationHelper.GetList<LocCntrRel>(x => x.S_LOC_CODE == l3.S_LOC_CODE);
                            if (!xc.Any() || xc.FirstOrDefault()?.S_TYPE == BQ_PRA.B)
                            {
                                LogHelper.Info($"循环线边==> 有 退库" + xc.FirstOrDefault()?.S_TYPE);
                                continue;
                            }
                            var xcirs = ContainerHelper.GetCntrItemRel(xc.FirstOrDefault().S_CNTR_CODE);
                            if (!xcirs.Any()) continue;
                            if (!xcirs.Any())
                            {
                                LogHelper.Info($"循环线边==>  没有物料信息 托盘:" + xc.FirstOrDefault().S_CNTR_CODE);
                                continue;
                            }
                            var xcir = xcirs.OrderByDescending(x => x.T_CREATE).FirstOrDefault();
                            if (xcir.S_ITEM_CODE != cir.S_ITEM_CODE || xcir.S_ITEM_NAME != cir.S_ITEM_CODE)
                            {
                                LogHelper.Info($"循环线边==>  物料不匹配 托盘:" + xc.FirstOrDefault().S_CNTR_CODE);
                                continue;
                            }
                        }
                        var e = x2.FindAll(x => x.N_COL > (l3?.N_COL ?? 0) && x.N_CURRENT_NUM == 0).FirstOrDefault();
                        LogHelper.Info($"无菌 生成任务==> 是否有合适的货位信息" + e.S_LOC_CODE);
                        if (e != null)
                        {
                            var re = TaskProcess.CreateTransport("", l2.S_LOC_CODE.Trim(), e.S_LOC_CODE, "标签叉运-接驳转线边", new List<string> { c.FirstOrDefault().S_CNTR_CODE }, 1, 1, 1, 62, BQ_PRA.Out);
@@ -3607,7 +3622,7 @@
                                    LogHelper.Info(rl.S_LOC_CODE + "识别托盘上的物料信息。" + JsonConvert.SerializeObject(_clcntitem));
                                    if (_clcntitem != null)
                                    {
                                        LogHelper.Info("相互是否匹配 _clcntitem S_ITEM_CODE:" + _clcntitem.S_ITEM_CODE + " od" + od.SQL_ItemCode + " _clcntitem S_ITEM_NAME:" + _clcntitem.S_ITEM_NAME + "od: " + od.SQL_ItemName);
                                        LogHelper.Info("相互是否匹配 _clcntitem S_ITEM_CODE:" + _clcntitem.S_ITEM_CODE + " od" + od.SQL_ItemCode + " _clcntitem S_ITEM_NAME:" + _clcntitem.S_ITEM_NAME + "od: " + od.SQL_ItemName + " od.S_CJ_NAME:" + od.S_CJ_NAME);
                                        if (_clcntitem.S_ITEM_CODE == od.SQL_ItemCode && _clcntitem.S_ITEM_NAME == od.SQL_ItemName && _clcntitem.S_CJ_NAME == od.S_CJ_NAME)
                                        {
@@ -3646,6 +3661,10 @@
                                    {
                                        EndBit = locs1.FirstOrDefault().S_LOC_CODE;
                                    }
                                    else
                                    {
                                        continue;
                                    }
                                }
                                var b = TaskProcess.CreateTransport(od.SQL_WorkNo, StartBit.S_LOC_CODE, EndBit, "原物料搬运-纸箱", crs, StartBit.N_CURRENT_NUM - crs.Count + 1, 1, crs.Count, PLC.taskPri, "", Endbit.S_LOC_CODE);
                                if (b)