PLC获取变更
This commit is contained in:
parent
5d847999b7
commit
ad2f0021e6
@ -300,11 +300,6 @@ namespace RIZO.Admin.WebApi.PLC.Service
|
||||
if (slot < 0 || slot > 4)
|
||||
return (false, null, $"PLC槽位号{slot}无效(有效值0-4)");
|
||||
|
||||
// 仅放行指定工位,防止非法请求
|
||||
var supportedPlcs = new HashSet<string> { "OP070-1", "OP080" };
|
||||
if (!supportedPlcs.Contains(plcName))
|
||||
return (false, null, $"仅支持OP070-1/OP080,当前工位:{plcName}");
|
||||
|
||||
Plc plc = null;
|
||||
bool isConnReused = false;
|
||||
var poolKey = $"{ip}_{rack}_{slot}_{cpuType}";
|
||||
@ -361,39 +356,40 @@ namespace RIZO.Admin.WebApi.PLC.Service
|
||||
return (false, null, $"");
|
||||
}
|
||||
|
||||
//给PLC返回数据
|
||||
if (iQueryRequest == 1)
|
||||
{
|
||||
|
||||
}
|
||||
// 5. 多工位专属数据读取(预留扩展,逻辑隔离)
|
||||
if (plcName == "OP070-1")
|
||||
if (iSaveRequest == 1)
|
||||
{
|
||||
if (iSaveRequest == 1)
|
||||
// 5. 多工位专属数据读取(预留扩展,逻辑隔离)
|
||||
if (plcName == "OP070-1" || plcName == "OP070-2" || plcName == "OP070-3" || plcName == "OP075")
|
||||
{
|
||||
prodData = await ReadOP070_1DataAsync(plc, ip, plcName);
|
||||
}
|
||||
}
|
||||
else if (plcName == "OP080")
|
||||
{
|
||||
//prodData = await ReadOP080DataAsync(plc, ip);
|
||||
}
|
||||
else if (plcName == "OP080")
|
||||
{
|
||||
//prodData = await ReadOP080DataAsync(plc, ip);
|
||||
}
|
||||
|
||||
// 6. 统一空值兜底(避免空引用)
|
||||
if (prodData != null)
|
||||
{
|
||||
prodData.QualificationFlag ??= "0";
|
||||
prodData.ReworkFlag ??= "0";
|
||||
prodData.ProductionCycle ??= 0;
|
||||
// 6. 统一空值兜底(避免空引用)
|
||||
if (prodData != null)
|
||||
{
|
||||
prodData.QualificationFlag ??= "0";
|
||||
prodData.ReworkFlag ??= "0";
|
||||
prodData.ProductionCycle ??= 0;
|
||||
|
||||
// 7. 异步保存数据(日志补充PLC名称,便于定位)
|
||||
_ = Task.Run(() => _plcProductionDataService.AddPlcProductionData(prodData))
|
||||
.ContinueWith(t =>
|
||||
{
|
||||
if (t.IsFaulted)
|
||||
// 7. 异步保存数据(日志补充PLC名称,便于定位)
|
||||
_ = Task.Run(() => _plcProductionDataService.AddPlcProductionData(prodData))
|
||||
.ContinueWith(t =>
|
||||
{
|
||||
Console.WriteLine($"{plcName}({ip})数据保存失败:{t.Exception?.InnerException?.Message}");
|
||||
}
|
||||
});
|
||||
if (t.IsFaulted)
|
||||
{
|
||||
Console.WriteLine($"{plcName}({ip})数据保存失败:{t.Exception?.InnerException?.Message}");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
// 8. 个性化返回消息(区分工位和连接类型)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user