huangxiaoqiang
2025-11-29 f9e8a2d52fe52fb2389892a46c12d4d262ee9aaf
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVSignal.cs
@@ -91,13 +91,31 @@
                if (task.TaskState == (int)TaskAcrossFloorStatusEnum.FirstCarry)
                {
                    if (task.Floor == "1F")
                    if (task.DoubleTray != 1)
                    {
                        elevator.SetValue(ElevatorDBName.OneLayerPutFinish, 1);
                        if (task.Floor == "1F")
                        {
                            elevator.SetValue(ElevatorDBName.OneLayerPutFinish, 1);
                        }
                        else
                        {
                            elevator.SetValue(ElevatorDBName.TwoLayerPutFinish, 1);
                        }
                    }
                    else
                    {
                        elevator.SetValue(ElevatorDBName.TwoLayerPutFinish, 1);
                        var taskDouble = _taskRepository.QueryFirst(x => x.TaskState == (int)TaskAcrossFloorStatusEnum.FirstCarryFinish && x.DoubleTray==1);
                        if (taskDouble != null)
                        {
                            if (task.Floor == "1F")
                            {
                                elevator.SetValue(ElevatorDBName.OneLayerPutFinish, 1);
                            }
                            else
                            {
                                elevator.SetValue(ElevatorDBName.TwoLayerPutFinish, 1);
                            }
                        }
                    }
                    _taskService.UpdateTaskStatusToNext(task.TaskNum);
                    content.OK();
@@ -151,15 +169,34 @@
                if (task.TaskState == (int)TaskAcrossFloorStatusEnum.SecondCarry)
                {
                    if (task.Floor == "1F")
                    if (task.DoubleTray != 1)
                    {
                        elevator.SetValue(ElevatorDBName.OneLayerPickUpFinish, 1);
                        if (task.Floor == "1F")
                        {
                            elevator.SetValue(ElevatorDBName.OneLayerPickUpFinish, 1);
                        }
                        else
                        {
                            elevator.SetValue(ElevatorDBName.TwoLayerPickUpFinish, 1);
                        }
                    }
                    else
                    {
                        elevator.SetValue(ElevatorDBName.TwoLayerPickUpFinish, 1);
                        var taskDouble = _taskRepository.QueryFirst(x => x.TaskState == (int)TaskAcrossFloorStatusEnum.SecondCarry && x.DoubleTray == 1 && x.PalletCode != task.PalletCode);
                        if (taskDouble == null)
                        {
                            if (task.Floor == "1F")
                            {
                                elevator.SetValue(ElevatorDBName.OneLayerPutFinish, 1);
                            }
                            else
                            {
                                elevator.SetValue(ElevatorDBName.TwoLayerPutFinish, 1);
                            }
                        }
                    }
                    _taskService.UpdateTaskStatusToNext(task.TaskNum);
                    content.OK();
                }