<?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; /</title><description>WebSVN RSS feed &#x2013; SmartDukaan</description><lastBuildDate>Wed, 07 Oct 2026 02:57:45 +0530</lastBuildDate><generator>WebSVN 2.8.6-DEV</generator><language>en</language><link>https://svn.smartdukaan.com/log.php?repname=SmartDukaan&amp;path=%2F&amp;max=40&amp;peg=37548</link><atom:link href="https://svn.smartdukaan.com/rss.php?peg=37548&amp;repname=SmartDukaan" rel="self" type="application/rss+xml" />
<item><pubDate>Wed, 09 Sep 2026 12:01:03 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37548 – v2 version some fixes</title><description>&lt;div&gt;&lt;strong&gt;ranu – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;v2 version some fixes&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/dtr/User.java&lt;br /&gt;~ /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/V2UserController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37548&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37548&amp;peg=37548</guid></item>
<item><pubDate>Wed, 09 Sep 2026 11:58:50 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37547 – v2 switch version fixes on server side</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;v2 switch version fixes on server side&lt;/div&gt;~ /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/NotificationController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37547&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37547&amp;peg=37548</guid></item>
<item><pubDate>Tue, 08 Sep 2026 19:39:29 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37546 – web offer sync: compose detailed text from the parsed offer ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;web offer sync: compose detailed text from the parsed offer&lt;br /&gt;
&lt;br /&gt;
detailedText is now built from benefit_timing + offer_benefit + offer_bank instead&lt;br /&gt;
of copying the circular&apos;s line:&lt;br /&gt;
&lt;br /&gt;
  Instant cashback. Rs.4,000 on Credit Card EMI; Rs.3,000 on Credit Card Full&lt;br /&gt;
  Swipe. Banks: Axis Bank, ICICI Bank, State Bank of India (credit cards)&lt;br /&gt;
&lt;br /&gt;
Every payment mode is always named, even when the circular&apos;s prose is terse&lt;br /&gt;
(&apos;10% CC EMI&apos;), and the amounts come from offer_benefit - the authoritative&lt;br /&gt;
per-mode source. CC/DC cannot leak here at all, because the mode codes expand&lt;br /&gt;
natively rather than being patched by find-and-replace.&lt;br /&gt;
&lt;br /&gt;
Three cases that would otherwise read badly:&lt;br /&gt;
- 21 offers carry NO benefit (circular cell &apos;NA&apos;, timing NONE). They are tenure-only&lt;br /&gt;
  offers, so they read &apos;No-cost EMI. No cashback.&apos; rather than showing a blank badge.&lt;br /&gt;
- The bank columns often list a bank under both card types while only one carries a&lt;br /&gt;
  benefit. Card types shown are restricted to those actually paid on, or the text&lt;br /&gt;
  would imply a debit offer that does not exist.&lt;br /&gt;
- benefit_timing UPI and NONE are not timings. Nothing is asserted rather than&lt;br /&gt;
  inventing one.&lt;br /&gt;
&lt;br /&gt;
smallText keeps the circular&apos;s short line - that column is only VARCHAR(256) and the&lt;br /&gt;
composed detail runs past it. One flowing paragraph, no line breaks, since the badge&lt;br /&gt;
may not render them.&lt;br /&gt;
&lt;br /&gt;
Tests 8 -&gt; 14.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/WebOfferSyncService.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/test/java/com/spice/profitmandi/web/offercircular/WebOfferSyncServiceTest.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37546&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37546&amp;peg=37548</guid></item>
<item><pubDate>Tue, 08 Sep 2026 19:39:16 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37545 – web offer sync: read benefits and banks for the composed ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;web offer sync: read benefits and banks for the composed detail text&lt;br /&gt;
&lt;br /&gt;
selectBenefits and selectBanks, keyed by offer id and fetched once per circular&lt;br /&gt;
rather than per offer - 259 offers would otherwise be 518 extra round trips.&lt;br /&gt;
&lt;br /&gt;
The main query now also carries offer_id, benefit_timing and all_banks.&lt;br /&gt;
&lt;br /&gt;
Bank read takes INCLUDE rows only: an EXCLUDE is meaningful only when all_banks=1,&lt;br /&gt;
and such an offer is described as &apos;All banks&apos; rather than by listing an exclusion a&lt;br /&gt;
partner cannot act on.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/WebOfferSyncRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/WebOfferSyncRepositoryImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37545&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37545&amp;peg=37548</guid></item>
<item><pubDate>Tue, 08 Sep 2026 16:39:19 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37544 – web offer sync: expand CC and DC to Credit Card ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;web offer sync: expand CC and DC to Credit Card and Debit Card&lt;br /&gt;
&lt;br /&gt;
The circular writes &apos;Rs.4000 Cashback on CC EMI&apos;; a partner reading the badge should&lt;br /&gt;
see &apos;Credit Card EMI&apos;. Applied to the title and the small/detailed text together, so&lt;br /&gt;
a badge and its detail never disagree.&lt;br /&gt;
&lt;br /&gt;
Word-bounded and applied BEFORE truncation: an expansion is never cut in half, and&lt;br /&gt;
letters inside a word are untouched - the circular&apos;s cells carry strings like&lt;br /&gt;
&apos;X300 Ext Kit&apos; and &apos;ACCESSORIES&apos;, which an unbounded replace would corrupt.&lt;br /&gt;
&lt;br /&gt;
On Sep&apos;26 this affects 155 of 259 descriptions for CC and 48 for DC.&lt;br /&gt;
&lt;br /&gt;
Two existing expectations updated to the new wording, and two tests added: one for&lt;br /&gt;
the expansion, one asserting DCX and ACCESSORIES survive intact.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/WebOfferSyncService.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/test/java/com/spice/profitmandi/web/offercircular/WebOfferSyncServiceTest.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37544&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37544&amp;peg=37548</guid></item>
<item><pubDate>Tue, 08 Sep 2026 12:10:42 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37543 – receive debit note: resolve the DOA section from the declared ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;receive debit note: resolve the DOA section from the declared condition, not from a change&lt;br /&gt;
&lt;br /&gt;
The condition dropdown renders with the partner&apos;s declared value already selected, so&lt;br /&gt;
a declared BAD - the ordinary DOA case - fired no change event and the DOA certificate&lt;br /&gt;
radios stayed hidden. The operator could not supply a certificate, and receiveDebitNoteItems&lt;br /&gt;
then refused the receipt for a missing one, making those debit notes unreceivable.&lt;br /&gt;
&lt;br /&gt;
applyDeclaredConditions seeds each dropdown from the row&apos;s data-declared and settles the&lt;br /&gt;
dependent sections on load; the show/hide logic moves out of the change handler into&lt;br /&gt;
syncReceiveConditionState, which reads the current state of the form rather than whatever&lt;br /&gt;
was last touched. The change handler now calls the same function.&lt;br /&gt;
&lt;br /&gt;
The server-side &apos;selected&apos; stays as a fallback: without it a declared BAD would present as&lt;br /&gt;
GOOD if the script failed to load, and the server reads that difference as the warehouse&lt;br /&gt;
disagreeing with the partner, which rejects the whole debit note.&lt;br /&gt;
&lt;br /&gt;
jsVersion 417 -&gt; 418.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/business/return.js&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37543&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37543&amp;peg=37548</guid></item>
<item><pubDate>Mon, 07 Sep 2026 17:52:35 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37542 – loi process added, revival and code changes process</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;loi process added, revival and code changes process&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/enumuration/onBorading/onBoardingFormEnums/StoreType.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37542&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37542&amp;peg=37548</guid></item>
<item><pubDate>Mon, 07 Sep 2026 17:51:16 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37541 – loi process added, revival and code changes process</title><description>&lt;div&gt;&lt;strong&gt;ranu – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;loi process added, revival and code changes process&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/enumuration/dtr/LeadSource.java&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=%2F&amp;isdir=1&amp;rev=37541&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37541&amp;peg=37548</guid></item>
<item><pubDate>Mon, 07 Sep 2026 17:49:34 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37540 – loi process added, revival and code changes process</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;loi process added, revival and code changes process&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/service/KnowlarityInsightsService.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37540&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37540&amp;peg=37548</guid></item>
<item><pubDate>Mon, 07 Sep 2026 12:42:16 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37539 – Fixed mail sender everywhere</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fixed mail sender everywhere&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/WalletController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37539&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37539&amp;peg=37548</guid></item>
<item><pubDate>Sat, 05 Sep 2026 05:56:43 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37538 – gstpro: a shipped delivery challan is a return, not a ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;gstpro: a shipped delivery challan is a return, not a cancellation&lt;br /&gt;
&lt;br /&gt;
Movement becomes the single discriminator for both document types. Nothing has&lt;br /&gt;
left the warehouse, so nothing happened and the document can be withdrawn; once&lt;br /&gt;
the goods have shipped the document records a movement that really occurred, and&lt;br /&gt;
the only honest reversal is an opposing document - a credit note through finance.&lt;br /&gt;
&lt;br /&gt;
The clock is the only thing that differs. A tax invoice must also be inside its&lt;br /&gt;
24h IRN window, because past that NIC will not cancel the IRN. A delivery challan&lt;br /&gt;
has no IRN and no acknowledgement - every DC row carries a placeholder irn and a&lt;br /&gt;
null ack_date - so no clock applies to it: an unshipped challan stays withdrawable&lt;br /&gt;
whatever its age, and its e-way bill is cancelled on that path since nothing moved&lt;br /&gt;
under it.&lt;br /&gt;
&lt;br /&gt;
Previously a DC short-circuited to cancellable regardless of shipping, which would&lt;br /&gt;
have voided challans whose goods were already in transit.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/integrations/gstpro/GstProService.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37538&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37538&amp;peg=37548</guid></item>
<item><pubDate>Fri, 04 Sep 2026 23:19:27 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37537 – carlcare activation: retry a transient failure once before giving up ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;carlcare activation: retry a transient failure once before giving up&lt;br /&gt;
&lt;br /&gt;
One retry after a 1.5s backoff - long enough to clear the far end&apos;s rate window,&lt;br /&gt;
short enough to still fit inside a scheduler tick. A transient network blip was&lt;br /&gt;
otherwise recorded as a hard activation failure for that IMEI.&lt;/div&gt;~ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/CarlcareImeiActivationService.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37537&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37537&amp;peg=37548</guid></item>
<item><pubDate>Fri, 04 Sep 2026 23:19:26 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37536 – purchase return: order the invoice-return queue by what still needs ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;purchase return: order the invoice-return queue by what still needs doing&lt;br /&gt;
&lt;br /&gt;
A return with no debit note sorts first - it is the one still owing an action -&lt;br /&gt;
and the screen reflects that ordering. Also refuses the cancel path when any order&lt;br /&gt;
on the invoice is in a state that must not be cancelled.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/PurchaseReturnController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/invoice-return.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37536&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37536&amp;peg=37548</guid></item>
<item><pubDate>Fri, 04 Sep 2026 23:19:17 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37535 – purchase return: guard invoice cancellation, and surface rejected-with-DN returns  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;purchase return: guard invoice cancellation, and surface rejected-with-DN returns&lt;br /&gt;
&lt;br /&gt;
PurchaseReturnServiceImpl gains assertInvoiceNotCancelled and assertNotGrnd, so a&lt;br /&gt;
cancellation is refused when the invoice is already cancelled or the goods have been&lt;br /&gt;
GRN&apos;d - a return cannot be undone once the stock has been received in.&lt;br /&gt;
&lt;br /&gt;
PurchaseReturnOrderRepositoryImpl also counts returns that were rejected but never&lt;br /&gt;
acknowledged by the retailer while carrying a debit note, which otherwise fell out&lt;br /&gt;
of the pending queue despite still owing an action.&lt;/div&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/PurchaseReturnServiceImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37535&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37535&amp;peg=37548</guid></item>
<item><pubDate>Fri, 04 Sep 2026 01:37:10 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37534 – loi process added, revival and code changes process</title><description>&lt;div&gt;&lt;strong&gt;ranu – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;loi process added, revival and code changes process&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/SalesHierarchyBrandPartnerCountModel.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/SalesHierarchyBrandSoldModel.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37534&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37534&amp;peg=37548</guid></item>
<item><pubDate>Fri, 04 Sep 2026 01:35:50 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37533 – loi process added, revival and code changes process</title><description>&lt;div&gt;&lt;strong&gt;ranu – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;loi process added, revival and code changes process&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/RbmTargetService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/RbmTargetServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/monitors/RbmDrrDashboardController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/rbm-drr-dashboard.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37533&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37533&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 18:23:08 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37532 – gstpro: do not cancel a DC e-way bill once the ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;gstpro: do not cancel a DC e-way bill once the consignment has shipped&lt;br /&gt;
&lt;br /&gt;
Three cases on cancelling a delivery-challan invoice:&lt;br /&gt;
- no EWB recorded: nothing to cancel at NIC&lt;br /&gt;
- already shipped: leave the EWB intact and void the challan locally. The goods&lt;br /&gt;
  moved under that bill, so it is the record of a journey that happened; cancelling&lt;br /&gt;
  would strip cover from it, and NIC refuses the cancel anyway once a bill has been&lt;br /&gt;
  verified in transit. The return leg is a fresh movement needing its own EWB.&lt;br /&gt;
- never dispatched: cancel the EWB, since nothing moved under it.&lt;br /&gt;
&lt;br /&gt;
Also reuses the orders already fetched for the shipped check rather than selecting&lt;br /&gt;
by invoice number twice.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/integrations/gstpro/GstProService.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37532&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37532&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 18:22:12 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37531 – offer circular: stop letter-led model names inheriting the previous variant ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;offer circular: stop letter-led model names inheriting the previous variant&lt;br /&gt;
&lt;br /&gt;
A part that is ONLY a memory spec inherits the preceding model name, because Oppo&lt;br /&gt;
writes &apos;RENO 15 PRO 256GB, 512GB&apos; and the second part is not a product. The pattern&lt;br /&gt;
matched too loosely: the optional unit group matched the FIRST letter of a model&lt;br /&gt;
name and the rest fell through the trailing character class, so &apos;G06, G37, G37&lt;br /&gt;
Power&apos; inherited its way to &apos;G06 G37&apos; - two Motorola phones fused into one entity&lt;br /&gt;
that matches no SKU, costing G37 its cashback on five offers.&lt;br /&gt;
&lt;br /&gt;
Requiring a leading digit makes it a memory spec rather than anything that merely&lt;br /&gt;
contains G/T and digits. Realme &apos;GT 7&apos; matches the same way and survived only&lt;br /&gt;
because it never follows a comma.&lt;br /&gt;
&lt;br /&gt;
Same root cause as the word-boundary guards on CAPACITY and MEMORY_PAIR: a digit&lt;br /&gt;
glued to letters belongs to the model name.&lt;br /&gt;
&lt;br /&gt;
ProductNamesTest: 11 -&gt; 12, covering &apos;G06, G37, G37 Power&apos; and &apos;GT 7T, GT 7&apos;.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/ProductNames.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/test/java/com/spice/profitmandi/web/offercircular/ProductNamesTest.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37531&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37531&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 18:22:01 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37530 – purchase return: use the auto-approve check on invoice cancellation  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;purchase return: use the auto-approve check on invoice cancellation&lt;br /&gt;
&lt;br /&gt;
Calls GstProService.isCancellableWithoutApproval (r37529) so a DC invoice, or an&lt;br /&gt;
unshipped order whose IRN is still cancellable, skips the approval step.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/PurchaseReturnController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37530&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37530&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 18:21:48 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37529 – purchase return: auto-approve invoice cancellation where it is safe  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;purchase return: auto-approve invoice cancellation where it is safe&lt;br /&gt;
&lt;br /&gt;
GstProService.isCancellableWithoutApproval: a DC invoice cancels without approval;&lt;br /&gt;
anything else needs the order to be unshipped AND the IRN to still be cancellable.&lt;br /&gt;
&lt;br /&gt;
PurchaseReturnServiceImpl marks the order INVOICE_CANCELLED with the refund actor,&lt;br /&gt;
timestamp and reason recorded, and sets each line item&apos;s returnQty to its full&lt;br /&gt;
quantity - a cancelled invoice returns everything on it.&lt;br /&gt;
&lt;br /&gt;
Committed on behalf of the working copy; dao goes first so the method exists before&lt;br /&gt;
the fofo controller that calls it.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/integrations/gstpro/GstProService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnServiceImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37529&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37529&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 18:17:05 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37528 – offer circular: apply the supersede rule on ingest (fofo)  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;offer circular: apply the supersede rule on ingest (fofo)&lt;br /&gt;
&lt;br /&gt;
A published circular now expires still-running offers from earlier circulars, and&lt;br /&gt;
deactivates the web offers they produced, so the same cashback is never current&lt;br /&gt;
twice. The converse also holds: re-ingesting an older circular while a newer one is&lt;br /&gt;
live leaves it expired rather than resurrecting it.&lt;br /&gt;
&lt;br /&gt;
Older offers remain readable as reference - only status changes, never end_date.&lt;br /&gt;
&lt;br /&gt;
Counts appear in the ingest summary as supersededOlderOffers / expiredAsSuperseded&lt;br /&gt;
and, on the web side, supersededOlderMonths / notPublishedSuperseded.&lt;br /&gt;
&lt;br /&gt;
ScopeConfigTest&apos;s stub gains the two new CircularIngestRepository methods - the same&lt;br /&gt;
brittleness the scripts/offer_circular README notes for JdbcIngestRepo.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/CircularIngestService.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/WebOfferSyncService.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/test/java/com/spice/profitmandi/web/offercircular/ScopeConfigTest.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37528&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37528&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 18:16:40 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37527 – offer circular: a new month supersedes every older one  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;offer circular: a new month supersedes every older one&lt;br /&gt;
&lt;br /&gt;
Publishing a circular expires still-running offers from earlier circulars, at the&lt;br /&gt;
offers level and again for the web offers they produced.&lt;br /&gt;
&lt;br /&gt;
Why: the new circular restates whatever is still live, so leaving the old month&lt;br /&gt;
ACTIVE means the same cashback is current twice. Verified Aug&apos;26 -&gt; Sep&apos;26: all 24&lt;br /&gt;
SKUs covered by August&apos;s four still-running Apple offers were carried into&lt;br /&gt;
September, six of them twice.&lt;br /&gt;
&lt;br /&gt;
- expireOlderDocumentOffers: status ACTIVE -&gt; EXPIRED for earlier documents.&lt;br /&gt;
  end_date is deliberately NOT touched - it is what the OEM said, and older offers&lt;br /&gt;
  stay readable as reference. They simply stop being current.&lt;br /&gt;
- expireIfSuperseded: the converse, so re-ingesting an OLD circular while a newer&lt;br /&gt;
  one is live cannot resurrect it. With both, &apos;newest circular wins&apos; holds whatever&lt;br /&gt;
  order documents are ingested in.&lt;br /&gt;
- deactivateOlderPeriods / hasNewerPublishedPeriod do the same for dtr.web_offer.&lt;br /&gt;
&lt;br /&gt;
Verified on real data in a rolled-back transaction: publishing Sep expired 165&lt;br /&gt;
still-ACTIVE Aug offers (many stale since the 18 Aug ingest), Sep did not expire&lt;br /&gt;
itself, and re-ingesting Aug while Sep is live self-expired its 4 revived offers.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/CircularIngestRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/CircularIngestRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/WebOfferSyncRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/WebOfferSyncRepositoryImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37527&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37527&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 17:44:48 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37526 – offer circular: scope config screen, resolve screen, web offer sync ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 17 file(s) modified&lt;/strong&gt;&lt;br/&gt;offer circular: scope config screen, resolve screen, web offer sync (fofo)&lt;br /&gt;
&lt;br /&gt;
Screens (each its own endpoint, under the OFFER CIRCULAR menu):&lt;br /&gt;
- /offerCircularScope - add/edit divisions, take a brand in or out of scope,&lt;br /&gt;
  register label aliases. &apos;Remove&apos; is in_scope=0 + a required reason, never a&lt;br /&gt;
  DELETE: offer.division_id is an FK and the history would go with it.&lt;br /&gt;
- /offerCircularResolve - the product queue, split out of the review screen. The&lt;br /&gt;
  editor was a &amp;lt;td colspan=6&gt; pretending to be a form, which is why it never&lt;br /&gt;
  aligned; it is now master-detail. Naming and Coverage are separate tabs because&lt;br /&gt;
  an alias cannot answer a bundle at all - the coverage panel says so and offers&lt;br /&gt;
  the two answers that ARE safe (ignore, or reclassify as naming).&lt;br /&gt;
&lt;br /&gt;
Ingest:&lt;br /&gt;
- ScopeConfig resolves division aliases and carries the canonical label on&lt;br /&gt;
  Decision. insertOffer and ProductAliases.find use it; offer_raw_row keeps the&lt;br /&gt;
  verbatim label, being the source of truth for re-parsing.&lt;br /&gt;
- CircularIngestRunner publishes to dtr.web_offer after the document is marked&lt;br /&gt;
  PUBLISHED, in its own transaction with exceptions swallowed - a circular that&lt;br /&gt;
  parsed correctly must stay published even if the web sync fails.&lt;br /&gt;
&lt;br /&gt;
Review screen:&lt;br /&gt;
- the ingest summary was a raw Map.toString() inside a nowrap span and ran off&lt;br /&gt;
  the card; now parsed into chips with the drop reasons behind a disclosure.&lt;br /&gt;
&lt;br /&gt;
jsVersion -&gt; 417 (merged with r37525&apos;s 412; cssVersion 53 kept from that commit).&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/OfferCircularController.java&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/OfferCircularScopeController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/CircularIngestRunner.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/CircularIngestService.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/ScopeConfig.java&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/offercircular/WebOfferSyncService.java&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/resources/js/offer-circular-resolve.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/offer-circular-review.js&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/resources/js/offer-circular-scope.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/include-scripts.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/offer-circular-resolve.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/offer-circular-review.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/offer-circular-scope.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/test/java/com/spice/profitmandi/web/offercircular/ScopeConfigTest.java&lt;br /&gt;+ /trunk/profitmandi-fofo/src/test/java/com/spice/profitmandi/web/offercircular/WebOfferSyncServiceTest.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37526&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37526&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 17:43:36 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37525 – offer circular: division aliases, portal-editable scope, web offer sync (dao) ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 11 file(s) modified&lt;/strong&gt;&lt;br/&gt;offer circular: division aliases, portal-editable scope, web offer sync (dao)&lt;br /&gt;
&lt;br /&gt;
- division_alias support: CircularIngestRepository.selectDivisionAliases so an&lt;br /&gt;
  alternate OEM label resolves onto an existing division instead of dropping the&lt;br /&gt;
  rows as UNKNOWN. Both pdf_label columns are ALIASED - Hibernate discovers&lt;br /&gt;
  native-query results by name and throws NonUniqueDiscoveredSqlAlias on a dup.&lt;br /&gt;
&lt;br /&gt;
- OfferScopeRepository{,Impl}: write side for scope config (add/edit a division,&lt;br /&gt;
  in_scope toggle, label aliases). Kept apart from OfferCurationRepository, whose&lt;br /&gt;
  contract is limited to product_alias - a bad alias mismaps one product, a bad&lt;br /&gt;
  scope change silently drops a whole brand.&lt;br /&gt;
&lt;br /&gt;
- OfferCircularRepositoryImpl: label-side division join now resolves through&lt;br /&gt;
  division_alias (dva), otherwise an UNPARSED row under an aliased label is hidden&lt;br /&gt;
  by the inScopeOnly filter - exactly the rows the review screen exists to show.&lt;br /&gt;
  Also isoDate(): period_month left as java.sql.Date serialised to epoch millis,&lt;br /&gt;
  which an &amp;lt;input type=date&gt; silently rejects, so the circular filter cleared&lt;br /&gt;
  itself and every circular showed every row.&lt;br /&gt;
&lt;br /&gt;
- WebOfferSyncRepository{,Impl} + migration: publish a parsed circular into&lt;br /&gt;
  dtr.web_offer / web_offer_product. Anchored on (document, page, row) stored as&lt;br /&gt;
  VALUES, never offers.offer.id, which is recreated on every re-ingest. source&lt;br /&gt;
  defaults to MANUAL so the 3850 hand-typed rows are untouched; web_offer_sync_shadow&lt;br /&gt;
  is what lets a human edit win over a later sync.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/CircularIngestRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/CircularIngestRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/OfferCircularRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/OfferScopeRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/OfferScopeRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/WebOfferSyncRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/offers/WebOfferSyncRepositoryImpl.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/resources/sql/add_web_offer_circular_sync.sql&lt;br /&gt;+ /trunk/profitmandi-dao/src/test/java/com/spice/profitmandi/dao/repository&lt;br /&gt;+ /trunk/profitmandi-dao/src/test/java/com/spice/profitmandi/dao/repository/offers&lt;br /&gt;+ /trunk/profitmandi-dao/src/test/java/com/spice/profitmandi/dao/repository/offers/OfferCircularDateSerialisationTest.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37525&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37525&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 01:10:30 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37524 – loi process added, revival and code changes process</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;loi process added, revival and code changes process&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/enumuration/onBorading/OnboardingType.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37524&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37524&amp;peg=37548</guid></item>
<item><pubDate>Thu, 03 Sep 2026 01:08:56 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37523 – loi process added, revival and code changes process</title><description>&lt;div&gt;&lt;strong&gt;ranu – 12 file(s) modified&lt;/strong&gt;&lt;br/&gt;loi process added, revival and code changes process&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/onBoarding/LoiForm.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/onBoarding/LoiFormData.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/StoreTimelinetb.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/loiForm/LoiFormServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/user/StoreTimelineTatService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/user/StoreTimelineTatServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LoiFormController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/PartnerOnBoardingPanelController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/loi-form.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/loi-form.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/rbm-drr-dashboard.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37523&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37523&amp;peg=37548</guid></item>
<item><pubDate>Wed, 02 Sep 2026 19:36:55 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37522 – rbm drr dashboard po fragment ui modification</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;rbm drr dashboard po fragment ui modification&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/rbm-drr-dashboard.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37522&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37522&amp;peg=37548</guid></item>
<item><pubDate>Wed, 02 Sep 2026 18:57:41 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37521 – rbm drr dashboard position wise data</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;rbm drr dashboard position wise data&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/SalesDownlineMonthlyTargetModel.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37521&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37521&amp;peg=37548</guid></item>
<item><pubDate>Wed, 02 Sep 2026 18:56:57 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37520 – rbm drr dashboard position wise data</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;rbm drr dashboard position wise data&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/SalesDownlineAchievedByMovementModel.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37520&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37520&amp;peg=37548</guid></item>
<item><pubDate>Wed, 02 Sep 2026 18:55:51 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37519 – rbm drr dashboard position wise data</title><description>&lt;div&gt;&lt;strong&gt;ranu – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;rbm drr dashboard position wise data&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/SalesHierarchyAchievedByMovementModel.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/SalesHierarchyMonthlyTargetModel.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/RbmTargetService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/RbmTargetServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/monitors/RbmDrrDashboardController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37519&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37519&amp;peg=37548</guid></item>
<item><pubDate>Wed, 02 Sep 2026 12:02:19 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37518 – notification scheduler</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;notification scheduler&lt;/div&gt;+ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/NotificationDispatchScheduler.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37518&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37518&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 19:18:57 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37517 – rbm drr dashboard position wise data</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;rbm drr dashboard position wise data&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/rbm-drr-dashboard.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37517&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37517&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 18:58:29 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37516 – pending loi download access given to raj singh</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;pending loi download access given to raj singh&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LoiFormController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37516&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37516&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 18:49:08 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37515 – notification live fix conflict in app config</title><description>&lt;div&gt;&lt;strong&gt;ranu – 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;notification live fix conflict in app config&lt;/div&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/dtr/CampaignGroup.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/CampaignGroupRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/CampaignGroupRepositoryImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37515&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37515&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 18:47:46 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37514 – notification live</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;notification live&lt;/div&gt;+ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/enumuration/ScheduleStatus.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37514&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37514&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 18:46:42 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37513 – notification live</title><description>&lt;div&gt;&lt;strong&gt;ranu – 7 file(s) modified&lt;/strong&gt;&lt;br/&gt;notification live&lt;/div&gt;+ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/NotificationTargetCriteria.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/dtr/NotificationSchedule.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/NotificationScheduleRepository.java&lt;br /&gt;+ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/NotificationScheduleRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/resources/js/notification-calendar.js&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/notification-calendar.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37513&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37513&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 18:41:08 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37512 – notification live</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;notification live&lt;/div&gt;+ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/LinkedEntity.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37512&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37512&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 18:40:18 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37511 – notification live</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;notification live&lt;/div&gt;+ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/enumuration/NotificationFormat.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37511&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37511&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 18:39:11 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37510 – sales target and achievement added cron and flags</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;sales target and achievement added cron and flags&lt;/div&gt;~ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/Application.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37510&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37510&amp;peg=37548</guid></item>
<item><pubDate>Tue, 01 Sep 2026 18:38:33 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 37509 – rbm drr dashboard , all today po rbm view maped</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;rbm drr dashboard , all today po rbm view maped&lt;/div&gt;+ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/enumuration/NotificationCategory.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37509&amp;peg=37548</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=37509&amp;peg=37548</guid></item>
</channel></rss>