<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SmartDukaan &#x2013; /trunk/profitmandi-dao/src/main/resources/sql/</title><description>WebSVN RSS feed &#x2013; SmartDukaan</description><lastBuildDate>Sat, 18 Jul 2026 16:31:46 +0530</lastBuildDate><generator>WebSVN 2.8.6-DEV</generator><language>en</language><link>https://svn.smartdukaan.com/log.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;max=40&amp;</link><atom:link href="https://svn.smartdukaan.com/rss.php?isdir=1&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;repname=SmartDukaan" rel="self" type="application/rss+xml" />
<item><pubDate>Tue, 14 Jul 2026 10:12:16 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37074 – Add T3.1 re-tag SQL: manual scheme-reversal legs ADDITIONAL_SCHEME -&gt; OTHERS ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add T3.1 re-tag SQL: manual scheme-reversal legs ADDITIONAL_SCHEME -&gt; OTHERS&lt;br /&gt;
&lt;br /&gt;
One-time reconciliation applied to hadb1: 19 manual scheme/incentive clawback&lt;br /&gt;
wallet legs (Rs 2,25,110) whose offer_payout was never rejected (MARGINS CN still&lt;br /&gt;
stands) were re-tagged ADDITIONAL_SCHEME -&gt; OTHERS so the account-statement&lt;br /&gt;
scheme-adjustment line nets out. Money unchanged (reference_type + description&lt;br /&gt;
only). Includes backup + verify + rollback. Backup table&lt;br /&gt;
transaction._bak_addl_scheme_others_20260710.&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/retag_manual_scheme_reversals_to_others.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=37074</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=37074</guid></item>
<item><pubDate>Tue, 07 Jul 2026 14:35:21 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37030 – Add credit block/unblock audit log (dao): CreditBlockLog entity/enum/repo + blockCredit/unblockCredit/getCreditBlockLogs ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 7 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add credit block/unblock audit log (dao): CreditBlockLog entity/enum/repo + blockCredit/unblockCredit/getCreditBlockLogs service methods&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/dtr/CreditBlockAction.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/dtr/CreditBlockLog.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/CreditBlockLogRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/CreditBlockLogRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/add_credit_block_log.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=37030</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=37030</guid></item>
<item><pubDate>Thu, 02 Jul 2026 17:31:00 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36999 – Price-hike deduction (self-contained): revert hike logic from price-drop flow + ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 11 file(s) modified&lt;/strong&gt;&lt;br/&gt;Price-hike deduction (self-contained): revert hike logic from price-drop flow + remove deduct_on_hike flag; add GRN hook (PurchaseServiceImpl, before schemes) and on-demand executor endpoint that debit under-charged units billed in the hike&apos;s [affected_on, created_on] window. Idempotent per (hike, imei).&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/config/AsyncConfig.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/PriceDrop.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/PriceDropRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/PriceDropRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricecircular/PriceCircularService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricing/PriceDropServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricing/PriceHikeService.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricing/PriceHikeServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricing/PriceHikeWorker.java&lt;br /&gt;x /trunk/profitmandi-dao/src/main/resources/sql/add_deduct_on_hike_to_price_drop.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36999</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36999</guid></item>
<item><pubDate>Wed, 01 Jul 2026 13:59:36 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36977 – Price-hike deduction: add deduct_on_hike flag; process flagged hikes as symmetric ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;Price-hike deduction: add deduct_on_hike flag; process flagged hikes as symmetric mirror of drops (wallet debit + scheme reverse/recompute); remove getPayouts price-increase clamp so hikes raise scheme/offer margin&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/PriceDrop.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricecircular/PriceCircularService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricing/PriceDropServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/add_deduct_on_hike_to_price_drop.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36977</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36977</guid></item>
<item><pubDate>Tue, 30 Jun 2026 15:22:32 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36958 – Flagship credit: fire interest-free limits at billing + per-IMEI conversion ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 12 file(s) modified&lt;/strong&gt;&lt;br/&gt;Flagship credit: fire interest-free limits at billing + per-IMEI conversion&lt;br /&gt;
&lt;br /&gt;
- createLoanForBilling now detects flagship lines inside the billing transaction (fixes the&lt;br /&gt;
  REQUIRES_NEW visibility bug where flagship detection re-queried uncommitted invoice_number and&lt;br /&gt;
  never fired). Creates one combined flagship limit (is_flagship=1, limit_block=1, 30-day deadline)&lt;br /&gt;
  plus one transaction.loan_imei row per device.&lt;br /&gt;
- convertFlagshipOnSale / IMEI activation now convert only the sold device&apos;s slice (matched by IMEI),&lt;br /&gt;
  so same-model siblings and other billing tranches keep their interest-free window; full convert at&lt;br /&gt;
  30-day expiry. Lock order aligned (loan -&gt; loan_imei) to avoid sale/expiry deadlock.&lt;br /&gt;
- New transaction.loan_imei table + LoanImei entity/repository (migration_loan_imei_table.sql).&lt;br /&gt;
- selectAllLoansByInvoice: PurchaseReturn now settles BOTH the real loan and the flagship limit on a&lt;br /&gt;
  flagship-invoice return (prevents credit leak from a stranded limit).&lt;br /&gt;
- Cap guard (flagship credit never exceeds amount drawn) and robust limit settlement (paisa threshold&lt;br /&gt;
  instead of exact float equality).&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/LoanImei.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LoanImeiRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LoanImeiRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LoanRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LoanRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/InventoryServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/OrderServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_loan_imei_table.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36958</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36958</guid></item>
<item><pubDate>Fri, 26 Jun 2026 16:33:38 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36943 – hdfc_payment: add credited flag to fix blocked manual add-money approval ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;hdfc_payment: add credited flag to fix blocked manual add-money approval&lt;br /&gt;
&lt;br /&gt;
Since r36927 the HDFC push-credits flow captures every payment into&lt;br /&gt;
hdfc_payment BEFORE validating the virtual account, so VA-missing/unmatched&lt;br /&gt;
rows are stored uncredited. The manual add-money approval guarded on mere&lt;br /&gt;
row existence, wrongly blocking these recoverable payments.&lt;br /&gt;
&lt;br /&gt;
Add a credited flag (default false) set true only when a wallet credit&lt;br /&gt;
actually happens. Includes migration + backfill (reference=id AUTOMATED_ADVANCE&lt;br /&gt;
match, plus pre-r36927 rows credited by construction).&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/HdfcPayment.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_hdfc_payment_credited_flag.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36943</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36943</guid></item>
<item><pubDate>Thu, 25 Jun 2026 14:20:36 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36926 – Link returnorderinfo to credit_note in DN-refund path (approveDebitNoteRefund)  approveDebitNoteRefund ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Link returnorderinfo to credit_note in DN-refund path (approveDebitNoteRefund)&lt;br /&gt;
&lt;br /&gt;
approveDebitNoteRefund issues a RETURNS credit note but created the&lt;br /&gt;
ReturnOrderInfo rows before the CN and never set credit_note_id, so DN&lt;br /&gt;
returns showed a null FK (blank CN in reports) despite a valid CN existing.&lt;br /&gt;
r36817 only wired this FK into applyInvoiceReturnViaCreditNote. Collect the&lt;br /&gt;
created ReturnOrderInfo rows and stamp credit_note_id after the CN is&lt;br /&gt;
persisted (parity with the invoice-return path).&lt;br /&gt;
&lt;br /&gt;
Add backfill_dn_return_credit_note_id.sql to link existing null-FK rows by&lt;br /&gt;
invoice -&gt; RETURNS CN, excluding ambiguous multi-CN invoices.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/backfill_dn_return_credit_note_id.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36926</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36926</guid></item>
<item><pubDate>Wed, 24 Jun 2026 11:53:31 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36910 – Internal PO: map created transaction to PO; block warehouse change ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 6 file(s) modified&lt;/strong&gt;&lt;br/&gt;Internal PO: map created transaction to PO; block warehouse change for PO-mapped orders&lt;br /&gt;
&lt;br /&gt;
- WarehousePurchaseOrder: add transactionId column + selectByTransactionId&lt;br /&gt;
- createOrderInternally returns txn id; createPurchaseOrder maps it onto the PO&lt;br /&gt;
- Block order.setWarehouseId for PO-mapped orders in changeFulfillmentWarehouse; cron moveOrders skips them&lt;br /&gt;
- Migration: add warehouse.purchaseorder.transactionId&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/warehouse/WarehousePurchaseOrder.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/warehouse/WarehousePurchaseOrderRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/warehouse/WarehousePurchaseOrderRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/warehouse/PurchaseOrderServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_po_transaction_mapping.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36910</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36910</guid></item>
<item><pubDate>Mon, 22 Jun 2026 15:00:50 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36894 – HID allocation: requested qty is now an additional one-time allowance ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 7 file(s) modified&lt;/strong&gt;&lt;br/&gt;HID allocation: requested qty is now an additional one-time allowance (purchase-limit override, HID target unchanged); add approved_by column; add 5-day billed/activated serial lookups for the edit screen&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/RequestedHidAllocation.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/FofoOpeningStockRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/InventoryItemRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/InventoryItemRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_requested_hid_allocation_approved_by.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36894</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36894</guid></item>
<item><pubDate>Mon, 22 Jun 2026 12:28:17 +0530</pubDate><dc:creator>aman</dc:creator><title>Rev 36888 – Feat: Editable Contact-Us page (add/edit/delete) for authorised users  - ...</title><description>&lt;div&gt;&lt;strong&gt;aman – 7 file(s) modified&lt;/strong&gt;&lt;br/&gt;Feat: Editable Contact-Us page (add/edit/delete) for authorised users&lt;br /&gt;
&lt;br /&gt;
- New fofo.contact_us table backs main + escalation lists (ContactUs entity, ContactUsRepository, contact_us.sql seed of current 40 rows)&lt;br /&gt;
- DashboardController: load lists from DB + editor flag; POST /contactUs/save and /contactUs/delete (soft delete), gated to kangan.monga/neha.sharma/gaurav.mathur1&lt;br /&gt;
- contact-us.vm renders dynamically with add/edit/delete + modal shown only to editors; contact.js handlers&lt;br /&gt;
- NOTE: run contact_us.sql on prod fofo DB before deploying the WAR (no auto-DDL)&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/ContactUs.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/ContactUsRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/ContactUsRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/contact_us.sql&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/DashboardController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/contact.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/contact-us.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36888</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36888</guid></item>
<item><pubDate>Wed, 10 Jun 2026 14:43:25 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36817 – Link returnorderinfo to credit_note via credit_note_id FK  Add a ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;Link returnorderinfo to credit_note via credit_note_id FK&lt;br /&gt;
&lt;br /&gt;
Add a direct credit_note_id column on returnorderinfo so a return row&lt;br /&gt;
can be tied to the Credit Note it was refunded via, replacing the&lt;br /&gt;
indirect/ambiguous association through original_invoice_number + the CN&lt;br /&gt;
number embedded in refundDescription. Stamped in&lt;br /&gt;
applyInvoiceReturnViaCreditNote; migration adds the column and backfills&lt;br /&gt;
existing rows by parsing the CN number out of refundDescription.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/ReturnOrderInfo.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/add_credit_note_id_to_returnorderinfo.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36817</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36817</guid></item>
<item><pubDate>Mon, 08 Jun 2026 13:44:16 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36796 – Add migration: void net-settled stranded status=0 orders  Captures the ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add migration: void net-settled stranded status=0 orders&lt;br /&gt;
&lt;br /&gt;
Captures the two ad-hoc cleanups run on hadb1 (the live DB): rejected-txn orders&lt;br /&gt;
the PO_REJECTED backfill missed (non-standard refund) -&gt; PO_REJECTED(91), and&lt;br /&gt;
non-rejected status=0 orders whose wallet debit was reversed by a non-standard&lt;br /&gt;
entry -&gt; refund_timestamp. Net-settled only; net-committed/awaiting-approval POs&lt;br /&gt;
left untouched. Temp-table form to avoid locking the live DB. Idempotent.&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/void_net_settled_stranded_orders.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36796</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36796</guid></item>
<item><pubDate>Mon, 08 Jun 2026 13:06:28 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36795 – Add pending-indent phantom-cleanup migrations (drafts + PAYMENT_FAILED)  selectPendingIndentWalletAmount counts ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add pending-indent phantom-cleanup migrations (drafts + PAYMENT_FAILED)&lt;br /&gt;
&lt;br /&gt;
selectPendingIndentWalletAmount counts any billing/refund-NULL order regardless&lt;br /&gt;
of status, so abandoned draft orders and old PAYMENT_FAILED orders inflated&lt;br /&gt;
partner &apos;unbilled PO&apos; and broke finance reco.&lt;br /&gt;
&lt;br /&gt;
- cleanup_abandoned_draft_orders.sql: 2019-21 never-submitted, wallet-never-debited&lt;br /&gt;
  drafts (status=0, not rejected) -&gt; PAYMENT_FAILED + refund_timestamp. ~1970 rows.&lt;br /&gt;
- cleanup_phantom_payment_failed.sql: 2017-19 PAYMENT_FAILED orders counted as&lt;br /&gt;
  unbilled PO -&gt; drop ONLY phantom (no-debit or net-settled) via refund_timestamp;&lt;br /&gt;
  KEEP net-committed (real payable). Temp-table form to avoid locking the live DB.&lt;br /&gt;
&lt;br /&gt;
Both data-only (no code), idempotent, ran on hadb1; pending prod + replicas.&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/cleanup_abandoned_draft_orders.sql&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/cleanup_phantom_payment_failed.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36795</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36795</guid></item>
<item><pubDate>Fri, 05 Jun 2026 13:01:11 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36790 – Add PO_REJECTED status and release rejected-PO orders from pending indent ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add PO_REJECTED status and release rejected-PO orders from pending indent&lt;br /&gt;
&lt;br /&gt;
Rejected bulk-PO approvals refunded the wallet but left order rows in&lt;br /&gt;
status=0 (PAYMENT_PENDING) with billing/refund NULL, so they were counted&lt;br /&gt;
by pending indent forever and inflated the account-statement closing&lt;br /&gt;
balance with no matching wallet liability.&lt;br /&gt;
&lt;br /&gt;
- OrderStatus.PO_REJECTED(91) new terminal status for approval rejection&lt;br /&gt;
- OrderRepository.cancelRejectedTransactionOrders sets status + refund_timestamp&lt;br /&gt;
  on a rejected transaction&apos;s still-pending orders (side-effect free: wallet&lt;br /&gt;
  already refunded at txn level, these never-processed orders hold no reservation)&lt;br /&gt;
- backfill_po_rejected_orders.sql releases 485 historically-stranded orders&lt;br /&gt;
  (Group A: wallet already refunded). Deploy code before running.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/in/shop2020/model/v1/order/OrderStatus.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/backfill_po_rejected_orders.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36790</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36790</guid></item>
<item><pubDate>Wed, 27 May 2026 18:47:19 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36713 – PI idempotency fix: original_wallet_amount + order_wallet_adjustment tracking for price drops ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 7 file(s) modified&lt;/strong&gt;&lt;br/&gt;PI idempotency fix: original_wallet_amount + order_wallet_adjustment tracking for price drops and splits. Modernize statement queries with INVOICE_CANCELLED and RETURNS_CN unions.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/Order.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/OrderWalletAdjustment.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderWalletAdjustmentRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderWalletAdjustmentRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_order_wallet_adjustment.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36713</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36713</guid></item>
<item><pubDate>Wed, 27 May 2026 18:36:30 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 36711 – beat plan info commit</title><description>&lt;div&gt;&lt;strong&gt;ranu – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;beat plan info commit&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/BeatRoute.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/migration_lead_live_location.sql&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/BeatPlanController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/beat-plan-app.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/beat-plan-window.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36711</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36711</guid></item>
<item><pubDate>Tue, 26 May 2026 17:31:30 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36691 – fix account statement balance gap: include pending orders with NULL ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;fix account statement balance gap: include pending orders with NULL billing/refund in getPendingIndentValueMap, fix double query execution in selectOpeningAmount, remove verbose logging in selectDetailsBetween, add indexes for returnorderinfo and returnorder&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/OrderRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/add_idx_account_statement_perf.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36691</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36691</guid></item>
<item><pubDate>Tue, 26 May 2026 13:34:44 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 36681 – beat plan info commit</title><description>&lt;div&gt;&lt;strong&gt;ranu – 10 file(s) modified&lt;/strong&gt;&lt;br/&gt;beat plan info commit&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/AuthUserLocation.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/AuthUserLocationRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/AuthUserLocationRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/AdminUser.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/migration_lead_live_location.sql&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/BeatPlanController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/beat-plan-app.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/admin.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/beat-plan-base-location.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/beat-plan-window.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36681</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36681</guid></item>
<item><pubDate>Mon, 25 May 2026 19:31:04 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36675 – Add irn_error_message column to einvoice_details entity and migration SQL</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add irn_error_message column to einvoice_details entity and migration SQL&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/EInvoiceDetails.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/add_irn_error_message.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36675</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36675</guid></item>
<item><pubDate>Sat, 23 May 2026 17:13:40 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 36655 – beat plan info commit</title><description>&lt;div&gt;&lt;strong&gt;ranu – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;beat plan info commit&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/migration_lead_live_location.sql&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/BeatPlanController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LeadGeoLocationController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/lead.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/beat-plan-window.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36655</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36655</guid></item>
<item><pubDate>Sat, 23 May 2026 14:21:21 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 36650 – beat plan info commit</title><description>&lt;div&gt;&lt;strong&gt;ranu – 8 file(s) modified&lt;/strong&gt;&lt;br/&gt;beat plan info commit&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/BeatRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/BeatRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/migration_lead_live_location.sql&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/WebSecurityConfig.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/BeatPlanController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/beat-plan-app.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/lead.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/beat-plan-window.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36650</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36650</guid></item>
<item><pubDate>Sat, 23 May 2026 02:50:05 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 36644 – route plan map</title><description>&lt;div&gt;&lt;strong&gt;ranu – 18 file(s) modified&lt;/strong&gt;&lt;br/&gt;route plan map&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/Beat.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/BeatRoute.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/BeatSchedule.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/LeadRoute.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/BeatRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/BeatRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/BeatRouteRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/BeatRouteRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/BeatScheduleRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/BeatScheduleRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/LeadRouteRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/LeadRouteRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/migration_lead_live_location.sql&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/BeatPlanController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LeadController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LeadGeoLocationController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/beat-plan-app.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/lead.js&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36644</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36644</guid></item>
<item><pubDate>Fri, 22 May 2026 20:18:47 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 36642 – route plan map</title><description>&lt;div&gt;&lt;strong&gt;ranu – 20 file(s) modified&lt;/strong&gt;&lt;br/&gt;route plan map&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/LeadLiveLocation.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/LeadVisitApproval.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CreateLeacdActivityRequest.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/LeadLiveLocationRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/LeadLiveLocationRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/LeadVisitApprovalRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/LeadVisitApprovalRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_lead_live_location.sql&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_lead_visit_approval.sql&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/WebConfig.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LeadController.java&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LeadGeoLocationController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/beat-plan-app.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/lead.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/edit-lead.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/lead-geo-form.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/lead-geo-pending.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/lead-geo-review.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/lead-geo-thankyou.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/lead.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36642</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36642</guid></item>
<item><pubDate>Sat, 16 May 2026 14:07:27 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36567 – Add SQL migration for sidebar menu icons (ElegantIcons per parent ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add SQL migration for sidebar menu icons (ElegantIcons per parent menu)&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_menu_icons.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36567</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36567</guid></item>
<item><pubDate>Sat, 16 May 2026 13:37:04 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36565 – Remove commented-out migration step from model_flagship DDL - no existing ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Remove commented-out migration step from model_flagship DDL - no existing flagship data&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/model_flagship_schema.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36565</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36565</guid></item>
<item><pubDate>Sat, 16 May 2026 13:23:41 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36562 – Flagship credit: date-wise model_flagship table, sale-time conversion with pessimistic locking, ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 8 file(s) modified&lt;/strong&gt;&lt;br/&gt;Flagship credit: date-wise model_flagship table, sale-time conversion with pessimistic locking, batch queries, extracted doConvertFlagshipToLoan helper, removed Catalog.isFlagship&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Catalog.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/ModelFlagship.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/ModelFlagshipRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/ModelFlagshipRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/OrderServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/model_flagship_schema.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36562</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36562</guid></item>
<item><pubDate>Sat, 16 May 2026 06:18:46 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36557 – feat: Flagship Credit - 30 interest-free days for flagship models ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 11 file(s) modified&lt;/strong&gt;&lt;br/&gt;feat: Flagship Credit - 30 interest-free days for flagship models with billing split, expiry conversion, API-driven T&amp;C&lt;/div&gt;~ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/ProfitMandiConstants.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Catalog.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/Loan.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/SDCreditRequirement.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/SDCreditResponseOut.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LoanRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LoanRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/flagship_credit_schema.sql&lt;br /&gt;~ /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/GatewayController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36557</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36557</guid></item>
<item><pubDate>Sun, 10 May 2026 19:10:24 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36515 – Update migration SQL to MySQL 5.7 compatible syntax (session variables ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Update migration SQL to MySQL 5.7 compatible syntax (session variables instead of window functions)&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/migration_running_balance_wallet_history.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36515</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36515</guid></item>
<item><pubDate>Sun, 10 May 2026 18:10:51 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36513 – Add running_balance to userwallethistory: persist wallet balance after each transaction ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 9 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add running_balance to userwallethistory: persist wallet balance after each transaction for instant ledger display. Populate at all write paths (WalletService, adjustTransaction). Read directly in wallet statement template and CSV download. Includes backfill migration SQL. Renamed walletSummart to walletSummary.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/FofoOrder.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/UserWalletHistory.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/WalletSummaryReportModel.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/wallet/WalletServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_running_balance_wallet_history.sql&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ReportsController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/WalletController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/wallet-summary-report.vm&lt;br /&gt;~ /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/fofo/V2FofoWalletController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36513</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36513</guid></item>
<item><pubDate>Sun, 10 May 2026 16:21:01 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36512 – Add reconciliation SQL for inventory snapshot - standalone reference query ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add reconciliation SQL for inventory snapshot - standalone reference query for manual runs&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/reconcile_inventory_snapshot.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36512</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36512</guid></item>
<item><pubDate>Sat, 02 May 2026 17:29:48 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36451 – Add reference field to catalog.offer and catalog.scheme for payout collation</title><description>&lt;div&gt;&lt;strong&gt;amit – 7 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add reference field to catalog.offer and catalog.scheme for payout collation&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Offer.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Scheme.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CreateOfferRequest.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CreateSchemeRequest.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/OfferServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/add_reference_to_offer_scheme.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36451</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36451</guid></item>
<item><pubDate>Fri, 01 May 2026 23:48:55 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36446 – DN lifecycle: decouple rejection from restore, add DebitNoteStatus, retailer acknowledgment ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 8 file(s) modified&lt;/strong&gt;&lt;br/&gt;DN lifecycle: decouple rejection from restore, add DebitNoteStatus, retailer acknowledgment flow&lt;br /&gt;
&lt;br /&gt;
- Add DebitNoteStatus enum (CREATED/RECEIVED/APPROVED/REJECTED/CANCELLED) on debit_note table&lt;br /&gt;
- Add retailer_acknowledge_timestamp on purchase_return_order&lt;br /&gt;
- rejectReturn() no longer calls restoreReturnedItems() — inventory stays reduced until retailer confirms goods received back&lt;br /&gt;
- New acknowledgeRejectedReturn(): retailer confirms receipt, restores inventory+schemes+offers, DN→CANCELLED&lt;br /&gt;
- Set DN status in receiveDebitNoteItems (RECEIVED), refundOrder (APPROVED), rejectReturn (REJECTED)&lt;br /&gt;
- notifyReturnRejected: updated message, added Finance L1+L2 to CC&lt;br /&gt;
- notifyItemsReceived: added Finance L1&lt;br /&gt;
- New notifyRejectedGoodsAcknowledged notification&lt;br /&gt;
- SQL migration with backfill for existing data&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/DebitNote.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/PurchaseReturnOrder.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/enumuration/fofo/DebitNoteStatus.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnNotificationService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnNotificationServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_dn_status_retailer_ack.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36446</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36446</guid></item>
<item><pubDate>Fri, 01 May 2026 15:59:46 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36443 – Add ALTER TABLE migration to rename monitor_type normal to base</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add ALTER TABLE migration to rename monitor_type normal to base&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/alter_monitor_type_normal_to_base.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36443</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36443</guid></item>
<item><pubDate>Fri, 01 May 2026 13:44:29 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36441 – Rename monitor type &apos;normal&apos; to &apos;base&apos; in enum and SQL ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Rename monitor type &apos;normal&apos; to &apos;base&apos; in enum and SQL schema&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/MonitorType.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/catalog_monitor_type.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36441</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36441</guid></item>
<item><pubDate>Fri, 01 May 2026 12:15:46 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36439 – Add outlet_name field to FofoStore entity, set from address.name on ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add outlet_name field to FofoStore entity, set from address.name on store creation&lt;br /&gt;
&lt;br /&gt;
Adds outlet_name (VARCHAR 255) to FofoStore entity so the store&apos;s display&lt;br /&gt;
name is persisted directly on fofo_store instead of requiring a join through&lt;br /&gt;
retailer_registered_address -&gt; address every time it is needed.&lt;br /&gt;
&lt;br /&gt;
Sets fofoStore.setOutletName(retailerAddress.getName()) in both creation&lt;br /&gt;
paths: RetailerServiceImpl.createFofoStoreCodeByRetailerId (primary) and&lt;br /&gt;
RetailerController.createFofoStore (secondary).&lt;br /&gt;
&lt;br /&gt;
Includes migration SQL script (migration_outlet_name_to_fofo_store.sql) to&lt;br /&gt;
ALTER TABLE and backfill existing rows from address.name. Must be run during&lt;br /&gt;
low-traffic window - fofo_store is heavily queried and ALTER takes a metadata&lt;br /&gt;
lock that blocks all concurrent SELECTs.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/FofoStore.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/user/RetailerServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_outlet_name_to_fofo_store.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36439</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36439</guid></item>
<item><pubDate>Wed, 29 Apr 2026 11:26:48 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36423 – Fix catalog_monitor_type table charset to utf8 for consistency</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix catalog_monitor_type table charset to utf8 for consistency&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/resources/sql/catalog_monitor_type.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36423</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36423</guid></item>
<item><pubDate>Mon, 27 Apr 2026 19:54:23 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36407 – Sale-return reversal: cancellability gate, CN on approve, INV reject, ROI ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 6 file(s) modified&lt;/strong&gt;&lt;br/&gt;Sale-return reversal: cancellability gate, CN on approve, INV reject, ROI semantics&lt;br /&gt;
&lt;br /&gt;
GstProService.isIrnCancellable(invoiceNumber): predicate extracted from&lt;br /&gt;
the inline 24h check used in cancelInvoiceGst, so callers outside the&lt;br /&gt;
service can decide branching without duplicating the rule. DC and no-IRN&lt;br /&gt;
cases return false — those paths use EWB cancel / credit-note issuance.&lt;br /&gt;
&lt;br /&gt;
PurchaseReturnServiceImpl: split single-phase return-receive into&lt;br /&gt;
submitReceiptForApproval + applyReceipt. Submit persists per-item return&lt;br /&gt;
type on PurchaseReturnItem so apply (called inline on auto-approve, or&lt;br /&gt;
later from refundOrder when finance clicks Process Refund) can replay&lt;br /&gt;
the scan loop without the original itemReturnTypes map.&lt;br /&gt;
&lt;br /&gt;
processInvoiceReturn(autoApprove=true) no longer creates a PRO. Routes&lt;br /&gt;
through new cancelInvoiceFully which calls gstProService.cancelInvoiceGst&lt;br /&gt;
(the canonical IRN-cancel path setting Order.status=INVOICE_CANCELLED)&lt;br /&gt;
and adds wallet credit + warehouse-stock restoration. Cancellations now&lt;br /&gt;
live on Order/EInvoiceDetails screens, not in the returns ledger —&lt;br /&gt;
matches standard ERP practice and the existing cancelInvoiceGst flow.&lt;br /&gt;
&lt;br /&gt;
processInvoiceReturn(autoApprove=false) creates an INV-prefix PRO in&lt;br /&gt;
pending state and calls notifyFinanceApprovalPending (Finance L1+L2&lt;br /&gt;
emails resolved dynamically from PositionRepository).&lt;br /&gt;
&lt;br /&gt;
approveInvoiceReturn now runs applyInvoiceReturnViaCreditNote — raises&lt;br /&gt;
local CreditNote + CreditNoteLine rows (sequential CN# from&lt;br /&gt;
SellerWarehouse), issues CRN at GST via generateCreditNoteIrn, restores&lt;br /&gt;
warehouse stock, populates ReturnOrderInfo (this path IS a customer&lt;br /&gt;
return without DN — ROI is the right anchor), credits wallet. Drops the&lt;br /&gt;
old applyInvoiceReturnEffects helper which mishandled both cancel and&lt;br /&gt;
return-via-CN as the same path.&lt;br /&gt;
&lt;br /&gt;
rejectInvoiceReturn: new method for finance to reject pending INV PROs.&lt;br /&gt;
Sale stands — only stamps reject_timestamp/reject_remark. No inventory,&lt;br /&gt;
no wallet, no GST action, no ROI. Closes the gap where finance had&lt;br /&gt;
Approve as the only option on a pending INV PRO.&lt;br /&gt;
&lt;br /&gt;
refundOrder gains a refund guard (PRO must exist, not refunded, not&lt;br /&gt;
rejected) and applyReceipt-if-needed at the top — Finance&apos;s existing&lt;br /&gt;
Process Refund button now drives approve+refund atomically.&lt;br /&gt;
&lt;br /&gt;
PurchaseReturnOrderRepository.selectByWarehouseIdsAndDateRange: Hibernate&lt;br /&gt;
query for a date-range listing on /return/invoice (default last 30&lt;br /&gt;
days, limit 200).&lt;br /&gt;
&lt;br /&gt;
@Transactional(rollbackFor=Exception.class) at class level —&lt;br /&gt;
ProfitMandiBusinessException is checked, so Spring&apos;s default rollback&lt;br /&gt;
didn&apos;t fire on guard failures, allowing partial commits. Closing that&lt;br /&gt;
silently broken behaviour.&lt;br /&gt;
&lt;br /&gt;
LineItemImei N+1 fix: receiveDebitNoteItems / refundOrder / rejectReturn&lt;br /&gt;
each iterated orders calling selectByLineItemId per row. Switched to the&lt;br /&gt;
existing batch selectByLineItemIds(List).&lt;br /&gt;
&lt;br /&gt;
Email template finance-receipt-approval-pending.vm and SQL migration&lt;br /&gt;
migration_imei_net_margin_modal_api.sql added (registers the&lt;br /&gt;
/getImeiNetMarginModal endpoint in dtr.api and grants access to the&lt;br /&gt;
roles that currently access /order).&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/PurchaseReturnOrderRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/PurchaseReturnOrderRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/finance-receipt-approval-pending.vm&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_imei_net_margin_modal_api.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36407</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36407</guid></item>
<item><pubDate>Mon, 27 Apr 2026 17:43:00 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36406 – Add scheme_item windowing migration script.  Migrates fofo.scheme_item from composite ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add scheme_item windowing migration script.&lt;br /&gt;
&lt;br /&gt;
Migrates fofo.scheme_item from composite (scheme_id, catalog_id) PK to&lt;br /&gt;
surrogate id BIGINT, adds audit columns, swaps the old uniqueness to&lt;br /&gt;
the 4-column window key, adds a date-driven lookup index, and installs&lt;br /&gt;
BEFORE INSERT/UPDATE triggers that enforce start&amp;lt;=end, containment in&lt;br /&gt;
parent scheme window, and non-overlap within (catalog_id, scheme_id).&lt;br /&gt;
&lt;br /&gt;
Step 4b drops the legacy UNIQUE scheme_catalog (scheme_id, catalog_id);&lt;br /&gt;
without this the windowing feature is functionally blocked.&lt;br /&gt;
&lt;br /&gt;
Applied on hadb1 in this revision.&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/migration_scheme_item_windowing.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36406</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36406</guid></item>
<item><pubDate>Mon, 27 Apr 2026 14:57:42 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36403 – Add catalog.catalog_monitor_type table, entity, and repository for per-catalog focused/normal monitor ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add catalog.catalog_monitor_type table, entity, and repository for per-catalog focused/normal monitor type tagging&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/CatalogMonitorType.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/MonitorType.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/CatalogMonitorTypeRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/CatalogMonitorTypeRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/catalog_monitor_type.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36403</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36403</guid></item>
<item><pubDate>Wed, 22 Apr 2026 19:49:38 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 36362 – Make fofo_order creation idempotent on (fofo_id, invoice_number)  Fixes insert-intention ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Make fofo_order creation idempotent on (fofo_id, invoice_number)&lt;br /&gt;
&lt;br /&gt;
Fixes insert-intention gap-lock deadlocks on idx_invoice_number observed in&lt;br /&gt;
SHOW ENGINE INNODB STATUS at 2026-04-22 13:01:54 — two concurrent requests&lt;br /&gt;
inserting the same invoice_number for the same customer (client retry /&lt;br /&gt;
upstream webhook retry pattern).&lt;br /&gt;
&lt;br /&gt;
- OrderServiceImpl.createAndGetFofoOrder: select-then-insert idempotency.&lt;br /&gt;
  Fast path returns existing row if already created; slow-race path catches&lt;br /&gt;
  DataIntegrityViolationException and re-selects the winner&apos;s row.&lt;br /&gt;
- add_uk_fofo_order_fofo_invoice.sql: adds UNIQUE KEY (fofo_id, invoice_number)&lt;br /&gt;
  so the loser of a concurrent-insert race gets a clean DIVE instead of a&lt;br /&gt;
  silent duplicate row (pre-check showed zero existing dup groups, safe).&lt;br /&gt;
&lt;br /&gt;
findExistingFofoOrder wraps the repo call to swallow the repo&apos;s declared&lt;br /&gt;
ProfitMandiBusinessException — the impl actually returns null on not-found&lt;br /&gt;
(constructs an exception but never throws), so the swallow matches reality.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/OrderServiceImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/add_uk_fofo_order_fofo_invoice.sql&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36362</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2Ftrunk%2Fprofitmandi-dao%2Fsrc%2Fmain%2Fresources%2Fsql%2F&amp;isdir=1&amp;rev=36362</guid></item>
</channel></rss>