Files
DMS/DMS.Application/Interfaces/Management/ITriggerManagementService.cs
David P.G cb984b1b91 1 feat: 重构触发器定义模型并完善触发器-变量关联功能
2
    3 - 重命名TriggerDefinition类为Trigger,移除冗余的Definition后缀
    4 - 更新所有相关接口和实现类以使用新的Trigger类名
    5 - 在Variable模型中添加Triggers集合,实现变量到触发器的反向关联
    6 - 在TriggerVariableManagementService中完善触发器与变量的双向关联逻辑
    7 - 将触发器-变量关联数据加载集成到DataLoaderService中
    8 - 在依赖注入容器中注册ITriggerVariableManagementService和ITriggerVariableAppService
    9 - 更新触发器相关的DTO映射配置
   10 - 修复触发器评估服务中的类型引用问题
   11
   12 此更改统一了触发器模型命名,完善了触发器与变量的双向关联关系,提高了代码的一致性和可维护性。
2025-10-18 18:23:14 +08:00

58 lines
2.1 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 DMS.Application.DTOs;
using DMS.Core.Models.Triggers;
namespace DMS.Application.Interfaces.Management
{
/// <summary>
/// 触发器管理服务接口 (负责 CRUD 操作)
/// </summary>
public interface ITriggerManagementService
{
/// <summary>
/// 获取所有触发器定义
/// </summary>
/// <returns>触发器定义列表</returns>
List<Trigger> GetAllTriggersAsync();
/// <summary>
/// 根据 ID 获取触发器定义
/// </summary>
/// <param name="id">触发器 ID</param>
/// <returns>触发器定义 DTO如果未找到则返回 null</returns>
Task<Trigger> GetTriggerByIdAsync(int id);
/// <summary>
/// 创建一个新的触发器定义
/// </summary>
/// <param name="triggerDto">要创建的触发器定义 DTO</param>
/// <returns>创建成功的触发器定义 DTO</returns>
Task<Trigger> CreateTriggerAsync(Trigger triggerDto);
/// <summary>
/// 更新一个已存在的触发器定义
/// </summary>
/// <param name="id">要更新的触发器 ID</param>
/// <param name="triggerDto">包含更新信息的触发器定义 DTO</param>
/// <returns>更新后的触发器定义 DTO如果未找到则返回 null</returns>
Task<Trigger?> UpdateTriggerAsync(int id, Trigger triggerDto);
/// <summary>
/// 删除一个触发器定义
/// </summary>
/// <param name="id">要删除的触发器 ID</param>
/// <returns>删除成功返回 true否则返回 false</returns>
Task<bool> DeleteTriggerAsync(int id);
/// <summary>
/// 获取与指定变量关联的所有触发器定义
/// </summary>
/// <param name="variableId">变量 ID</param>
/// <returns>该变量关联的触发器定义列表</returns>
Task<List<Trigger>> GetTriggersForVariableAsync(int variableId);
/// <summary>
/// 异步加载所有触发器数据
/// </summary>
Task LoadAllTriggersAsync();
}
}