using Baya.Application.Models.Bnpl;
using Baya.Application.Models.Common;
using Mediator;

namespace Baya.Application.Features.Bnpl.Queries.GetBnplOrderStatus;

/// <summary>
/// Surfaces a BNPL order: status, the money split (gross/net/commission), the <b>non-instant</b> settlement time,
/// and the revert audit + async customer ETA. <paramref name="AdminView"/> comes from the (policy-gated) admin
/// controller; the customer view is tenancy-scoped to <c>ICurrentUser</c> — a customer can never read another's
/// order (a cross-customer read is a clean not-found).
/// </summary>
public record GetBnplOrderStatusQuery(long BnplTransactionId, bool AdminView)
    : IRequest<OperationResult<BnplOrderStatusDto>>;
