| Line 684... |
Line 684... |
| 684 |
float totalTaxRate = 0;
|
684 |
float totalTaxRate = 0;
|
| 685 |
for (Scheme scheme : supportSchemes) {
|
685 |
for (Scheme scheme : supportSchemes) {
|
| 686 |
if (scheme.isBasePlusGstCalc()) {
|
686 |
if (scheme.isBasePlusGstCalc()) {
|
| 687 |
totalTaxRate = stateGstRateRepository.getTotalTaxRate(inventoryItem.getItemId());
|
687 |
totalTaxRate = stateGstRateRepository.getTotalTaxRate(inventoryItem.getItemId());
|
| 688 |
}
|
688 |
}
|
| 689 |
float amountToCredit = scheme.getAmount() * (1 - totalMargin / (100 + totalTaxRate));
|
689 |
float amountToCredit = scheme.getAmount() * (1 - (totalMargin / (100 + totalTaxRate)));
|
| 690 |
List<SchemeInOut> schemeInOuts = schemeInOutRepository.selectByScheme(scheme.getId(), inventoryItem.getId());
|
690 |
List<SchemeInOut> schemeInOuts = schemeInOutRepository.selectByScheme(scheme.getId(), inventoryItem.getId());
|
| 691 |
SchemeInOut schemeInOut = schemeInOuts.stream().filter(x -> x.getRolledBackTimestamp() == null).findFirst().orElse(null);
|
691 |
SchemeInOut schemeInOut = schemeInOuts.stream().filter(x -> x.getRolledBackTimestamp() == null).findFirst().orElse(null);
|
| 692 |
if (schemeInOut == null) {
|
692 |
if (schemeInOut == null) {
|
| 693 |
schemeInOut = new SchemeInOut();
|
693 |
schemeInOut = new SchemeInOut();
|
| 694 |
schemeInOut.setSchemeId(scheme.getId());
|
694 |
schemeInOut.setSchemeId(scheme.getId());
|