Subversion Repositories SmartDukaan

Rev

Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
37066 22 d 11 h amit /trunk/profitmandi-common/ Modular invoice/note PDF generation: extract DocumentRenderer + reusable sections + two-axis tax abstraction out of PdfUtils (now thin shims); folded per-tax invoice columns; note Invoice-Ref + type detection; golden-image test harness  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/DocumentData.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/DocumentDataAdapter.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/DocumentRenderer.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/PdfContext.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/Styles.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/section
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/section/FooterSection.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/section/HeaderSection.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/section/ItemsTableSection.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/section/PartiesSection.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/section/Section.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/section/SummarySection.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/support
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/support/Assets.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/support/CancelledStamp.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/support/Formatting.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/support/SectionHelpers.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/tax
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/tax/InterStateTaxColumns.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/tax/IntraStateTaxColumns.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/tax/TaxColumns.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/tax/TaxColumnsFactory.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/document/tax/TaxTotals.java
/trunk/profitmandi-common/src/test
/trunk/profitmandi-common/src/test/java
/trunk/profitmandi-common/src/test/java/com
/trunk/profitmandi-common/src/test/java/com/spice
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/DocumentDataAdapterTest.java
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/golden
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/golden/GoldenCreditNoteTest.java
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/golden/GoldenDebitNoteTest.java
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/golden/GoldenInvoiceV1Test.java
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/golden/GoldenInvoiceV2Test.java
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/golden/GoldenPdfHarness.java
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/golden/PdfFixtures.java
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/golden/SampleDocumentGeneratorTest.java
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/tax
/trunk/profitmandi-common/src/test/java/com/spice/profitmandi/common/document/tax/TaxColumnsTest.java
/trunk/profitmandi-common/src/test/resources
/trunk/profitmandi-common/src/test/resources/golden
/trunk/profitmandi-common/src/test/resources/golden/cn-inter-p0.png
/trunk/profitmandi-common/src/test/resources/golden/cn-intra-p0.png
/trunk/profitmandi-common/src/test/resources/golden/dn-inter-p0.png
/trunk/profitmandi-common/src/test/resources/golden/dn-intra-p0.png
/trunk/profitmandi-common/src/test/resources/golden/dn-po-suppressed-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v1-inter-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v1-intra-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v1-margin-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v2-dc-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v2-inter-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v2-intra-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v2-margin-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v2-multiorder-p0.png
/trunk/profitmandi-common/src/test/resources/golden/v2-po-orderdate-p0.png
/trunk/profitmandi-common
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
37062 22 d 14 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Revert PdfUtils to pre-refactor version (r36674) to unbreak trunk; modular doc-generation refactor still in progress  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
37052 22 d 18 h amit /trunk/profitmandi-common/ Delegate invoice/note PDF rendering to DocumentRenderer; add poNumber/orderDate to InvoicePdfModel; add pdfbox test dep + captureGolden flag for golden-image tests  
/trunk/profitmandi-common/build.gradle
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/InvoicePdfModel.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36674 68 d 11 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/ Add irnErrorMessage to InvoicePdfModel and show e-invoice error on PDF where IRN would appear  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/InvoicePdfModel.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36572 77 d 16 h amit /trunk/ fix: add debit note PDF labels, HDFC UTR duplicate lock, AJAX error handlers in common.js  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/hdfc/HdfcPaymentController.java
/trunk/profitmandi-fofo/src/main/webapp/resources/js/common.js
36183 119 d 17 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Credit Note PDF fixes: null guard on msAddDataCell, doc-type-aware labels (invoice/credit note/challan), conditional Order Id column, HSN code support  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36177 121 d 10 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Fix currency format for negative amounts and use explicit symbol removal

Previous regex fix missed negative amounts like -Rs.500.50. Now uses explicit
replace("Rs.", "") for Java 8 en_IN locale with ₹ fallback for newer JDKs.
Handles both positive (Rs.17,618.00) and negative (-Rs.500.50) correctly.
 
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36176 121 d 10 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Simplify invoice currency format fix for Java 8 compatibility

Use single regex replaceFirst to strip any non-numeric prefix (Rs., ₹, etc.)
instead of getCurrency().getSymbol() which may return a different symbol than
what format() produces on Java 8.
 
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36175 121 d 10 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Fix leading dot in invoice currency formatting

indianCurrencyFormat.format() produces 'Rs.17,618.00' and the regex [^0-9,.]
was keeping the dot from 'Rs.' resulting in '.17,618.00'. Now strips the
currency symbol properly using getCurrency().getSymbol() with a fallback
regex to remove any remaining non-numeric prefix.
 
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36145 121 d 19 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Credit Note label support: CREDIT NOTE DETAILS / CN No: for credit note documents  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36138 122 d 12 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Delivery Challan: show CHALLAN DETAILS and Challan No instead of INVOICE DETAILS and Invoice No  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36137 122 d 12 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Indian currency formatting: lakh/crore amount in words + Indian comma style (1,25,129.00) for all money fields in invoice table and summary  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36120 123 d 11 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Widen Order Id column, compact E-Way Bill format matching invoice style  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/EWayBillPDF.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36119 123 d 12 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Invoice PDF fixes: unified Rate column, per-unit gross sale for margin qty>1, Tax+Total columns, Tax Rate header, remove whitespace in summary  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36116 123 d 12 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Unified invoice PDF generation (generateInvoiceV2) for both margin and regular invoices

- New clean layout: Logo+Title+QR header, Supplier/Invoice/Buyer sections, 10-col item table
- Margin: subtitle, declaration, Gross Sale/Margin columns, GST on Margin summary
- Regular: Rate/Taxable columns, Total GST summary, no declaration
- Shared: Tax Rate col, Tax+Total cols, payment, credit terms, IRN/QR, EWB, cancellation
- Old generateAndWrite() preserved for debit notes and credit notes
 
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36111 123 d 15 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Update margin scheme invoice PDF to match GST compliant format per Rule 32(5)

- Title: TAX INVOICE with margin scheme subtitle
- No purchase price disclosed on invoice
- Columns: S.No, Description, HSN, Qty, Gross Sale Value, Taxable Value (Margin), Tax Rate, Tax Amount
- Declaration box with Section 2(27) and Rule 32(5) reference
- Summary: Total Selling Price, GST on Margin, Total Invoice Value
- Labels: Buyer Details / Supplier Details per GST terminology
 
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36109 123 d 18 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Separate margin scheme invoice PDF generation from regular invoice flow

- Add generateMarginSchemeInvoice() with proper margin scheme table format:
S.No | Description | HSN | Qty | Purchase Price | Selling Price | Margin | GST on Margin | Invoice Total
- Title: INVOICE OF SUPPLY (MARGIN SCHEME)
- Remove margin-specific logic from generateAndWrite() (regular invoice path)
- IRN, E-Way Bill, and cancellation stamp logic intact in both paths
 
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36045 131 d 12 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Remove debug sysout, fix auto-generated note to say Delivery Challan for DCs  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36044 131 d 12 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Debug: add sysout in PdfUtils to trace title rendering  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java
36037 131 d 14 h amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ Fix Delivery Challan PDF: use dynamic title and DC No label instead of hardcoded TAX INVOICE  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/InvoiceFormatter.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/PdfUtils.java

Show All