Subversion Repositories SmartDukaan

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
38034 17 m amit /trunk/profitmandi-fofo/src/main/ fix(wod): prefill one store address; add full-name source

- Address fields use the partner's default address (user.user.default_address_id) instead of the newest
user.address row (differed for 379 active stores); LOI billing address as fallback.
- Address text no longer repeats city/state already present in line 2.
- New prefill sources Store.address and LoiForm.fullName (first + last); PartnerOnBoardingPanel.address
kept as an alias until templates are migrated.
- Stop writing partner_onboarding_panel.address from the edit and design-TAT saves (payloads never sent it).
 
38033 17 m amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/ fix(onboarding): remove unused PartnerOnBoardingPanel.address mapping

Column never held data (0 of 2,026 rows). Store address single source = user default address,
LOI billing address as fallback. Column drop: claude-data/sql-migrations/wod_store_address_single_source_20261114.sql
(run after deploy).
 
38032 17 m amit /trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/ fix(onboarding): drop dead address field from panel request models

CreatePartnerOnBoardingPanel / CreatePartnerOnBoardingDesignTat carried an address no form ever sent;
the edit and design-TAT saves copied that null onto partner_onboarding_panel.address.
 
38031 31 m amit /trunk/profitmandi-dao/src/ Phase 0 partner-app tracking: JWTUtil reads staff claims (authUserId/email/launchId) without impersonation flag; user_action_audit entity + ActionAuditService (no callers yet)  
38030 32 m amit /trunk/profitmandi-common/src/ Phase 0 partner-app tracking: Actor/ClientInfo models, UserInfo.launchId, LAUNCH_ID claim constant (no callers yet)  
38029 16 h 10 m amit /trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/ fix(credit): Credit Details status filter emptied after revisiting the page; shorter cleared label

- The page fragment is re-injected on every visit and each load pushed another DataTables search function
bound to that load's table; stale copies AND-filtered rows away (e.g. 'Loan Default - cleared' showed nothing
for partners who repaid after an earlier visit). Remove the earlier copy before adding, and read the row from
the table being drawn (settings.aoData) instead of a captured instance.
- Green line now reads just 'Default cleared.'
 
38028 17 h 1 m amit /trunk/profitmandi-fofo/src/main/ fix(credit): clearer Loan Default messaging on Credit Details

- Block reason shown grey as history: 'Blocked <date> by <who>: <reason>'
- Loan Default with no defaulted dues shows green 'Default cleared. Can be unblocked.'
- Amber 'Also overdue: <amount> on N loan(s), becomes default on <date>' for loans past due but not yet defaulted
- Filter option renamed 'Loan Default - cleared'
Needs dao r38027.
 
38027 17 h 1 m amit /trunk/profitmandi-dao/src/ feat(credit): overdue (not yet defaulted) dues for the Credit Details screen

- SDCreditService.getOverdueDuesByFofo: principal + interest on Loan.isOverdue loans, with the earliest default date
- LoanDefaultDues carries defaultsOn; dues calculation shared between defaulted and overdue loans
- Tests for overdue amount and default date
 
38026 17 h 25 m amit /trunk/profitmandi-fofo/src/main/ feat(credit): Credit Details status filter, block reason and default dues

- Status filter on /getCreditDetail (Active, Loan Default, Loan Default - nothing due, Blocked, Awaiting Activation)
- Latest block reason under the inactive label
- LOAN_DEFAULT rows show in red the principal + interest needed to close defaulted loans; nothing when 0
- Row redraw after block/unblock/activate carries the same details
Needs dao r38025.
 
38025 17 h 25 m amit /trunk/profitmandi-dao/src/ feat(credit): default dues and latest block reason for the Credit Details screen

- SDCreditService.getDefaultDuesByFofo: principal + interest needed to close every defaulted loan
(same isDefault() set as the LOAN_DEFAULT block; total from loan_statement as settleLoan reads it)
- SDCreditService.getLatestBlockLogs + CreditBlockLogRepository.selectByFofoIds (bulk, typed HQL)
- LoanDefaultDues model; SDCreditServiceDefaultDuesTest
 
38024 21 h 55 m amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/ fix(cart): drop delisted or missing items from cart in getCartValidation

A line whose item is missing or whose tag_listing is inactive (active=0) is now
removed from the cart and reported as a PRODUCT_UNAVAILABLE cart message, so
createOrder (which rejects on any cart message) no longer bills a delisted item.
Runs before the carry bag allowance so removed phones earn no free bags.
Stock and the 400 max-qty cap are unchanged.
 
38023 22 h 9 m ranu /trunk/profitmandi-fofo/src/main/ visit history given on brand wise placement page  
38022 1 d 15 h ranu /trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/ call history given on brand wise placement page  
38021 1 d 15 h ranu /trunk/ call history given on brand wise placement page  
38020 1 d 19 h ranu /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/ diwali offer live  
38019 2 d 18 h ranu /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/ diwali offer live  
38018 5 d 18 h ranu /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/service/ diwali online scratch offer, otp send to email  
38017 6 d 10 h amit /trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/v2/controller/fofo/ Hide switched-off payment options in partner app (web v2)

/v2/fofo/getPartnerServices listed every payment option and created a PENDING
partner_service row for each one missing, so switched-off IDFC (21) kept coming
back after r38012/r38013. Use selectAllActive there and in /userProfile, matching
the fofo screens.
 
38016 6 d 15 h amit /trunk/profitmandi-fofo/src/main/ Hot Deals admin UI rework + Brand Identifier CSV upload (needs dao r38015)

Hot Deals (Catalog > Hot Deals):
- every Hot Deal model listed, incl. ones with no attributes saved; stat cards + Needs attention filter
- OEM brand dropdown (form + per row), pre-filled from model name, required on save
- row save keeps the OEM model mapping; Clear button; Updated By column

Content page: Brand Identifier CSV (itemId,brandIdentifier) -> catalog.item.brand_identifier
- POST /catalog/brandIdentifier/upload?apply= : preview (NEW/REPLACE/UNCHANGED/ERROR) then apply; replaces existing values
- all-or-nothing; rejects unknown/duplicate items, blank or >100 chars, Hot Deal and Any Colour items; max 5000 rows
- GET /catalog/brandIdentifier/template.csv

jsVersion 453
 
38015 6 d 15 h amit /trunk/profitmandi-dao/src/ Hot Deals admin: list every Hot Deal model (incl. ones with no attributes row), needs-attention filter + stats, and OEM brand set on save

- ModelHotDealRepository: list/count driven from Catalog (brand = Hot Deal) LEFT JOIN model_hot_deal; needsAttentionOnly = no row or NULL oem_brand; countStats()
- ModelHotDealService: saveAttributes takes oemBrand (requested > stored > suggested from catalog.model_name); must be a brand master name, never Hot Deal; stored in master spelling. Root cause of Ai+ models missing from the partner-app brand filter (NULL oem_brand -> no oem_brand_s in Solr)
- oemBrandNames(), suggestOemBrand(), stats()
- ModelHotDeal: transient suggestedOemBrand, isSaved()
- Tests: 18 passing
 

Show All