IStepActionRepository.cs 947 Bytes
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
using Rcs.Domain.Entities;

namespace Rcs.Domain.Repositories;

/// <summary>
/// 步骤动作仓储接口
/// </summary>
public interface IStepActionRepository : IRepository<StepAction>
{
    /// <summary>
    /// 根据属性ID获取所有动作
    /// </summary>
    Task<IEnumerable<StepAction>> GetByPropertyIdAsync(
        Guid propertyId,
        CancellationToken cancellationToken = default);

    /// <summary>
    /// 根据属性ID获取所有动作(按顺序排序)
    /// </summary>
    Task<IEnumerable<StepAction>> GetByPropertyIdOrderedAsync(
        Guid propertyId,
        CancellationToken cancellationToken = default);

    /// <summary>
    /// 根据动作类型获取动作列表
    /// </summary>
    Task<IEnumerable<StepAction>> GetByTypeAsync(
        string type,
        CancellationToken cancellationToken = default);
}