初步完成AppDataCenterService的重构

This commit is contained in:
2025-09-09 15:28:07 +08:00
parent 94ef1dec84
commit 1dad2a0d2f
35 changed files with 704 additions and 1891 deletions

View File

@@ -23,6 +23,7 @@ namespace DMS.Infrastructure.Services;
public class S7BackgroundService : BackgroundService
{
private readonly IAppDataCenterService _appDataCenterService;
private readonly IAppDataStorageService _appDataStorageService;
private readonly IDataProcessingService _dataProcessingService;
private readonly IChannelBus _channelBus;
private readonly IMessenger _messenger;
@@ -40,18 +41,20 @@ public class S7BackgroundService : BackgroundService
/// </summary>
public S7BackgroundService(
IAppDataCenterService appDataCenterService,
IAppDataStorageService appDataStorageService,
IDataProcessingService dataProcessingService,
IChannelBus channelBus,
IMessenger messenger,
ILogger<S7BackgroundService> logger)
{
_appDataCenterService = appDataCenterService;
_appDataStorageService = appDataStorageService;
_dataProcessingService = dataProcessingService;
_channelBus = channelBus;
_messenger = messenger;
_logger = logger;
_appDataCenterService.OnLoadDataCompleted += OnLoadDataCompleted;
_appDataCenterService.DataLoaderService.OnLoadDataCompleted += OnLoadDataCompleted;
}
private void OnLoadDataCompleted(object? sender, DataLoadCompletedEventArgs e)
@@ -73,7 +76,7 @@ public class S7BackgroundService : BackgroundService
break;
}
if (_appDataCenterService.Devices.IsEmpty)
if (_appDataStorageService.Devices.IsEmpty)
{
_logger.LogInformation("没有可用的S7设备等待设备列表更新...");
continue;
@@ -114,9 +117,9 @@ public class S7BackgroundService : BackgroundService
_logger.LogInformation("开始加载S7设备....");
// 获取所有激活的S7设备
var s7Devices = _appDataCenterService
.Devices.Values.Where(d => d.Protocol == ProtocolType.S7 && d.IsActive == true)
.ToList();
var s7Devices = _appDataStorageService
.Devices.Values.Where(d => d.Protocol == ProtocolType.S7 && d.IsActive == true)
.ToList();
// 清理已不存在的设备代理
var existingDeviceIds = s7Devices.Select(d => d.Id).ToHashSet();
@@ -134,7 +137,7 @@ public class S7BackgroundService : BackgroundService
// 为每个设备创建或更新代理
foreach (var deviceDto in s7Devices)
{
if (!_appDataCenterService.Devices.TryGetValue(deviceDto.Id, out var device))
if (!_appDataStorageService.Devices.TryGetValue(deviceDto.Id, out var device))
continue;
// 创建或更新设备代理