feat(处理器): 增强变量处理链并实现批量更新

- 新增 UpdateDbVariableProcessor 处理器,通过队列和定时器实现数据库的批量更新,以降低负载。
  - 重构 ValueConvertProcessor 处理器,使其能够解析 ConversionFormula 公式,计算出最终的 DisplayValue。
  - 扩展 IVariableRepository 仓储接口,添加 UpdateBatchAsync 方法,并使用SqlSugar实现高效的批量更新。
  - 优化 VariableContext 模型,将 NewValue 类型统一为 string,简化了数据流并提升了类型安全。
This commit is contained in:
2025-10-02 17:35:35 +08:00
parent 2a98b40bfe
commit cdfb906112
8 changed files with 169 additions and 50 deletions

View File

@@ -242,9 +242,8 @@ public class OptimizedS7BackgroundService : BackgroundService
{
if (readResults.TryGetValue(variable.S7Address, out var value))
{
// 将更新后的数据推入处理队列。
await _dataProcessingService.EnqueueAsync(new VariableContext(variable, value));
await _dataProcessingService.EnqueueAsync(new VariableContext(variable, value?.ToString()));
}
// else
// {