| Rev |
Age |
Author |
Path |
Log message |
Diff |
| 35592 |
177 d 6 h |
amit |
/trunk/ |
Ticket system improvements: N+1 query fixes, authorization checks, CRM access, UI fixes
- Fix N+1 queries in getSubCategoryIdAndCategoryMap and getAuthUserAndEsclationByPartnerId
- Add authorization checks to ticket endpoints (getActivities, closeTicket, createActivity, editTicket, editPartnerTicket, createLastActivity)
- CRM users can now see all tickets to handle partner communications
- Only CRM team members can mark tickets as resolved
- Fix duplicate HTML IDs in ticket templates (changed to classes)
- Fix getSubCategoryId() bug in edit-ticket modals
- Add message field to create-ticket form
- Update cs.js to use class selectors |
|
| 35571 |
185 d 22 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
Quick wins and medium effort improvements for ticket system
Quick Wins:
- Add input validation to updatePartnerPosition (check positionId, regionId, fofoIds exist)
- Keep SortOrder import (from javax.swing, needed for pagination)
Medium Effort:
- Extract common modal CSS and HTML to shared partials (activity-modal-styles.vm, activity-modal.vm)
- Add null safety checks for maps in getTicket, getMyPartyTicketTicket, getManagerTickets
- Fix N+1 query in getMyPartyTicketTicket: batch fetch tickets using selectAllOpenTickets(fofoIds) instead of loop |
|
| 35569 |
185 d 22 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
CRM-only external communication + performance & security improvements
Feature:
- Restrict external communication (COMMUNICATION_OUT) to CRM team only (category_id=9)
- Non-CRM users can only send internal communications
- Hide internal/external checkbox for non-CRM users in UI
Performance:
- Eliminate duplicate AuthUser fetch in getTicket() - reuse variable
- Eliminate duplicate activity query (selectAll called twice)
- Fetch only needed AuthUsers instead of all users for activity display
- Same optimizations applied to getMyPartyTicketTicket()
Security:
- Add escapeHtml() function to prevent XSS in activity messages
- Applied to all user-generated content display
UX:
- Add loading spinner while fetching activities
Code Quality:
- Add ActivityType constants for consistent usage
- Add toBool() helper for cleaner boolean checks
- Refactored loadActivities() for better readability |
|
| 34913 |
329 d 18 h |
ranu |
/trunk/profitmandi-fofo/src/main/ |
show all parties ticket to abm |
|