hutongqing
2024-12-24 a9b3ce04ed59794b648db00bc85001a4fb96c932
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs
@@ -87,8 +87,6 @@
        }
        /// <summary>
        /// æŽ¥æ”¶WMS任务信息
        /// </summary>
@@ -112,23 +110,40 @@
                    task.Creater = "WMS";
                    task.TaskState = (int)TaskStatusEnum.New;
                    task.CurrentAddress = item.SourceAddress;
                    task.NextAddress = item.TargetAddress;
                    List<Dt_WarehouseDevice> wades = warehouseDevices.Where(x => x.WarehouseId == item.WarehouseId).ToList();
                    Dt_Router? router = new Dt_Router();
                    if (string.IsNullOrEmpty(item.AGVArea))
                    {
                        Dt_StationManger stationManger = _stationMangerRepository.QueryFirst(x => x.StationCode == item.SourceAddress || x.StackerCraneCode == item.RoadWay);
                        //stationManger.AGVStationCode
                        //stationManger.StackerCraneCode
                        //stationManger.StationDeviceCode
                        if (stationManger == null)
                        {
                            return WebResponseContent.Instance.Error($"未找到站台配置信息");
                        }
                        List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == item.TaskType && (stationManger.StationDeviceCode == x.StartPosi || stationManger.StackerCraneCode == x.StartPosi));
                        if (routers.FirstOrDefault() == null)
                        {
                            return WebResponseContent.Instance.Error($"未找到路由配置信息");
                        }
                        router = routers.FirstOrDefault();
                        if (routers.Count == 1)
                        {
                            task.NextAddress = router?.NextPosi ?? "";
                        }
                    }
                    else
                    {
                        List<Dt_Router> routers = _routerRepository.QueryData(x => x.InOutType == item.TaskType && item.AGVArea == x.StartPosi);
                        if (routers.FirstOrDefault() == null)
                        {
                            return WebResponseContent.Instance.Error($"未找到路由配置信息");
                        }
                        router = routers.FirstOrDefault();
                        task.NextAddress = router?.NextPosi ?? "";
                    }
                    tasks.Add(task);