Files
DMS/DMS.Application/Interfaces/Management/ITriggerManagementService.cs
David P.G 740688d575 refactor:将DataLoaderService中的LoadAll*Async方法移到对应的管理服务中
- 将LoadAllDevicesAsync方法移到DeviceManagementService
 - 将LoadAllVariableTablesAsync方法移到VariableTableManagementService
 - 将LoadAllVariablesAsync方法移到VariableManagementService
 - 将LoadAllMenusAsync方法移到MenuManagementService
 - 将LoadAllMqttServersAsync方法移到MqttManagementService
 - 将LoadAllNlogsAsync方法移到LogManagementService
 - 更新DataLoaderService以使用管理服务提供的方法
 - 修改IDataLoaderService接口以移除这些方法
 - 保持与LoadAllTriggersAsync相同的模式
 - 遵循单一职责原则,提高代码一致性" (提交修改并添加描述性的提交信息)
2025-10-18 17:59:21 +08:00

58 lines
2.2 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<TriggerDefinition> GetAllTriggersAsync();
/// <summary>
/// 根据 ID 获取触发器定义
/// </summary>
/// <param name="id">触发器 ID</param>
/// <returns>触发器定义 DTO如果未找到则返回 null</returns>
Task<TriggerDefinition> GetTriggerByIdAsync(int id);
/// <summary>
/// 创建一个新的触发器定义
/// </summary>
/// <param name="triggerDto">要创建的触发器定义 DTO</param>
/// <returns>创建成功的触发器定义 DTO</returns>
Task<TriggerDefinition> CreateTriggerAsync(TriggerDefinition triggerDto);
/// <summary>
/// 更新一个已存在的触发器定义
/// </summary>
/// <param name="id">要更新的触发器 ID</param>
/// <param name="triggerDto">包含更新信息的触发器定义 DTO</param>
/// <returns>更新后的触发器定义 DTO如果未找到则返回 null</returns>
Task<TriggerDefinition?> UpdateTriggerAsync(int id, TriggerDefinition 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<TriggerDefinition>> GetTriggersForVariableAsync(int variableId);
/// <summary>
/// 异步加载所有触发器数据
/// </summary>
Task LoadAllTriggersAsync();
}
}