break out currency information on its own, using use values for loan product amount and inArrearsTolerance.
This commit is contained in:
@@ -19,8 +19,9 @@ public class LoanProductData {
|
|||||||
private Long transactionProcessingStrategyId;
|
private Long transactionProcessingStrategyId;
|
||||||
private String transactionProcessingStrategyName;
|
private String transactionProcessingStrategyName;
|
||||||
|
|
||||||
private MoneyData principal;
|
private CurrencyData currency;
|
||||||
private MoneyData inArrearsTolerance;
|
private BigDecimal principal;
|
||||||
|
private BigDecimal inArrearsTolerance;
|
||||||
|
|
||||||
private Integer numberOfRepayments;
|
private Integer numberOfRepayments;
|
||||||
private Integer loanTermFrequency;
|
private Integer loanTermFrequency;
|
||||||
@@ -69,8 +70,9 @@ public class LoanProductData {
|
|||||||
this.id = id;
|
this.id = id;
|
||||||
this.name = name;
|
this.name = name;
|
||||||
this.description = description;
|
this.description = description;
|
||||||
this.principal = principal;
|
this.currency = new CurrencyData(principal.getCurrencyCode(), principal.getDefaultName(), principal.getDigitsAfterDecimal(), principal.getDisplaySymbol(), principal.getNameCode());
|
||||||
this.inArrearsTolerance = tolerance;
|
this.principal = principal.getAmount();
|
||||||
|
this.inArrearsTolerance = tolerance.getAmount();
|
||||||
this.numberOfRepayments = numberOfRepayments;
|
this.numberOfRepayments = numberOfRepayments;
|
||||||
this.loanTermFrequency = loanTermFrequency;
|
this.loanTermFrequency = loanTermFrequency;
|
||||||
this.repaymentEvery = repaymentEvery;
|
this.repaymentEvery = repaymentEvery;
|
||||||
@@ -145,19 +147,27 @@ public class LoanProductData {
|
|||||||
this.transactionProcessingStrategyName = transactionProcessingStrategyName;
|
this.transactionProcessingStrategyName = transactionProcessingStrategyName;
|
||||||
}
|
}
|
||||||
|
|
||||||
public MoneyData getPrincipal() {
|
public CurrencyData getCurrency() {
|
||||||
|
return currency;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setCurrency(CurrencyData currency) {
|
||||||
|
this.currency = currency;
|
||||||
|
}
|
||||||
|
|
||||||
|
public BigDecimal getPrincipal() {
|
||||||
return principal;
|
return principal;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setPrincipal(MoneyData principal) {
|
public void setPrincipal(BigDecimal principal) {
|
||||||
this.principal = principal;
|
this.principal = principal;
|
||||||
}
|
}
|
||||||
|
|
||||||
public MoneyData getInArrearsTolerance() {
|
public BigDecimal getInArrearsTolerance() {
|
||||||
return inArrearsTolerance;
|
return inArrearsTolerance;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setInArrearsTolerance(MoneyData inArrearsTolerance) {
|
public void setInArrearsTolerance(BigDecimal inArrearsTolerance) {
|
||||||
this.inArrearsTolerance = inArrearsTolerance;
|
this.inArrearsTolerance = inArrearsTolerance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+11
-9
@@ -101,10 +101,8 @@ public class LoanProductReadPlatformServiceImpl implements LoanProductReadPlatfo
|
|||||||
|
|
||||||
LoanProductData productData = new LoanProductData();
|
LoanProductData productData = new LoanProductData();
|
||||||
|
|
||||||
productData.setAmortizationType(LoanEnumerations
|
productData.setAmortizationType(LoanEnumerations.amortizationType(AmortizationMethod.EQUAL_INSTALLMENTS));
|
||||||
.amortizationType(AmortizationMethod.EQUAL_INSTALLMENTS));
|
productData.setInterestType(LoanEnumerations.interestType(InterestMethod.DECLINING_BALANCE));
|
||||||
productData.setInterestType(LoanEnumerations
|
|
||||||
.interestType(InterestMethod.DECLINING_BALANCE));
|
|
||||||
|
|
||||||
productData.setLoanTermFrequencyType(LoanEnumerations.loanTermFrequencyType(PeriodFrequencyType.MONTHS));
|
productData.setLoanTermFrequencyType(LoanEnumerations.loanTermFrequencyType(PeriodFrequencyType.MONTHS));
|
||||||
|
|
||||||
@@ -116,11 +114,15 @@ public class LoanProductReadPlatformServiceImpl implements LoanProductReadPlatfo
|
|||||||
|
|
||||||
populateProductDataWithDropdownOptions(productData);
|
populateProductDataWithDropdownOptions(productData);
|
||||||
|
|
||||||
if (productData.getCurrencyOptions().size() >= 1) {
|
productData.setPrincipal(BigDecimal.ZERO);
|
||||||
CurrencyData currency = productData.getCurrencyOptions().get(0);
|
productData.setInArrearsTolerance(BigDecimal.ZERO);
|
||||||
MoneyData zero = MoneyData.zero(currency);
|
|
||||||
productData.setPrincipal(zero);
|
CurrencyData currency = new CurrencyData("", "", 0, "", "");
|
||||||
productData.setInArrearsTolerance(zero);
|
productData.setCurrency(currency);
|
||||||
|
|
||||||
|
if (productData.getCurrencyOptions().size() == 1) {
|
||||||
|
currency = productData.getCurrencyOptions().get(0);
|
||||||
|
productData.setCurrency(currency);
|
||||||
}
|
}
|
||||||
|
|
||||||
return productData;
|
return productData;
|
||||||
|
|||||||
Reference in New Issue
Block a user