diff --git a/src/utils/printTemplates.ts b/src/utils/printTemplates.ts index b17fcb315..4ceccbdc3 100644 --- a/src/utils/printTemplates.ts +++ b/src/utils/printTemplates.ts @@ -55,18 +55,8 @@ export async function getPrintTemplatePropValues( paymentId = await (doc as SalesInvoice).getPaymentIds(); if (paymentId && paymentId.length) { - const paymentDoc = await fyo.doc.getDoc( - ModelNameEnum.Payment, - paymentId[0] - ); - - (values.doc as PrintTemplateData).paymentMethod = - paymentDoc.paymentMethod; - - (values.doc as PrintTemplateData).paidAmount = doc.fyo.format( - paymentDoc.amount as Money, - ModelNameEnum.Currency - ); + const paymentDetails = await getPaymentDetails(doc, paymentId); + (values.doc as PrintTemplateData).paymentDetails = paymentDetails; } } @@ -133,6 +123,28 @@ export async function getPrintTemplatePropValues( return values; } +async function getPaymentDetails(doc: Doc, paymentId: string[]) { + const paymentIds = paymentId.sort(); + const paymentDetails = []; + let outstandingAmount = doc.grandTotal as Money; + + for (const payment of paymentIds) { + const paymentDoc = await doc.fyo.doc.getDoc(ModelNameEnum.Payment, payment); + outstandingAmount = outstandingAmount.sub(paymentDoc.amount as Money); + + paymentDetails.push({ + amount: doc.fyo.format(paymentDoc.amount, ModelNameEnum.Currency), + amountPaid: doc.fyo.format(paymentDoc.amountPaid, ModelNameEnum.Currency), + paymentMethod: paymentDoc.paymentMethod as string, + outstandingAmount: doc.fyo.format( + outstandingAmount, + ModelNameEnum.Currency + ), + }); + } + + return paymentDetails; +} function getDate(dateString: string): string { const date = new Date(dateString); diff --git a/templates/Business-POS.template.html b/templates/Business-POS.template.html index 0a7188d03..2df8e66c6 100644 --- a/templates/Business-POS.template.html +++ b/templates/Business-POS.template.html @@ -43,9 +43,6 @@

Invoice

{{ t`SI` }}
{{ t`Item` }}
-
- {{ t`HSN/SAC` }} -
{{ t`Qty` }}
{{ t`Price` }}
{{ t`Amount` }}
@@ -59,9 +56,6 @@

Invoice

>
{{ index + 1 }}
{{ row.item }}
-
- {{ row.hsnCode }} -
{{ row.quantity }}
{{ row.rate }}
{{ row.amount }}
@@ -74,18 +68,29 @@

Invoice

-
+

Net Total To Pay

{{ doc.grandTotal }}

-
-

Vat Summary

+
+

+ Tax Summary +

-

Total Ex.Vat

+

Total Ex.Tax

{{doc.subTotal}}

@@ -99,35 +104,30 @@

Invoice

-
-
+ +
+
{{ t`Payment` }}
{{ t`Tendered` }}
-
{{ t`Amount` }}
{{ t`Balance` }}
{{ t`Discount` }}
{{ doc.totalDiscount ? doc.totalDiscount : '00.00'}}
-
- {{ doc.totalDiscount ? doc.totalDiscount : '00.00'}} -
-
{{ doc.paymentMethod }}
-
{{ doc.paidAmount }}
-
{{ doc.grandTotal }}
-
- {{ doc.outstandingAmount }} +
+ +
+
+
{{ row.paymentMethod }}
+
{{ row.amount }}
+
+ {{ row.outstandingAmount }} +