Files
DMS/DMS.WPF/Profiles/MappingProfile.cs
David P.G 958593b35d 1 feat: 实现触发器-菜单联动功能和事件系统
2
    3 - 实现触发器与菜单联动功能,现在可以同时创建触发器及其关联的菜单项
    4 - 添加触发器更改事件系统,用于通知UI和其他组件触发器状态的变化
    5 - 优化触发器管理服务,改进了添加、修改和删除触发器的逻辑
    6 - 将CreateTriggerAsync方法重命名为AddTriggerAsync,使其语义更准确
    7 - 修改UpdateTriggerAsync方法的参数和返回值类型,提高一致性
    8 - 添加CreateTriggerWithMenuAsync方法用于同时创建触发器和菜单
    9 - 在应用层重构触发器管理逻辑,增加事务支持确保数据一致性
   10 - 更新菜单管理服务,改进并发安全处理
   11 - 调整数据存储服务,使其同步触发器和菜单更新
   12 - 更新触发器对话框和列表视图模型,提升用户体验
   13 - 在依赖注入容器中注册触发器服务
   14 - 修复设备数据服务中的异步调用问题,确保菜单项的正确处理
   15 - 添加缺失的触发器项映射配置
   16 - 创建TriggerChangedEventArgs类处理触发器更改事件
2025-10-19 20:34:20 +08:00

50 lines
1.7 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using AutoMapper;
using DMS.Application.DTOs;
using DMS.Core.Models;
using DMS.Infrastructure.Models;
using DMS.WPF.ItemViewModel;
using DMS.WPF.ItemViewModel;
namespace DMS.WPF.Profiles
{
public class MappingProfile : Profile
{
public MappingProfile()
{
CreateMap<Device, DeviceItem>()
.ReverseMap();
CreateMap<Variable, VariableItem>()
.ForMember(dest => dest.MqttAliases, opt => opt.Ignore())
.ReverseMap();
CreateMap<VariableTable, VariableTableItem>()
.ReverseMap();
CreateMap<OpcUaNode, OpcUaNodeItem>()
.ReverseMap();
CreateMap<VariableItem, VariableItem>();
CreateMap<MqttAlias, MqttAliasItem>()
.ReverseMap();
CreateMap<MenuBean, MenuItem>()
.ReverseMap();
CreateMap<MqttServer, MqttServerItem>()
.ForMember(dest => dest.VariableAliases, opt => opt.Ignore())
.ReverseMap();
CreateMap<UserDto, UserItem>().ReverseMap();
CreateMap<VariableHistoryDto, VariableHistoryItem>().ReverseMap();
CreateMap<Variable, VariableItem>()
.ReverseMap();
CreateMap<NlogDto, NlogItem>().ReverseMap();
CreateMap<TriggerItem, TriggerItem>().ReverseMap();
// 添加触发器相关映射
CreateMap<TriggerItem, Core.Models.Triggers.Trigger>()
.ForMember(dest => dest.Variables, opt => opt.Ignore()) // 忽略Variables属性因为这个通常在业务逻辑中处理
.ReverseMap();
}
}
}