refactor:完成重构设备的添加,删除,更新。
This commit is contained in:
@@ -13,9 +13,9 @@ namespace DMS.WPF.Services;
|
||||
public class MqttAliasDataService : IMqttAliasDataService
|
||||
{
|
||||
private readonly IMapper _mapper;
|
||||
private readonly IAppStorageService _appStorageService;
|
||||
private readonly IAppDataService _appDataService;
|
||||
private readonly IMqttAliasManagementService _mqttAliasManagementService;
|
||||
private readonly IWpfDataService _dataStorageService;
|
||||
private readonly IViewDataService _viewDataService;
|
||||
|
||||
/// <summary>
|
||||
/// MqttAliasDataService类的构造函数。
|
||||
@@ -25,14 +25,14 @@ public class MqttAliasDataService : IMqttAliasDataService
|
||||
/// <param name="mqttAliasManagementService">MQTT别名管理服务实例。</param>
|
||||
/// <param name="dataStorageService">数据存储服务实例。</param>
|
||||
public MqttAliasDataService(IMapper mapper,
|
||||
IAppStorageService appStorageService,
|
||||
IAppDataService appStorageService,
|
||||
IMqttAliasManagementService mqttAliasManagementService,
|
||||
IWpfDataService dataStorageService)
|
||||
IViewDataService dataStorageService)
|
||||
{
|
||||
_mapper = mapper;
|
||||
_appStorageService = appStorageService;
|
||||
_appDataService = appStorageService;
|
||||
_mqttAliasManagementService = mqttAliasManagementService;
|
||||
_dataStorageService = dataStorageService;
|
||||
_viewDataService = dataStorageService;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -43,22 +43,22 @@ public class MqttAliasDataService : IMqttAliasDataService
|
||||
try
|
||||
{
|
||||
// 清空现有数据
|
||||
_dataStorageService.MqttAliases.Clear();
|
||||
_viewDataService.MqttAliases.Clear();
|
||||
|
||||
// 加载MQTT别名数据
|
||||
foreach (var mqttAlias in _appStorageService.MqttAliases.Values)
|
||||
foreach (var mqttAlias in _appDataService.MqttAliases.Values)
|
||||
{
|
||||
MqttAliasItem mqttAliasItem = _mapper.Map<MqttAliasItem>(mqttAlias);
|
||||
if(_dataStorageService.MqttAliases.TryAdd(mqttAlias.Id, mqttAliasItem))
|
||||
if(_viewDataService.MqttAliases.TryAdd(mqttAlias.Id, mqttAliasItem))
|
||||
{
|
||||
|
||||
if (_dataStorageService.MqttServers.TryGetValue(mqttAlias.MqttServerId,out var mqttServerItem))
|
||||
if (_viewDataService.MqttServers.TryGetValue(mqttAlias.MqttServerId,out var mqttServerItem))
|
||||
{
|
||||
mqttServerItem.VariableAliases.Add(mqttAliasItem);
|
||||
mqttAliasItem.MqttServer = mqttServerItem;
|
||||
}
|
||||
|
||||
if (_dataStorageService.Variables.TryGetValue(mqttAlias.VariableId,out var variableItem))
|
||||
if (_viewDataService.Variables.TryGetValue(mqttAlias.VariableId,out var variableItem))
|
||||
{
|
||||
variableItem.MqttAliases.Add(mqttAliasItem);
|
||||
mqttAliasItem.Variable = variableItem;
|
||||
@@ -83,19 +83,19 @@ public class MqttAliasDataService : IMqttAliasDataService
|
||||
var addMqttAlias = await _mqttAliasManagementService.AssignAliasAsync(_mapper.Map<MqttAlias>(mqttAlias));
|
||||
|
||||
|
||||
if (_dataStorageService.MqttAliases.ContainsKey(addMqttAlias.Id))
|
||||
if (_viewDataService.MqttAliases.ContainsKey(addMqttAlias.Id))
|
||||
{
|
||||
return null;
|
||||
}
|
||||
mqttAlias.Id = addMqttAlias.Id;
|
||||
|
||||
_dataStorageService.MqttAliases.Add(mqttAlias.Id, mqttAlias);
|
||||
if (_dataStorageService.MqttServers.TryGetValue(mqttAlias.MqttServerId, out var mqttServerItem))
|
||||
_viewDataService.MqttAliases.Add(mqttAlias.Id, mqttAlias);
|
||||
if (_viewDataService.MqttServers.TryGetValue(mqttAlias.MqttServerId, out var mqttServerItem))
|
||||
{
|
||||
mqttAlias.MqttServer = mqttServerItem;
|
||||
mqttServerItem.VariableAliases.Add(mqttAlias);
|
||||
}
|
||||
if (_dataStorageService.Variables.TryGetValue(mqttAlias.VariableId, out var variableItem))
|
||||
if (_viewDataService.Variables.TryGetValue(mqttAlias.VariableId, out var variableItem))
|
||||
{
|
||||
mqttAlias.Variable = variableItem;
|
||||
variableItem.MqttAliases.Add(mqttAlias);
|
||||
@@ -114,7 +114,7 @@ public class MqttAliasDataService : IMqttAliasDataService
|
||||
if (result > 0)
|
||||
{
|
||||
// 更新界面数据
|
||||
if (_dataStorageService.MqttAliases.TryGetValue(mqttAlias.Id, out var existingAlias))
|
||||
if (_viewDataService.MqttAliases.TryGetValue(mqttAlias.Id, out var existingAlias))
|
||||
{
|
||||
// 更新现有别名的属性
|
||||
existingAlias.VariableId = mqttAlias.VariableId;
|
||||
@@ -138,15 +138,15 @@ public class MqttAliasDataService : IMqttAliasDataService
|
||||
if (result )
|
||||
{
|
||||
|
||||
if (_dataStorageService.MqttServers.TryGetValue(mqttAlias.MqttServerId, out var mqttServerItem))
|
||||
if (_viewDataService.MqttServers.TryGetValue(mqttAlias.MqttServerId, out var mqttServerItem))
|
||||
{
|
||||
mqttServerItem.VariableAliases.Remove(mqttAlias);
|
||||
}
|
||||
if (_dataStorageService.Variables.TryGetValue(mqttAlias.VariableId, out var variableItem))
|
||||
if (_viewDataService.Variables.TryGetValue(mqttAlias.VariableId, out var variableItem))
|
||||
{
|
||||
variableItem.MqttAliases.Remove(mqttAlias);
|
||||
}
|
||||
_dataStorageService.MqttAliases.Remove(mqttAlias.Id, out _);
|
||||
_viewDataService.MqttAliases.Remove(mqttAlias.Id, out _);
|
||||
}
|
||||
|
||||
return result;
|
||||
@@ -157,7 +157,7 @@ public class MqttAliasDataService : IMqttAliasDataService
|
||||
/// </summary>
|
||||
public async Task<MqttAliasItem> GetMqttAliasById(int id)
|
||||
{
|
||||
if (_dataStorageService.MqttAliases.TryGetValue(id, out var mqttAliasItem))
|
||||
if (_viewDataService.MqttAliases.TryGetValue(id, out var mqttAliasItem))
|
||||
{
|
||||
return mqttAliasItem;
|
||||
}
|
||||
@@ -167,7 +167,7 @@ public class MqttAliasDataService : IMqttAliasDataService
|
||||
if (mqttAlias != null)
|
||||
{
|
||||
var mappedItem = _mapper.Map<MqttAliasItem>(mqttAlias);
|
||||
_dataStorageService.MqttAliases.TryAdd(mappedItem.Id, mappedItem);
|
||||
_viewDataService.MqttAliases.TryAdd(mappedItem.Id, mappedItem);
|
||||
return mappedItem;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user