| Rev |
Age |
Author |
Path |
Log message |
Diff |
| 36403 |
8 d 19 h |
amit |
/trunk/profitmandi-dao/src/main/ |
Add catalog.catalog_monitor_type table, entity, and repository for per-catalog focused/normal monitor type tagging |
|
| 36402 |
8 d 19 h |
amit |
/trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/ |
Replace mailSender (SendGrid) with gmailRelaySender - SendGrid API key expired/revoked |
|
| 36401 |
8 d 19 h |
amit |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ |
Replace mailSender (SendGrid) with gmailRelaySender - SendGrid API key expired/revoked |
|
| 36400 |
8 d 19 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
Replace mailSender (SendGrid) with gmailRelaySender - SendGrid API key expired/revoked |
|
| 36399 |
8 d 19 h |
amit |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ |
Replace mailSender (SendGrid) with gmailRelaySender - SendGrid API key expired/revoked |
|
| 36398 |
8 d 19 h |
amit |
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/services/ |
Replace mailSender (SendGrid) with gmailRelaySender across all modules - SendGrid API key expired/revoked |
|
| 36397 |
8 d 19 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. |
|
| 36396 |
8 d 19 h |
amit |
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/ |
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.
Also pins processSchemeOut 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.
Common DTO: SchemeItems gains startDate/endDate fields. |
|
| 36395 |
8 d 19 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/ |
login talktime hours cap on 100% |
|
| 36394 |
8 d 19 h |
amit |
/trunk/profitmandi-fofo/src/main/ |
Add IMEI net-margin modal on order-index billing panel.
New /getImeiNetMarginModal endpoint: given an IMEI, derives the
purchase-billed date from the IMEI's purchase order
(InventoryItem.purchaseId -> Purchase.purchaseReference -> Order.billingTimestamp),
fetches schemes applicable on that date via PriceCircular, and shows
per-scheme contribution, NLC, and net margin in a slim modal.
Effective DP = inventory_item.unit_price - max(0, price_drop_amount)
to match SchemeServiceImpl.createSchemeInOut/PriceCircularService.getPayouts.
Offers are intentionally excluded. Per-IMEI price-drop history is
shown for reference. |
|
| 36393 |
8 d 20 h |
aman |
/trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ |
Fix:Update contact-us list |
|
| 36392 |
8 d 21 h |
ranu |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/monitors/ |
login talktime hours cap on 100% |
|
| 36391 |
11 d 14 h |
aman |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/ |
Feat:LocalDateTime fix for insurance |
|
| 36390 |
11 d 14 h |
aman |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/ |
Feat:LocalDateTime fix for insurance |
|
| 36389 |
11 d 14 h |
aman |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/ |
Feat:LocalDateTime fix for insurance |
|
| 36388 |
11 d 14 h |
aman |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/ |
Feat:LocalDateTime fix for insurance |
|
| 36387 |
11 d 15 h |
ranu |
/trunk/ |
code commit for reports section v2 |
|
| 36386 |
11 d 15 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
Revert r36385: drop DataIntegrityViolationException handler from profitmandi-web V1 and V2 global exception handlers. Default DB-error translation is kept only in the FOFO module for now. |
|
| 36385 |
11 d 15 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
Add DataIntegrityViolationException handler to V1 GlobalExceptionHandler and V2GlobalExceptionHandler. Translates MySQL truncation / duplicate / FK errors into HTTP 400 with a friendly message via the new DbErrorTranslator (V1 uses ResponseSender; V2 uses ApiResponse + ErrorDetail). |
|
| 36384 |
11 d 16 h |
amit |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/ |
GlobalExceptionHandler: handle DataIntegrityViolationException via DbErrorTranslator so MySQL truncation / duplicate / FK errors surface as HTTP 400 with a friendly ProfitMandiBusinessException payload (rendered by common.js badRequestAlert). |
|