From 5efc3d1d1042ac74e7319fb04e490dd7295b9e22 Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期四, 07 八月 2025 16:20:35 +0800
Subject: [PATCH] 优化 WMS 接口请求和设备处理逻辑 在 `RequestInbound.cs` 中删除与 GW 相关的代码注释,添加 WMS 接口请求处理,更新 `RequestWmsTask` 方法以支持异步请求和结果处理。 在 `CommonConveyorLine_CWJob.cs` 中移除不必要的代码,简化设备处理逻辑,并增加调度执行时间记录,改进异常处理输出。 在 `CommonStackerCraneJob.cs` 中将设备类型转换从 `CommonConveyorLine_GW` 更新为 `CommonConveyorLine_CW`,确保任务处理的正确性。
---
Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/Siemens/SiemensS7Communicator.cs | 57 ++++++++++++++++++++++++++++++---------------------------
1 files changed, 30 insertions(+), 27 deletions(-)
diff --git a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/Siemens/SiemensS7Communicator.cs b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/Siemens/SiemensS7Communicator.cs
index ce35fed..13fd3cc 100644
--- a/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/Siemens/SiemensS7Communicator.cs
+++ b/Code Management/WCS/WIDESEAWCS_Server/WIDESEAWCS_Communicator/Siemens/SiemensS7Communicator.cs
@@ -157,6 +157,7 @@
}
else
{
+ return true;
object? obj = null;
for (int i = 0; i < 5; i++)
{
@@ -604,40 +605,42 @@
{
OperateResult operateResult = plc.WriteCustomer(address, value);
stringBuilder.AppendLine(string.Format(CommunicationInfoMessage.WriteData, address, JsonConvert.SerializeObject(value)));
+ #region
if (operateResult.IsSuccess)
{
- object? obj = null;
- for (int i = 0; i < 5; i++)
- {
- T readValue = ReadCustomer<T>(address);
- stringBuilder.AppendLine(string.Format(CommunicationInfoMessage.WriteAfterRead, address, JsonConvert.SerializeObject(readValue)));
- obj = readValue;
- PropertyInfo[] propertyInfos = typeof(T).GetProperties();
- for (int j = 0; j < propertyInfos.Length; j++)
- {
- object? writeValueItem = propertyInfos[j].GetValue(value);
- object? readValueItem = propertyInfos[j].GetValue(readValue);
- if (writeValueItem.Equals(readValueItem))
- {
- stringBuilder.AppendLine(string.Format(CommunicationInfoMessage.WriteAndReadCheckSuccess, address, JsonConvert.SerializeObject(value), JsonConvert.SerializeObject(readValue)));
- }
- else
- {
- break;
- }
- if (j == propertyInfos.Length - 1)
- return true;
- }
-
- plc.WriteCustomer(address, value);
- }
- stringBuilder.AppendLine(string.Format(CommunicationExceptionMessage.WriteAndReadCheckFaild, address, JsonConvert.SerializeObject(value), JsonConvert.SerializeObject(obj)));
- throw new CommunicationException(string.Format(CommunicationExceptionMessage.WriteAndReadCheckFaild, address, JsonConvert.SerializeObject(value), JsonConvert.SerializeObject(obj)), CommunicationErrorType.WriteFailed);
+ //object? obj = null;
+ //for (int i = 0; i < 5; i++)
+ //{
+ // T readValue = ReadCustomer<T>(address);
+ // stringBuilder.AppendLine(string.Format(CommunicationInfoMessage.WriteAfterRead, address, JsonConvert.SerializeObject(readValue)));
+ // obj = readValue;
+ // PropertyInfo[] propertyInfos = typeof(T).GetProperties();
+ // for (int j = 0; j < propertyInfos.Length; j++)
+ // {
+ // object? writeValueItem = propertyInfos[j].GetValue(value);
+ // object? readValueItem = propertyInfos[j].GetValue(readValue);
+ // if (writeValueItem.Equals(readValueItem))
+ // {
+ // stringBuilder.AppendLine(string.Format(CommunicationInfoMessage.WriteAndReadCheckSuccess, address, JsonConvert.SerializeObject(value), JsonConvert.SerializeObject(readValue)));
+ // }
+ // else
+ // {
+ // break;
+ // }
+ // if (j == propertyInfos.Length - 1)
+ // return true;
+ // }
+ // plc.WriteCustomer(address, value);
+ //}
+ //stringBuilder.AppendLine(string.Format(CommunicationExceptionMessage.WriteAndReadCheckFaild, address, JsonConvert.SerializeObject(value), JsonConvert.SerializeObject(obj)));
+ //throw new CommunicationException(string.Format(CommunicationExceptionMessage.WriteAndReadCheckFaild, address, JsonConvert.SerializeObject(value), JsonConvert.SerializeObject(obj)), CommunicationErrorType.WriteFailed);
+ return true;
}
else
{
throw new CommunicationException(string.Format(CommunicationExceptionMessage.WriteFailedException, typeof(T).Name, address, JsonConvert.SerializeObject(value), operateResult.Message), CommunicationErrorType.WriteFailed);
}
+ #endregion
}
catch (Exception ex)
{
--
Gitblit v1.9.3