wangxinhui
2026-01-12 ded9c653b4bd5f45cb23124068687135c29e6915
ÏîÄ¿´úÂë/WMS/WMSServices/WIDESEA_TaskInfoService/MesTaskService.cs
@@ -228,6 +228,7 @@
                    //退料
                    List<Dt_StockInfo> stockInfos=new List<Dt_StockInfo>();
                    List<Dt_Task> tasksNew = new List<Dt_Task>();
                    List<Dt_AGVStationInfo> _AGVStationInfos = new List<Dt_AGVStationInfo>();
                    foreach (var item in returnIssueDTOs.Where(x => x.ReturnMaterial != null))
                    {
                        MESReturnMaterial? returnMaterial = item.ReturnMaterial;
@@ -281,7 +282,7 @@
                            IsPick = returnMaterial.Whether == 0 ? WhetherEnum.True.ObjToInt() : WhetherEnum.False.ObjToInt(),
                            Remark = StockStatusEmun.MES余料退库.ToString()
                        };
                        if (stockInfo.MaterielWide > 1200)
                        if (stockInfo.MaterielWide >= 1160)
                        {
                            stockInfo.PalletType = 2;
                        }
@@ -309,13 +310,27 @@
                        TaskTypeEnum taskTypeEnum = aGVStationInfo.StationArea switch
                        {
                            nameof(StationAreaEnum.一楼印刷) => TaskTypeEnum.PrintYLBackInbound,
                            nameof(StationAreaEnum.一楼纸张淋膜) => TaskTypeEnum.PaperLMYLBackInbound,
                            nameof(StationAreaEnum.一楼无纺淋膜) => TaskTypeEnum.WFBLMYLBackInbound,
                            nameof(StationAreaEnum.二楼无纺布袋) => TaskTypeEnum.WFBBackInbound,
                            nameof(StationAreaEnum.二楼纸袋) => TaskTypeEnum.PaperYLBackInbound,
                            _ => throw new Exception("未找到对应任务")
                        };
                        if (taskTypeEnum == TaskTypeEnum.WFBLMYLBackInbound || taskTypeEnum == TaskTypeEnum.WFBBackInbound)
                        {
                            Dt_AGVStationInfo? stationInfo = AssignWFBStation(_AGVStationInfos?.Select(x=>x.AGVStationCode).ToList()) ?? throw new Exception("未找到可用无纺布暂存架");
                            newTask.NextAddress = stationInfo.AGVStationCode;
                            newTask.TargetAddress = stationInfo.AGVStationCode;
                            newTask.Roadway = "AGV";
                            stationInfo.IsOccupied = 1;
                            _AGVStationInfos.Add(stationInfo);
                        }
                        newTask.TaskType = taskTypeEnum.ObjToInt();
                        tasksNew.Add(newTask);
                    }
                    _unitOfWorkManage.BeginTran();
                    BaseDal.AddData(tasksNew);
                    _basicRepository.AGVStationInfoRepository.UpdateData(_AGVStationInfos);
                    _stockRepository.StockInfoRepository.AddData(stockInfos);
                    _unitOfWorkManage.CommitTran();
                    //推送任务