using Distribution.Models; namespace Distribution.Features.ChequeBook; public record ChequePageResponse( string ChequeNo, string ChequeBookNo, ChequePageIssueStatus IssueStatus, PayeeType? PayeeType, int? PayeeId, string? PayeeName, DateTime? IssueDate, decimal? Amount, string? CurrencyCode, int? VoucherId, string? ReferenceNo, string? Purpose, bool? IsCrossCheque, bool? IsAccountPayee, bool? IsPostDated, string? Notes, string? PrintedBy, DateTime? PrintedAt, DateTime? ClearedDate, bool? ClearedByBank, string? CancelReason); public record ChequeBookResponse( string ChequeBookNo, int BranchId, Guid BankAccountId, string StartChequeNo, string EndChequeNo, int TotalLeaves, DateTime ReceivedDate, string? Description, string? CreatedBy, ChequeBookStatus Status, List Pages); public record PagedResult(IReadOnlyList Items, int TotalCount, int? Page, int? PageSize); public record CreateChequeBookRequest( int BranchId, Guid BankAccountId, string ChequeBookNo, string StartChequeNo, string EndChequeNo, int TotalLeaves, DateTime ReceivedDate, string? Description, string? CreatedBy); public record IssueChequePageRequest( PayeeType PayeeType, int? PayeeId, string PayeeName, DateTime IssueDate, decimal Amount, string? CurrencyCode, int? VoucherId, string? ReferenceNo, string? Purpose, bool? IsCrossCheque, bool? IsAccountPayee, bool? IsPostDated, string? Notes, string? PrintedBy); public record UpdateChequePageStatusRequest( ChequePageStatusAction Action, DateTime? ClearedDate, string? CancelReason, string? PerformedBy);