using DMS.Core.Models.Triggers;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace DMS.Application.Interfaces.Database
{
///
/// 触发器应用服务接口,负责处理触发器相关的业务逻辑。
///
public interface ITriggerAppService
{
///
/// 异步根据ID获取触发器定义。
///
/// 触发器ID。
/// 触发器定义实体。
Task GetTriggerByIdAsync(int id);
///
/// 异步获取所有触发器定义。
///
/// 触发器定义实体列表。
Task> GetAllTriggersAsync();
///
/// 异步创建一个新触发器定义及其关联的变量ID。
///
/// 要创建的触发器定义。
/// 新创建的触发器定义。
Task CreateTriggerAsync(TriggerDefinition trigger);
///
/// 异步更新一个已存在的触发器定义及其关联的变量ID。
///
/// 要更新的触发器定义。
/// 受影响的行数。
Task UpdateTriggerAsync(TriggerDefinition trigger);
///
/// 异步删除一个触发器定义及其关联的变量关系。
///
/// 要删除的触发器ID。
/// 如果删除成功则为 true,否则为 false。
Task DeleteTriggerByIdAsync(int id);
///
/// 异步获取指定变量ID关联的所有触发器定义。
///
/// 变量ID。
/// 与指定变量关联的触发器定义实体列表。
Task> GetTriggersByVariableIdAsync(int variableId);
}
}