From d043f4cb61ea5bb7d23b7c7d3028450288652345 Mon Sep 17 00:00:00 2001 From: Satvik Mishra Date: Wed, 10 Dec 2025 19:22:24 +0530 Subject: [PATCH] FINERACT-2415: Refactor InlineLoanCOBExecutorServiceImpl to reduce duplication --- .../service/InlineLoanCOBExecutorServiceImpl.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/fineract-provider/src/main/java/org/apache/fineract/cob/service/InlineLoanCOBExecutorServiceImpl.java b/fineract-provider/src/main/java/org/apache/fineract/cob/service/InlineLoanCOBExecutorServiceImpl.java index ec8fb7ba0..98d9def4b 100644 --- a/fineract-provider/src/main/java/org/apache/fineract/cob/service/InlineLoanCOBExecutorServiceImpl.java +++ b/fineract-provider/src/main/java/org/apache/fineract/cob/service/InlineLoanCOBExecutorServiceImpl.java @@ -200,16 +200,17 @@ public class InlineLoanCOBExecutorServiceImpl implements InlineExecutorService paramSet = Collections.singleton(paramDTO); + return customJobParameterRepository.save(paramSet); + } + private Map> getJobParametersMap(List loanIds, LocalDate businessDate) { - // TODO: refactor for a more generic solution String parameterJson = gson.toJson(loanIds); - JobParameterDTO loanIdsParameterDTO = new JobParameterDTO(LoanCOBConstant.LOAN_IDS_PARAMETER_NAME, parameterJson); - Set loanIdJobParameter = Collections.singleton(loanIdsParameterDTO); - Long loanIdsJobParameterId = customJobParameterRepository.save(loanIdJobParameter); - JobParameterDTO businessDateParameterDTO = new JobParameterDTO(LoanCOBConstant.BUSINESS_DATE_PARAMETER_NAME, + Long loanIdsJobParameterId = saveCustomJobParameter(LoanCOBConstant.LOAN_IDS_PARAMETER_NAME, parameterJson); + Long businessDateJobParameterId = saveCustomJobParameter(LoanCOBConstant.BUSINESS_DATE_PARAMETER_NAME, businessDate.format(DateTimeFormatter.ISO_DATE)); - Set businessDateJobParameter = Collections.singleton(businessDateParameterDTO); - Long businessDateJobParameterId = customJobParameterRepository.save(businessDateJobParameter); Map> jobParameterMap = new HashMap<>(); jobParameterMap.put(SpringBatchJobConstants.CUSTOM_JOB_PARAMETER_ID_KEY, new JobParameter<>(loanIdsJobParameterId, Long.class)); jobParameterMap.put(LoanCOBConstant.BUSINESS_DATE_PARAMETER_NAME, new JobParameter<>(businessDateJobParameterId, Long.class));