Subversion Repositories SmartDukaan

Rev

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

Rev 30836 Rev 31326
Line 11... Line 11...
11
import java.util.Map;
11
import java.util.Map;
12
import java.util.Set;
12
import java.util.Set;
13
import java.util.Map.Entry;
13
import java.util.Map.Entry;
14
import java.util.stream.Collectors;
14
import java.util.stream.Collectors;
15
 
15
 
-
 
16
import com.spice.profitmandi.dao.entity.inventory.SaholicCISTable;
-
 
17
import com.spice.profitmandi.dao.enumuration.fofo.Milestone;
-
 
18
import com.spice.profitmandi.dao.repository.inventory.SaholicCISTableRepository;
16
import org.apache.logging.log4j.LogManager;
19
import org.apache.logging.log4j.LogManager;
17
import org.apache.logging.log4j.Logger;
20
import org.apache.logging.log4j.Logger;
18
import org.springframework.beans.factory.annotation.Autowired;
21
import org.springframework.beans.factory.annotation.Autowired;
19
import org.springframework.stereotype.Component;
22
import org.springframework.stereotype.Component;
20
 
23
 
Line 96... Line 99...
96
	@Autowired
99
	@Autowired
97
	private OrderRepository orderRepository;
100
	private OrderRepository orderRepository;
98
 
101
 
99
	@Autowired
102
	@Autowired
100
	private NotificationService notificationService;
103
	private NotificationService notificationService;
-
 
104
	@Autowired
-
 
105
	private SaholicCISTableRepository saholicCISTableRepository;
101
 
106
 
102
	@Override
107
	@Override
103
	// Unused method
108
	// Unused method
104
	public CartModel addToCart(int cartId, int itemId, int quantity, float sellingPrice) {
109
	public CartModel addToCart(int cartId, int itemId, int quantity, float sellingPrice) {
105
		CartLine cartItem = cartLineRepository.selectByCartItem(cartId, itemId);
110
		CartLine cartItem = cartLineRepository.selectByCartItem(cartId, itemId);
Line 406... Line 411...
406
					.stream().collect(Collectors.toMap(x -> x.getCatalogId(), x -> x.getMinimumQty()));
411
					.stream().collect(Collectors.toMap(x -> x.getCatalogId(), x -> x.getMinimumQty()));
407
		} else {
412
		} else {
408
			focusedModelMap = new HashMap<>();
413
			focusedModelMap = new HashMap<>();
409
		}
414
		}
410
 
415
 
411
		Map<Integer, List<SaholicCIS>> itemAvailabilityMap = saholicInventoryService.getSaholicStock()
-
 
412
				.get(fofoStore.getWarehouseId());
-
 
413
 
-
 
414
		Map<Integer, Integer> catalogItemAailabilityMap = new HashMap<>();
416
		Map<Integer, Integer> catalogItemAailabilityMap = new HashMap<>();
415
 
417
 
416
		for (Entry<Integer, Integer> fm : focusedModelMap.entrySet()) {
418
		for (Entry<Integer, Integer> fm : focusedModelMap.entrySet()) {
417
 
-
 
418
			List<Item> items = itemRepository.selectAllByCatalogItemId(fm.getKey());
419
			List<Item> items = itemRepository.selectAllByCatalogItemId(fm.getKey());
419
 
-
 
420
			int allColorNetAvailability = 0;
420
			int allColorNetAvailability = 0;
421
			for (Item item : items) {
421
			for (Item item : items) {
422
				if (retailerBlockBrands.contains(item.getBrand()))
422
				if (retailerBlockBrands.contains(item.getBrand()))
423
					continue;
423
					continue;
424
				List<SaholicCIS> currentAvailability = itemAvailabilityMap.get(item.getId());
424
				List<SaholicCISTable> currentAvailability = saholicCISTableRepository.selectByItemWarehouse(item.getId(), fofoStore.getWarehouseId());
425
 
425
 
426
				if (currentAvailability != null) {
426
				if (currentAvailability != null) {
427
					allColorNetAvailability += currentAvailability.stream()
427
					allColorNetAvailability += currentAvailability.stream()
428
							.collect(Collectors.summingInt(SaholicCIS::getNetavailability));
428
							.collect(Collectors.summingInt(SaholicCISTable::getNetAvailability));
429
				}
429
				}
430
			}
430
			}
431
 
-
 
432
			catalogItemAailabilityMap.put(fm.getKey(), allColorNetAvailability);
431
			catalogItemAailabilityMap.put(fm.getKey(), allColorNetAvailability);
433
 
-
 
434
		}
432
		}
435
 
433
 
436
		List<FocusedShortageModel> focusedModelShortageList = new ArrayList<>();
434
		List<FocusedShortageModel> focusedModelShortageList = new ArrayList<>();
437
 
435
 
438
		for (Entry<Integer, Integer> fm : focusedModelMap.entrySet()) {
436
		for (Entry<Integer, Integer> fm : focusedModelMap.entrySet()) {
Line 509... Line 507...
509
 
507
 
510
				Map<Integer, Integer> itemQtyMap = new HashMap<>();
508
				Map<Integer, Integer> itemQtyMap = new HashMap<>();
511
 
509
 
512
				for (Item i : it) {
510
				for (Item i : it) {
513
 
511
 
514
					List<SaholicCIS> ca = itemAvailabilityMap.get(i.getId());
512
					List<SaholicCISTable> ca = saholicCISTableRepository.selectByItemWarehouse(i.getId(), fofoStore.getWarehouseId());
515
 
-
 
516
					if (ca != null) {
513
					if (ca != null) {
517
 
-
 
518
						itemQtyMap.put(i.getId(),
514
						itemQtyMap.put(i.getId(),
519
								ca.stream().collect(Collectors.summingInt(SaholicCIS::getNetavailability)));
515
								ca.stream().collect(Collectors.summingInt(SaholicCISTable::getNetAvailability)));
520
					}
516
					}
521
				}
517
				}
522
 
518
 
523
				itemQtyMap = itemQtyMap.entrySet().stream()
519
				itemQtyMap = itemQtyMap.entrySet().stream()
524
						.sorted(Collections.reverseOrder(Map.Entry.comparingByValue())).collect(Collectors
520
						.sorted(Collections.reverseOrder(Map.Entry.comparingByValue())).collect(Collectors