Subversion Repositories SmartDukaan

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
37307 44 d 7 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Block activation of item-less schemes (SELLIN/SELLOUT/SPECIAL_SUPPORT): validateSchemeHasItems guards activeSchemeById and activeSchemeByIds, fixes /todayOfferList NPE caused by scheme 7877  
37160 59 d 5 h ranu /trunk/ super retailer club going live  
37136 65 d 7 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ Release scheme payout and price-hike deduction on every GRN scan instead of purchase completion; serialize per-purchase processing with FOR UPDATE lock on fofo.purchase to prevent duplicate credits/debits under concurrent runs  
37068 75 d 9 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ processSchemeOut: resolve OUT schemes on order create date, not GRN billing date

OUT schemes (sellout, special support, category, hygiene) are earned at the
sale event, so scheme eligibility must be pulled on fofoOrder.createTimestamp,
not each IMEI's GRN billing date. Reverts the r36397 date-basis change (which
pinned OUT to GRN date to 'align with IN behaviour' - but IN and OUT are
different events). The scheme_item date-windowing feature from r36397 is kept
intact; only the lookup date reverts to the order create timestamp.
 
36767 115 d 7 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed Stock Purchase sAle ageing days, added fields to mail  
36491 141 d 12 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed scheme item enddate to expire when scheme is expired  
36490 141 d 12 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed scheme item enddate to expire when scheme is expired  
36451 147 d 7 h amit /trunk/profitmandi-dao/src/main/ Add reference field to catalog.offer and catalog.scheme for payout collation  
36405 152 d 7 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ Fix duplicate SchemeInOut on concurrent GRN: SELECT FOR UPDATE on inventory_item before createSchemeInOut to serialise concurrent GRN calls per IMEI  
36397 152 d 10 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ Scheme item windowing: add startDate/endDate per scheme_item.

Each fofo.scheme_item row now carries an optional [start_date, end_date]
window so the same (scheme_id, catalog_id) pair can be applicable for
different date ranges. Backward compatible: NULL window = always active.

- SchemeItem entity: composite (schemeId, catalogId) PK -> surrogate
long id (IDENTITY), unique (catalog_id, scheme_id, start_date, end_date),
audit cols (updatedBy, updatedOn).
- Scheme + TagListing named queries: gated by
'(si.start_date is null or :onDate between si.start_date and si.end_date)'.
- SchemeItemRepository: + selectById, selectBySchemeId,
existsOverlapping (half-open, with self-exclude), selectItemsOutsideWindow.
- SchemeService: + updateSchemeItemWindow / addSchemeItemWithDates /
clampSchemeItems with containment + overlap validation; drop dead
getTotalMargin.
- SchemeServiceImpl.processSchemeOut: pin scheme resolution to each
IMEI's GRN billing date (Purchase -> Order.billingTimestamp via
PurchaseService.getBillingDateOfPurchase) instead of fofoOrder
createTimestamp, aligning OUT with the existing IN behaviour.
 
36103 180 d 5 h amit /trunk/profitmandi-dao/src/main/ Add DN rejection with full reversal: restore inventory, schemes, price drops, offers; add deny reason to purchase return items; add purchase return notification service  
36070 184 d 11 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/ Premium CD days: add partner-type helpers, update credit terms, fix CD rejection for 20-day loans, update invoice PDF terms  
35895 209 d 3 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/ Simplify price handling code: remove dead code, replace System.out with LOGGER, deduplicate priceDiff calc, add comments  
35629 239 d 7 h amit /trunk/ Fixed SchemeService  
35559 254 d 8 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed SchemeService  
35493 276 d 2 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ N+1 query optimization for B2B order creation flow

- OrderServiceImpl: Batch fetch PendingOrderItems before validation loop (line 402)
- OrderServiceImpl: Batch update opening stock using minusOpeningStockBatch
- OrderServiceImpl: Pre-fetch tagListings and GST rates before createAndGetFofoOrderItem loop
- OrderServiceImpl: Batch fetch PendingOrderItems for status update (line 719)
- CartServiceImpl: Pre-fetch items before getCartValidation loop
- SchemeServiceImpl: Batch fetch SchemeInOut records in processSchemeOut
- SmartCartService: Added minusOpeningStockBatch method for batch updates
- TagListingRepository: Added selectByItemIds batch method
- FofoOpeningStockRepository: Added findByFofoIdAndCatalogIds batch method
- PendingOrderItemRepository: Added selectByIds batch method

Performance improvement: ~70-100 DB queries reduced per order (10 items avg)
 
35394 283 d 23 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ Improved performance  
35334 299 d 13 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed hard limit  
35252 326 d 13 h aman /trunk/ Feat:Expire Schemes by ids and lead assign to bgc too  
35236 334 d 7 h amit /trunk/ Fixed notification related issues with scheme also stopped using mongo for brands Schema  
35210 346 d 7 h vikas /trunk/ Push Notifications Templates  
35096 362 d 8 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed Static  
35060 368 d 1 h amit /trunk/ Fixed wrong notifications going to retailers  
34991 380 d 9 h vikas /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Web Pages Management and Notifications Formatting  
34990 380 d 10 h vikas /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Web Pages Management and Notifications Formatting  
34989 380 d 10 h vikas /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Web Pages Management and Notifications Formatting  
34962 387 d 9 h vikas /trunk/ Web Pages Management and Notifications Formatting  
34902 400 d 5 h vikas /trunk/ Affiliate Order  
34850 420 d 17 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Update  
34803 438 d 6 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed scheme out  
34802 438 d 6 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Will appropriate the in margin when bill is created  
34800 438 d 7 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed credited scheme id  
34778 443 d 11 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ Fixed rollout for Pardeep telecom  
34750 449 d 8 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Special Support would not get added or rejected from processing scheme out  
34746 450 d 10 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ donotcommit  
34744 450 d 12 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fi  
34742 451 d 7 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Added logic to rollback  
34740 452 d 8 h amit.gupta /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed  
34709 457 d 12 h amit.gupta /trunk/ Added Loan Related Changes  
34708 458 d 5 h ranu /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ method update process scheme in out