1
huanghongfeng
2024-12-08 885bd60ed54a0642c48c57a3d685cba24e4c763b
´úÂë¹ÜÀí/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/StackerCraneJob/CommonStackerCraneJob.cs
@@ -143,21 +143,46 @@
                if (targetCodes[4] == "02")
                {
                    task = OutTaskMovelibrary(task);
                    if (task != null)
                    Dt_Task taskst = OutTaskMovelibrary(task);
                    if (taskst != null)
                    {
                        if(taskst.TaskType == (int)TaskRelocationTypeEnum.Relocation)
                        {
                            return taskst;
                        }
                        else
                        {
                            if(taskst.TargetAddress== "R02-001-021-001-02" || taskst.TargetAddress == "R02-001-022-001-02")
                            {
                                return taskst;
                            }
                            else
                            {
                                if (OutTaskStationIsOccupied(taskst) != null)
                                {
                                    return taskst;
                                }
                            }
                        }
                    }
                    task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
                }
                else
                {
                    if (task.TargetAddress == "R02-001-021-001-02" || task.TargetAddress == "R02-001-022-001-02")
                    {
                        return task;
                    }
                    else
                    {
                        if (OutTaskStationIsOccupied(task) != null)
                        {
                            return task;
                        }
                    }
                }
                else
                {
                    if (OutTaskStationIsOccupied(task) != null)
                    {
                        return task;
                    }
                    task = _taskService.QueryStackerCraneInTask(commonStackerCrane.DeviceCode);
                }
@@ -233,7 +258,7 @@
                }
                targetCodes[4] = "01";
                string SourceAddress = string.Join("-", targetCodes); //组装浅库位地址
                Dt_Task? tasks = _taskService.QueryStationIsOccupiedOutTasks(task.Roadway, SourceAddress).FirstOrDefault();
                Dt_Task? tasks = _taskService.QueryStationIsOccupiedOutTasks(task.Roadway, SourceAddress).FirstOrDefault(); //找浅库位是否有任务
                if (tasks != null)
                {
                    return tasks;
@@ -261,7 +286,7 @@
            if (Applyrelease(commonStackerCrane)) //读取堆垛机放货申请
            {
                Dt_Task task = _taskService.IngStackerCraneTask2(commonStackerCrane.DeviceCode);
                if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound)
                if (task.TaskType == (int)TaskOutboundTypeEnum.Outbound && (task.TargetAddress != "R02-001-021-001-02" && task.TargetAddress != "R02-001-022-001-02"))
                {
                    IDevice? device = Storage.Devices.FirstOrDefault(x => x.DeviceProDTOs.Exists(x => x.DeviceChildCode == task.TargetAddress));
                    if (device != null)
@@ -301,7 +326,7 @@
            else
            {
                Dt_Task task = _taskService.IngStackerCraneTask2(commonStackerCrane.DeviceCode);
                if (task !=null && task.TaskType == (int)TaskOutboundTypeEnum.Outbound)
                if (task !=null && task.TaskType == (int)TaskOutboundTypeEnum.Outbound &&(task.TargetAddress != "R02-001-021-001-02" && task.TargetAddress != "R02-001-022-001-02"))
                {
                    if (Completesignal(commonStackerCrane, task.TargetAddress))        //读取到放货完成信号
                    {