| Rev |
Age |
Author |
Path |
Log message |
Diff |
| 38012 |
7 h 45 m |
amit |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ |
fix(finance): list only active payment options on finance-service screens
Finance-service setup, grids, add-brand dropdown, partner payment-option page and
paper-finance lists (LOI form, WOD mapping report) used selectAll(), ignoring
payment_option.active. Switched-off options kept showing, and every finance-services
page open created a PENDING partner_service row for them (IDFC id 21, inactive since
2022, had 1,786). New PaymentOptionRepository.selectAllActive(); selectAllPaperFinanceOption
is active-only. Name lookups for existing payments/invoices still use selectAll().
Services created from the UI are now saved active (were saved active=0). |
|
| 38011 |
9 h 29 m |
amit |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/ |
fix(credit-note): margin CN dry run must not consume CN/DN numbers or lock sellerwarehouse
The 06:00-on-1st monthlyMarginsCnDryRun (dryRun=true) bumped cn_sequence / fofo_dn_sequence for
every document it would issue and committed them, so each live run started after a burned block:
every gap Jul-Nov 2026 equals that month's live margin CN count per prefix (e.g. CN-NSDL13802..13976
never issued for Oct). It also held the sellerwarehouse rows billing locks.
- issueMarginsCNForPartner marks its REQUIRES_NEW transaction rollback-only when !runActual.
- Dry run reads sellerwarehouse without FOR UPDATE; live keeps selectByPrefixForUpdate. |
|
| 38010 |
9 h 55 m |
amit |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/ |
fix(onboarding): retire previous brand commitments when a revival LOI completes
A revival LOI completes on the store's original onboarding panel and its brand
commitments are attached to that panel, but the original LOI's commitments stayed
attached too. The panel then had two rows per re-committed brand and kept dropped
brands as committed, which broke /partnerDealerSubmit (toMap duplicate key) and
selectBrandCommitmentByOnboardingIdAndBrand (NonUniqueResult), and showed wrong
brands on the WOD finance mapping report.
createPartnerOnboardingPanel now deactivates and detaches (onBoardingId=0) every
other commitment on the panel before attaching the revival LOI's rows; loiId keeps
them tied to their own LOI. Adds LoiBrandCommitmentRepository.selectAllByOnboardingId.
Existing data (PBFZK1322, PBSMS1240, HRMWT1158) fixed by separate SQL. |
|
| 38009 |
1 d 10 h |
amit |
/trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/ |
chore(cron): drop CLI flags for removed one-time margin CN/DN remediation
Removes --corrMarginCNs, --genDNs, --genDNsForCNs, --cancelMarginDnIrns, --regenMarginIrns and
their ScheduledTasks wrappers; the CreditNoteService methods behind them were deleted in dao. |
|
| 38008 |
1 d 10 h |
ranu |
/trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ |
diwali offer live |
|
| 38007 |
1 d 12 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/ |
diwali offer live |
|
| 38006 |
1 d 12 h |
ranu |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/ |
diwali online scratch offer, otp send to email |
|
| 38005 |
2 d 6 h |
amit |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ |
fix(credit-note): commit monthly margin CN run per partner; drop one-time CN/DN remediation
issueMonthlyMarginsCN ran as one transaction for the whole month (2026-11-04: 51 min, 1,441 docs,
a NIC IRN call per doc inside it). The cn_sequence/fofo_dn_sequence bump X-locked every
sellerwarehouse row it touched until commit, so billing's getInvoiceNumber (SELECT ... FOR UPDATE
on the same row) hit innodb_lock_wait_timeout.
- issueMonthlyMarginsCN is now a NOT_SUPPORTED orchestrator: loadMarginRunInput (REQUIRES_NEW
readOnly) -> issueMarginsCNForPartner per fofo (REQUIRES_NEW) -> queueMarginRunReports
(REQUIRES_NEW). Per-partner body unchanged; the partner mail stays in the partner txn.
- sellerwarehouse is read with new SellerWarehouseRepository.selectByPrefixForUpdate (the lock
billing takes) and prefixes are processed in sorted order.
- Removed one-time remediation tools, no live callers: issueCorrectiveMarginCNs (never ran live),
generateDebitNotesForCancelled x2 + processSingleCancelledCnTx (last ran 2026-05-09),
cancelMarginDnIrns + cancelSingleMarginDn, regenerateMarginIrns; repo
selectCancelledByMonth / selectByCreditNoteNumbers. |
|
| 38004 |
2 d 7 h |
amit |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/ |
perf(onboarding): drop unused joins from WOD finance mapping report query
PartnerOnBoardingPanel.selectWodFinMapping joined store_timeline,
fofo_partner_payment_option and partner_service without selecting or filtering
on them. They only duplicated rows (12,895 -> 12,246 on the prod copy), which the
/wodFinMappingReport controller discarded via toMap keep-first. Page output is
identical (634 partners, 0 cell diffs). Pairs with index
partner_dealer_mapping(onboarding_id, brand) for the remaining full scan. |
|
| 38003 |
2 d 12 h |
vikas |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
Filtered Active + Internal fofo stores |
|
| 38002 |
2 d 13 h |
vikas |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
Filtered Active + Internal fofo stores |
|
| 38001 |
2 d 22 h |
ranu |
/trunk/profitmandi-fofo/src/main/ |
diwali offer live |
|
| 38000 |
2 d 22 h |
ranu |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/scratch/ |
diwali online scratch offer, otp send to email |
|
| 37999 |
2 d 23 h |
ranu |
/trunk/profitmandi-fofo/src/main/ |
diwali offer live |
|
| 37998 |
2 d 23 h |
ranu |
/trunk/ |
diwali online scratch offer, otp send to email |
|
| 37997 |
3 d 7 h |
amit |
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/ |
fix(mail): rotate sdtech@smartdukaan.com Gmail app password
Old app password rejected with 535-5.7.8 BadCredentials since 2026-11-02 04:00;
all googleMailSender (smtp.gmail.com:465) mail failing. New password verified
(AUTH 235 Accepted) from the prod app server. |
|
| 37996 |
3 d 7 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/config/ |
fix(mail): rotate sdtech@smartdukaan.com Gmail app password
Old app password rejected with 535-5.7.8 BadCredentials since 2026-11-02 04:00;
all googleMailSender (smtp.gmail.com:465) mail failing. New password verified
(AUTH 235 Accepted) from the prod app server. |
|
| 37995 |
3 d 7 h |
amit |
/trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/ |
fix(mail): rotate sdtech@smartdukaan.com Gmail app password
Old app password rejected with 535-5.7.8 BadCredentials since 2026-11-02 04:00;
all googleMailSender (smtp.gmail.com:465) mail failing. New password verified
(AUTH 235 Accepted) from the prod app server. |
|
| 37994 |
3 d 10 h |
amit |
/trunk/profitmandi-cron/src/main/java/com/smartdukaan/cron/scheduled/ |
fix(credit-limit): settled SIDBI partner falls back to investment-based limit
A SIDBI partner with no unsettled sanction got a suggested limit of 0; it now gets the normal
investment-based limit, with the SIDBI unsettled amount as a floor only while a sanction is open. |
|
| 37993 |
3 d 10 h |
amit |
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/ |
fix(sidbi): extend principal deduction schedule to 48 months and sum it correctly
Monthly SIDBI deductions crashed with IndexOutOfBounds once a sanction passed month 24, rolling back
the whole run (settled_amount frozen since 5 Apr 2026). Months 1-24 are kept; the remaining principal
is re-amortised over months 25-48 at 18% p.a. Deduction is now the running sum of months repaid
(was N x month-N value, which over-settled), and from month 48 the full loan is settled so settled_on is set. |
|