Subversion Repositories SmartDukaan

Rev

Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
37792 9 d 22 h amit /trunk/profitmandi-dao/src/ feat(cart): carry bag at Rs 1 per smartphone over Rs 12,000, extras at listing price

One carry bag (item 32046) is priced at Rs 1 for each smartphone (category
10006) in the cart selling above Rs 12,000; bags beyond that count are priced
at the carry bag's listing price, and Bronze partners pay listing for all.
Closes the leak where bag-only carts of hundreds of bags at Rs 1 were placed
from the old app. CarryBagQuote (via CartService.getCarryBagQuote) is the
single rule; the cart carries it as one line at a blended price.

- CartService/CartServiceImpl, CartResponse, OpenCartValidationResult: expose
the quote on the cart.
- OrderLineAllocator: an item may now have more than one cart line (the flat
and listing-priced parts); its units fill the lines in order.
- TransactionServiceImpl: item quantities merge instead of failing on a
duplicate item id.
- PurchaseServiceImpl: partner GRN creates one stock record per billed price;
the GRN screen shows the blended unit price; dead
createScannedNonSerializedItem removed.
- PurchaseReturnServiceImpl: debit-note PDF picks the order billed at the
returned stock's price; refundOrder spreads a non-serialized return over the
item's orders with room left (same price first) instead of loading it all
on the first order.

Tests: CarryBagQuoteTest 6/6, OrderLineAllocatorTest 13/13.
Deploy with profitmandi-web (same change) and the partner apps.
 
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CarryBagQuote.java
/trunk/profitmandi-dao/src/test/java/com/spice/profitmandi/dao/model/CarryBagQuoteTest.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/v2/OpenCartValidationResult.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CartResponse.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseReturnServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/PurchaseServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/OrderLineAllocator.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java
/trunk/profitmandi-dao/src/test/java/com/spice/profitmandi/service/transaction/OrderLineAllocatorTest.java
37143 75 d 21 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ Brand eligibility: unified blocked + LOI-ineligible enforcement — new BlockedBrandService; BrandsService restrictedBrands/applyRestrictedSolrExclusion/validateOrderableBrands; hard-validate at add-to-cart (fofoId-aware addItemsToCart) and bulk order; cart validation uses restricted union  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/catalog/BlockedBrandService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/catalog/BlockedBrandServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/catalog/BrandsService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/catalog/BrandsServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/BulkOrderService.java
35947 216 d 1 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/ Revert r35945: undo cart pessimistic locking (will re-apply after testing)  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CartRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CartRepositoryImpl.java
35945 216 d 2 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/ Add pessimistic locking to cart operations to prevent deadlocks; add updateCartItem, removeCartItem, getCartItems methods  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CartRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CartRepositoryImpl.java
35690 241 d 6 h amit /trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/ Optimize order creation performance: add overloaded focusedModelShortageValidation with pre-fetched data, add overloaded payThroughWallet and processTransaction to avoid duplicate fetches, fix N+1 queries in BulkOrderService by batch-fetching items and tagListings  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/BulkOrderService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/wallet/CommonPaymentService.java
33172 921 d 22 h tejus.lohani /trunk/ add bulk order service in admin dashboard  
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/model/BulkOrderModel.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/BulkOrderService.java
/trunk/profitmandi-fofo/src/main/webapp/WEB-INF/views/ftl/bulk_order.vm
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/util/ExcelUtils.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/catalog/ItemLoaderService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/wallet/WalletServiceImpl.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/config/AppConfig.java
/trunk/profitmandi-fofo/src/main/java/com/spice/profitmandi/web/controller/OrderController.java
/trunk/profitmandi-fofo/src/main/webapp/resources/js/placement-plan.js
29327 1834 d 2 h tejbeer /trunk/ change  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/ByPassRequestModel.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/FocusedShortageModel.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/user/StoreTimelineTatServiceImpl.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/CartController.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/OrderController.java
28653 1906 d 1 h amit.gupta /trunk/ Added Changes to order creation  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/transaction/Payment.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CartMessage.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/PaymentRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/PaymentRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/CartItem.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CartMessages.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CartItemRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CartItemRepositoryImpl.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/CodPaymentService.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/solr/SolrService.java
/trunk/profitmandi-common/src/main/java/com/spice/profitmandi/common/web/client/RestClient.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Item.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/catalog/Scheme.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/inventory/InventoryWarehouse.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/Cart.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CartItem.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CartItemResponseModel.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/model/CartResponse.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/inventory/SaholicInventorySnapshotRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/inventory/SaholicInventorySnapshotRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/inventory/WarehouseRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/inventory/WarehouseRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LineItemRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/LineItemRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/SellerRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/SellerRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/TransactionRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/transaction/TransactionRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/warehouse/BrandRegionMappingRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/SaholicInventoryService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/inventory/SaholicInventoryServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/transaction/TransactionServiceImpl.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/CartController.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/CommonPaymentService.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/OrderController.java
28166 2010 d 20 h tejbeer /trunk/ chnage  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/fofo/FofoStore.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/OrderService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/order/OrderServiceImpl.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/OrderController.java
26522 2372 d 19 h amit.gupta /trunk/  
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartItemMessage.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartItemModel.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartModel.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/cart/CartServiceImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/CartItem.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/LoginRequestResponseModel.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CartItemRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/CartItemRepositoryImpl.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/giftcoupon
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/giftcoupon/GiftCard.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/giftcoupon/GiftCouponController.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/res/CartItemMessages.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/entity/user/Cart.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/UserRepository.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/dao/repository/user/UserRepositoryImpl.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/user/RetailerService.java
/trunk/profitmandi-dao/src/main/java/com/spice/profitmandi/service/user/RetailerServiceImpl.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/config/WebMVCConfig.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/PayuHandler.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/controller/checkout/PayuPayResponseController.java
/trunk/profitmandi-web/src/main/java/com/spice/profitmandi/web/res/CartItems.java