| 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++;
|