<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SmartDukaan &#x2013; /</title><description>WebSVN RSS feed &#x2013; SmartDukaan</description><lastBuildDate>Mon, 13 Apr 2026 16:32:13 +0530</lastBuildDate><generator>WebSVN 2.8.6-DEV</generator><language>en</language><link>https://svn.smartdukaan.com/log.php?repname=SmartDukaan&amp;path=%2F&amp;max=40&amp;peg=35607</link><atom:link href="https://svn.smartdukaan.com/rss.php?peg=35607&amp;repname=SmartDukaan" rel="self" type="application/rss+xml" />
<item><pubDate>Wed, 28 Jan 2026 17:03:18 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35607 – Fix partner position assignment error for newly added partners  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix partner position assignment error for newly added partners&lt;br /&gt;
&lt;br /&gt;
- Changed validation from cached retailerService.getFofoRetailers(false) to direct fofoStoreRepository.selectAll() query&lt;br /&gt;
- This ensures newly added partners are validated correctly without waiting for cache to expire (30 mins)&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35607&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35607&amp;peg=35607</guid></item>
<item><pubDate>Wed, 28 Jan 2026 17:00:34 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35606 – Fix JavaScript errors: $ is not defined and $retailers is ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix JavaScript errors: $ is not defined and $retailers is not defined&lt;br /&gt;
&lt;br /&gt;
- ticket.vm, managerTicket.vm, my-partner-tickets.vm: Wrap all jQuery code in $(document).ready() to ensure jQuery is loaded before executing&lt;br /&gt;
- admin.vm: Check each variable independently (retailers, warehouses, authId) before assigning to prevent undefined variable errors&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/admin.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/managerTicket.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/my-partner-tickets.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ticket.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35606&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35606&amp;peg=35607</guid></item>
<item><pubDate>Wed, 28 Jan 2026 14:41:08 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35605 – Reduce ticket dialog spacing and move time inside with smaller ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Reduce ticket dialog spacing and move time inside with smaller font&lt;br /&gt;
&lt;br /&gt;
- Reduced message spacing from 26px to 8px margin&lt;br /&gt;
- Added explicit incoming_msg margin style&lt;br /&gt;
- Time now displays smaller (10px) in gray, right-aligned inside bubble&lt;br /&gt;
- Removed extra line breaks from pseudo-elements&lt;br /&gt;
- Removed br tags between modal-body and modal-footer&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/activity-modal-styles.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/activity-modal.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35605&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35605&amp;peg=35607</guid></item>
<item><pubDate>Wed, 28 Jan 2026 14:04:01 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35604 – Fix modal backdrop not removing after ticket assignment  - ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix modal backdrop not removing after ticket assignment&lt;br /&gt;
&lt;br /&gt;
- Close modal and remove backdrop in changeTicket callback before reloading page&lt;br /&gt;
- Same fix applied to changeMyPartnerTicket function&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/cs.js&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35604&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35604&amp;peg=35607</guid></item>
<item><pubDate>Wed, 28 Jan 2026 13:41:15 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35603 – Allow Sales and RBM teams to resolve their own category ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Allow Sales and RBM teams to resolve their own category tickets&lt;br /&gt;
&lt;br /&gt;
- Sales team can now resolve tickets in Sales category&lt;br /&gt;
- RBM team can now resolve tickets in RBM category&lt;br /&gt;
- CRM team can still resolve all tickets&lt;br /&gt;
- Added isSalesUser, isRbmUser flags and category IDs to template model&lt;br /&gt;
- Updated ticket.vm canResolve logic to check user category against ticket category&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ticket.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35603&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35603&amp;peg=35607</guid></item>
<item><pubDate>Wed, 28 Jan 2026 13:30:33 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35602 – Fix modal backdrop not being removed on close in ticket ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix modal backdrop not being removed on close in ticket pages&lt;br /&gt;
&lt;br /&gt;
- Add cleanup handlers for #theModal and #theModal2 on hidden.bs.modal event&lt;br /&gt;
- Add global fallback to remove backdrop when all modals are closed&lt;br /&gt;
- Add proper modal attributes (tabindex, role, data-backdrop, data-keyboard)&lt;br /&gt;
- Prevents screen from becoming unusable after closing assign ticket dialog&lt;br /&gt;
&lt;br /&gt;
Affected pages: My Ticket, My Partner Tickets, Manager Ticket&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/managerTicket.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/my-partner-tickets.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ticket.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35602&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35602&amp;peg=35607</guid></item>
<item><pubDate>Wed, 28 Jan 2026 12:42:49 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35601 – Filter out Sales/RBM Escalation tickets from CRM user&apos;s My Tickets ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;Filter out Sales/RBM Escalation tickets from CRM user&apos;s My Tickets view&lt;br /&gt;
&lt;br /&gt;
- CRM users should not see Sales Escalation (84) and RBM Escalation (83) subcategory tickets&lt;br /&gt;
- These escalation tickets are internal and not relevant for CRM team&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/resources/META-INF/env.property&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35601&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35601&amp;peg=35607</guid></item>
<item><pubDate>Wed, 28 Jan 2026 12:05:44 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35600 – Fix Redis serialization bug and add 15-min cache manager  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 6 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix Redis serialization bug and add 15-min cache manager&lt;br /&gt;
&lt;br /&gt;
- Fix SerializationException for publishedOffersWithAchievement cache&lt;br /&gt;
  - Add @JsonIgnore to computed getters getBillingStartDate/getBillingEndDate&lt;br /&gt;
  - Add @JsonIgnoreProperties(ignoreUnknown=true) to CreateOfferRequest,&lt;br /&gt;
    ItemCriteriaPayout, TargetSlab for backward compatibility with cached data&lt;br /&gt;
&lt;br /&gt;
- Add redisVeryShortCacheManager (15 min TTL) for frequently changing data&lt;br /&gt;
  - brandStockPrices, partnerInvestments, partnerSales, partnerDailyInvestment&lt;br /&gt;
    now use 15-min cache instead of 60-min&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/config/CacheConfig.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CreateOfferRequest.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/ItemCriteriaPayout.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/TargetSlab.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/FofoUser.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/PartnerInvestmentServiceImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35600&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35600&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 21:48:58 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35599 – Add HikariCP dependency for connection pooling</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Add HikariCP dependency for connection pooling&lt;/div&gt;~ /trunk/profitmandi-web/build.gradle&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35599&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35599&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 21:31:28 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35598 – Migrate from C3P0 to HikariCP connection pooling  - Replace ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;Migrate from C3P0 to HikariCP connection pooling&lt;br /&gt;
&lt;br /&gt;
- Replace C3P0 properties with HikariCP settings&lt;br /&gt;
- New settings: maximumPoolSize=20, minimumIdle=2, idleTimeout=30s, maxLifetime=30min&lt;/div&gt;~ /trunk/profitmandi-cron/src/main/resources/META-INF/dev.properties&lt;br /&gt;~ /trunk/profitmandi-cron/src/main/resources/META-INF/env.properties&lt;br /&gt;~ /trunk/profitmandi-cron/src/main/resources/META-INF/prod.properties&lt;br /&gt;~ /trunk/profitmandi-cron/src/main/resources/META-INF/run.properties&lt;br /&gt;~ /trunk/profitmandi-cron/src/main/resources/META-INF/staging.properties&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35598&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35598&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 21:31:22 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35597 – Migrate from C3P0 to HikariCP connection pooling  - Replace ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;Migrate from C3P0 to HikariCP connection pooling&lt;br /&gt;
&lt;br /&gt;
- Replace C3P0 properties with HikariCP settings&lt;br /&gt;
- New settings: maximumPoolSize=20, minimumIdle=2, idleTimeout=30s, maxLifetime=30min&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/resources/META-INF/dev.properties&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/resources/META-INF/env.property&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/resources/META-INF/prod.properties&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/resources/META-INF/staging.properties&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35597&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35597&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 21:31:17 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35596 – Migrate from C3P0 to HikariCP connection pooling  - Update ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;Migrate from C3P0 to HikariCP connection pooling&lt;br /&gt;
&lt;br /&gt;
- Update WebDBContextConfigure to use HikariDataSource instead of DriverManagerDataSource&lt;br /&gt;
- Replace C3P0 properties with HikariCP settings&lt;br /&gt;
- New settings: maximumPoolSize=20, minimumIdle=2, idleTimeout=30s, maxLifetime=30min&lt;/div&gt;~ /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/dao/config/WebDBContextConfigure.java&lt;br /&gt;~ /trunk/profitmandi-web/src/main/resources/META-INF/dev.properties&lt;br /&gt;~ /trunk/profitmandi-web/src/main/resources/META-INF/env.property&lt;br /&gt;~ /trunk/profitmandi-web/src/main/resources/META-INF/prod.properties&lt;br /&gt;~ /trunk/profitmandi-web/src/main/resources/META-INF/staging.properties&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35596&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35596&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 21:31:11 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35595 – Migrate from C3P0 to HikariCP connection pooling  - Replace ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 9 file(s) modified&lt;/strong&gt;&lt;br/&gt;Migrate from C3P0 to HikariCP connection pooling&lt;br /&gt;
&lt;br /&gt;
- Replace C3P0 properties with HikariCP settings in all properties files&lt;br /&gt;
- Delete unused persistence.xml (was not referenced by any code)&lt;br /&gt;
- New settings: maximumPoolSize=20, minimumIdle=2, idleTimeout=30s, maxLifetime=30min&lt;/div&gt;~ /trunk/profitmandi-dao/build.gradle&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/ActivatedImei.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/FofoUser.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/InventoryServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/OfferServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/resources/META-INF/dev.properties&lt;br /&gt;x /trunk/profitmandi-dao/src/main/resources/META-INF/persistence.xml&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/resources/META-INF/prod.properties&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/resources/META-INF/staging.properties&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35595&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35595&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 21:25:50 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35594 – Ticket system: CRM access, category filtering, UI improvements  CRM ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 10 file(s) modified&lt;/strong&gt;&lt;br/&gt;Ticket system: CRM access, category filtering, UI improvements&lt;br /&gt;
&lt;br /&gt;
CRM Team Access:&lt;br /&gt;
- CRM users can see all tickets in myticket and managerTicket views&lt;br /&gt;
- CRM users can assign/edit tickets from all views&lt;br /&gt;
- Only CRM can mark tickets as resolved&lt;br /&gt;
&lt;br /&gt;
Category Filtering (hidden from CRM):&lt;br /&gt;
- Sales category (ID 4) and Sales Escalation subcategory (ID 84)&lt;br /&gt;
- RBM category (ID 18) and RBM Escalation subcategory (ID 83)&lt;br /&gt;
&lt;br /&gt;
UI Improvements:&lt;br /&gt;
- Partner name link opens partnerPerformance in new tab (reusable via .partner-link class)&lt;br /&gt;
- Edit modal shows ticket ID and partner name in title&lt;br /&gt;
- Resolve confirm shows ticket ID and partner name&lt;br /&gt;
- Fixed duplicate class attributes in buttons&lt;br /&gt;
- Modal shows after content loads (removed data-toggle conflicts)&lt;br /&gt;
&lt;br /&gt;
Version bump: JS 313, CSS 34&lt;/div&gt;~ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/ProfitMandiConstants.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/common.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/cs.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/edit-ticket-modal.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/edit-ticket-partner-modal.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/managerTicket.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/my-partner-tickets.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ticket.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35594&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35594&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 16:03:28 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35593 – Added Versioning</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Added Versioning&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35593&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35593&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 13:11:30 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35592 – Ticket system improvements: N+1 query fixes, authorization checks, CRM access, ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 11 file(s) modified&lt;/strong&gt;&lt;br/&gt;Ticket system improvements: N+1 query fixes, authorization checks, CRM access, UI fixes&lt;br /&gt;
&lt;br /&gt;
- Fix N+1 queries in getSubCategoryIdAndCategoryMap and getAuthUserAndEsclationByPartnerId&lt;br /&gt;
- Add authorization checks to ticket endpoints (getActivities, closeTicket, createActivity, editTicket, editPartnerTicket, createLastActivity)&lt;br /&gt;
- CRM users can now see all tickets to handle partner communications&lt;br /&gt;
- Only CRM team members can mark tickets as resolved&lt;br /&gt;
- Fix duplicate HTML IDs in ticket templates (changed to classes)&lt;br /&gt;
- Fix getSubCategoryId() bug in edit-ticket modals&lt;br /&gt;
- Add message field to create-ticket form&lt;br /&gt;
- Update cs.js to use class selectors&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/CsServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/TicketRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/TicketRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/cs.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/create-ticket.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/edit-ticket-modal.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/edit-ticket-partner-modal.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/managerTicket.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/my-partner-tickets.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ticket.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35592&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35592&amp;peg=35607</guid></item>
<item><pubDate>Tue, 27 Jan 2026 13:01:45 +0530</pubDate><dc:creator>aman</dc:creator><title>Rev 35591 – Fix:Remove Account team from default partner and partner credit report ...</title><description>&lt;div&gt;&lt;strong&gt;aman – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix:Remove Account team from default partner and partner credit report and only send to neeraj sir&lt;/div&gt;~ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ScheduledTasks.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35591&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35591&amp;peg=35607</guid></item>
<item><pubDate>Fri, 23 Jan 2026 20:12:58 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35590 – Require at least one partner in createPosition and updatePartnerPosition  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Require at least one partner in createPosition and updatePartnerPosition&lt;br /&gt;
&lt;br /&gt;
- Reject null or empty fofoIds with &apos;At least one partner must be specified&apos;&lt;br /&gt;
- Position must have either [0] (All Partners) or specific partner IDs&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35590&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35590&amp;peg=35607</guid></item>
<item><pubDate>Fri, 23 Jan 2026 20:11:20 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35589 – Fix fofoId validation to allow 0 (All Partners) in createPosition ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix fofoId validation to allow 0 (All Partners) in createPosition and updatePartnerPosition&lt;br /&gt;
&lt;br /&gt;
- fofoId=0 is a sentinel value meaning &apos;All Partners&apos;&lt;br /&gt;
- Skip validation when fofoIds contains only 0&lt;br /&gt;
- Reject mixed lists like [0, 123, 456] to prevent inconsistent data&lt;br /&gt;
- Fixes regression introduced in r35570/r35571&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35589&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35589&amp;peg=35607</guid></item>
<item><pubDate>Fri, 23 Jan 2026 18:41:20 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35588 – Fix ClassCastException in selectByfofoIds - flatten list properly instead of ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix ClassCastException in selectByfofoIds - flatten list properly instead of nesting ArrayList in Arrays.asList()&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/PartnerRegionRepositoryImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35588&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35588&amp;peg=35607</guid></item>
<item><pubDate>Fri, 23 Jan 2026 17:24:05 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 35587 – code diploy for bulletins</title><description>&lt;div&gt;&lt;strong&gt;ranu – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;code diploy for bulletins&lt;/div&gt;~ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/SalesThoughtConstants.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/AdminUser.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/admin.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/post-bulletin.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35587&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35587&amp;peg=35607</guid></item>
<item><pubDate>Thu, 22 Jan 2026 22:34:43 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35586 – Fix: Set HikariCP autoCommit=false to enable Hibernate dirty checking for ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix: Set HikariCP autoCommit=false to enable Hibernate dirty checking for transaction management&lt;/div&gt;~ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/config/DBConfig.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35586&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35586&amp;peg=35607</guid></item>
<item><pubDate>Thu, 22 Jan 2026 18:59:30 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 35585 – code updated by</title><description>&lt;div&gt;&lt;strong&gt;ranu – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;code updated by&lt;/div&gt;+ /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/SalesThoughtConstants.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/AdminUser.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/DashboardController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/admin.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35585&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35585&amp;peg=35607</guid></item>
<item><pubDate>Wed, 21 Jan 2026 19:39:57 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 35584 – code updated by</title><description>&lt;div&gt;&lt;strong&gt;ranu – 2 file(s) modified&lt;/strong&gt;&lt;br/&gt;code updated by&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/admin.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35584&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35584&amp;peg=35607</guid></item>
<item><pubDate>Wed, 21 Jan 2026 19:23:11 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 35583 – code updated by</title><description>&lt;div&gt;&lt;strong&gt;ranu – 18 file(s) modified&lt;/strong&gt;&lt;br/&gt;code updated by&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/cs/Bulletin.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/BulletinOfferModal.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/BulletinPostModel.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/OfferRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/OfferRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/SchemeRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/catalog/SchemeRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/BulletinRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/cs/BulletinRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/AdminUser.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/TodayOfferService.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/offers/TodayOfferServiceImpl.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ContentController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/DashboardController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/bulletin.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/admin.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/bulletin-list.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/post-bulletin.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35583&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35583&amp;peg=35607</guid></item>
<item><pubDate>Wed, 21 Jan 2026 19:04:54 +0530</pubDate><dc:creator>aman</dc:creator><title>Rev 35582 – Fix:DMS Code update issue</title><description>&lt;div&gt;&lt;strong&gt;aman – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix:DMS Code update issue&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/PartnerOnBoardingPanelController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35582&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35582&amp;peg=35607</guid></item>
<item><pubDate>Wed, 21 Jan 2026 11:46:05 +0530</pubDate><dc:creator>ranu</dc:creator><title>Rev 35581 – icici lombard service</title><description>&lt;div&gt;&lt;strong&gt;ranu – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;icici lombard service&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/integrations/icicilombard/IciciLombardService.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35581&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35581&amp;peg=35607</guid></item>
<item><pubDate>Tue, 20 Jan 2026 16:36:48 +0530</pubDate><dc:creator>aman</dc:creator><title>Rev 35580 – Fix:Partner Pending Indents Data issue</title><description>&lt;div&gt;&lt;strong&gt;aman – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix:Partner Pending Indents Data issue&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/partner-pending-indent-item.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35580&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35580&amp;peg=35607</guid></item>
<item><pubDate>Tue, 20 Jan 2026 12:35:21 +0530</pubDate><dc:creator>aman</dc:creator><title>Rev 35579 – Feat:add lead id in lead report</title><description>&lt;div&gt;&lt;strong&gt;aman – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Feat:add lead id in lead report&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/LeadController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35579&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35579&amp;peg=35607</guid></item>
<item><pubDate>Mon, 19 Jan 2026 16:54:42 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35578 – Fix: Protect admin-set hardLimit from being overwritten  - Bug ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix: Protect admin-set hardLimit from being overwritten&lt;br /&gt;
&lt;br /&gt;
- Bug fix: Credit limit set by admin (hardLimit=true) was being overwritten&lt;br /&gt;
  when other users updated SD credit requirements&lt;br /&gt;
- Performance: Removed redundant database query for SDCreditRequirement&lt;br /&gt;
- Fix: Calculate availableLimit after limit changes to ensure correct value&lt;br /&gt;
- Cleanup: Use fofoId variable instead of repeated method calls&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/SDCreditController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35578&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35578&amp;peg=35607</guid></item>
<item><pubDate>Mon, 19 Jan 2026 15:22:27 +0530</pubDate><dc:creator>aman</dc:creator><title>Rev 35577 – Feat:add item ID in Aging Stock List: Items that are ...</title><description>&lt;div&gt;&lt;strong&gt;aman – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;Feat:add item ID in Aging Stock List: Items that are 4 days old or older report.&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/warehouse/WarehouseSupplierInvoice.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/purchaseSaleRatio/CatalogAgedModel.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/warehouse/WarehouseSupplierInvoiceRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/warehouse/WarehouseSupplierInvoiceRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/PurSaleServiceImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35577&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35577&amp;peg=35607</guid></item>
<item><pubDate>Mon, 19 Jan 2026 12:27:55 +0530</pubDate><dc:creator>aman</dc:creator><title>Rev 35576 – Feat:Add lead id and auth id in respective data table</title><description>&lt;div&gt;&lt;strong&gt;aman – 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;Feat:Add lead id and auth id in respective data table&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/create-auth-user.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/edit-lead.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/lead.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35576&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35576&amp;peg=35607</guid></item>
<item><pubDate>Mon, 19 Jan 2026 02:47:08 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35575 – Return full CartResponse on cart validation failure  - Return ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Return full CartResponse on cart validation failure&lt;br /&gt;
&lt;br /&gt;
- Return cartValidationResponse instead of generic CART_CHANGED error&lt;br /&gt;
- Allows app to display specific price change messages to user&lt;/div&gt;~ /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/OrderController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35575&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35575&amp;peg=35607</guid></item>
<item><pubDate>Mon, 19 Jan 2026 02:47:01 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35574 – Fix price mismatch false positives in cart validation  - ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix price mismatch false positives in cart validation&lt;br /&gt;
&lt;br /&gt;
- Handle cart price = 0/unset: silently update to current price (client bug)&lt;br /&gt;
- Use tolerance comparison (0.01) instead of exact Float.compare&lt;br /&gt;
- Prevents false PRICE_CHANGED errors from float precision issues&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35574&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35574&amp;peg=35607</guid></item>
<item><pubDate>Mon, 19 Jan 2026 01:05:01 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35573 – Feature: Add price mismatch detection in cart  - Detect ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Feature: Add price mismatch detection in cart&lt;br /&gt;
&lt;br /&gt;
- Detect when cart item price differs from current TagListing price&lt;br /&gt;
- Notify user with PRICE_CHANGED message showing old vs new price&lt;br /&gt;
- Auto-update cart line with current price&lt;br /&gt;
- Add logging for price mismatch events&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35573&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35573&amp;peg=35607</guid></item>
<item><pubDate>Mon, 19 Jan 2026 01:04:54 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35572 – Fix: Remove duplicate persist in wallet approval  The addWalletRequest ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 1 file(s) modified&lt;/strong&gt;&lt;br/&gt;Fix: Remove duplicate persist in wallet approval&lt;br /&gt;
&lt;br /&gt;
The addWalletRequest status was already being updated in memory, &lt;br /&gt;
and the entity is managed by Hibernate session - no explicit persist needed.&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/WalletController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35572&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35572&amp;peg=35607</guid></item>
<item><pubDate>Sun, 18 Jan 2026 21:44:17 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35571 – Quick wins and medium effort improvements for ticket system  ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 5 file(s) modified&lt;/strong&gt;&lt;br/&gt;Quick wins and medium effort improvements for ticket system&lt;br /&gt;
&lt;br /&gt;
Quick Wins:&lt;br /&gt;
- Add input validation to updatePartnerPosition (check positionId, regionId, fofoIds exist)&lt;br /&gt;
- Keep SortOrder import (from javax.swing, needed for pagination)&lt;br /&gt;
&lt;br /&gt;
Medium Effort:&lt;br /&gt;
- Extract common modal CSS and HTML to shared partials (activity-modal-styles.vm, activity-modal.vm)&lt;br /&gt;
- Add null safety checks for maps in getTicket, getMyPartyTicketTicket, getManagerTickets&lt;br /&gt;
- Fix N+1 query in getMyPartyTicketTicket: batch fetch tickets using selectAllOpenTickets(fofoIds) instead of loop&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/activity-modal-styles.vm&lt;br /&gt;+ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/activity-modal.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/my-partner-tickets.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ticket.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35571&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35571&amp;peg=35607</guid></item>
<item><pubDate>Sun, 18 Jan 2026 21:31:29 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35570 – Ticket system improvements: Fix N+1 query in getActivity, add input ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 3 file(s) modified&lt;/strong&gt;&lt;br/&gt;Ticket system improvements: Fix N+1 query in getActivity, add input validation in createPosition, optimize getManagerTickets&lt;br /&gt;
&lt;br /&gt;
- DocumentRepository: Add selectByIds for batch fetching documents&lt;br /&gt;
- CsController.getActivity: Replace N+1 document fetch with batch query, remove incorrect persist during GET&lt;br /&gt;
- CsController.createPosition: Add validation for authUserId, categoryId, regionId, and fofoIds before creating position&lt;br /&gt;
- CsController.getManagerTickets: Fix duplicate activity query, fetch only required AuthUsers instead of all users&lt;/div&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/DocumentRepository.java&lt;br /&gt;~ /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/dtr/DocumentRepositoryImpl.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35570&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35570&amp;peg=35607</guid></item>
<item><pubDate>Sun, 18 Jan 2026 21:00:39 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35569 – CRM-only external communication + performance &amp; security improvements  Feature: ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;CRM-only external communication + performance &amp; security improvements&lt;br /&gt;
&lt;br /&gt;
Feature:&lt;br /&gt;
- Restrict external communication (COMMUNICATION_OUT) to CRM team only (category_id=9)&lt;br /&gt;
- Non-CRM users can only send internal communications&lt;br /&gt;
- Hide internal/external checkbox for non-CRM users in UI&lt;br /&gt;
&lt;br /&gt;
Performance:&lt;br /&gt;
- Eliminate duplicate AuthUser fetch in getTicket() - reuse variable&lt;br /&gt;
- Eliminate duplicate activity query (selectAll called twice)&lt;br /&gt;
- Fetch only needed AuthUsers instead of all users for activity display&lt;br /&gt;
- Same optimizations applied to getMyPartyTicketTicket()&lt;br /&gt;
&lt;br /&gt;
Security:&lt;br /&gt;
- Add escapeHtml() function to prevent XSS in activity messages&lt;br /&gt;
- Applied to all user-generated content display&lt;br /&gt;
&lt;br /&gt;
UX:&lt;br /&gt;
- Add loading spinner while fetching activities&lt;br /&gt;
&lt;br /&gt;
Code Quality:&lt;br /&gt;
- Add ActivityType constants for consistent usage&lt;br /&gt;
- Add toBool() helper for cleaner boolean checks&lt;br /&gt;
- Refactored loadActivities() for better readability&lt;/div&gt;~ /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/CsController.java&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/resources/js/cs.js&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/my-partner-tickets.vm&lt;br /&gt;~ /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ticket.vm&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35569&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35569&amp;peg=35607</guid></item>
<item><pubDate>Sat, 17 Jan 2026 12:06:59 +0530</pubDate><dc:creator>amit</dc:creator><title>Rev 35568 – Refactor ticket scheduled tasks: fix bugs, add test mode, improve ...</title><description>&lt;div&gt;&lt;strong&gt;amit – 4 file(s) modified&lt;/strong&gt;&lt;br/&gt;Refactor ticket scheduled tasks: fix bugs, add test mode, improve performance&lt;br /&gt;
&lt;br /&gt;
Bug fixes:&lt;br /&gt;
- Remove break statement in alertforTicket that stopped after first user&lt;br /&gt;
- Remove duplicate ticketClosed() method (used 7 calendar days vs 8 working days)&lt;br /&gt;
- Update Application.java CLI handler to use refactored escalateTicket()&lt;br /&gt;
&lt;br /&gt;
New features:&lt;br /&gt;
- Add email test mode: redirect all emails to tester via config&lt;br /&gt;
  - ticket.email.testMode.enabled=true/false&lt;br /&gt;
  - ticket.email.testMode.recipient=&lt;a href=&quot;mailto:tester@email.com&quot;&gt;tester@email.com&lt;/a&gt;&lt;br /&gt;
- Add configurable auto-escalation: ticket.autoEscalation.enabled&lt;br /&gt;
- Working days calculation using WorkingDaysService (excludes Sun + holidays)&lt;br /&gt;
&lt;br /&gt;
Performance improvements:&lt;br /&gt;
- Batch fetch ticketSubCategoryMap once per job, not per email&lt;br /&gt;
- All repository calls moved outside loops (N+1 query fix)&lt;br /&gt;
&lt;br /&gt;
Escalation thresholds updated:&lt;br /&gt;
- L1 -&gt; L2: 3 working days&lt;br /&gt;
- L2 -&gt; L3: 3 working days  &lt;br /&gt;
- L3 -&gt; Final: 2 working days&lt;br /&gt;
&lt;br /&gt;
Co-Authored-By: Claude Opus 4.5 &amp;lt;&lt;a href=&quot;mailto:noreply@anthropic.com&quot;&gt;noreply@anthropic.com&lt;/a&gt;&gt;&lt;/div&gt;~ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/Application.java&lt;br /&gt;~ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ScheduledSkeleton.java&lt;br /&gt;~ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ScheduledTasks.java&lt;br /&gt;~ /trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/TicketRelatedScheduledTask.java&lt;br /&gt;</description><link>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35568&amp;peg=35607</link><guid>https://svn.smartdukaan.com/revision.php?repname=SmartDukaan&amp;path=%2F&amp;isdir=1&amp;rev=35568&amp;peg=35607</guid></item>
</channel></rss>