take digits for sale price discounted calculation

This commit is contained in:
2023-01-03 08:41:33 +01:00
parent 34aaf6a329
commit 360ad99f0e
3 changed files with 6 additions and 6 deletions

View File

@@ -160,13 +160,13 @@ public class PriceListService {
if (discountTypeSelect == PriceListLineRepository.AMOUNT_TYPE_FIXED) { if (discountTypeSelect == PriceListLineRepository.AMOUNT_TYPE_FIXED) {
return unitPrice return unitPrice
.subtract(discountAmount) .subtract(discountAmount)
.setScale(appBaseService.getNbDecimalDigitForUnitPrice(), RoundingMode.HALF_UP); .setScale(5, RoundingMode.HALF_UP);
} else if (discountTypeSelect == PriceListLineRepository.AMOUNT_TYPE_PERCENT) { } else if (discountTypeSelect == PriceListLineRepository.AMOUNT_TYPE_PERCENT) {
return unitPrice return unitPrice
.multiply(new BigDecimal(100).subtract(discountAmount)) .multiply(new BigDecimal(100).subtract(discountAmount))
.divide( .divide(
new BigDecimal(100), new BigDecimal(100),
appBaseService.getNbDecimalDigitForUnitPrice(), 5,
RoundingMode.HALF_UP); RoundingMode.HALF_UP);
} }

View File

@@ -381,7 +381,7 @@ public class SaleOrderLineServiceImpl implements SaleOrderLineService {
return currencyService return currencyService
.getAmountCurrencyConvertedAtDate( .getAmountCurrencyConvertedAtDate(
product.getSaleCurrency(), saleOrder.getCurrency(), price, saleOrder.getCreationDate()) product.getSaleCurrency(), saleOrder.getCurrency(), price, saleOrder.getCreationDate())
.setScale(appSaleService.getNbDecimalDigitForUnitPrice(), RoundingMode.HALF_UP); .setScale(5, RoundingMode.HALF_UP);
} }
@Override @Override
@@ -450,7 +450,7 @@ public class SaleOrderLineServiceImpl implements SaleOrderLineService {
} }
if (priceIsAti) { if (priceIsAti) {
price = price.divide(taxLine.getValue().add(BigDecimal.ONE), 2, BigDecimal.ROUND_HALF_UP); price = price.divide(taxLine.getValue().add(BigDecimal.ONE), 5, BigDecimal.ROUND_HALF_UP);
} else { } else {
price = price.add(price.multiply(taxLine.getValue())); price = price.add(price.multiply(taxLine.getValue()));
} }

View File

@@ -376,7 +376,7 @@ public class SaleOrderStockServiceImpl implements SaleOrderStockService {
unit, unit,
saleOrderLine.getUnit(), saleOrderLine.getUnit(),
priceDiscounted, priceDiscounted,
appBaseService.getNbDecimalDigitForUnitPrice(), 5,
saleOrderLine.getProduct()); saleOrderLine.getProduct());
requestedReservedQty = requestedReservedQty =
unitConversionService.convert( unitConversionService.convert(
@@ -398,7 +398,7 @@ public class SaleOrderStockServiceImpl implements SaleOrderStockService {
.getCompanyExTaxTotal() .getCompanyExTaxTotal()
.divide( .divide(
saleOrderLine.getQty(), saleOrderLine.getQty(),
Beans.get(AppBaseService.class).getNbDecimalDigitForUnitPrice(), 5,
RoundingMode.HALF_EVEN); RoundingMode.HALF_EVEN);
} }