Subversion Repositories SmartDukaan

Rev

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

Rev 25049 Rev 25050
Line 673... Line 673...
673
					e.printStackTrace();
673
					e.printStackTrace();
674
				}
674
				}
675
			}
675
			}
676
			taxableSellingPrice = dpForCalc / (1 + totalTaxRate / 100);
676
			taxableSellingPrice = dpForCalc / (1 + totalTaxRate / 100);
677
			amount = taxableSellingPrice * scheme.getAmount() / 100;
677
			amount = taxableSellingPrice * scheme.getAmount() / 100;
678
			System.out.println(String.format(
-
 
679
					"%d\t%s\t%d\t%d\t%s\t%s\t%s\t%f\t%f\t%f",
678
			System.out.println(String.format("%d\t%s\t%d\t%d\t%s\t%s\t%s\t%f\t%f\t%f", inventoryItem.getId(),
680
					inventoryItem.getId(), inventoryItem.getSerialNumber(), inventoryItem.getItemId(), scheme.getId(),
679
					inventoryItem.getSerialNumber(), inventoryItem.getItemId(), scheme.getId(), scheme.getName(),
681
					scheme.getName(), scheme.getType(), scheme.getAmountType(), dpForCalc, taxableSellingPrice,
680
					scheme.getType(), scheme.getAmountType(), dpForCalc, taxableSellingPrice, amount));
682
					amount));
-
 
683
		} else {
681
		} else {
684
			/*
682
			/*
685
			 * List<SchemeInOut> sios = schemeInOutRepository.selectByInventoryItemIds(new
683
			 * List<SchemeInOut> sios = schemeInOutRepository.selectByInventoryItemIds(new
686
			 * HashSet<>(Arrays.asList(inventoryItem.getId()))); List<Integer> schemeIds =
684
			 * HashSet<>(Arrays.asList(inventoryItem.getId()))); List<Integer> schemeIds =
687
			 * sios.stream().filter(x->x.getSchemeType().equals(SchemeType.IN)).map(x->x.
685
			 * sios.stream().filter(x->x.getSchemeType().equals(SchemeType.IN)).map(x->x.
688
			 * getSchemeId()).collect(Collectors.toList()); List<Scheme> schemes =
686
			 * getSchemeId()).collect(Collectors.toList()); List<Scheme> schemes =
689
			 * schemeRepository.selectBySchemeIds(schemeIds, 0, 0); if(schemes.
687
			 * schemeRepository.selectBySchemeIds(schemeIds, 0, 0); if(schemes.
690
			 */
688
			 */
691
			amount = scheme.getAmount();
689
			amount = scheme.getAmount();
692
			System.out.println(String.format(
-
 
693
					"%d\t%s\t%d\t%d\t%s\t%s\t%s\t%f\t%f\t%f",
690
			System.out.println(String.format("%d\t%s\t%d\t%d\t%s\t%s\t%s\t%f\t%f\t%f", inventoryItem.getId(),
694
					inventoryItem.getId(), inventoryItem.getSerialNumber(), inventoryItem.getItemId(), scheme.getId(),
691
					inventoryItem.getSerialNumber(), inventoryItem.getItemId(), scheme.getId(), scheme.getName(),
695
					scheme.getName(), scheme.getType(), scheme.getAmountType(), dpForCalc, taxableSellingPrice,
692
					scheme.getType(), scheme.getAmountType(), dpForCalc, taxableSellingPrice, amount));
696
					amount));
-
 
697
		}
693
		}
698
 
694
 
699
		return amount;
695
		return amount;
700
	}
696
	}
701
 
697
 
Line 715... Line 711...
715
		}
711
		}
716
 
712
 
717
		float totalCashback = 0;
713
		float totalCashback = 0;
718
		int count = 0;
714
		int count = 0;
719
 
715
 
-
 
716
		List<Scheme> allFixedSchemes = schemeRepository.selectActiveAll(SchemeType.OUT, fofoOrder.getCreateTimestamp())
-
 
717
				.stream().filter(scheme -> scheme.getAmountType().equals(AmountType.FIXED))
-
 
718
				.collect(Collectors.toList());
-
 
719
 
720
		for (InventoryItem inventoryItem : inventoryItems) {
720
		for (InventoryItem inventoryItem : inventoryItems) {
721
			int itemCashback = 0;
721
			int itemCashback = 0;
722
			Purchase purchase = purchaseRepository.selectByIdAndFofoId(inventoryItem.getPurchaseId(), retailerId);
722
			Purchase purchase = purchaseRepository.selectByIdAndFofoId(inventoryItem.getPurchaseId(), retailerId);
723
			Set<Integer> schemeIds = new HashSet<>(
723
			Set<Integer> schemeIds = new HashSet<>(
724
					schemeItemRepository.selectSchemeIdByItemId(inventoryItem.getItemId()));
724
					schemeItemRepository.selectSchemeIdByItemId(inventoryItem.getItemId()));
725
			List<Scheme> schemes = schemeRepository.selectActiveAll(SchemeType.OUT, purchase.getCompleteTimestamp())
725
			List<Scheme> schemes = schemeRepository.selectActiveAll(SchemeType.OUT, purchase.getCompleteTimestamp())
726
					.stream().filter(x -> schemeIds.contains(x.getId())).collect(Collectors.toList());
726
					.stream().filter(x->x.getAmountType().equals(AmountType.PERCENTAGE)).collect(Collectors.toList());
-
 
727
			schemes.addAll(allFixedSchemes);
-
 
728
			schemes.stream()
-
 
729
				.filter(x -> schemeIds.contains(x.getId()))
-
 
730
				.collect(Collectors.toList());
727
			for (Scheme scheme : schemes) {
731
			for (Scheme scheme : schemes) {
728
				itemCashback += this.createSchemeInOut(scheme, inventoryItem);
732
				itemCashback += this.createSchemeInOut(scheme, inventoryItem);
729
			}
733
			}
730
			if (itemCashback > 0) {
734
			if (itemCashback > 0) {
731
				count++;
735
				count++;