using MediatR;
using TakeoutSaaS.Application.App.Orders.Dto;
using TakeoutSaaS.Domain.Orders.Enums;

namespace TakeoutSaaS.Application.App.Orders.Queries;

/// <summary>
/// 获取订单看板数据查询。
/// </summary>
public sealed record GetOrderBoardQuery : IRequest<OrderBoardResultDto>
{
    /// <summary>
    /// 门店标识。
    /// </summary>
    public required long StoreId { get; init; }

    /// <summary>
    /// 租户标识。
    /// </summary>
    public required long TenantId { get; init; }

    /// <summary>
    /// 渠道筛选（可选）。
    /// </summary>
    public OrderChannel? Channel { get; init; }
}
