<?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-fofo/src/main/java/com/spice/profitmandi/web/model/SaleReturnRow.java</title><description>WebSVN RSS feed &#x2013; SmartDukaan</description><lastBuildDate>Wed, 07 Oct 2026 08:47:49 +0530</lastBuildDate><generator>WebSVN 2.8.6-DEV</generator><language>en</language><link>https://svn.smartdukaan.com/log.php?repname=SmartDukaan&amp;path=%2F%2Ftrunk%2Fprofitmandi-fofo%2Fsrc%2Fmain%2Fjava%2Fcom%2Fspice%2Fprofitmandi%2Fweb%2Fmodel%2FSaleReturnRow.java&amp;max=40&amp;</link><atom:link href="https://svn.smartdukaan.com/rss.php?path=%2F%2Ftrunk%2Fprofitmandi-fofo%2Fsrc%2Fmain%2Fjava%2Fcom%2Fspice%2Fprofitmandi%2Fweb%2Fmodel%2FSaleReturnRow.java&amp;repname=SmartDukaan" rel="self" type="application/rss+xml" />
<item><pubDate>Mon, 28 Sep 2026 14:38:09 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37791 – Sale returns: Finance-only B2C settlement after a NIC GSTIN refusal ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 6 file(s) modified&lt;/strong&gt;&lt;br/&gt;Sale returns: Finance-only B2C settlement after a NIC GSTIN refusal&lt;br /&gt;
&lt;br /&gt;
Once NIC has refused a return because the buyer&apos;s GSTIN is cancelled or&lt;br /&gt;
invalid, only Finance may act on it - approve, retry or reject. The pending&lt;br /&gt;
queue shows the refusal reason and, on the day it happened, a &quot;Refund as&lt;br /&gt;
B2C&quot; action; Logistics sees &quot;IRN failed - awaiting Finance&quot; and no buttons.&lt;br /&gt;
&lt;br /&gt;
The B2C screen states NIC&apos;s reason and every returned line with its value&lt;br /&gt;
including and excluding GST, and fixes the refund at the value net of GST&lt;br /&gt;
in whole rupees. Finance types that figure back by hand, enters a remark and&lt;br /&gt;
ticks the consent box before the button enables; the server re-checks the&lt;br /&gt;
amount, the remark, the consent and the same-day window, so the screen is a&lt;br /&gt;
convenience and not the control. Cancelling or finishing returns to the&lt;br /&gt;
queue, and a refused approval now reloads the queue so the B2C action&lt;br /&gt;
appears without a manual refresh.&lt;br /&gt;
&lt;br /&gt;
jsVersion 438 -&gt; 439 for return.js.&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/PurchaseReturnController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/model/SaleReturnRow.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/business/return.js&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/b2c-refund.vm&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%2Ftrunk%2Fprofitmandi-fofo%2Fsrc%2Fmain%2Fjava%2Fcom%2Fspice%2Fprofitmandi%2Fweb%2Fmodel%2FSaleReturnRow.java&amp;rev=37791</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F%2Ftrunk%2Fprofitmandi-fofo%2Fsrc%2Fmain%2Fjava%2Fcom%2Fspice%2Fprofitmandi%2Fweb%2Fmodel%2FSaleReturnRow.java&amp;rev=37791</guid></item>
<item><pubDate>Fri, 21 Aug 2026 14:30:59 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 37378 – Put the action-pending returns at the top of Sale Returns, ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;Put the action-pending returns at the top of Sale Returns, and filter by partner&lt;br /&gt;
&lt;br /&gt;
Sorting the received list pending-first changed nothing on screen, because every return&lt;br /&gt;
that still needs an action was missing from it. The list was built from purchase return&lt;br /&gt;
orders inside the date window, and a return order only exists once the warehouse has&lt;br /&gt;
received the goods - so a debit note awaiting receipt had no row to sort, and a return&lt;br /&gt;
sitting unrefunded for weeks fell out of the window entirely.&lt;br /&gt;
&lt;br /&gt;
The screen is now two lists:&lt;br /&gt;
&lt;br /&gt;
- Action Pending, on top, with no date bound. It merges the three shapes a pending return&lt;br /&gt;
  takes - a debit note never received, a return order received but unrefunded, and one&lt;br /&gt;
  rejected but not yet acknowledged - into a single row type, oldest first, with the age&lt;br /&gt;
  in days beside it. Each row carries only the action that actually applies to it&lt;br /&gt;
- Settled Returns below, refunded and cancelled only, still bound to From/To. The pending&lt;br /&gt;
  rows were lifted out of it, so nothing is listed twice&lt;br /&gt;
&lt;br /&gt;
Two things worth recording:&lt;br /&gt;
&lt;br /&gt;
- a debit note has no warehouse of its own. It is placed through the item&apos;s invoice and&lt;br /&gt;
  the order that invoice was raised on, and a note that cannot be placed is dropped rather&lt;br /&gt;
  than shown to a warehouse it may not belong to&lt;br /&gt;
- debit notes raised before the receive/refund flow existed were settled the old way and&lt;br /&gt;
  cannot be worked from this screen. The cutoff is read from the earliest return order in&lt;br /&gt;
  the database, so it needs no maintenance, and the page says so in a footnote instead of&lt;br /&gt;
  quietly hiding them&lt;br /&gt;
&lt;br /&gt;
The partner filter reuses the shared /partners typeahead and passes the id down into both&lt;br /&gt;
queries. Only a picked suggestion filters, so a half-typed name cannot blank the page. Its&lt;br /&gt;
handlers sit inline in the template, next to the markup they drive, following the pattern&lt;br /&gt;
add-wallet-request.vm already uses - which leaves the now-unused #invoice-return-date-apply&lt;br /&gt;
handler in return.js dead, to be removed with the return.js work already in flight.&lt;br /&gt;
&lt;br /&gt;
Rendered offline through Velocity with the app&apos;s own directive.set.null.allowed to confirm&lt;br /&gt;
all four action variants emit the right buttons.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/PurchaseReturnController.java&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/model/SaleReturnRow.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%2Ftrunk%2Fprofitmandi-fofo%2Fsrc%2Fmain%2Fjava%2Fcom%2Fspice%2Fprofitmandi%2Fweb%2Fmodel%2FSaleReturnRow.java&amp;rev=37378</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F%2Ftrunk%2Fprofitmandi-fofo%2Fsrc%2Fmain%2Fjava%2Fcom%2Fspice%2Fprofitmandi%2Fweb%2Fmodel%2FSaleReturnRow.java&amp;rev=37378</guid></item>
</channel></rss>