From 8bc65cd3363d7148c356fe2eecca3590a9a3b4e0 Mon Sep 17 00:00:00 2001
From: Administrator <Administrator@DESKTOP-JIE70N9>
Date: 星期二, 21 十月 2025 09:34:41 +0800
Subject: [PATCH] 修改问题
---
Admin.NET/WCS.Application/OpenApi/OpenApi.cs | 76 +++++++++++++++++++++++++++++++-------
1 files changed, 62 insertions(+), 14 deletions(-)
diff --git a/Admin.NET/WCS.Application/OpenApi/OpenApi.cs b/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
index ba4d4a6..69ab9f6 100644
--- a/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
+++ b/Admin.NET/WCS.Application/OpenApi/OpenApi.cs
@@ -3,6 +3,7 @@
using Furion.Logging;
using WCS.Application.Entity;
using WCS.Application.Util;
+using static SKIT.FlurlHttpClient.Wechat.Api.Models.ComponentTCBBatchCreateContainerServiceVersionRequest.Types;
namespace WCS.Application;
@@ -98,7 +99,8 @@
throw Oops.Bah("浠诲姟宸插瓨鍦�!");
}
var listTask = new List<WcsTask>();
- foreach (var models in modelList)
+ var list = modelList.OrderBy(m => m.Order).ThenBy(m => m.TaskNo).ToList();
+ foreach (var models in list)
{
if (models.TaskType == "0")
{
@@ -125,6 +127,7 @@
EndLocate = models.EndLocate,
EndRoadway = models.EndRoadway,
PalletNo = models.PalletNo,
+ CreateTime = DateTime.Now
};
// 鑻ラ潪AGV浠诲姟澧炲姞浠诲姟ID
@@ -133,9 +136,9 @@
taskAdd.TaskId = FourWayCarUtil.GetTaskId();
}
- listTask.Add(taskAdd);
+ await _db.Insertable(taskAdd).ExecuteCommandAsync();
}
- await _db.Insertable(listTask).ExecuteCommandAsync();
+
}
/// <summary>
/// WCS鎺ュ彈WMS涓嬪彂鐨勪换鍔�(鍗曟潯浠诲姟)
@@ -418,21 +421,26 @@
[UnitOfWork]
public async Task<dynamic> agvCallback(AGVCallBackInput input)
{
+ Log.Information("AGV鍙嶉浠诲姟" + input.ToJson());
AGVCallBackResponse result = new AGVCallBackResponse()
{
ReqCode = input.ReqCode,
Message = "鎴愬姛",
Code = "0"
};
- if (input.TaskCode.Substring(0, 3) != "WCS" && input.TaskCode.Substring(0, 2) != "TK")
+ if (input.robotTaskCode.Substring(0, 3) != "WCS" && input.robotTaskCode.Substring(0, 2) != "TK")
+ {
+ result.Message = "鍙嶉鐨勪换鍔′笉鏄疻CS鐨勪换鍔�";
+ result.Code = "1";
return result;
+ }
PLCUtil modUtil = null;
try
{
- var modTask = await _db.Queryable<WcsTask>().FirstAsync(s => s.TaskNo == input.TaskCode);
+ var modTask = await _db.Queryable<WcsTask>().FirstAsync(s => s.TaskNo == input.robotTaskCode);
if (modTask != null)
{
- switch (input.Method)
+ switch (input.Extra.Values.Method)
{
case "end"://浠诲姟瀹屾垚
{
@@ -459,15 +467,26 @@
var inputs = new TaskRequestWMS();
inputs.TaskNo = modTask.TaskNo;
inputs.PalletNo = modTask.PalletNo;
- inputs.TaskType = modTask.TaskType.ToString();
+ inputs.TaskType = ((int)modTask.TaskType).ToString();
inputs.TaskStatus = "2";
var modResponseTask = httpService.RequestTask(inputs).Result;
}
}
break;
- case "admin"://璧板嚭鍌ㄤ綅
+ case "outbin"://璧板嚭鍌ㄤ綅
{
+ WcsTaskMonitor modTaskMonitor = new WcsTaskMonitor()
+ {
+ TaskNo = modTask.TaskNo,
+ //PlcId = modDevice.PlcId,
+ PlcName = "AGV",
+ StartLocat = modTask.StartLocate,
+ EndLocat = modTask.EndLocate,
+ Status = TaskStatusEnum.Complete,
+ InteractiveMsg = $"AGV灏忚溅鍙嶉浠诲姟鍙栬揣瀹屾垚锛岃蛋鍑哄偍浣�",
+ };
+ await _db.Insertable(modTaskMonitor).ExecuteCommandAsync();
//鍙嶉WMS浠诲姟鍙栬揣瀹屾垚銆乄MS鍒ゆ柇鏄钩搴撳偍浣嶅氨鏇存柊鍌ㄤ綅鐘舵��
if (modTask.Origin == "WMS")
{
@@ -475,22 +494,22 @@
var inputs = new TaskRequestWMS();
inputs.TaskNo = modTask.TaskNo;
inputs.PalletNo = modTask.PalletNo;
- inputs.TaskType = "2";
+ inputs.TaskType = ((int)modTask.TaskType).ToString();
inputs.TaskStatus = "2";
var modResponseTask = httpService.RequestTaskQh(inputs).Result;
}
}
break;
- case "continue"://鏀捐揣鐢宠
+ case "release"://鏀捐揣鐢宠
{
- if (modTask.EndLocate != "B010101")//9鍙峰伐浣嶅湴鍧�
+ if (modTask.EndLocate != "B040101")//9鍙峰伐浣嶅湴鍧�
{
result.Code = "1";
result.Message = "鎵句笉鍒拌浠诲姟";
return result;
}
- modTask.Status = TaskStatusEnum.Complete;
+ //modTask.Status = TaskStatusEnum.Complete;
modTask.IsComple = "1";
await _db.Updateable(modTask).ExecuteCommandAsync();
WcsTaskMonitor modTaskMonitor = new WcsTaskMonitor()
@@ -506,7 +525,36 @@
await _db.Insertable(modTaskMonitor).ExecuteCommandAsync();
HubUtil.PublicTask(modTask.Adapt<WcsTaskOutput>());
HubUtil.PublicTaskMonitor(modTaskMonitor.Adapt<WcsTaskMonitorOutput>());
-
+ if (modTask.Origin == "WMS")
+ {
+ HttpService httpService = new HttpService();
+ var inputs = new TaskRequestWMS();
+ inputs.TaskNo = modTask.TaskNo;
+ inputs.PalletNo = modTask.PalletNo;
+ inputs.TaskType = ((int)modTask.TaskType).ToString();
+ inputs.TaskStatus = "2";
+ var modResponseTask = httpService.RequestTaskQh(inputs).Result;
+ }
+ }
+ break;
+ case "notifyFullSite":
+ {
+ var palletNo = input.Extra.Values.carrierCode;
+ var count = input.Extra.Values.pileCount;
+ if (string.IsNullOrWhiteSpace(palletNo) || count <= 0)
+ {
+ throw new Exception("鍙傛暟锛氭墭鐩樺彿/鏁伴噺楠岃瘉澶辫触");
+ }
+ //鍚慦MS鐢宠绌烘墭鍏ュ簱
+ HttpService httpService = new HttpService();
+ var inputs = new NullPallInRequest();
+
+ inputs.PalletNo = palletNo;
+ inputs.PallNum = count;
+ inputs.Locate = "B100101";//鍙犳墭鐩樻満浣嶇疆
+ inputs.HouseNo = "W02";
+ var modResponseTask = httpService.RequestLiKuPallet(inputs);
+
}
break;
case "cancel"://浠诲姟鍙栨秷
@@ -555,7 +603,7 @@
modUtil?.Close();
}
-
+ Log.Information("AGV鍙嶉浠诲姟杩斿洖" + result.ToJson());
return result;
}
--
Gitblit v1.8.0