diff --git a/mifosng-provider/src/main/java/org/mifosplatform/accounting/journalentry/service/JournalEntryRunningBalanceUpdateServiceImpl.java b/mifosng-provider/src/main/java/org/mifosplatform/accounting/journalentry/service/JournalEntryRunningBalanceUpdateServiceImpl.java index 845067bf2..702c78ded 100755 --- a/mifosng-provider/src/main/java/org/mifosplatform/accounting/journalentry/service/JournalEntryRunningBalanceUpdateServiceImpl.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/accounting/journalentry/service/JournalEntryRunningBalanceUpdateServiceImpl.java @@ -38,7 +38,6 @@ import org.springframework.dao.EmptyResultDataAccessException; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowMapper; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; @Service public class JournalEntryRunningBalanceUpdateServiceImpl implements JournalEntryRunningBalanceUpdateService { @@ -123,7 +122,6 @@ public class JournalEntryRunningBalanceUpdateServiceImpl implements JournalEntry return commandProcessingResultBuilder.build(); } - @Transactional private void updateOrganizationRunningBalance(Date entityDate) { Map runningBalanceMap = new HashMap<>(5); Map> officesRunningBalance = new HashMap<>(); @@ -188,7 +186,6 @@ public class JournalEntryRunningBalanceUpdateServiceImpl implements JournalEntry } - @Transactional private void updateRunningBalance(Long officeId, Date entityDate) { Map runningBalanceMap = new HashMap<>(5); diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanSchedularService.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanSchedularService.java index daa99cd9e..8e00769a7 100644 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanSchedularService.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanSchedularService.java @@ -12,4 +12,6 @@ public interface LoanSchedularService { void applyChargeForOverdueLoans() throws JobExecutionException; + void recalculateInterest(); + } diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanSchedularServiceImpl.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanSchedularServiceImpl.java index 70fdfd4eb..b135ce159 100644 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanSchedularServiceImpl.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanSchedularServiceImpl.java @@ -92,5 +92,14 @@ public class LoanSchedularServiceImpl implements LoanSchedularService { if (sb.length() > 0) { throw new JobExecutionException(sb.toString()); } } } + + @Override + @CronTarget(jobName = JobName.RECALCULATE_INTEREST_FOR_LOAN) + public void recalculateInterest() { + Collection loanIds = this.loanReadPlatformService.fetchArrearLoans(); + for (Long loanId : loanIds) { + this.loanWritePlatformService.recalculateInterest(loanId); + } + } } diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanWritePlatformService.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanWritePlatformService.java index 3c97fb9f7..9cfc9ee72 100755 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanWritePlatformService.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanWritePlatformService.java @@ -79,8 +79,6 @@ public interface LoanWritePlatformService { CommandProcessingResult updateDisbursementDateAndAmountForTranche(Long loanId, Long disbursementId, JsonCommand command); - void recalculateInterest(); - CommandProcessingResult recoverFromGuarantor(Long loanId); void applyMeetingDateChanges(Calendar calendar, Collection loanCalendarInstances); @@ -91,4 +89,6 @@ public interface LoanWritePlatformService { void applyOverdueChargesForLoan(Long loanId, Collection overdueLoanScheduleDatas); + void recalculateInterest(long loanId); + } \ No newline at end of file diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java index 37b10d146..2d1923682 100755 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/service/LoanWritePlatformServiceJpaRepositoryImpl.java @@ -2774,16 +2774,8 @@ public class LoanWritePlatformServiceJpaRepositoryImpl implements LoanWritePlatf return transaction; } - @Override - @CronTarget(jobName = JobName.RECALCULATE_INTEREST_FOR_LOAN) - public void recalculateInterest() { - Collection loanIds = this.loanReadPlatformService.fetchArrearLoans(); - for (Long loanId : loanIds) { - recalculateInterest(loanId); - } - } - @Transactional + @Override public void recalculateInterest(final long loanId) { AppUser currentUser = getAppUserIfPresent(); Loan loan = this.loanAssembler.assembleFrom(loanId);