Subversion Repositories SmartDukaan

Rev

Rev 31773 | Rev 31783 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 31773 Rev 31781
Line 295... Line 295...
295
        logger.info("cart items {}", cartItems);
295
        logger.info("cart items {}", cartItems);
296
        cartItems = cartItems.stream().filter(x -> x.getQuantity() > 0).collect(Collectors.toList());
296
        cartItems = cartItems.stream().filter(x -> x.getQuantity() > 0).collect(Collectors.toList());
297
        Map<Integer, Integer> itemQuantityMap = cartItems.stream()
297
        Map<Integer, Integer> itemQuantityMap = cartItems.stream()
298
                .collect(Collectors.toMap(x -> x.getItemId(), x -> x.getQuantity()));
298
                .collect(Collectors.toMap(x -> x.getItemId(), x -> x.getQuantity()));
299
        List<CartLine> cartLines = cartLineRepository.selectAllByCart(cartId);
299
        List<CartLine> cartLines = cartLineRepository.selectAllByCart(cartId);
-
 
300
        Map<Integer, CartLine> itemCartLineMap = cartLines.stream().collect(Collectors.toMap(x->x.getItemId(), x->x));
300
        // Delete cartLines with 0 values
301
        // Delete cartLines with 0 values
301
        for (CartLine cartLine : cartLines) {
302
        for (CartLine cartLine : cartLines) {
302
            Integer quantity = itemQuantityMap.get(cartLine.getItemId());
303
            Integer quantity = itemQuantityMap.get(cartLine.getItemId());
303
            if (quantity == null || quantity.intValue() == 0) {
304
            if (quantity == null || quantity.intValue() == 0) {
304
                cartLineRepository.delete(cartLine);
305
                cartLineRepository.delete(cartLine);
Line 306... Line 307...
306
                cartLine.setQuantity(itemQuantityMap.get(cartLine.getItemId()));
307
                cartLine.setQuantity(itemQuantityMap.get(cartLine.getItemId()));
307
                cartLine.setUpdateTimestapm(LocalDateTime.now());
308
                cartLine.setUpdateTimestapm(LocalDateTime.now());
308
            }
309
            }
309
        }
310
        }
310
        for (CartItem cartItem : cartItems) {
311
        for (CartItem cartItem : cartItems) {
311
            if (cartLineRepository.selectByCartItem(cartId, cartItem.getItemId()) == null) {
312
            if (!itemCartLineMap.containsKey(cartItem.getItemId())) {
312
                CartLine cartLineNew = new CartLine();
313
                CartLine cartLineNew = new CartLine();
313
                cartLineNew.setItemId(cartItem.getItemId());
314
                cartLineNew.setItemId(cartItem.getItemId());
314
                cartLineNew.setQuantity(cartItem.getQuantity());
315
                cartLineNew.setQuantity(cartItem.getQuantity());
315
                cartLineNew.setCartId(cartId);
316
                cartLineNew.setCartId(cartId);
316
                cartLineNew.setCreateTimestamp(LocalDateTime.now());
317
                cartLineNew.setCreateTimestamp(LocalDateTime.now());