| Rev |
Age |
Author |
Path |
Log message |
Diff |
| 37784 |
1 d 21 h |
vikas |
/trunk/ |
Corrected LMS Data and Added filter |
|
| 37782 |
1 d 22 h |
amit |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/ |
fix(catalog): add serializedOnly overloads of selectAllItems/selectAllBrands
r37776 committed InventoryServiceImpl calling the 3-arg selectAllItems and
selectAllBrands, but the repository overloads and the named-query parameters
they bind were left uncommitted, so a build from trunk failed.
serializedOnly = true restricts the model/brand pickers to IMEI items; the
2-arg forms delegate with false, unchanged behaviour. |
|
| 37779 |
1 d 23 h |
amit |
/trunk/profitmandi-dao/src/main/ |
feat(cs): demo partner access for sales team
New cs.demo_partner_access binding (sales auth user -> partner) used only to
open a partner's dashboard/app for demos. Read only at partner-view entry
points; CsService position mappings are untouched, so performance, targets,
reports and cron mails are unaffected.
- DemoPartnerAccess entity + repository
- DemoPartnerAccessService: grant (sales-only, active store, skips duplicate
and position-mapped), soft revoke, isAllowed (position OR demo),
demo emails for app lists, canManage (mirrors sidebar menu rule)
- AdminUser.ALL_MENU_EMAILS extracted so canManage and the sidebar share it
- migration_demo_partner_access.sql: table + "Demo Partner Access" menu
under Admin Control (NOT yet applied on hadb1) |
|
| 37778 |
2 d 14 h |
amit |
/trunk/profitmandi-dao/src/main/ |
fix(catalog): delist cron retires only models it darkened in the same run
Step 4 scanned every mobile model with no active listing and moved it to OTHER,
so new launches (categorised before listing) and hand-paused models were retired
the next morning, e.g. Nothing Phone 4 1026596-603 on 2026-09-15. Scope it to
models whose listing this run delisted (_delist_audit run_date = today).
Add fix_dark_model_retire_20260924.sql to restore the 16 models still stuck on OTHER. |
|
| 37776 |
2 d 16 h |
amit |
/trunk/profitmandi-dao/src/main/ |
returns: reverse a refunded debit-note return whose goods never reached the warehouse
Once a return was refunded nothing could undo it - rejectReturn refuses an already
refunded one - so a return booked and paid for goods that never arrived left phantom
warehouse stock, the unit missing from partner stock, the order marked returned, a
wallet credit and a filed credit note, with no way back.
ReturnReversalService.reverse(imei, reason, by, dryRun) undoes exactly one unit:
the warehouse return scan (row deleted so a genuine return later is not rejected as a
duplicate) and the stock it added, partner stock with its schemes/price drop/offers,
the order's return quantity and status, the wallet refund as a REVERSAL entry, and the
return item / debit note. Guards refuse anything that has moved since the refund, and a
dry run reports the plan without writing.
The credit note follows movement and the NIC clock: inside the 24h window, and only
when the note credits nothing but this unit, its IRN is cancelled and the note marked
cancelled; past it a DBN with its own IRN is issued against the note
(CreditNoteService.issueReturnReversalDebitNote, stored as CN_CANCELLATION with no
margin month so the statement does not show it twice - the wallet REVERSAL is the
statement line); a note never filed at NIC is voided locally. Every local write happens
first and NIC last, so a refusal rolls the whole reversal back.
fofo.return_reversal (return_reversal_20260921.sql) records each reversal and, unique
per return item, makes it once-only. Also adds cancelled=0 to the RETURNS_CN branches of
the account statement queries, without which a cancelled note keeps crediting the
statement - no current effect, no RETURNS note is cancelled today. |
|
| 37775 |
2 d 17 h |
ranu |
/trunk/ |
aging po approval process |
|
| 37769 |
2 d 18 h |
amit |
/trunk/profitmandi-dao/src/ |
fix(movement): receive a movement invoice only against its own PO, stop auto-closing movements, cancel reduces the PO line
- GRN: movement invoice resolves invoice -> orders -> transaction -> its own movement PO (or a receive-only PO
from the billing warehouse); supplier/warehouse keyed at entry must match; scanned IMEIs must be the billed ones
- Cancelling an unbilled movement order takes its qty off the PO line; PO CLOSED/PRECLOSED once nothing is open
- reopenedAt removed (movements no longer auto-close); PO records createdBy
- SupplierStateResolver: a supplier's state is derived from its GSTIN on save
- sql: add_po_created_by (applied), drop_po_reopened_at (run AFTER fofo/cron/web deploy) |
|
| 37767 |
2 d 18 h |
amit |
/trunk/profitmandi-dao/src/ |
fix(orders): movements ship from their source only; a row reserved beyond its stock gives nothing
Internal movement orders were allocated by the partner allocator, which spills a source
shortfall to every warehouse the brand mapping links to the destination - stock billed
there has no PO to be received against (PO 54279: 3 units put on Jaipur for a UP->Delhi
movement). createTransactionInternally now keeps the source's own rows only; a shortfall
still parks on the source's Dummy.
getItemQty took min(qty, netAvailability) on a row reserved beyond its stock - always the
case on a Dummy holding an open order - so a -1 row added a unit to the shortfall, which
then parked on the Dummy as an extra order (24 Sep: 9 units raised for a movement of 8,
refused by the cart-value guard). Rows with nothing free are now skipped and no longer
offset another row's free stock in the warehouse total.
Removes the empty, uncalled markOrdersAsGrnCompleted. |
|
| 37764 |
2 d 19 h |
amit |
/trunk/profitmandi-dao/src/main/ |
feat(store-closure): require reason, remark and approval mail to close a store; mail closure report
- fofo.store_closure audit table (reason, remark, approval document, closed_by); migration applied on hadb1
- StoreClosureService: validates and closes, queues closure report with approval attached to the
partner's Sales L2, top 3 Sales levels, top Accounts level and the closer
- StoreAccess: single home for store close/deactivate/activate/extend-billing access lists;
neeraj.gupta can close, mohit.gulati removed from extend billing |
|
| 37762 |
2 d 23 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/warehouse/ |
aging po approval process |
|
| 37761 |
2 d 23 h |
ranu |
/trunk/ |
aging po approval process |
|
| 37759 |
3 d 17 h |
vikas |
/trunk/ |
LMS Call for App |
|
| 37758 |
3 d 17 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/ |
aging po approval process |
|
| 37757 |
3 d 17 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/ |
aging po approval process |
|
| 37756 |
3 d 17 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/warehouse/ |
aging po approval process |
|
| 37755 |
3 d 17 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/warehouse/ |
aging po approval process |
|
| 37754 |
3 d 17 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/warehouse/ |
aging po approval process |
|
| 37753 |
3 d 17 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/warehouse/ |
aging po approval process |
|
| 37752 |
3 d 17 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/warehouse/ |
today po rbm view showing only for l7 and above |
|
| 37751 |
3 d 17 h |
ranu |
/trunk/ |
aging po approval mail to some collected users |
|