refactor:完成重构设备的添加,删除,更新。

This commit is contained in:
2025-10-22 14:06:16 +08:00
parent e995ec7207
commit 54d040b45f
76 changed files with 1028 additions and 1161 deletions

View File

@@ -16,8 +16,8 @@ namespace DMS.WPF.Services;
public class LogDataService : ILogDataService
{
private readonly IMapper _mapper;
private readonly IWpfDataService _dataStorageService;
private readonly IAppStorageService _appStorageService;
private readonly IViewDataService _viewDataService;
private readonly IAppDataService _appDataService;
@@ -26,17 +26,17 @@ public class LogDataService : ILogDataService
/// </summary>
/// <param name="mapper">AutoMapper 实例。</param>
/// <param name="appStorageService">数据服务中心实例。</param>
public LogDataService(IMapper mapper,IWpfDataService dataStorageService, IAppStorageService appStorageService)
public LogDataService(IMapper mapper,IViewDataService dataStorageService, IAppDataService appStorageService)
{
_mapper = mapper;
_dataStorageService = dataStorageService;
_appStorageService = appStorageService;
_viewDataService = dataStorageService;
_appDataService = appStorageService;
}
public void LoadAllLog()
{
// 加载日志数据
_dataStorageService.Nlogs = _mapper.Map<ObservableCollection<NlogItem>>(_appStorageService.Nlogs.Values);
_viewDataService.Nlogs = _mapper.Map<ObservableCollection<NlogItem>>(_appDataService.Nlogs.Values);
}
/// <summary>
@@ -50,20 +50,20 @@ public class LogDataService : ILogDataService
switch (e.ChangeType)
{
case DataChangeType.Added:
_dataStorageService.Nlogs.Add(_mapper.Map<NlogItem>(e.Nlog));
_viewDataService.Nlogs.Add(_mapper.Map<NlogItem>(e.Nlog));
break;
case DataChangeType.Updated:
var existingLog = _dataStorageService.Nlogs.FirstOrDefault(l => l.Id == e.Nlog.Id);
var existingLog = _viewDataService.Nlogs.FirstOrDefault(l => l.Id == e.Nlog.Id);
if (existingLog != null)
{
_mapper.Map(e.Nlog, existingLog);
}
break;
case DataChangeType.Deleted:
var logToRemove = _dataStorageService.Nlogs.FirstOrDefault(l => l.Id == e.Nlog.Id);
var logToRemove = _viewDataService.Nlogs.FirstOrDefault(l => l.Id == e.Nlog.Id);
if (logToRemove != null)
{
_dataStorageService.Nlogs.Remove(logToRemove);
_viewDataService.Nlogs.Remove(logToRemove);
}
break;
}