Uecko_ERP/modules/customer-invoices/src/api/infrastructure/renderers/issued-invoice-report-pdf.renderer.ts
2026-01-13 19:41:14 +01:00

37 lines
924 B
TypeScript

import type { DTO } from "@erp/core";
import { FastReportRenderer } from "@erp/core/api";
export type IssuedInvoiceReportPDFRendererParams = {
companySlug: string;
documentId: string;
};
export class IssuedInvoiceReportPDFRenderer extends FastReportRenderer {
protected readonly templateName = "issued-invoice.frx";
protected companySlug!: string;
render(source: DTO, params: IssuedInvoiceReportPDFRendererParams) {
this.companySlug = params.companySlug;
return this.renderInternal({
inputData: source,
format: "PDF",
storageKey: {
documentType: "customer-invoice",
documentId: params.documentId,
format: "PDF",
},
});
}
protected resolveTemplatePath(): string {
const templatePath = this.templateResolver.resolveTemplatePath(
"customer-invoices",
this.companySlug,
this.templateName
);
return templatePath;
}
}