David P.G cdfb906112 feat(处理器): 增强变量处理链并实现批量更新
- 新增 UpdateDbVariableProcessor 处理器,通过队列和定时器实现数据库的批量更新,以降低负载。
  - 重构 ValueConvertProcessor 处理器,使其能够解析 ConversionFormula 公式,计算出最终的 DisplayValue。
  - 扩展 IVariableRepository 仓储接口,添加 UpdateBatchAsync 方法,并使用SqlSugar实现高效的批量更新。
  - 优化 VariableContext 模型,将 NewValue 类型统一为 string,简化了数据流并提升了类型安全。
2025-10-02 17:35:35 +08:00
2025-10-02 13:19:55 +08:00
2025-09-16 12:29:09 +08:00
2025-09-04 14:46:50 +08:00
2025-08-25 20:16:57 +08:00
2025-09-06 12:03:39 +08:00
2025-09-07 19:01:58 +08:00

PMSWPF

OPC UA Service

This project includes an OPC UA service implementation that provides the following functionalities:

Features

  • Connect to OPC UA servers
  • Browse nodes in the OPC UA address space
  • Read and write values from/to OPC UA nodes
  • Add subscriptions for monitoring node changes

Usage

// Create an instance of the OPC UA service
var opcUaService = new OpcUaService();

// Connect to an OPC UA server
await opcUaService.CreateSession("opc.tcp://localhost:4840");

// Check connection status
if (opcUaService.IsConnected())
{
    // Browse nodes
    var rootNodeId = ObjectIds.RootFolder;
    var references = opcUaService.BrowseNodes(rootNodeId);
    
    // Read a value
    var value = opcUaService.ReadValue(someNodeId);
    
    // Write a value
    opcUaService.WriteValue(someNodeId, newValue);
    
    // Add a subscription
    var subscription = opcUaService.AddSubscription("MySubscription");
}

// Disconnect when done
opcUaService.Disconnect();

Testing

Unit tests for the OPC UA service are included in the DMS.Infrastructure.UnitTests project. Run them using your preferred test runner.

Trigger System

The trigger system has been updated to support associating triggers with multiple variables instead of just one. This allows for more flexible trigger configurations where a single trigger can monitor multiple variables.

Key Changes

  • Modified TriggerDefinition to use a list of variable IDs instead of a single variable ID
  • Added a new TriggerVariables table to maintain the many-to-many relationship between triggers and variables
  • Updated the UI to support selecting multiple variables when creating or editing triggers
  • Updated all related services and repositories to handle the new many-to-many relationship
Description
设备管理系统
Readme 2.5 MiB