Subversion Repositories SmartDukaan

Rev

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

Filtering Options

Rev Age Author Path Log message Diff Changes
37068 9 d 10 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.
 
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
36767 49 d 8 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed Stock Purchase sAle ageing days, added fields to mail  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
36491 75 d 13 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed scheme item enddate to expire when scheme is expired  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
36490 75 d 13 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed scheme item enddate to expire when scheme is expired  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
36451 81 d 8 h amit /trunk/profitmandi-dao/src/main/ Add reference field to catalog.offer and catalog.scheme for payout collation  
/trunk/profitmandi-dao/src/main/resources/sql/add_reference_to_offer_scheme.sql
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Offer.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Scheme.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CreateOfferRequest.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CreateSchemeRequest.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/OfferServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
36405 86 d 8 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  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/InventoryItemRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/InventoryItemRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
36397 86 d 11 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.
 
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Scheme.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/TagListing.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/SchemeItem.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/SchemeItemRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/SchemeItemRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
36103 114 d 6 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  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnNotificationService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnNotificationServiceImpl.java
/trunk/profitmandi-dao/src/main/resources/db
/trunk/profitmandi-dao/src/main/resources/db/migration
/trunk/profitmandi-dao/src/main/resources/db/migration/V001__create_pinelabs_tables.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V002__cleanup_old_pinelabs_implementation.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V003__optimize_mobile_brand_queries.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V004__optimize_today_po_queries.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V005__optimize_lead_description_query.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V006__optimize_aging_stock_queries.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V007__add_source_to_partner_type_change.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V008__optimize_mobile_lmp_graph_query.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V009__add_margin_only_to_category.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V010__add_loan_fofo_id_index.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V011__add_prebooking_payment_mode.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V012__create_purchase_return_order.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V013__add_invoice_return_menu.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/V014__add_deny_reason_to_purchase_return_item.sql
/trunk/profitmandi-dao/src/main/resources/db/migration/pt_osc_large_tables.sh
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/PurchaseReturnItem.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/InventoryService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/InventoryServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/OfferService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/OfferServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricing/PriceDropService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricing/PriceDropServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
36070 118 d 12 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  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/invoicing/InvoiceService.java
35895 143 d 4 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  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricecircular/PriceCircularService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java
35629 173 d 8 h amit /trunk/ Fixed SchemeService  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/AdminUser.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
/trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/dashboard1.vm
/trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/include-scripts.vm
35559 188 d 9 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed SchemeService  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
35493 210 d 3 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)
 
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/SmartCartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/SmartCartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/TagListingRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/TagListingRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/FofoOpeningStockRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/FofoOpeningStockRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/PendingOrderItemRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/PendingOrderItemRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/OrderServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
35394 218 d 0 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ Improved performance  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/PineLabs.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/logistics/ASTRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/logistics/ASTRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/warehouse/WarehouseInventoryItem.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CreateOfferRequest.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/auth/AuthRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/auth/AuthRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/auth/PartnerCollectionRemarkRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/auth/PartnerCollectionRemarkRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/ItemCriteriaRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/OfferRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/OfferRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/CsService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/CsService1Impl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/CsServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/PositionRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/PositionRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/DistrictMasterRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/DistrictMasterRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/FofoLineItemRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/FofoLineItemRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/FofoOrderItemRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/FofoOrderItemRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/HygieneDataRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/HygieneDataRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/OfferPayoutRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/OfferPayoutRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/PendingOrderServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/PineLabsRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/PineLabsRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/inventory/StateRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/inventory/StateRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LoanRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LoanRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CounterRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CounterRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/PrivateDealUserRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/PrivateDealUserRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/PurSaleServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/loiForm/LoiFormServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/AdminUser.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/PartnerStatsServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/integrations/PineLabsPaymentService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/OfferService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/OfferServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/pricecircular/PriceCircularService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/SDCreditServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/user/RetailerServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/warehouse/WarehouseServiceImpl.java
35334 233 d 14 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed hard limit  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
35252 260 d 14 h aman /trunk/ Feat:Expire Schemes by ids and lead assign to bgc too  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LeadController.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/SchemeController.java
/trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/lead.vm
/trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/update-schemes-page.vm
/trunk/profitmandi-fofo/src/main/webapp/resources/js/scheme.js
35236 268 d 8 h amit /trunk/ Fixed notification related issues with scheme also stopped using mongo for brands Schema  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/services/mandii/MandiiService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/Mongo.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/NotificationServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/OrderServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/IndentController.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/PerformanceController.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/PlacementPlanController.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/RetailerController.java
35210 280 d 8 h vikas /trunk/ Push Notifications Templates  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/fofo/PendingOrderServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/CreditNoteServiceImpl.java
/trunk/profitmandi-dao/src/main/resources/partner-code-created.vm
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/InventoryController.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LogisticsController.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/SDCreditController.java
35096 296 d 9 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/ Fixed Static  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java
35060 302 d 2 h amit /trunk/ Fixed wrong notifications going to retailers  
/trunk/ThriftConfig/src/main/java/in/shop2020/model/v1/order/WalletReferenceType.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/SendNotificationModel.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/scheme/SchemeServiceImpl.java

Show All