Subversion Repositories SmartDukaan

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
37373 52 d 11 h vikas /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/ Active Scratch Offers  
37369 52 d 15 h amit /trunk/ Fixed mail sender everywhere  
37367 53 d 6 h amit /trunk/profitmandi-web/src/main/ Mail: raise SMTP timeouts and rotate the sdtech app password

The 10s read timeout was cutting off larger attachment sends (policy PDFs, invoice
attachments) and surfacing as a send failure the outbox then retried. Raised to 30s
connect / 120s read-write on both senders. App password rotated to match the current
Google account credential.

Also fills in new.solr.url and store.app.url in staging.properties - staging carries no
fallback to dev/prod, so a missing key stops the context from starting.
 
37354 53 d 13 h aman /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ AI lead intake: pool is BGC L1 (category 20), not Sales L1 - BGC is the desk that works AI leads  
37353 53 d 13 h aman /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ AI lead intake: assign new leads to a random active Sales L1 instead of fixed auth id 53  
37341 54 d 12 h amit /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/fofo/ fix(rbm-dashboard): return full partner book and exclude inactive stores

/v2/fofo/rbm-dashboard capped partners/alerts at 50 by default. The RBM home
searches and filters client-side, so any partner outside that slice was
unfindable while summary.totalPartners reported the real (much larger) count.

- limit now defaults to 0 = uncapped; an explicit ?limit=n is still honoured
up to RBM_DASHBOARD_MAX_LIMIT (200)
- deactivated stores are skipped for the whole computation, not just alerts:
they have no target, scored 0% and sorted to the top of the action list
- summary.limit reports 0 when uncapped instead of Integer.MAX_VALUE
 
37319 58 d 8 h amit /trunk/ Fix partner-performance tertiary: aggregate order items (qty*mop), not the POS-typed order header

The tertiary panel summed fofo_order.total_amount - a price typed at the partner POS
and never validated against the catalogue - and attributed each whole order to its
first line item's brand via .get(0). One mistyped digit inflated reported sell-out
10x, and mixed-brand orders booked 100% to the first brand, leaving the rest at zero.
Defect dates from r32000/r32034 (May 2023); the panel was the only tertiary consumer
diverging from the qty*mop basis.

- New FofoOrder.selectMonthlyBrandTertiary: sum(quantity*mop) grouped by
(year*100+month) and item brand - the same basis selectPartnerTertiarySales
already uses for the DSR and the partner tier calculation
- PerformanceController: replaces two entity-loading queries (every FofoOrder and
FofoOrderItem for 6 months) with one aggregate; all items now count, each under
its own brand
- Month labels unchanged - toMonthLabel rebuilds the MMM''uu key, template untouched
- Remove V2FofoPerformanceController, the /v2/fofo JSON copy carrying the same defect

Verified against dev DB for fofo_id 175139501: Jul 2026 now 16,94,939 (panel
previously showed 50,92,440); all six months match the qty*mop basis.
 
37318 58 d 10 h ranu /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/ v2 version some fixes  
37313 58 d 14 h ranu /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/fofo/ v2 version some fixes  
37305 59 d 9 h ranu /trunk/ carry bag for silver at 1  
37304 59 d 9 h ranu /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/ v2 version some fixes  
37298 60 d 4 h amit /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ Default subCategoryId to 0 on endpoints that declare it required=false

subCategoryId is a primitive int, so a required=false declaration with no
defaultValue makes Spring throw when the param is omitted:

Optional int parameter 'subCategoryId' is present but cannot be translated
into a null value due to being declared as a primitive type.

v1 DealsController and GuestController already default it to 0; their v2
wrappers dropped that, and StoreController never had it on either version. Any
caller omitting the param got a 500 with a message that does not name the
parameter at fault.

Adding the default only removes that failure path — every currently working
caller already sends a value, so no existing behaviour changes.
 
37296 60 d 11 h amit /trunk/profitmandi-web/src/main/resources/ external api v2: docs - color removed from all record shapes  
37293 60 d 15 h amit /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/fofo/ Fix region-ALL (fofoId=0 sentinel) handling on RBM home

active-offers: regionId resolved via rows.get(0).getFofoId(), which is 0 for
region ALL, so selectByRetailerId(0) threw FOFOSTR_1000 'Fofo store not found'
(400) for every region-ALL user. Now filters fofoId>0, picks an active store,
and falls back to the caller's fofoId when a region resolves to nothing.

rbm-regions: dropdown now lists only regions holding an active retailer (with
activePartners count), which drops the ALL pseudo-region; users carrying the
sentinel get every live region as assignedRegionIds instead of an empty set.

rbm-dashboard: expand the sentinel like CsServiceImpl does (row region ->
its partners; region ALL -> all active stores) so the partners tile stops
reporting 0/1. Scope-wide batches limited to stores/targets/purchases/
last-billed; name, wallet and loan lookups now run only over the returned
slice. partners and alerts capped via ?limit (default 50, max 200) with
partnersReturned/totalAlerts/alertsReturned/limit added to summary. Partners
with no target this month rank after those actually missing a target, so the
capped slice is not filled by unset-target stores.
 
37291 61 d 15 h amit /trunk/profitmandi-web/src/main/resources/ external api v2: docs - parameters-at-a-glance table, per-endpoint optional/required params, clamp semantics  
37280 62 d 11 h amit /trunk/profitmandi-web/src/main/resources/ external api v2: document addedOn field for new-SKU partial sync  
37273 62 d 15 h amit /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/fofo/ Apply same idempotent super-catalog mapping save to V2 controller

Keeps V2FofoSuperCatalogController in step with the fofo SuperCatalogController
fix (r37272) so the dormant endpoint cannot violate the new
UNIQUE(catalog_id, super_catalog_id) constraint if it is ever enabled.
 
37269 62 d 16 h amit /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/services/ Hot deals enrichment: Fresh pill (green tick when device unused, greyed cross otherwise) replacing Activated; class hd-fresh  
37267 63 d 7 h ranu /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ v2 version some fixes  
37260 65 d 23 h amit /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ Hot deals API: fix /fofo 500 when subCategoryId omitted (primitive int + required=false cannot bind null; defaultValue 0, same in GuestController); /fofo/hotDeals/categories facet endpoint for filter chips; hotDeal listing honors explicit categoryId only (cross-category default); enrichment pills - constant names with hd-yes/hd-no + hd-good/hd-off state classes, not-activated is the green state  

Show All