完成MQTT服务器的别名设置
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
using DMS.Core.Models;
|
||||
|
||||
namespace DMS.Application.DTOs;
|
||||
|
||||
/// <summary>
|
||||
@@ -10,4 +12,14 @@ public class VariableMqttAliasDto
|
||||
public int MqttServerId { get; set; }
|
||||
public string MqttServerName { get; set; } // 用于UI显示关联的服务器名称
|
||||
public string Alias { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 关联的变量对象。
|
||||
/// </summary>
|
||||
public Variable Variable { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 关联的MQTT服务器对象。
|
||||
/// </summary>
|
||||
public MqttServer MqttServer { get; set; }
|
||||
}
|
||||
@@ -36,7 +36,7 @@ public class MappingProfile : Profile
|
||||
|
||||
// VariableMqttAlias 映射
|
||||
CreateMap<VariableMqttAlias, VariableMqttAliasDto>()
|
||||
.ForMember(dest => dest.MqttServerName, opt => opt.Ignore())
|
||||
.ForMember(dest => dest.MqttServerName, opt => opt.MapFrom(src => src.MqttServer.ServerName))
|
||||
.ReverseMap();
|
||||
|
||||
// VariableHistory 映射
|
||||
|
||||
@@ -57,11 +57,17 @@ public class MqttAliasAppService : IMqttAliasAppService
|
||||
else
|
||||
{
|
||||
// 如果不存在,则创建新的关联
|
||||
// 获取关联的Variable和MqttServer实体
|
||||
var variable = await _repoManager.Variables.GetByIdAsync(variableId);
|
||||
var mqttServer = await _repoManager.MqttServers.GetByIdAsync(mqttServerId);
|
||||
|
||||
var newAlias = new VariableMqttAlias
|
||||
{
|
||||
VariableId = variableId,
|
||||
MqttServerId = mqttServerId,
|
||||
Alias = alias
|
||||
Alias = alias,
|
||||
Variable = variable,
|
||||
MqttServer = mqttServer
|
||||
};
|
||||
await _repoManager.VariableMqttAliases.AddAsync(newAlias);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user