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
    method adds accrual for batch job "Add Accrual Transactions"
    void
     
    void
    method adds accrual for batch job "Add Periodic Accrual Transactions" and add accruals api for Loan
    void
    addPeriodicAccruals(LocalDate tillDate, org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
    method adds accrual for Loan COB business step
    boolean
    isProgressiveAccrual(org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
     
    void
    processAccrualsOnInterestRecalculation(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(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, LocalDate foreClosureDate, List<org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction> newAccrualTransactions)
    method calculates accruals for loan on loan fore closure
    void
    processIncomePostingAndAccruals(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, boolean addEvent)
    method calculates accruals for loan with interest recalculation and compounding to be posted as income
    void
    reprocessExistingAccruals(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, boolean addEvent)
    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(@NonNull 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(@NonNull LocalDate tillDate, @NonNull 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(@NonNull 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(@NonNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan, boolean addEvent)
      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(@NonNull 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(@NonNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan, boolean addEvent)
      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(@NonNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan, @NonNull LocalDate foreClosureDate, @NonNull 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(@NonNull org.apache.fineract.portfolio.loanaccount.domain.Loan loan)