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
35716 252 d 0 h amit /trunk/ Refactor GrnController and PurchaseOrderController: extract business logic into focused services and fix N+1 query performance issues

- Create InvoiceService: invoice item CRUD, validation, vendor price matching
- Create GrnRequestService: GRN request lifecycle, mismatch resolution state machine
- Create DebitNoteService: debit note generation, PDF model building
- Move PO amendment logic from PurchaseOrderController to PurchaseOrderService
- Delegate generateDebitNote from PurchaseOrderServiceImpl to DebitNoteService
- Thin GrnController from ~1215 to ~717 lines, remove 15 unused autowired dependencies
- Thin PurchaseOrderController editPurchaseOrder from 40+ lines to 3 lines

Performance fixes:
- InvoiceServiceImpl.validateInvoiceDetail: batch item/vendor pricing/GST loading (4N+3 queries -> ~5)
- DebitNoteServiceImpl: batch item loading in buildDebitNotePdfModel and generateDebitNote
- GrnController.generateDebitNote: eliminate 2 redundant DB fetches
- Replace 3x supplierRepository.selectAll() with targeted selectBySupplierIds()
 
35679 254 d 7 h ranu /trunk/ calling webhook updated  
35674 255 d 0 h amit /trunk/profitmandi-fofo/src/main/ Add multi-month duration option for manual partner category upgrade (up to 3 months)  
35672 255 d 4 h ranu /trunk/ code commit for calling target / retailer contact  
35670 255 d 5 h ranu /trunk/ code commit for calling target / retailer contact  
35669 255 d 6 h ranu /trunk/ code commit for calling target / retailer contact  
35660 257 d 6 h ranu /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ code commit for calling target / retailer contact  
35654 257 d 12 h ranu /trunk/ code commit for calling target / retailer contact  
35648 258 d 13 h ranu /trunk/ code commit for calling target / retailer contact  
35646 259 d 6 h aman /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ Fix:Dsm Code update null check  
35645 259 d 9 h ranu /trunk/ code commit for calling target  
35640 261 d 8 h amit /trunk/profitmandi-fofo/src/main/ Skip escalations in ticket overview Message column, compact escalation styling in detail dialog

- Pass lastMessageMap to ticket overview templates for all three views
(myTicket, managerTicket, myPartnerTicket)
- Template Message column prefers lastMessageMap over activityMap
- Escalation activities in detail dialog render as compact centered
system messages with pill styling instead of chat bubbles
- Add .system-activity CSS for compact centered gray pill style
 
35631 261 d 11 h ranu /trunk/ code commit for calling target  
35628 262 d 7 h amit /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ Commented dashobard  
35626 262 d 7 h amit /trunk/ Ticket system: add unread tracking, pagination, search, and partner notifications  
35624 262 d 8 h ranu /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ web hook deploy  
35617 264 d 5 h amit /trunk/ Filter invisible subcategory tickets for CRM and end users only

- CRM users: Cannot see tickets with visibility=0 subcategories
- Sales/RBM/ABM users: Can see all tickets (no filtering)
- End users in web module: CRM users filtered, others see all
- Uses getTicketSubCategoryMap() for efficient batch lookup
- Named query filters by tbc.visibility=true for recent tickets
 
35607 264 d 7 h amit /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ Fix partner position assignment error for newly added partners

- Changed validation from cached retailerService.getFofoRetailers(false) to direct fofoStoreRepository.selectAll() query
- This ensures newly added partners are validated correctly without waiting for cache to expire (30 mins)
 
35603 264 d 11 h amit /trunk/profitmandi-fofo/src/main/ Allow Sales and RBM teams to resolve their own category tickets

- Sales team can now resolve tickets in Sales category
- RBM team can now resolve tickets in RBM category
- CRM team can still resolve all tickets
- Added isSalesUser, isRbmUser flags and category IDs to template model
- Updated ticket.vm canResolve logic to check user category against ticket category
 
35601 264 d 12 h amit /trunk/profitmandi-fofo/src/main/ Filter out Sales/RBM Escalation tickets from CRM user's My Tickets view

- CRM users should not see Sales Escalation (84) and RBM Escalation (83) subcategory tickets
- These escalation tickets are internal and not relevant for CRM team
 

Show All