Files
Chris Chen 3558c67fd7 WIP
2026-06-20 17:51:33 -07:00

29 lines
1.1 KiB
C#

using ROLAC.API.Entities;
namespace ROLAC.API.Services.Disbursement;
/// <summary>Data needed to render one printed check (header + ledger stub lines).</summary>
public class CheckPrintModel
{
public ChurchProfile Issuer { get; set; } = null!;
public Check Check { get; set; } = null!;
public List<CheckLine> Lines { get; set; } = [];
public string AmountInWords { get; set; } = "";
// Captured receipt e-signature, populated only when rendering a signed receipt.
public byte[]? SignatureImage { get; set; }
public string SignatureContentType { get; set; } = "image/png";
}
public interface ICheckPrintService
{
/// <summary>Renders the 8.5"x11" check (check + two ledger stubs) to a PDF stream.</summary>
Task<Stream> RenderPdfAsync(CheckPrintModel model);
/// <summary>
/// Renders a receipt PDF acknowledging a signed check: check info, the disbursement
/// detail lines, and the embedded e-signature image with the signer name and timestamp.
/// </summary>
Task<Stream> RenderReceiptPdfAsync(CheckPrintModel model);
}