From 33b01e5e5b1f20ebac9b3d35eee38a51445ed9bc Mon Sep 17 00:00:00 2001 From: Allen T J Date: Fri, 23 May 2025 09:00:10 +0000 Subject: [PATCH] phonepe (#48) Co-authored-by: AllenTJ7 <163137620+AllenTJ7@users.noreply.github.com> Reviewed-on: https://git.cosqnet.com/cosqnet/fitlien-services/pulls/48 --- .../phonepe/invoice/invoiceService.ts | 56 +++++++++++-------- 1 file changed, 32 insertions(+), 24 deletions(-) diff --git a/functions/src/payments/phonepe/invoice/invoiceService.ts b/functions/src/payments/phonepe/invoice/invoiceService.ts index df7afcf..fcf9cec 100644 --- a/functions/src/payments/phonepe/invoice/invoiceService.ts +++ b/functions/src/payments/phonepe/invoice/invoiceService.ts @@ -54,7 +54,7 @@ export class InvoiceService { doc.setFontSize(20); doc.setFont('helvetica', 'bold'); - doc.text(data.businessName, 13, 20); + doc.text(data.businessName, 15, 20); doc.setFontSize(12); doc.setFont('helvetica', 'normal'); @@ -66,10 +66,10 @@ export class InvoiceService { if (addressLines.length <= 2) { for (let i = 0; i < addressLines.length; i++) { - doc.text(addressLines[i], 13, 30 + (i * lineHeight)); + doc.text(addressLines[i], 15, 30 + (i * lineHeight)); } } else { - doc.text(addressLines[0], 13, 30); + doc.text(addressLines[0], 15, 30); let secondLine = addressLines[1]; if (secondLine.length > 3) { @@ -77,7 +77,7 @@ export class InvoiceService { } else { secondLine += '...'; } - doc.text(secondLine, 13, 35); + doc.text(secondLine, 15, 35); } const gstYPosition = 40; @@ -88,17 +88,17 @@ export class InvoiceService { doc.setFontSize(24); doc.setFont('helvetica', 'bold'); - doc.text('RECEIPT', 190, 20, { align: 'right' }); + doc.text('RECEIPT', 195, 20, { align: 'right' }); doc.setFontSize(12); - doc.text(`Receipt #: ${data.invoiceNumber}`, 190, 30, { align: 'right' }); - doc.text(`Date: ${formattedDate}`, 190, 40, { align: 'right' }); + doc.text(`Receipt #: ${data.invoiceNumber}`, 195, 30, { align: 'right' }); + doc.text(`Date: ${formattedDate}`, 195, 40, { align: 'right' }); - doc.line(20, 45, 190, 45); + doc.line(15, 45, 195, 45); doc.setFontSize(12); - const receiptToBoxX = 13; - const receiptToBoxY = 55; + const receiptToBoxX = 15; + const receiptToBoxY = 50; const receiptToBoxWidth = 100; const receiptToBoxHeight = 40; @@ -110,12 +110,20 @@ export class InvoiceService { doc.setFont('helvetica', 'normal'); doc.text(data.customerName, 18, 70); - doc.text(`Phone: ${data.phoneNumber}`, 18, 80); - doc.text(`Email: ${data.email}`, 18, 90); + doc.text(`Phone: ${data.phoneNumber}`, 18, 75); + doc.text(`Email: ${data.email}`, 18, 80); autoTable(doc, { startY: 110, - head: [['No.', 'Description', 'HSN/SAC', 'Amount (INR)']], + margin: {left: 15, right: 15}, + head: [ + [ + {content: 'No.', styles: {halign: 'center'}}, + {content: 'Description', styles: {halign: 'left'}}, + {content: 'HSN/SAC', styles: {halign: 'center'}}, + {content: 'Amount (INR)', styles: {halign: 'right'}} + ] + ], body: [ ['1', `${data.planName} Subscription`, '999723', baseAmount.toFixed(2)] ], @@ -147,30 +155,30 @@ export class InvoiceService { if (hasGst) { doc.text('Taxable Amount:', 150, finalY, { align: 'right' }); - doc.text(`${baseAmount.toFixed(2)} INR`, 190, finalY, { align: 'right' }); + doc.text(`${baseAmount.toFixed(2)} INR`, 195, finalY, { align: 'right' }); doc.text('SGST (9%):', 150, finalY + 10, { align: 'right' }); - doc.text(`${sgst.toFixed(2)} INR`, 190, finalY + 10, { align: 'right' }); + doc.text(`${sgst.toFixed(2)} INR`, 195, finalY + 10, { align: 'right' }); doc.text('CGST (9%):', 150, finalY + 20, { align: 'right' }); - doc.text(`${cgst.toFixed(2)} INR`, 190, finalY + 20, { align: 'right' }); + doc.text(`${cgst.toFixed(2)} INR`, 195, finalY + 20, { align: 'right' }); - doc.line(120, finalY + 25, 190, finalY + 25); + doc.line(120, finalY + 25, 195, finalY + 25); doc.setFont('helvetica', 'bold'); doc.text('Total Amount:', 150, finalY + 30, { align: 'right' }); - doc.text(`${data.amount.toFixed(2)} INR`, 190, finalY + 30, { align: 'right' }); + doc.text(`${data.amount.toFixed(2)} INR`, 195, finalY + 30, { align: 'right' }); } else { - doc.line(120, finalY - 5, 190, finalY - 5); + doc.line(120, finalY - 5, 195, finalY - 5); doc.setFont('helvetica', 'bold'); doc.text('Total Amount:', 150, finalY, { align: 'right' }); - doc.text(`${data.amount.toFixed(2)} INR`, 190, finalY, { align: 'right' }); + doc.text(`${data.amount.toFixed(2)} INR`, 195, finalY, { align: 'right' }); } const paymentY = hasGst ? finalY + 50 : finalY + 20; - const boxX = 13; - const boxY = paymentY - 5; + const boxX = 15; + const boxY = paymentY - 10; const boxWidth = 100; const boxHeight = 40; @@ -183,8 +191,8 @@ export class InvoiceService { doc.setFont('helvetica', 'normal'); doc.text(`Transaction ID: ${data.transactionId}`, 18, paymentY + 10); - doc.text(`Payment Method: ${data.paymentMethod}`, 18, paymentY + 20); - doc.text(`Payment Date: ${formattedDate}`, 18, paymentY + 30); + doc.text(`Payment Method: ${data.paymentMethod}`, 18, paymentY + 15); + doc.text(`Payment Date: ${formattedDate}`, 18, paymentY + 20); doc.setFontSize(12); doc.setFont('helvetica', 'italic');