From aeb971fe12b73d83d31a83b00f0a6e2876b24a00 Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期四, 09 四月 2026 21:21:51 +0800
Subject: [PATCH] Merge branch 'master' of http://115.159.85.185:8098/r/RuiShengZhiNeng/GaoPuLiTiKu
---
代码管理/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/HKTaskExtend.cs | 98 ++++++++++++------------------------------------
1 files changed, 25 insertions(+), 73 deletions(-)
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/HKTaskExtend.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/HKTaskExtend.cs"
index 07b97b6..ba18d44 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/HKTaskExtend.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/Task/HKTaskExtend.cs"
@@ -50,10 +50,10 @@
foreach (var item in tasks)
{
// 鍑哄簱浠诲姟澶勭悊 (浠�1妤煎嚭搴撳埌6妤�)
- if (item.TaskType == (int)TaskTypeEnum.Q3CK)
+ if (item.TaskType == (int)TaskTypeEnum.Q3CK || item.TaskType == (int)TaskTypeEnum.Q3RK)
{
// 璋冪敤鎺ュ彛鑾峰彇灏忚溅淇℃伅
- var result = _agvcartInfoService.CheckTheCar();
+ var result = _agvcartInfoService.CheckTheCar("MR-Q3-600LE-D(M)(YWGP)");
if (result != null && result.Status)
{
var dataList = result.Data as List<HIKROBOTQueryData>;
@@ -61,7 +61,8 @@
{
// 鍑哄簱浠诲姟锛氭鏌ユ槸鍚︽湁鍦�1妤�(AA)鐨勫皬杞�
// Q3CK 鏄疉A鈫扚F鐨勮法妤煎眰浠诲姟锛屽彧鑳戒娇鐢ㄤ笓鐢ㄥ皬杞�
- var specialCarInAA = dataList.FirstOrDefault(d => d.mapCode == "AA" && d.CarType == "MR-Q3-600LE-D(M)(YWGP)");
+ var code = item.TaskType == (int)TaskTypeEnum.Q3CK ? "AA" : "FF";
+ var specialCarInAA = dataList.FirstOrDefault(d => d.mapCode == code);
if (specialCarInAA != null)
{
@@ -75,11 +76,11 @@
else
{
// 娌℃湁涓撶敤灏忚溅鍦�1妤硷紝闇�瑕佸懠鍙笓鐢ㄥ皬杞︽潵鍒�1妤�
- var anySpecialCar = dataList.FirstOrDefault(d => d.CarType == "MR-Q3-600LE-D(M)(YWGP)");
+ var anySpecialCar = dataList.FirstOrDefault();
if (anySpecialCar != null)
{
// 璧风偣锛氬皬杞﹀綋鍓嶆墍鍦ㄦゼ灞傜殑鐐逛綅锛岀洰鏍囷細1妤肩偣浣�
- var callCarResult = AddAGVCartInfo(item, anySpecialCar.mapCode, "AA");
+ var callCarResult = AddAGVCartInfo(item, anySpecialCar.mapCode, code);
if (callCarResult.Status)
{
// 鍘熶换鍔$姸鎬佹敼涓虹瓑寰呯┖杞�
@@ -98,54 +99,10 @@
item.ExceptionMessage = "鑾峰彇AGV灏忚溅淇℃伅澶辫触";
}
}
- // 鍏ュ簱浠诲姟澶勭悊 (浠�6妤煎叆搴撳埌1妤�)
- else if (item.TaskType == (int)TaskTypeEnum.Q3RK)
- {
- var result = _agvcartInfoService.CheckTheCar();
-
- if (result != null && result.Status)
- {
- var dataList = result.Data as List<HIKROBOTQueryData>;
- if (dataList != null && dataList.Any())
- {
- // Q3RK 鏄疐F鈫扐A鐨勮法妤煎眰浠诲姟锛屽彧鑳戒娇鐢ㄤ笓鐢ㄥ皬杞�
- var specialCarInFF = dataList.FirstOrDefault(d => d.mapCode == "FF" && d.CarType == "MR-Q3-600LE-D(M)(YWGP)");
-
- if (specialCarInFF!=null)
- {
- // 鏈夊湪1妤肩殑灏忚溅锛岀洿鎺ユ墽琛屼换鍔�
- var content = _taskService.SendHIKROBOTTask(item);
- item.TaskState = (int)TaskStatusEnum.Execut;
- }
- else
- {
- // 娌℃湁涓撶敤灏忚溅鍦�6妤硷紝闇�瑕佸懠鍙笓鐢ㄥ皬杞︽潵鍒�6妤�
- var anySpecialCar = dataList.FirstOrDefault(d => d.CarType == "MR-Q3-600LE-D(M)(YWGP)");
- if (anySpecialCar != null)
- {
- // 璧风偣锛氬皬杞﹀綋鍓嶆墍鍦ㄦゼ灞傜殑鐐逛綅锛岀洰鏍囷細6妤肩偣浣�
- var callCarResult = AddAGVCartInfo(item, anySpecialCar.mapCode, "FF");
- if (callCarResult.Status)
- {
- item.TaskState = (int)TaskStatusEnum.WaitingHkAGVMovePosition;
- }
- }
- else
- {
- item.ExceptionMessage = "鏈壘鍒板彲鐢ˋGV灏忚溅";
- }
- }
- }
- }
- else
- {
- item.ExceptionMessage = "鑾峰彇AGV灏忚溅淇℃伅澶辫触";
- }
- }
else if (item.TaskType == (int)TaskTypeEnum.F01)
{
// F01浠诲姟澶勭悊锛氭牴鎹洰鏍囧湴鍧�鍒ゆ柇闇�瑕佸摢涓ゼ灞傜殑灏忚溅
- var result = _agvcartInfoService.CheckTheCar();
+ var result = _agvcartInfoService.CheckTheCar("MR-Q3-600LE-D(M)");
if (result != null && result.Status)
{
@@ -162,9 +119,9 @@
}
// 妫�鏌ユ槸鍚︽湁鍦ㄧ洰鏍囨ゼ灞傜殑灏忚溅
- var hasRequiredCar = dataList.FirstOrDefault(d => d.mapCode == requiredMapCode&&d.CarType== "MR-Q3-600LE-D(M)");
+ var hasRequiredCar = dataList.FirstOrDefault(d => d.mapCode == requiredMapCode);
- if (hasRequiredCar!=null)
+ if (hasRequiredCar != null)
{
// 鏈夊湪鐩爣妤煎眰鐨勫皬杞︼紝鐩存帴鎵ц浠诲姟
var content = _taskService.SendHIKROBOTTask(item);
@@ -193,7 +150,7 @@
}
}
}
- }
+ }
_taskService.UpdateData(item);
}
}
@@ -239,7 +196,7 @@
Dt_Task newTask = new Dt_Task
{
- WMSTaskNum="HKkc"+ DateTime.Now.ToString("yyyyMMddHHmmss"), // 鐢熸垚鍞竴鐨刉MS浠诲姟鍙�
+ WMSTaskNum = "HK_" + task.WMSTaskNum, // 鐢熸垚鍞竴鐨刉MS浠诲姟鍙�
TaskNum = _taskService.GetTaskNum(nameof(SequenceEnum.SeqTaskNum)),
SourceAddress = currentFloorInfo.PointCode,
CurrentAddress = currentFloorInfo.PointCode,
@@ -247,16 +204,16 @@
NextAddress = targetFloorInfo.PointCode,
TaskType = (int)TaskTypeEnum.MOVE,
Grade = task.Grade,
- PalletCode = null,
+ PalletCode = "",
TaskState = (int)TaskStatusEnum.CallingHKtransportation,
// 澶嶅埗鍏朵粬蹇呰瀛楁
CreateDate = DateTime.Now,
Creater = "System"
};
- _taskService.AddData(newTask); // 娣诲姞鏂颁换鍔�
var result = _taskService.SendHIKROBOTTask(newTask);
if (result.Status)
{
+ _taskService.AddData(newTask); // 娣诲姞鏂颁换鍔�
content.OK("绌鸿溅鍛煎彨浠诲姟鍒涘缓鎴愬姛", newTask);
}
else
@@ -274,26 +231,22 @@
#endregion
#region 澶勭悊agv寰呯┖杞︽惉杩愪换鍔�
- public void SendHKWaitTask()
+ public void SendHKWaitTask(List<Dt_Task> Tasks)
{
try
{
- List<Dt_Task> reslut = _taskService.Repository.QueryData(x => x.TaskType == (int)TaskTypeEnum.MOVE);
- if (reslut.Count<=0)
+ List<Dt_Task> Uptasks = new List<Dt_Task>();
+ foreach (var item in Tasks)
{
- List<Dt_Task> reslut2 = _taskService.Repository.QueryData(x => x.TaskType == (int)TaskTypeEnum.Q3RK||x.TaskType==(int)TaskTypeEnum.Q3CK || x.TaskType == (int)TaskTypeEnum.F01);
- foreach (var item in reslut2)
+ var content = _taskService.SendHIKROBOTTask(item);
+ if (content.Status)
{
- var content = _taskService.SendHIKROBOTTask(item);
- }
- reslut.ForEach(x =>
- {
- x.TaskState =(int)TaskStatusEnum.Execut;
- });
-
+ item.TaskState = (int)TaskStatusEnum.Execut;
+ Uptasks.Add(item);
+ }
}
- _taskService.UpdateData(reslut);
-
+ _taskService.UpdateData(Uptasks);
+
}
catch (Exception ex)
{
@@ -314,14 +267,13 @@
// 鍦板潃鏍煎紡绀轰緥 锛欰A 瀵瑰簲 0339050AA0309145
// keys 鏄� AA銆丅B銆丆C銆丏D銆丒E銆丗F锛寁ule鏄搴旂殑鐐逛綅淇℃伅
- foreach (var floorCode in FloorMapping.FloorMap.Keys)
+ foreach (var floorCode in FloorMapping.FloorMap.Keys)
{
- if (address.Contains(floorCode))
+ if (address.Contains(floorCode))
{
return floorCode;//杩斿洖鐨勫氨鏄疉A銆丅B銆丆C銆丏D銆丒E銆丗F涓殑涓�涓紝浠h〃瀵瑰簲鐨勬ゼ灞�
}
}
-
return null;
}
--
Gitblit v1.9.3