Subversion Repositories SmartDukaan

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
35531 8 d 10 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Add manual partner type upgrade detection in rolloutMarginForStoreOnMonth

- Check if there's a MANUAL partner type change on day 1 of the month
- If manual upgrade detected, proceed with margin rollout for all orders in that month
- Existing calculated upgrade logic remains unchanged
 
35530 8 d 10 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Added migration for 2 parties for gold  
35524 9 d 3 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/ Added migration for 2 parties for gold  
35521 9 d 3 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/ Added migration for 2 parties for gold  
35461 25 d 17 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Fix LockAcquisitionException: Use bulk partner type fetch in ScheduledTasks

Use getTypesForFofoIds() bulk method in rollOutUpgardedMargins to avoid N+1 queries
 
35447 27 d 0 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Fix N+1 query in refundDnAmount() - batch fetch TagListings  
35446 27 d 0 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Use selectAllByItems() to avoid duplicate item fetch in checkfocusedModelInPartnerStock

- Pass pre-fetched items to tagListingRepository.selectAllByItems()
- Eliminates redundant itemRepository.selectAllByCatalogIds() call

🤖 Generated with Claude Code
 
35442 27 d 1 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Optimize checkfocusedModelInPartnerStock() - fix N+1 queries with batch fetching

- Reduced ~23,500 DB calls to ~12 batch queries
- Batch fetch customRetailers, inventory snapshots, GRN orders, items, tagListings upfront
- Fixed bug: partnerIdSalesHeadersMap.get(fofoStore.getId()) instead of get(fofoStore)

🤖 Generated with Claude Code
 
35424 28 d 1 h amit /trunk/ Fix order billing vs cancellation race condition with pessimistic locking

Problem:
- Concurrent billing and cancellation of the same order caused data inconsistency
- Money was refunded to wallet while order was also getting billed

Solution:
- Added pessimistic locking (SELECT FOR UPDATE) to prevent concurrent modifications
- Added validation methods to check order state before billing/cancellation
- Optimized billing method to reduce lock duration with pre-fetching

Changes:
- OrderRepository: Added selectByIdForUpdate, selectByOrderIdsForUpdate,
selectByInvoiceNumbersForUpdate, selectAllByTransactionIdForUpdate,
validateOrdersForBilling, validateOrderForRefund methods
- OrderRepositoryImpl: Implemented locking methods with PESSIMISTIC_WRITE
- TransactionServiceImpl: Updated billing methods with locking, fail-fast
validation, pre-fetching to avoid N+1 queries
- ScheduledTasks: Updated removePartialBillingForTransaction with locking
- TransactionRelatedTasks: Updated reverseRTO with locking
 
35393 29 d 19 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/ Fixed MongoDB close method  
35330 49 d 0 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Fixed loan issue  
35329 49 d 19 h ranu /trunk/ fix openinng stock  
35326 50 d 1 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Fixed Schedule Tasks  
35299 57 d 2 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Fixed Scheduled Task Logic  
35295 59 d 5 h amit /trunk/ Added reset logic  
35177 95 d 1 h amit /trunk/ Added SD Credit Scheduler  
35165 98 d 4 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/ Fixed system.exit(0)  
35160 98 d 6 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ Fixed SD Credit HardLimit Check  
35157 98 d 7 h amit /trunk/ Fixed SD Credit HardLimit Check  
35151 99 d 20 h amit /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ donotcommit  

Show All