import 'package:superport_v2/features/reporting/domain/entities/report_export_format.dart';

/// 보고서 내보내기 요청을 표현하는 모델.
class ReportExportRequest {
  const ReportExportRequest({
    required this.from,
    required this.to,
    required this.format,
    this.transactionStatusId,
    this.approvalStatusId,
    this.requestedById,
  });

  /// 조회 시작 일자.
  final DateTime from;

  /// 조회 종료 일자.
  final DateTime to;

  /// 내보내기 파일 형식.
  final ReportExportFormat format;

  /// 트랜잭션 상태 식별자.
  final int? transactionStatusId;

  /// 결재 상태 식별자.
  final int? approvalStatusId;

  /// 상신자(요청자) 식별자.
  final int? requestedById;
}
