using CMSMicroservice.Domain.Enums;

namespace CMSMicroservice.Application.UserOrderCQ.Queries.GetAllUserOrderByFilter;
public record GetAllUserOrderByFilterQuery : IRequest<GetAllUserOrderByFilterResponseDto>
{
    //موقعیت صفحه بندی 
    public PaginationState? PaginationState { get; init; }
    //مرتب سازی بر اساس 
    public string? SortBy { get; init; }
    //فیلتر 
    public GetAllUserOrderByFilterFilter? Filter { get; init; }

}public class GetAllUserOrderByFilterFilter
{
    //شناسه 
    public long? Id { get; set; }
    //قیمت 
    public long? Amount { get; set; }
    //شناسه پکیج 
    public long? PackageId { get; set; }
    //شناسه تراکنش 
    public long? TransactionId { get; set; }
    //وضعیت پرداخت 
    public PaymentStatus? PaymentStatus { get; set; }
    //تاریخ پرداخت 
    public DateTime? PaymentDate { get; set; }
    //شناسه کاربر 
    public long? UserId { get; set; }
    //شناسه آدرس کاربر 
    public long? UserAddressId { get; set; }
    // 
    public PaymentMethod? PaymentMethod { get; set; }
    // وضعیت ارسال
    public DeliveryStatus? DeliveryStatus { get; set; }
}
