// EN: Query to get appointments by shop with pagination.
// VI: Query lấy appointments theo shop với phân trang.

using BookingService.API.Application.DTOs;
using MediatR;

namespace BookingService.API.Application.Queries;

/// <summary>
/// EN: Query to get appointments by shop with optional date filtering and pagination.
/// VI: Query để lấy appointments theo shop với lọc ngày tùy chọn và phân trang.
/// </summary>
public record GetAppointmentsByShopQuery(
    Guid ShopId,
    DateTime? StartDate = null,
    DateTime? EndDate = null,
    string? Status = null,
    int Page = 1,
    int PageSize = 20
) : IRequest<PaginatedList<AppointmentDto>>;
