From f9e8a2d52fe52fb2389892a46c12d4d262ee9aaf Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期六, 29 十一月 2025 16:53:28 +0800
Subject: [PATCH] 增加提升机可进行一次进俩托物料出入库
---
项目代码/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs | 150 +++++++++++++++++++++++++++++--------------------
1 files changed, 88 insertions(+), 62 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
index 4eceba9..cd40f28 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WIDESEAWCS_Server/WIDESEAWCS_TaskInfoService/TaskService.cs"
@@ -141,6 +141,8 @@
task.Floor = item.Floor;
task.AGVSign = "";
+
+ task.DoubleTray = item.DoubleTray;
}
else if (task.TaskState.GetTaskStateGroup() == TaskStateGroup.CarryGroup)
{
@@ -187,6 +189,8 @@
task.Floor = item.Floor;
task.AGVSign = "";
+
+ task.DoubleTray = item.DoubleTray;
}
else if (task.TaskState.GetTaskStateGroup() == TaskStateGroup.CarryGroup)
{
@@ -232,6 +236,8 @@
task.Floor = item.Floor;
task.AGVSign = "";
+
+ task.DoubleTray = item.DoubleTray;
}
else if (task.TaskState.GetTaskStateGroup() == TaskStateGroup.CarryGroup)
{
@@ -583,73 +589,19 @@
if (task.TaskState == (int)TaskAcrossFloorStatusEnum.FirstCarryFinish)
{
- Dt_StationManager stationManager = new Dt_StationManager();
- string TaskTemplate = string.Empty;
- if (task.Floor == "1F")
+ if (task.DoubleTray != 1)
{
- stationManager = _stationManagerRepository.QueryFirst(x => x.stationType == 5 && x.stationFloor == "2F");
- TaskTemplate = "BBB";
+ RequestAcrossFloor(task,0);
}
else
{
- stationManager = _stationManagerRepository.QueryFirst(x => x.stationType == 5 && x.stationFloor == "1F");
- TaskTemplate = "CCC";
+ var taskDouble = BaseDal.QueryFirst(x => x.TaskState == (int)TaskAcrossFloorStatusEnum.FirstCarryFinish);
+ if (taskDouble != null)
+ {
+ RequestAcrossFloor(task,1);
+ RequestAcrossFloor(taskDouble,1);
+ }
}
-
- var taskDto = new RequestAcrossFloorTaskDto()
- {
- NextAddress = task.NextAddress,
- PalletCode = task.PalletCode,
- TaskNum = task.TaskNum
- };
-
- // 鑾峰彇WMSip鍦板潃
- var configz = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
- var wmsBasez = configz.Where(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE).FirstOrDefault()?.ConfigValue;
- var requestLocation = configz.Where(x => x.ConfigKey == SysConfigKeyConst.AcrossFloorTask).FirstOrDefault()?.ConfigValue;
- if (wmsBasez == null || requestLocation == null)
- {
- throw new InvalidOperationException("WMS IP 鏈厤缃�");
- }
- var wmsIpAddrss = wmsBasez + requestLocation;
-
- var abc = HttpHelper.PostAsync(wmsIpAddrss, taskDto.ToJsonString()).Result;
- if (abc == null)
- return content.Error();
- content = JsonConvert.DeserializeObject<WebResponseContent>(abc);
-
- if (!content.Status)
- {
- return content;
- }
-
- // 鍙嶅簭鍒楀寲浠诲姟鏁版嵁
- var taskDTO = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString());
-
- Dt_Task taskNew = _mapper.Map<Dt_Task>(taskDTO);
- task.Creater = "WMS";
-
- taskNew.CurrentAddress = stationManager.stationChildCode;
-
- taskNew.NextAddress = taskDTO.TargetAddress;
-
- taskNew.Floor = stationManager.stationFloor;
-
- taskNew.AGVSign = "";
-
- 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;
-
- BaseDal.DeleteData(task);
- _taskHtyRepository.AddData(task_Hty);
-
- BaseDal.AddData(taskNew);
-
- SendAgvTask(TaskTemplate, taskNew.TaskNum);
}
}
else
@@ -694,6 +646,80 @@
return content;
}
+ public WebResponseContent RequestAcrossFloor(Dt_Task task,int DoubleTray)
+ {
+ WebResponseContent content = new WebResponseContent();
+ Dt_StationManager stationManager = new Dt_StationManager();
+ string TaskTemplate = string.Empty;
+ if (task.Floor == "1F")
+ {
+ stationManager = _stationManagerRepository.QueryFirst(x => x.stationType == 5 && x.stationFloor == "2F");
+ TaskTemplate = "BBB";
+ }
+ else
+ {
+ stationManager = _stationManagerRepository.QueryFirst(x => x.stationType == 5 && x.stationFloor == "1F");
+ TaskTemplate = "CCC";
+ }
+
+ var taskDto = new RequestAcrossFloorTaskDto()
+ {
+ NextAddress = task.NextAddress,
+ PalletCode = task.PalletCode,
+ TaskNum = task.TaskNum
+ };
+
+ // 鑾峰彇WMSip鍦板潃
+ var configz = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
+ var wmsBasez = configz.Where(x => x.ConfigKey == SysConfigKeyConst.WMSIP_BASE).FirstOrDefault()?.ConfigValue;
+ var requestLocation = configz.Where(x => x.ConfigKey == SysConfigKeyConst.AcrossFloorTask).FirstOrDefault()?.ConfigValue;
+ if (wmsBasez == null || requestLocation == null)
+ {
+ throw new InvalidOperationException("WMS IP 鏈厤缃�");
+ }
+ var wmsIpAddrss = wmsBasez + requestLocation;
+
+ var abc = HttpHelper.PostAsync(wmsIpAddrss, taskDto.ToJsonString()).Result;
+ if (abc == null)
+ return content.Error();
+ content = JsonConvert.DeserializeObject<WebResponseContent>(abc);
+
+ if (!content.Status)
+ {
+ return content;
+ }
+
+ // 鍙嶅簭鍒楀寲浠诲姟鏁版嵁
+ var taskDTO = JsonConvert.DeserializeObject<WMSTaskDTO>(content.Data.ToString());
+
+ Dt_Task taskNew = _mapper.Map<Dt_Task>(taskDTO);
+ task.Creater = "WMS";
+
+ taskNew.CurrentAddress = stationManager.stationChildCode;
+
+ taskNew.NextAddress = taskDTO.TargetAddress;
+
+ taskNew.Floor = stationManager.stationFloor;
+
+ taskNew.AGVSign = "";
+
+ taskNew.DoubleTray = DoubleTray;
+
+ 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;
+
+ BaseDal.DeleteData(task);
+ _taskHtyRepository.AddData(task_Hty);
+
+ BaseDal.AddData(taskNew);
+
+ return SendAgvTask(TaskTemplate, taskNew.TaskNum);
+ }
+
public string GetLocation(string palletCode)
{
var config = _sys_ConfigService.GetConfigsByCategory(CateGoryConst.CONFIG_SYS_IPAddress);
--
Gitblit v1.9.3