Class LoanAccrualsProcessingServiceImpl

java.lang.Object
org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingServiceImpl
All Implemented Interfaces:
org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService

@Component public class LoanAccrualsProcessingServiceImpl extends Object implements org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addAccruals(@NotNull LocalDate tillDate)
    method adds accrual for batch job "Add Accrual Transactions"
    void
     
    void
    addPeriodicAccruals(@NotNull LocalDate tillDate)
    method adds accrual for batch job "Add Periodic Accrual Transactions" and add accruals api for Loan
    void
    addPeriodicAccruals(@NotNull LocalDate tillDate, @NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
    method adds accrual for Loan COB business step
    boolean
    isProgressiveAccrual(@NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
     
    void
    processAccrualsOnInterestRecalculation(@NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan, boolean isInterestRecalculationEnabled, boolean addJournal)
    method calculates accruals for loan with interest recalculation on loan schedule when interest is recalculated
    void
    processAccrualsOnLoanClosure(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, boolean addJournal)
    method calculates accruals for loan on loan closure
    void
    processAccrualsOnLoanForeClosure(@NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan, @NotNull LocalDate foreClosureDate, @NotNull List<org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction> newAccrualTransactions)
    method calculates accruals for loan on loan fore closure
    void
    processIncomePostingAndAccruals(@NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
    method calculates accruals for loan with interest recalculation and compounding to be posted as income
    void
    reprocessExistingAccruals(@NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
    method updates accrual derived fields on installments and reverse the unprocessed transactions for loan reschedule

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • LoanAccrualsProcessingServiceImpl

      public LoanAccrualsProcessingServiceImpl()
  • Method Details

    • addPeriodicAccruals

      @Transactional public void addPeriodicAccruals(@NotNull @NotNull LocalDate tillDate) throws org.apache.fineract.infrastructure.jobs.exception.JobExecutionException
      method adds accrual for batch job "Add Periodic Accrual Transactions" and add accruals api for Loan
      Specified by:
      addPeriodicAccruals in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
      Throws:
      org.apache.fineract.infrastructure.jobs.exception.JobExecutionException
    • addPeriodicAccruals

      @Transactional public void addPeriodicAccruals(@NotNull @NotNull LocalDate tillDate, @NotNull @NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
      method adds accrual for Loan COB business step
      Specified by:
      addPeriodicAccruals in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
    • addAccruals

      @Transactional public void addAccruals(@NotNull @NotNull LocalDate tillDate) throws org.apache.fineract.infrastructure.jobs.exception.JobExecutionException
      method adds accrual for batch job "Add Accrual Transactions"
      Specified by:
      addAccruals in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
      Throws:
      org.apache.fineract.infrastructure.jobs.exception.JobExecutionException
    • reprocessExistingAccruals

      public void reprocessExistingAccruals(@NotNull @NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
      method updates accrual derived fields on installments and reverse the unprocessed transactions for loan reschedule
      Specified by:
      reprocessExistingAccruals in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
    • processAccrualsOnInterestRecalculation

      @Transactional public void processAccrualsOnInterestRecalculation(@NotNull @NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan, boolean isInterestRecalculationEnabled, boolean addJournal)
      method calculates accruals for loan with interest recalculation on loan schedule when interest is recalculated
      Specified by:
      processAccrualsOnInterestRecalculation in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
    • addIncomePostingAndAccruals

      @Transactional public void addIncomePostingAndAccruals(Long loanId) throws org.apache.fineract.portfolio.loanaccount.exception.LoanNotFoundException
      Specified by:
      addIncomePostingAndAccruals in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
      Throws:
      org.apache.fineract.portfolio.loanaccount.exception.LoanNotFoundException
    • processIncomePostingAndAccruals

      public void processIncomePostingAndAccruals(@NotNull @NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
      method calculates accruals for loan with interest recalculation and compounding to be posted as income
      Specified by:
      processIncomePostingAndAccruals in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
    • processAccrualsOnLoanClosure

      public void processAccrualsOnLoanClosure(@NonNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan, boolean addJournal)
      method calculates accruals for loan on loan closure
      Specified by:
      processAccrualsOnLoanClosure in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
    • processAccrualsOnLoanForeClosure

      public void processAccrualsOnLoanForeClosure(@NotNull @NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan, @NotNull @NotNull LocalDate foreClosureDate, @NotNull @NotNull List<org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction> newAccrualTransactions)
      method calculates accruals for loan on loan fore closure
      Specified by:
      processAccrualsOnLoanForeClosure in interface org.apache.fineract.portfolio.loanaccount.service.LoanAccrualsProcessingService
    • isProgressiveAccrual

      public boolean isProgressiveAccrual(@NotNull @NotNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)