| Rev |
Age |
Author |
Path |
Log message |
Diff |
| 37978 |
2 d 1 h |
ranu |
/trunk/profitmandi-fofo/src/main/ |
analytics dashboard created |
|
| 37977 |
2 d 6 h |
aman |
/trunk/profitmandi-fofo/src/main/ |
Disha for the RBM on BRAND WISE PLACEMENT: one floating Disha widget on that page only (the app's desktop launcher, raised above the corner), the RBM picks the partner inside Disha; Disha knows the RBM by the login email and opens only that RBM's own partners (signed per-store passes via DishaRbmToken when -Ddisha.rbm.key is set); Ira's staff widget and its hard-coded token removed from the layout |
|
| 37971 |
4 d 4 h |
vikas |
/trunk/ |
Beat Export button |
|
| 37969 |
5 d 5 h |
ranu |
/trunk/profitmandi-fofo/src/main/ |
emi plans should be come via emi offer json from server |
|
| 37966 |
5 d 7 h |
ranu |
/trunk/profitmandi-fofo/src/main/ |
emi plans should be come via emi offer json from server |
|
| 37963 |
6 d 1 h |
amit |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ |
perf(returns): batch partner, debit note and invoice lookups on Sale Returns screen
/return/invoice looked up partner name, debit note and invoice number per row
(~400 queries for the default 30-day view). Collect ids across the pending and
settled rows and fetch each once: getFofoRetailers for partner names,
selectAllByDebitNoteIds for debit notes, and return items -> inventory items ->
purchases for invoice numbers. Same invoice resolution (highest inventory item
of the debit note) and same fallbacks as before. |
|
| 37962 |
6 d 2 h |
amit |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ |
Sale returns screen: show IRN failure / B2C option only for credit-note-stage GSTIN refusals; a no-IRN invoice return shows plain Approve. |
|
| 37957 |
6 d 4 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
Scratch card awarded after the sale commits. Clear messages for: billing with nothing scanned, debit note generation with no approved returns, bad delivered date in mark-delivered CSV. Reset selected customer address when the mobile number changes. jsVersion 450. |
|
| 37954 |
8 d 23 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
Invalid GSTINs screen for Accounts to revalidate and re-enable billing
Lists stores flagged gst_invalid (NIC refused their GSTIN) with the NIC reason and date.
Revalidate & enable (Accounts category only) does a live GSTIN lookup and clears the
flag only when the portal returns Active; otherwise shows why it is still invalid.
Menu "Invalid GSTINs" under Partner Reports, action class invalid-gstin-stores, granted
like Credit Note (272) - inserted by claude-data/sql-migrations/store_gst_invalid_flag_20261023.sql.
Needs the matching dao commit. jsVersion 448 -> 449. |
|
| 37952 |
9 d 0 h |
ranu |
/trunk/profitmandi-fofo/src/main/ |
offer radar gateway time out fixed |
|
| 37950 |
9 d 2 h |
amit |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ |
fix(catalog): mark Brand Identifier column optional in catalog upload template |
|
| 37945 |
9 d 6 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
fix(catalog): serve bulk upload template with Brand Identifier column
Download Template linked to /download/catalog-template.xls which 404s.
Add GET /catalog/template.xlsx generating the 21-column loader layout
(column U = Brand Identifier, mandatory for flagged smartphone brands). |
|
| 37936 |
10 d 2 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
Store status lifecycle: fofo store pages and endpoints
- Pause / un-pause / suspend endpoints with a mandatory reason, status history; activate, temporary
activate and close go through StoreStatusService
- Active stores page lists ACTIVE + PAUSED with status badges; inactive page lists SUSPENDED + CLOSED;
buttons shown by the viewer's permissions
- LOI revival: a SUSPENDED store comes back on the same code; a CLOSED store gets a new code at store
creation (no longer reopened)
- JS version 447 |
|
| 37931 |
10 d 5 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
feat(credit): show partner-safe SD Credit inactive message on partner Wallet page (needs dao r37930) |
|
| 37927 |
10 d 7 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
feat(credit): show active/inactive reason + logs popup; CEO-only reactivation of loan default
- Partners Credit Detail: Active Status column (Active / Inactive - Awaiting Activation | Loan Default | Blocked) with Logs popup (reason + who)
- unblock and gateway Activate now require a reason; switchCreditGateway goes through the loan-default guard
- new sanctioned account starts as AWAITING_ACTIVATION
- needs dao r37926 |
|
| 37924 |
11 d 3 h |
vikas |
/trunk/profitmandi-fofo/src/main/ |
Login Usertype Tracker |
|
| 37921 |
13 d 1 h |
ranu |
/trunk/ |
loi bugs fixed |
|
| 37919 |
13 d 2 h |
ranu |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ |
commi tfile for offer radar send to all related department |
|
| 37913 |
13 d 11 h |
amit |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/ |
fix(security): fofo /login no longer trusts a request email when Google verification fails
LoginController.login fell back to emailId = emailIdOrMobileNumber whenever
googleTokenUtil.getEmailId(token) threw, so any bogus token plus any email
logged the caller in as that user. Verification failure now fails the login.
GoogleTokenUtil also requires tokeninfo aud == google.api.key (our web client
id, same value the login page uses) and email_verified == true.
Password login is unchanged. |
|
| 37908 |
13 d 11 h |
amit |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/ |
fix(offers): use TxStartTrackingTransactionManager; offer cache eviction moves into the service (dao r37907)
Activate/publishAll no longer evict in the controller; Refresh Cache also clears per-offer caches. |
|