From 40f71192f067a48fff730a52fa8f47a1b69ba59d Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期一, 13 十月 2025 17:28:00 +0800
Subject: [PATCH] 支持跨楼层与AGV搬运任务,优化货位管理新增跨楼层与AGV搬运任务相关页面、API及服务逻辑,支持任务状态更新与多任务类型处理。 更新货位管理功能,支持批量创建货位及批量记录货位状态变动。 重构任务状态更新逻辑,增强事务处理能力,优化代码结构。 调整页面配置与文档布局,新增常量与枚举以支持新功能。 修复部分任务状态处理中的潜在问题。
---
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVSignal.cs | 63 +++----------------------------
1 files changed, 6 insertions(+), 57 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVSignal.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVSignal.cs"
index 65e2168..91883ea 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVSignal.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/AGV/AGVSignal.cs"
@@ -92,74 +92,21 @@
{
if (task.TaskState == (int)TaskAcrossFloorStatusEnum.FirstCarry)
{
- Dt_StationManager stationManager = new Dt_StationManager();
- string TaskTemplate = string.Empty;
if (task.Floor == "1F")
{
- stationManager = _stationManagerRepository.QueryFirst(x => x.stationType == 5 && x.stationFloor == "2F");
elevator.SetValue(ElevatorDBName.OneLayerPutFinish, 1);
- TaskTemplate = "BBB";
- //璇锋眰WMS璺ㄦゼ灞�2浠诲姟
}
else
{
- stationManager = _stationManagerRepository.QueryFirst(x => x.stationType == 5 && x.stationFloor == "1F");
elevator.SetValue(ElevatorDBName.TwoLayerPutFinish, 1);
- //璇锋眰WMS璺ㄦゼ灞�2浠诲姟
- TaskTemplate = "CCC";
}
- task.TaskState = (int)TaskAcrossFloorStatusEnum.FirstCarryFinish;
- task.ModifyDate = DateTime.Now;
- task.Modifier = "System";
-
- Dt_Task_Hty task_Hty = _mapper.Map<Dt_Task_Hty>(task);
- task_Hty.TaskId = 0;
-
- _taskRepository.DeleteData(task);
- _taskhtyRepository.AddData(task_Hty);
- Random random = new Random();
- int randomNumber = random.Next(1000, 10000);
-
- WMSTaskDTO taskDTO = new WMSTaskDTO()
- {
- Id = 1,
- TaskNum = randomNumber,
- RoadWay = "AGV",
- TaskType = (int)TaskAcrossFloorTypeEnum.AcrossFloorCarry,
- TaskState = (int)TaskAcrossFloorStatusEnum.SecondCarry,
- PalletCode = task.PalletCode,
- SourceAddress = stationManager.stationChildCode,
- TargetAddress = task.TargetAddress,
- Grade = 1,
- AGVTaskNum = GenerateUniqueId()
- };
- Dt_Task SecondCarry = _mapper.Map<Dt_Task>(taskDTO);
- task.Creater = "WMS";
-
- SecondCarry.CurrentAddress = stationManager.stationChildCode;
-
- SecondCarry.NextAddress = task.TargetAddress;
-
- SecondCarry.Floor = stationManager.stationFloor;
-
- SecondCarry.AGVSign = "";
-
- _taskRepository.AddData(SecondCarry);
-
- _taskService.SendAgvTask(TaskTemplate, SecondCarry.TaskNum);
+ _taskService.UpdateTaskStatusToNext(task.TaskNum);
content.OK();
}
- else if (task.TaskState == (int)TaskAcrossFloorStatusEnum.SecondCarry)
+ else if (task.TaskState == (int)TaskAcrossFloorStatusEnum.EndAddressExecuting)
{
- task.TaskState = (int)TaskAcrossFloorStatusEnum.SecondCarryFinish;
- task.ModifyDate = DateTime.Now;
- task.Modifier = "System";
-
- Dt_Task_Hty task_Hty = _mapper.Map<Dt_Task_Hty>(task);
- task_Hty.TaskId = 0;
-
- _taskRepository.DeleteData(task);
- _taskhtyRepository.AddData(task_Hty);
+ _taskService.UpdateTaskStatusToNext(task.TaskNum);
+ content.OK();
}
}
if (task.TaskType.GetTaskTypeGroup() == TaskTypeGroup.CarryGroup)
@@ -212,6 +159,8 @@
{
elevator.SetValue(ElevatorDBName.TwoLayerPickUpFinish, 1);
}
+ task.TaskState = (int)TaskAcrossFloorStatusEnum.EndAddressExecuting;
+ _taskRepository.UpdateData(task);
}
}
--
Gitblit v1.9.3