From 65a231315d1dcc35d2996106d36e9cca9aba6ce6 Mon Sep 17 00:00:00 2001
From: wangxinhui <wangxinhui@hnkhzn.com>
Date: 星期五, 06 三月 2026 09:06:44 +0800
Subject: [PATCH] 更新码垛分配工位优化,老厂退库称重上报设定差异范围
---
项目代码/WCS/WCSServices/WIDESEAWCS_Tasks/成品仓/AGV_CPExtend.cs | 61 ++++++++++++++++++++++++++----
1 files changed, 52 insertions(+), 9 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/AGV_CPExtend.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/AGV_CPExtend.cs"
index ff74879..5f7ccb2 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/AGV_CPExtend.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WCS/WCSServices/WIDESEAWCS_Tasks/\346\210\220\345\223\201\344\273\223/AGV_CPExtend.cs"
@@ -38,6 +38,16 @@
MapCode="01",
Variables=new List<PointDetail>()
};
+ if (task.NextAddress== "涓�妤兼湀鍙扮爜澶�")
+ {
+ string? address =_taskService.RequestTargetAddress(task.TaskNum);
+ if (address.IsNullOrEmpty())
+ {
+ task.ExceptionMessage = "鏈壘鍒癆GV绔欑偣";
+ continue;
+ }
+ task.NextAddress = address;
+ }
Dt_StationManger stationMangerStart = _stationMangerRepository.QueryFirst(x=>x.StationCode==task.CurrentAddress);
Dt_StationManger stationMangerEnd = _stationMangerRepository.QueryFirst(x => x.StationCode == task.NextAddress);
//娣诲姞浠诲姟璺緞鍙婇珮搴�
@@ -93,7 +103,7 @@
throw new Exception("鏈壘鍒癆GV绔欑偣");
}
//鍙栨斁浠诲姟妯$増
- if (stationMangerStart.StationCode.Contains("PNT") && !stationMangerEnd.StationCode.Contains("PNT"))//璇锋眰鏀�
+ if (stationMangerStart.StationCode.Contains("PNT") && !stationMangerEnd.StationCode.Contains("PNT") && stationMangerEnd.IsManual==0)//璇锋眰鏀�
{
agvTaskSend.TaskCode = "DUIGAO1";
if (stationMangerStart.StationType == 998 || stationMangerEnd.StationType == 998)//娼滀紡椤跺崌杞�
@@ -101,7 +111,7 @@
agvTaskSend.TaskCode = "DUOLUN1";
}
}
- else if (!stationMangerStart.StationCode.Contains("PNT") && stationMangerEnd.StationCode.Contains("PNT"))//璇锋眰鍙�
+ else if (!stationMangerStart.StationCode.Contains("PNT") && stationMangerEnd.StationCode.Contains("PNT") && stationMangerStart.IsManual == 0)//璇锋眰鍙�
{
agvTaskSend.TaskCode = "DUIGAO2";
if (stationMangerStart.StationType==998 || stationMangerEnd.StationType == 998)//娼滀紡椤跺崌杞�
@@ -109,7 +119,7 @@
agvTaskSend.TaskCode = "DUOLUN2";
}
}
- else if (!stationMangerStart.StationCode.Contains("PNT") && !stationMangerEnd.StationCode.Contains("PNT"))//璇锋眰鍙栨斁
+ else if (!stationMangerStart.StationCode.Contains("PNT") && !stationMangerEnd.StationCode.Contains("PNT") && stationMangerStart.IsManual == 0 && stationMangerStart.IsManual == 0)//璇锋眰鍙栨斁
{
agvTaskSend.TaskCode = "DUIGAO3";
if (stationMangerStart.StationType == 998 || stationMangerEnd.StationType == 998)//娼滀紡椤跺崌杞�
@@ -117,7 +127,7 @@
agvTaskSend.TaskCode = "DUOLUN3";
}
}
- else if (stationMangerStart.StationCode.Contains("PNT") && stationMangerEnd.StationCode.Contains("PNT"))//鏃犺姹�
+ else//鏃犺姹�
{
agvTaskSend.TaskCode = "DUIGAO4";
if (stationMangerStart.StationType == 998 || stationMangerEnd.StationType == 998)//娼滀紡椤跺崌杞�
@@ -129,6 +139,40 @@
{
agvTaskSend.Variables.FirstOrDefault(x => x.Code == "FHMH").Value = "0";
agvTaskSend.Variables.FirstOrDefault(x => x.Code == "GoodPoint").Value = "";
+ //鍒ゆ柇浜哄伐鎵嬪姩 1 闇�鏀捐揣瀹屾垚 2闇�鍙栬揣瀹屾垚 3 鍙栬揣瀹屾垚鍜屾斁璐у畬鎴愰兘闇�瑕� 0 鍙栬揣鏀捐揣瀹屾垚閮戒笉闇�瑕�
+ PointDetail complete = new();
+ if (stationMangerStart.IsManual==1 && stationMangerEnd.IsManual==0)
+ {
+ complete = new()
+ {
+ Code = "Complete",
+ Value = "1"
+ };
+ }
+ else if (stationMangerStart.IsManual == 0 && stationMangerEnd.IsManual == 1)
+ {
+ complete = new()
+ {
+ Code = "Complete",
+ Value = "2"
+ };
+ }
+ else if (stationMangerStart.IsManual == 1 && stationMangerEnd.IsManual == 1)
+ {
+ complete = new()
+ {
+ Code = "Complete",
+ Value = "3"
+ };
+ }
+ else
+ {
+ complete = new()
+ {
+ Code = "Complete",
+ Value = "0"
+ };
+ }
//涓嬪彂浠诲姟AGV浠诲姟闆嗙兢
agvTaskSend.AgvGroupCode = "QianF";
PointDetail pointDetail2 = new PointDetail()
@@ -137,24 +181,23 @@
Value = stationMangerStart.AGVStationCode
};
agvTaskSend.Variables.Add(pointDetail2);
+ agvTaskSend.Variables.Add(complete);
}
- if (task.TaskType==TaskTypeEnum.OutCarton.ObjToInt())
+ if (stationMangerStart.AGVStationCode.StartsWith("PNT_2")|| stationMangerEnd.AGVStationCode.StartsWith("PNT_2"))
{
agvTaskSend.AgvGroupCode = "GAOc";
}
- //寤舵椂
- Thread.Sleep(500);
//鍙戦�丄GV浠诲姟
WebResponseContent content = _taskService.AgvSendTask(agvTaskSend, APIEnum.AgvSendTask);
if (!content.Status)
throw new Exception(content.Message);
task.Dispatchertime = DateTime.Now;
_taskService.UpdateTask(task, TaskStatusEnum.AGV_Executing);
- Thread.Sleep(200);
+ Thread.Sleep(500);
}
catch (Exception ex)
{
- task.TaskState = TaskStatusEnum.Exception.ObjToInt();
+ task.TaskState = TaskStatusEnum.AGV_Exception.ObjToInt();
task.ExceptionMessage = ex.Message;
}
}
--
Gitblit v1.9.3