FINERACT-2202: Bulk import fix
This commit is contained in:
committed by
Adam Saghy
parent
1b9cb5c6d5
commit
d15243fb31
+3
-3
@@ -62,7 +62,7 @@ public class ClientPersonImportHandler implements ImportHandler {
|
|||||||
public Count process(final Workbook workbook, final String locale, final String dateFormat) {
|
public Count process(final Workbook workbook, final String locale, final String dateFormat) {
|
||||||
|
|
||||||
List<ClientData> clients = readExcelFile(workbook, locale, dateFormat);
|
List<ClientData> clients = readExcelFile(workbook, locale, dateFormat);
|
||||||
return importEntity(workbook, clients, dateFormat);
|
return importEntity(workbook, clients, dateFormat, locale);
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<ClientData> readExcelFile(final Workbook workbook, final String locale, final String dateFormat) {
|
public List<ClientData> readExcelFile(final Workbook workbook, final String locale, final String dateFormat) {
|
||||||
@@ -183,13 +183,13 @@ public class ClientPersonImportHandler implements ImportHandler {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Count importEntity(final Workbook workbook, final List<ClientData> clients, final String dateFormat) {
|
public Count importEntity(final Workbook workbook, final List<ClientData> clients, final String dateFormat, String locale) {
|
||||||
Sheet clientSheet = workbook.getSheet(TemplatePopulateImportConstants.CLIENT_PERSON_SHEET_NAME);
|
Sheet clientSheet = workbook.getSheet(TemplatePopulateImportConstants.CLIENT_PERSON_SHEET_NAME);
|
||||||
int successCount = 0;
|
int successCount = 0;
|
||||||
int errorCount = 0;
|
int errorCount = 0;
|
||||||
String errorMessage;
|
String errorMessage;
|
||||||
GsonBuilder gsonBuilder = GoogleGsonSerializerHelper.createGsonBuilder();
|
GsonBuilder gsonBuilder = GoogleGsonSerializerHelper.createGsonBuilder();
|
||||||
gsonBuilder.registerTypeAdapter(LocalDate.class, new DateSerializer(dateFormat));
|
gsonBuilder.registerTypeAdapter(LocalDate.class, new DateSerializer(dateFormat, locale));
|
||||||
for (ClientData client : clients) {
|
for (ClientData client : clients) {
|
||||||
try {
|
try {
|
||||||
String payload = gsonBuilder.create().toJson(client);
|
String payload = gsonBuilder.create().toJson(client);
|
||||||
|
|||||||
+1
-3
@@ -124,7 +124,6 @@ public class LoanImportHandler implements ImportHandler {
|
|||||||
if (ImportHandlerUtils.readAsLong(LoanConstants.LINK_ACCOUNT_ID, row) != null) {
|
if (ImportHandlerUtils.readAsLong(LoanConstants.LINK_ACCOUNT_ID, row) != null) {
|
||||||
linkAccountId = Objects.requireNonNull(ImportHandlerUtils.readAsLong(LoanConstants.LINK_ACCOUNT_ID, row)).toString();
|
linkAccountId = Objects.requireNonNull(ImportHandlerUtils.readAsLong(LoanConstants.LINK_ACCOUNT_ID, row)).toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (disbursedDate != null) {
|
if (disbursedDate != null) {
|
||||||
return DisbursementData.importInstance(disbursedDate, linkAccountId, row.getRowNum(), locale, dateFormat);
|
return DisbursementData.importInstance(disbursedDate, linkAccountId, row.getRowNum(), locale, dateFormat);
|
||||||
}
|
}
|
||||||
@@ -238,7 +237,6 @@ public class LoanImportHandler implements ImportHandler {
|
|||||||
|
|
||||||
String loanRepaymentScheduleTransactionProcessorStrategy = ImportHandlerUtils.readAsString(LoanConstants.REPAYMENT_STRATEGY_COL,
|
String loanRepaymentScheduleTransactionProcessorStrategy = ImportHandlerUtils.readAsString(LoanConstants.REPAYMENT_STRATEGY_COL,
|
||||||
row);
|
row);
|
||||||
|
|
||||||
LoanRepaymentScheduleTransactionProcessor loanRepaymentScheduleTransactionProcessor = loanRepaymentScheduleTransactionProcessorFactory
|
LoanRepaymentScheduleTransactionProcessor loanRepaymentScheduleTransactionProcessor = loanRepaymentScheduleTransactionProcessorFactory
|
||||||
.determineProcessor(loanRepaymentScheduleTransactionProcessorStrategy);
|
.determineProcessor(loanRepaymentScheduleTransactionProcessorStrategy);
|
||||||
|
|
||||||
@@ -366,7 +364,7 @@ public class LoanImportHandler implements ImportHandler {
|
|||||||
.getIdByName(workbook.getSheet(TemplatePopulateImportConstants.GROUP_SHEET_NAME), clientOrGroupName);
|
.getIdByName(workbook.getSheet(TemplatePopulateImportConstants.GROUP_SHEET_NAME), clientOrGroupName);
|
||||||
return LoanAccountData.importInstanceGroup(loanTypeEnumOption, groupIdforGroupLoan, productId, loanOfficerId,
|
return LoanAccountData.importInstanceGroup(loanTypeEnumOption, groupIdforGroupLoan, productId, loanOfficerId,
|
||||||
submittedOnDate, fundId, principal, numberOfRepayments, repaidEvery, repaidEveryFrequencyEnums, loanTerm,
|
submittedOnDate, fundId, principal, numberOfRepayments, repaidEvery, repaidEveryFrequencyEnums, loanTerm,
|
||||||
loanTermFrequencyEnum, nominalInterestRate, amortizationEnumOption, interestMethodEnum,
|
loanTermFrequencyEnum, nominalInterestRate, submittedOnDate, amortizationEnumOption, interestMethodEnum,
|
||||||
interestCalculationPeriodEnum, arrearsTolerance, repaymentStrategyCode, graceOnPrincipalPayment,
|
interestCalculationPeriodEnum, arrearsTolerance, repaymentStrategyCode, graceOnPrincipalPayment,
|
||||||
graceOnInterestPayment, graceOnInterestCharged, interestChargedFromDate, firstRepaymentOnDate, row.getRowNum(),
|
graceOnInterestPayment, graceOnInterestCharged, interestChargedFromDate, firstRepaymentOnDate, row.getRowNum(),
|
||||||
externalId, linkAccountId, locale, dateFormat, null);
|
externalId, linkAccountId, locale, dateFormat, null);
|
||||||
|
|||||||
+3
-3
@@ -349,7 +349,7 @@ public class SavingsImportHandler implements ImportHandler {
|
|||||||
final String dateFormat) {
|
final String dateFormat) {
|
||||||
if (activationDates.get(i) != null) {
|
if (activationDates.get(i) != null) {
|
||||||
GsonBuilder gsonBuilder = GoogleGsonSerializerHelper.createGsonBuilder();
|
GsonBuilder gsonBuilder = GoogleGsonSerializerHelper.createGsonBuilder();
|
||||||
gsonBuilder.registerTypeAdapter(LocalDate.class, new DateSerializer(dateFormat));
|
gsonBuilder.registerTypeAdapter(LocalDate.class, new DateSerializer(dateFormat, activationDates.get(i).getLocale()));
|
||||||
String payload = gsonBuilder.create().toJson(activationDates.get(i));
|
String payload = gsonBuilder.create().toJson(activationDates.get(i));
|
||||||
final CommandWrapper commandRequest = new CommandWrapperBuilder() //
|
final CommandWrapper commandRequest = new CommandWrapperBuilder() //
|
||||||
.savingsAccountActivation(savingsId)//
|
.savingsAccountActivation(savingsId)//
|
||||||
@@ -364,7 +364,7 @@ public class SavingsImportHandler implements ImportHandler {
|
|||||||
final String dateFormat) {
|
final String dateFormat) {
|
||||||
if (approvalDates.get(i) != null) {
|
if (approvalDates.get(i) != null) {
|
||||||
GsonBuilder gsonBuilder = GoogleGsonSerializerHelper.createGsonBuilder();
|
GsonBuilder gsonBuilder = GoogleGsonSerializerHelper.createGsonBuilder();
|
||||||
gsonBuilder.registerTypeAdapter(LocalDate.class, new DateSerializer(dateFormat));
|
gsonBuilder.registerTypeAdapter(LocalDate.class, new DateSerializer(dateFormat, approvalDates.get(i).getLocale()));
|
||||||
String payload = gsonBuilder.create().toJson(approvalDates.get(i));
|
String payload = gsonBuilder.create().toJson(approvalDates.get(i));
|
||||||
final CommandWrapper commandRequest = new CommandWrapperBuilder() //
|
final CommandWrapper commandRequest = new CommandWrapperBuilder() //
|
||||||
.approveSavingsAccountApplication(savingsId)//
|
.approveSavingsAccountApplication(savingsId)//
|
||||||
@@ -377,7 +377,7 @@ public class SavingsImportHandler implements ImportHandler {
|
|||||||
|
|
||||||
private CommandProcessingResult importSavings(final List<SavingsAccountData> savings, final int i, final String dateFormat) {
|
private CommandProcessingResult importSavings(final List<SavingsAccountData> savings, final int i, final String dateFormat) {
|
||||||
GsonBuilder gsonBuilder = GoogleGsonSerializerHelper.createGsonBuilder();
|
GsonBuilder gsonBuilder = GoogleGsonSerializerHelper.createGsonBuilder();
|
||||||
gsonBuilder.registerTypeAdapter(LocalDate.class, new DateSerializer(dateFormat));
|
gsonBuilder.registerTypeAdapter(LocalDate.class, new DateSerializer(dateFormat, savings.get(i).getLocale()));
|
||||||
gsonBuilder.registerTypeAdapter(EnumOptionData.class, new EnumOptionDataIdSerializer());
|
gsonBuilder.registerTypeAdapter(EnumOptionData.class, new EnumOptionDataIdSerializer());
|
||||||
JsonObject savingsJsonob = gsonBuilder.create().toJsonTree(savings.get(i)).getAsJsonObject();
|
JsonObject savingsJsonob = gsonBuilder.create().toJsonTree(savings.get(i)).getAsJsonObject();
|
||||||
savingsJsonob.remove("isDormancyTrackingActive");
|
savingsJsonob.remove("isDormancyTrackingActive");
|
||||||
|
|||||||
+2
-1
@@ -115,6 +115,7 @@ public abstract class AbstractWorkbookPopulator implements WorkbookPopulator {
|
|||||||
dateCellStyle.setDataFormat(df);
|
dateCellStyle.setDataFormat(df);
|
||||||
int rowIndex = 0;
|
int rowIndex = 0;
|
||||||
DateTimeFormatter outputFormat = new DateTimeFormatterBuilder().appendPattern(dateFormat).toFormatter();
|
DateTimeFormatter outputFormat = new DateTimeFormatterBuilder().appendPattern(dateFormat).toFormatter();
|
||||||
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(dateFormat);
|
||||||
try {
|
try {
|
||||||
if (clients != null) {
|
if (clients != null) {
|
||||||
for (ClientData client : clients) {
|
for (ClientData client : clients) {
|
||||||
@@ -125,7 +126,7 @@ public abstract class AbstractWorkbookPopulator implements WorkbookPopulator {
|
|||||||
writeString(nameCol, row, client.getDisplayName().replaceAll("[ )(] ", "_") + "(" + client.getId() + ")");
|
writeString(nameCol, row, client.getDisplayName().replaceAll("[ )(] ", "_") + "(" + client.getId() + ")");
|
||||||
|
|
||||||
if (client.getActivationDate() != null) {
|
if (client.getActivationDate() != null) {
|
||||||
writeDate(activationDateCol, row, outputFormat.format(client.getActivationDate()), dateCellStyle, dateFormat);
|
writeDate(activationDateCol, row, client.getActivationDate().format(formatter), dateCellStyle, dateFormat);
|
||||||
}
|
}
|
||||||
if (containsClientExtId) {
|
if (containsClientExtId) {
|
||||||
if (!client.getExternalId().isEmpty()) {
|
if (!client.getExternalId().isEmpty()) {
|
||||||
|
|||||||
+4
-4
@@ -166,10 +166,10 @@ public class LoanWorkbookPopulator extends AbstractWorkbookPopulator {
|
|||||||
.createFormulaListConstraint("INDIRECT(CONCATENATE(\"Staff_\",$A1))");
|
.createFormulaListConstraint("INDIRECT(CONCATENATE(\"Staff_\",$A1))");
|
||||||
DataValidationConstraint submittedDateConstraint = validationHelper.createDateConstraint(
|
DataValidationConstraint submittedDateConstraint = validationHelper.createDateConstraint(
|
||||||
DataValidationConstraint.OperatorType.BETWEEN,
|
DataValidationConstraint.OperatorType.BETWEEN,
|
||||||
"=IF(INDIRECT(CONCATENATE(\"START_DATE_\",$E1))>VLOOKUP($C1,$AR$2:$AT$"
|
"=IF(" + "DATEVALUE(INDIRECT(\"START_DATE_\" & $E1)) > DATEVALUE(VLOOKUP($C1, $AR$2:$AT$"
|
||||||
+ (clientSheetPopulator.getClientsSize() + groupSheetPopulator.getGroupsSize() + 1)
|
+ (clientSheetPopulator.getClientsSize() + groupSheetPopulator.getGroupsSize() + 1) + ", 3, FALSE)), "
|
||||||
+ ",3,FALSE),INDIRECT(CONCATENATE(\"START_DATE_\",$E1)),VLOOKUP($C1,$AR$2:$AT$"
|
+ "DATEVALUE(INDIRECT(\"START_DATE_\" & $E1)), " + "DATEVALUE(VLOOKUP($C1, $AR$2:$AT$"
|
||||||
+ (clientSheetPopulator.getClientsSize() + groupSheetPopulator.getGroupsSize() + 1) + ",3,FALSE))",
|
+ (clientSheetPopulator.getClientsSize() + groupSheetPopulator.getGroupsSize() + 1) + ", 3, FALSE)))",
|
||||||
"=TODAY()", dateFormat);
|
"=TODAY()", dateFormat);
|
||||||
DataValidationConstraint approvalDateConstraint = validationHelper
|
DataValidationConstraint approvalDateConstraint = validationHelper
|
||||||
.createDateConstraint(DataValidationConstraint.OperatorType.BETWEEN, "=$G1", "=TODAY()", dateFormat);
|
.createDateConstraint(DataValidationConstraint.OperatorType.BETWEEN, "=$G1", "=TODAY()", dateFormat);
|
||||||
|
|||||||
+9
-7
@@ -112,8 +112,8 @@ public class SavingsTransactionsWorkbookPopulator extends AbstractWorkbookPopula
|
|||||||
.createExplicitListConstraint(new String[] { "Withdrawal", "Deposit" });
|
.createExplicitListConstraint(new String[] { "Withdrawal", "Deposit" });
|
||||||
DataValidationConstraint paymentTypeConstraint = validationHelper.createFormulaListConstraint("PaymentTypes");
|
DataValidationConstraint paymentTypeConstraint = validationHelper.createFormulaListConstraint("PaymentTypes");
|
||||||
DataValidationConstraint transactionDateConstraint = validationHelper.createDateConstraint(
|
DataValidationConstraint transactionDateConstraint = validationHelper.createDateConstraint(
|
||||||
DataValidationConstraint.OperatorType.BETWEEN, "=VLOOKUP($C1,$Q$2:$T$" + (savingsAccounts.size() + 1) + ",4,FALSE)",
|
DataValidationConstraint.OperatorType.BETWEEN,
|
||||||
"=TODAY()", dateFormat);
|
"=DATEVALUE(VLOOKUP($C1,$Q$2:$T$" + (savingsAccounts.size() + 1) + ",4,FALSE))", "=TODAY()", dateFormat);
|
||||||
|
|
||||||
DataValidation officeValidation = validationHelper.createValidation(officeNameConstraint, officeNameRange);
|
DataValidation officeValidation = validationHelper.createValidation(officeNameConstraint, officeNameRange);
|
||||||
DataValidation clientValidation = validationHelper.createValidation(clientNameConstraint, clientNameRange);
|
DataValidation clientValidation = validationHelper.createValidation(clientNameConstraint, clientNameRange);
|
||||||
@@ -208,11 +208,13 @@ public class SavingsTransactionsWorkbookPopulator extends AbstractWorkbookPopula
|
|||||||
if (savingsAccount.getMinRequiredOpeningBalance() != null) {
|
if (savingsAccount.getMinRequiredOpeningBalance() != null) {
|
||||||
writeBigDecimal(TransactionConstants.LOOKUP_OPENING_BALANCE_COL, row, savingsAccount.getMinRequiredOpeningBalance());
|
writeBigDecimal(TransactionConstants.LOOKUP_OPENING_BALANCE_COL, row, savingsAccount.getMinRequiredOpeningBalance());
|
||||||
}
|
}
|
||||||
writeDate(TransactionConstants.LOOKUP_SAVINGS_ACTIVATION_DATE_COL, row,
|
if (savingsAccount.getActivatedOnDate() != null) {
|
||||||
"" + savingsAccount.getTimeline().getActivatedOnDate().getDayOfMonth() + "/"
|
writeDate(TransactionConstants.LOOKUP_SAVINGS_ACTIVATION_DATE_COL, row,
|
||||||
+ savingsAccount.getTimeline().getActivatedOnDate().getMonthValue() + "/"
|
"" + savingsAccount.getTimeline().getActivatedOnDate().getDayOfMonth() + "/"
|
||||||
+ savingsAccount.getTimeline().getActivatedOnDate().getYear(),
|
+ savingsAccount.getTimeline().getActivatedOnDate().getMonthValue() + "/"
|
||||||
dateCellStyle, dateFormat);
|
+ savingsAccount.getTimeline().getActivatedOnDate().getYear(),
|
||||||
|
dateCellStyle, dateFormat);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -131,7 +131,7 @@ public class SavingsWorkbookPopulator extends AbstractWorkbookPopulator {
|
|||||||
writeString(SavingsConstants.INTEREST_CALCULATION_COL, rowHeader, "Interest Calculated*");
|
writeString(SavingsConstants.INTEREST_CALCULATION_COL, rowHeader, "Interest Calculated*");
|
||||||
writeString(SavingsConstants.INTEREST_CALCULATION_DAYS_IN_YEAR_COL, rowHeader, "# Days in Year*");
|
writeString(SavingsConstants.INTEREST_CALCULATION_DAYS_IN_YEAR_COL, rowHeader, "# Days in Year*");
|
||||||
writeString(SavingsConstants.MIN_OPENING_BALANCE_COL, rowHeader, "Min Opening Balance");
|
writeString(SavingsConstants.MIN_OPENING_BALANCE_COL, rowHeader, "Min Opening Balance");
|
||||||
writeString(SavingsConstants.LOCKIN_PERIOD_COL, rowHeader, "Locked In For");
|
writeString(SavingsConstants.LOCKIN_PERIOD_COL, rowHeader, "Locked In For*");
|
||||||
writeString(SavingsConstants.APPLY_WITHDRAWAL_FEE_FOR_TRANSFERS, rowHeader, "Apply Withdrawal Fee For Transfers");
|
writeString(SavingsConstants.APPLY_WITHDRAWAL_FEE_FOR_TRANSFERS, rowHeader, "Apply Withdrawal Fee For Transfers");
|
||||||
|
|
||||||
writeString(SavingsConstants.LOOKUP_CLIENT_NAME_COL, rowHeader, "Client Name");
|
writeString(SavingsConstants.LOOKUP_CLIENT_NAME_COL, rowHeader, "Client Name");
|
||||||
@@ -234,8 +234,8 @@ public class SavingsWorkbookPopulator extends AbstractWorkbookPopulator {
|
|||||||
DataValidationConstraint fieldOfficerNameConstraint = validationHelper
|
DataValidationConstraint fieldOfficerNameConstraint = validationHelper
|
||||||
.createFormulaListConstraint("INDIRECT(CONCATENATE(\"Staff_\",$A1))");
|
.createFormulaListConstraint("INDIRECT(CONCATENATE(\"Staff_\",$A1))");
|
||||||
DataValidationConstraint submittedDateConstraint = validationHelper.createDateConstraint(
|
DataValidationConstraint submittedDateConstraint = validationHelper.createDateConstraint(
|
||||||
DataValidationConstraint.OperatorType.BETWEEN,
|
DataValidationConstraint.OperatorType.BETWEEN, "=DATEVALUE(VLOOKUP($C1,$AF$2:$AG$"
|
||||||
"=VLOOKUP($C1,$AF$2:$AG$" + (clientSheetPopulator.getClientsSize() + groupSheetPopulator.getGroupsSize() + 1) + ",2,FALSE)",
|
+ (clientSheetPopulator.getClientsSize() + groupSheetPopulator.getGroupsSize() + 1) + ",2,FALSE))",
|
||||||
"=TODAY()", dateFormat);
|
"=TODAY()", dateFormat);
|
||||||
DataValidationConstraint approvalDateConstraint = validationHelper
|
DataValidationConstraint approvalDateConstraint = validationHelper
|
||||||
.createDateConstraint(DataValidationConstraint.OperatorType.BETWEEN, "=$F1", "=TODAY()", dateFormat);
|
.createDateConstraint(DataValidationConstraint.OperatorType.BETWEEN, "=$F1", "=TODAY()", dateFormat);
|
||||||
|
|||||||
+13
-12
@@ -310,24 +310,25 @@ public class LoanAccountData {
|
|||||||
public static LoanAccountData importInstanceGroup(EnumOptionData loanTypeEnumOption, Long groupIdforGroupLoan, Long productId,
|
public static LoanAccountData importInstanceGroup(EnumOptionData loanTypeEnumOption, Long groupIdforGroupLoan, Long productId,
|
||||||
Long loanOfficerId, LocalDate submittedOnDate, Long fundId, BigDecimal principal, Integer numberOfRepayments,
|
Long loanOfficerId, LocalDate submittedOnDate, Long fundId, BigDecimal principal, Integer numberOfRepayments,
|
||||||
Integer repaidEvery, EnumOptionData repaidEveryFrequencyEnums, Integer loanTermFrequency,
|
Integer repaidEvery, EnumOptionData repaidEveryFrequencyEnums, Integer loanTermFrequency,
|
||||||
EnumOptionData loanTermFrequencyTypeEnum, BigDecimal nominalInterestRate, EnumOptionData amortizationEnumOption,
|
EnumOptionData loanTermFrequencyTypeEnum, BigDecimal nominalInterestRate, LocalDate expectedDisbursementDate,
|
||||||
EnumOptionData interestMethodEnum, EnumOptionData interestCalculationPeriodEnum, BigDecimal arrearsTolerance,
|
EnumOptionData amortizationEnumOption, EnumOptionData interestMethodEnum, EnumOptionData interestCalculationPeriodEnum,
|
||||||
String transactionProcessingStrategyCode, Integer graceOnPrincipalPayment, Integer graceOnInterestPayment,
|
BigDecimal arrearsTolerance, String transactionProcessingStrategyCode, Integer graceOnPrincipalPayment,
|
||||||
Integer graceOnInterestCharged, LocalDate interestChargedFromDate, LocalDate repaymentsStartingFromDate, Integer rowIndex,
|
Integer graceOnInterestPayment, Integer graceOnInterestCharged, LocalDate interestChargedFromDate,
|
||||||
ExternalId externalId, String linkAccountId, String locale, String dateFormat, Integer fixedLength) {
|
LocalDate repaymentsStartingFromDate, Integer rowIndex, ExternalId externalId, String linkAccountId, String locale,
|
||||||
|
String dateFormat, Integer fixedLength) {
|
||||||
|
|
||||||
return new LoanAccountData().setLoanType(loanTypeEnumOption).setGroupId(groupIdforGroupLoan).setProductId(productId)
|
return new LoanAccountData().setLoanType(loanTypeEnumOption).setGroupId(groupIdforGroupLoan).setProductId(productId)
|
||||||
.setLoanOfficerId(loanOfficerId).setSubmittedOnDate(submittedOnDate).setFundId(fundId).setPrincipal(principal)
|
.setLoanOfficerId(loanOfficerId).setSubmittedOnDate(submittedOnDate).setFundId(fundId).setPrincipal(principal)
|
||||||
.setNumberOfRepayments(numberOfRepayments).setRepaymentEvery(repaidEvery)
|
.setNumberOfRepayments(numberOfRepayments).setRepaymentEvery(repaidEvery)
|
||||||
.setRepaymentFrequencyType(repaidEveryFrequencyEnums).setLoanTermFrequency(loanTermFrequency)
|
.setRepaymentFrequencyType(repaidEveryFrequencyEnums).setLoanTermFrequency(loanTermFrequency)
|
||||||
.setLoanTermFrequencyType(loanTermFrequencyTypeEnum).setInterestRatePerPeriod(nominalInterestRate)
|
.setLoanTermFrequencyType(loanTermFrequencyTypeEnum).setInterestRatePerPeriod(nominalInterestRate)
|
||||||
.setAmortizationTypeOptions(List.of(amortizationEnumOption)).setInterestType(interestMethodEnum)
|
.setAmortizationType(amortizationEnumOption).setInterestType(interestMethodEnum)
|
||||||
.setInterestCalculationPeriodType(interestCalculationPeriodEnum).setInArrearsTolerance(arrearsTolerance)
|
.setExpectedDisbursementDate(expectedDisbursementDate).setInterestCalculationPeriodType(interestCalculationPeriodEnum)
|
||||||
.setTransactionProcessingStrategyCode(transactionProcessingStrategyCode).setGraceOnPrincipalPayment(graceOnPrincipalPayment)
|
.setInArrearsTolerance(arrearsTolerance).setTransactionProcessingStrategyCode(transactionProcessingStrategyCode)
|
||||||
.setGraceOnInterestPayment(graceOnInterestPayment).setGraceOnInterestCharged(graceOnInterestCharged)
|
.setGraceOnPrincipalPayment(graceOnPrincipalPayment).setGraceOnInterestPayment(graceOnInterestPayment)
|
||||||
.setInterestChargedFromDate(interestChargedFromDate).setRepaymentsStartingFromDate(repaymentsStartingFromDate)
|
.setGraceOnInterestCharged(graceOnInterestCharged).setInterestChargedFromDate(interestChargedFromDate)
|
||||||
.setRowIndex(rowIndex).setExternalId(externalId).setLinkAccountId(linkAccountId).setLocale(locale).setDateFormat(dateFormat)
|
.setRepaymentsStartingFromDate(repaymentsStartingFromDate).setRowIndex(rowIndex).setExternalId(externalId)
|
||||||
.setFixedLength(fixedLength);
|
.setLinkAccountId(linkAccountId).setLocale(locale).setDateFormat(dateFormat).setFixedLength(fixedLength);
|
||||||
}
|
}
|
||||||
|
|
||||||
public LoanAccountData withClientData(final ClientData clientData) {
|
public LoanAccountData withClientData(final ClientData clientData) {
|
||||||
|
|||||||
+3
-4
@@ -164,7 +164,7 @@ public class SavingsAccountReadPlatformServiceImpl implements SavingsAccountRead
|
|||||||
sqlBuilder.append(" join m_office o on o.id = c.office_id");
|
sqlBuilder.append(" join m_office o on o.id = c.office_id");
|
||||||
sqlBuilder.append(" where o.hierarchy like ?");
|
sqlBuilder.append(" where o.hierarchy like ?");
|
||||||
|
|
||||||
final Object[] objectArray = new Object[2];
|
final Object[] objectArray = new Object[3];
|
||||||
objectArray[0] = hierarchySearchString;
|
objectArray[0] = hierarchySearchString;
|
||||||
int arrayPos = 1;
|
int arrayPos = 1;
|
||||||
if (searchParameters != null) {
|
if (searchParameters != null) {
|
||||||
@@ -181,9 +181,8 @@ public class SavingsAccountReadPlatformServiceImpl implements SavingsAccountRead
|
|||||||
arrayPos = arrayPos + 1;
|
arrayPos = arrayPos + 1;
|
||||||
}
|
}
|
||||||
if (searchParameters.getOfficeId() != null) {
|
if (searchParameters.getOfficeId() != null) {
|
||||||
sqlBuilder.append("and c.office_id =?");
|
sqlBuilder.append(" and c.office_id = ?");
|
||||||
objectArray[arrayPos] = searchParameters.getOfficeId();
|
objectArray[arrayPos++] = searchParameters.getOfficeId();
|
||||||
arrayPos = arrayPos + 1;
|
|
||||||
}
|
}
|
||||||
if (searchParameters.hasOrderBy()) {
|
if (searchParameters.hasOrderBy()) {
|
||||||
sqlBuilder.append(" order by ").append(searchParameters.getOrderBy());
|
sqlBuilder.append(" order by ").append(searchParameters.getOrderBy());
|
||||||
|
|||||||
Reference in New Issue
Block a user