From 06e0e3b7d61e95902a6129de2490461cd0693e1d Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期三, 15 十月 2025 15:06:40 +0800
Subject: [PATCH] 新增异步方法并优化服务调用逻辑在多个数据库文件中进行了二进制文件的修改、删除和新增操作,可能涉及数据库内容的更新或重建。在 HttpsClient.cs文件中新增了 PostNotLimitAsync方法,用于发送支持 JSON 格式的异步 HTTP POST 请求,并记录请求和响应参数。在 AgingInOrOutInputService.cs文件中,将 HttpsClient.PostAsync替换为PostNotLimitAsync,以利用新方法的功能特性。同时删除了不再需要的注释代码。
---
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_CW/CommonConveyorLine_CWJob.cs | 59 ++++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 36 insertions(+), 23 deletions(-)
diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_CW/CommonConveyorLine_CWJob.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_CW/CommonConveyorLine_CWJob.cs
index bdeadd9..782dac9 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_CW/CommonConveyorLine_CWJob.cs
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Tasks/ConveyorLineJob_CW/CommonConveyorLine_CWJob.cs
@@ -116,20 +116,11 @@
#endregion 绔欏彴鏂瑰紡
#region 璺敱鏂瑰紡
-
List<string> childDeviceCodes = _routerService.QueryAllPositions(conveyorLine.DeviceCode);
- //DateTime dateTime = DateTime.Now;
- //Console.WriteLine($"寰幆寮�濮嬫椂闂磠dateTime}");
+
foreach (string childDeviceCode in childDeviceCodes)
{
- //Thread.Sleep(1000);
- //if (childCodeList.Contains(childDeviceCode))
- //{
- // Console.WriteLine($"褰撳墠{childDeviceCode}鎵ц涓紝宸茶烦杩�");
- // continue;
- //}
- //childCodeList.Add(childDeviceCode);
- //Console.WriteLine(childDeviceCode);
+
ConveyorLineTaskCommand_After command = conveyorLine.ReadCustomer<ConveyorLineTaskCommand_After>(childDeviceCode);
if (command == null) continue;
@@ -164,7 +155,6 @@
}
}
- //childCodeList.Remove(childDeviceCode);
#region 璋冪敤浜嬩欢鎬荤嚎閫氱煡鍓嶇
@@ -187,20 +177,16 @@
#endregion 璋冪敤浜嬩欢鎬荤嚎閫氱煡鍓嶇
}
- DateTime ENDdateTime = DateTime.Now;
- //Console.WriteLine($"寰幆缁撴潫鏃堕棿{ENDdateTime}");
#endregion 璺敱鏂瑰紡
}
}
catch (Exception ex)
{
- Console.Out.WriteLine(nameof(CommonConveyorLine_CWJob) + ":" + DateTime.Now + ":" + ex.ToString());
+ Console.Out.WriteLine(nameof(CommonConveyorLine_CWJob) + ":" + DateTime.Now + ":" + ex.ToString(),ex.StackTrace);
}
finally
{
- //WriteDebug("CommonConveyorLineJob", "test");
- //Console.Out.WriteLine(DateTime.Now);
}
return Task.CompletedTask;
}
@@ -460,12 +446,25 @@
}
}
- //conveyorLine.SendCommand(taskCommand, childDeviceCode);
bool sendFlag = SendCommand(taskCommand, conveyorLine, childDeviceCode);
if (sendFlag)
{
conveyorLine.SetValue(ConveyorLineDBName_After.ResponState, Convert.ToInt16(1), childDeviceCode);
content = _taskService.UpdateTaskStatusToNext(task);
+ }
+ var station = _stationManagerRepository.QueryFirst(x => x.stationChildCode == childDeviceCode && x.stationArea == "Call" && x.stationType == 12);
+ CommonConveyorLine_BZ? commonConveyorBZ=Storage.Devices.FirstOrDefault(x=>x.DeviceCode==station.stationPLC) as CommonConveyorLine_BZ;
+ if (commonConveyorBZ != null)
+ {
+ ConveyorLineTaskCommand_After readSignal = conveyorLine.ReadCustomer<ConveyorLineTaskCommand_After>(station.stationLocation);
+ if (readSignal.Reserved5 == 1)
+ {
+ var tasks = _taskRepository.QueryData(x => x.TargetAddress == childDeviceCode);
+ if (tasks.Count == 0)
+ {
+ commonConveyorBZ.SetValue(ConveyorLineDBName_After.ResponState, Convert.ToInt16(1), station.stationLocation);
+ }
+ }
}
}
else
@@ -497,8 +496,6 @@
}
}
- //conveyorLine.SendCommand(taskCommand, childDeviceCode);
-
bool sendFlag = SendCommand(taskCommand, conveyorLine, childDeviceCode);
if (sendFlag)
{
@@ -506,6 +503,20 @@
taskNext.ExceptionMessage = log;
content = _taskService.UpdateTaskStatusToNext(taskNext);
+ }
+ var station = _stationManagerRepository.QueryFirst(x => x.stationChildCode == childDeviceCode && x.stationArea == "Call" && x.stationType == 12);
+ CommonConveyorLine_BZ? commonConveyorBZ = Storage.Devices.FirstOrDefault(x => x.DeviceCode == station.stationPLC) as CommonConveyorLine_BZ;
+ if (commonConveyorBZ != null)
+ {
+ ConveyorLineTaskCommand_After readSignal = conveyorLine.ReadCustomer<ConveyorLineTaskCommand_After>(station.stationLocation);
+ if (readSignal.Reserved5 == 1)
+ {
+ var tasks = _taskRepository.QueryData(x => x.TargetAddress == childDeviceCode);
+ if (tasks.Count == 0)
+ {
+ commonConveyorBZ.SetValue(ConveyorLineDBName_After.ResponState, Convert.ToInt16(1), station.stationLocation);
+ }
+ }
}
}
}
@@ -556,12 +567,14 @@
}
var wmsIpAddress = wmsBase + requestTrayOutTask;
- //var device = _deviceInfoRepository.QueryData(x => x.DeviceStatus == "1" && x.DeviceRemark == platform.Id.ToString());
- //var deviceCode = device.Select(x => x.DeviceCode).ToList();
+
List<string> strings = platform.Location.Split(',').ToList();
+ WriteInfo("璋冨害鎵ц鏃堕棿璁板綍", "銆愯皟鍙朩MS鍑哄簱鎺ュ彛寮�濮嬫椂闂达細銆�" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"));
+
var result = await HttpHelper.PostAsync(wmsIpAddress, new { Position = childDeviceCode, Tag = (int)taskType, AreaCdoe = platform.Stacker, AreaCdoes = strings, platform.ProductionLine }.Serialize());
- //var result = await HttpHelper.PostAsync("http://localhost:5000/api/Task/RequestTrayOutTaskAsync", dynamic.ToJsonString());
+
+ WriteInfo("璋冨害鎵ц鏃堕棿璁板綍", "銆愯皟鍙朩MS鍑哄簱鎺ュ彛缁撴潫鏃堕棿锛氥��" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"));
WebResponseContent content = JsonConvert.DeserializeObject<WebResponseContent>(result);
--
Gitblit v1.9.3