| Rev |
Age |
Author |
Path |
Log message |
Diff |
| 37676 |
3 d 14 h |
ranu |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
v2 version some fixes |
|
| 37666 |
4 d 11 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
Hot Deal brand: /fofo/hotDeals/brands accepts categoryId, so the brand chips match the active tab |
|
| 37657 |
4 d 12 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
Remove Mandii checkout, status and callback paths (r37655)
OrderController: the paymentOption MANDII branch and createMandiiOrder are
gone. GatewayController: the MANDII branch of payment/gateway/status is gone;
the SDDIRECT branch it sat in front of is untouched and still returns
AccountStatusResponseOut.
API endpoints removed, all of them Mandii-only:
- /cart/payment (CartController + its V2CartController delegate) existed
solely to poll Mandii for an order status and credit the wallet. It called
mandiiService unconditionally, so it already failed for any other gateway.
- /mandii, the payment-notification callback, a no-op logging stub in both
HdfcPaymentController and V2FofoHdfcPaymentController, and dropped from the
WebConfig auth whitelist in the fofo commit.
V2 twins touched only where they would otherwise keep a dead route alive or
fail to compile. |
|
| 37649 |
4 d 20 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
Retire user.counter / user.privatedealuser write path (web)
createRetailer no longer creates a Counter, PrivateDealUser or address mapping; the
non-found branch keeps only the saholic-user address write it also did. Pairs with
dao r37648. |
|
| 37641 |
5 d 12 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
Hot Deal brand: badge from brand, /fofo/hotDeals/brands facet, real availability on every listing, drop legacy hot-deals pause endpoints |
|
| 37629 |
5 d 16 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
feat(mail): wire inactive-recipient filter and clean hardcoded addresses
Wire MailRecipientFilter into googleMailSender and gmailRelaySender. Remove inactive/unknown addresses from recipient and access lists, fix typo addresses, bulk uploader gate to akhil.kumar, V2 brand fee gate to kamini.sharma. |
|
| 37547 |
11 d 18 h |
ranu |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
v2 switch version fixes on server side |
|
| 37490 |
19 d 17 h |
amit |
/trunk/ |
errors: separate business, integration and bug -- three failures logged three ways
Everything was logged identically: ERROR, titled 'Internal Server Error', and in
web stack-traced twice (log4j2 plus printStackTrace, the second copy landing in
catalina.out). A partner mistyping an IMEI produced the same output as a
NullPointerException.
That makes the error stream unalertable. Measured over six hours across web and
fofo: 909 ERROR lines, of which 294 (32%) were ProfitMandiBusinessException --
HTTP 400s where the user is simply told what to fix. Any rule on ERROR rate
fires constantly, and an error tracker would rank 'insufficient balance' as the
top issue.
business WARN, no stack trace, 4xx -- expected, user-correctable
integration ERROR + dependency name -- ours is fine, theirs is not
anything else ERROR + stack trace, 500 -- a bug
New IntegrationException carries getDependency(), so two hundred failures of one
gateway group as one problem rather than two hundred unrelated traces. That
category did not exist: such failures were previously either a bare Exception
(indistinguishable from our own bug) or a business exception (which wrongly
blames the user).
printStackTrace removed from the web handler -- it was writing a second copy of
every trace to catalina.out.
Prerequisite for wiring the GlitchTip appender, which must not be attached until
ERROR means something. |
|
| 37415 |
25 d 16 h |
vikas |
/trunk/ |
Whatsapp Apis |
|
| 37412 |
25 d 16 h |
vikas |
/trunk/profitmandi-web/src/main/ |
Whatsapp Apis |
|
| 37404 |
26 d 7 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
Serve the canonical state list from inventory.statemaster
Add GET /master-data/states returning each state's name and GST state code.
Clients were each carrying their own hardcoded state list, which drifted from the
master. Anything we store is later resolved back through that master by name, so a
drifted list writes values nothing can resolve - which is how customer addresses
ended up with states like 'Daman & Diu' that the master no longer holds, leaving
those invoices unable to generate. Serving the list means a correction to the
master reaches every client without a release. |
|
| 37399 |
26 d 9 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
Use the shared insurance invoice line builder for standalone policy invoices
Replace the duplicated CustomInsurancePolicy block with InsuranceInvoiceLine.
Drop the setTotalAmount call - the renderer derives totals from the item lines,
so the value was never read - and the repository field it orphaned.
Derive and set the invoice state codes, as the partner invoice already does, so
the place of supply prints when billing a registered buyer. |
|
| 37388 |
27 d 13 h |
vikas |
/trunk/ |
Whatsapp Apis |
|
| 37381 |
30 d 11 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
Guard empty item IN () and null billing address on the app sale-details paths
Mirrors fofo r37380 on the profitmandi-web side, where the same two defects exist.
V2FofoOrderController (live mobile-app API, not the dormant fofo V2):
- sale details built itemIds from fofoOrderItems and passed them straight to
itemRepository.selectByIds. An insurance-only sale has no fofo_order_item row,
so the list is empty and selectAllByInOrderByDesc throws "List should not be
empty". The sibling sale-search method in this same file was already guarded;
the detail method was not.
- customerBillingAddressObj was put into the response unconditionally, so an
order with customerAddressId 0 (no address is required for a plain POS sale)
returned null and the app had no name or phone to show. Fall back to the
customer's own name and mobile, matching the invoice PDF. Applied at both sites.
CustomerController: same empty-IN exposure in the customer order-history batch
fetch, where a customer whose only order is an insurance sale yields no order
items. Adds the java.util.HashMap import this file needed (it imports java.util
members individually).
Verified profitmandi-web compiles clean with these changes. Note trunk currently
does NOT build: V2FofoPurchaseReturnController:635 still calls the 4-arg
selectByWarehouseIdsAndDateRange that r37377 widened to 5 args (r37378 updated
the fofo caller but not this one). That break is untouched here and needs its
own fix before a web war can be built. |
|
| 37354 |
32 d 16 h |
aman |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
AI lead intake: pool is BGC L1 (category 20), not Sales L1 - BGC is the desk that works AI leads |
|
| 37353 |
32 d 16 h |
aman |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
AI lead intake: assign new leads to a random active Sales L1 instead of fixed auth id 53 |
|
| 37318 |
37 d 14 h |
ranu |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/ |
v2 version some fixes |
|
| 37298 |
39 d 7 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
Default subCategoryId to 0 on endpoints that declare it required=false
subCategoryId is a primitive int, so a required=false declaration with no
defaultValue makes Spring throw when the param is omitted:
Optional int parameter 'subCategoryId' is present but cannot be translated
into a null value due to being declared as a primitive type.
v1 DealsController and GuestController already default it to 0; their v2
wrappers dropped that, and StoreController never had it on either version. Any
caller omitting the param got a 500 with a message that does not name the
parameter at fault.
Adding the default only removes that failure path — every currently working
caller already sends a value, so no existing behaviour changes. |
|
| 37267 |
42 d 11 h |
ranu |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/ |
v2 version some fixes |
|
| 37260 |
45 d 2 h |
amit |
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/ |
Hot deals API: fix /fofo 500 when subCategoryId omitted (primitive int + required=false cannot bind null; defaultValue 0, same in GuestController); /fofo/hotDeals/categories facet endpoint for filter chips; hotDeal listing honors explicit categoryId only (cross-category default); enrichment pills - constant names with hd-yes/hd-no + hd-good/hd-off state classes, not-activated is the green state |
|