Class LoanTransactionProcessingServiceImpl

java.lang.Object
org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingServiceImpl
All Implemented Interfaces:
org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService

@Service public class LoanTransactionProcessingServiceImpl extends Object implements org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    canProcessLatestTransactionOnly(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction loanTransaction, org.apache.fineract.portfolio.loanaccount.domain.LoanRepaymentScheduleInstallment currentInstallment)
     
    org.apache.fineract.portfolio.loanaccount.data.OutstandingAmountsDTO
    fetchPrepaymentDetail(org.apache.fineract.portfolio.loanaccount.data.ScheduleGeneratorDTO scheduleGeneratorDTO, LocalDate onDate, org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
     
    org.apache.fineract.portfolio.loanaccount.loanschedule.data.LoanScheduleDTO
    getRecalculatedSchedule(org.apache.fineract.portfolio.loanaccount.data.ScheduleGeneratorDTO generatorDTO, org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
     
    org.apache.fineract.portfolio.loanaccount.domain.transactionprocessor.LoanRepaymentScheduleTransactionProcessor
    getTransactionProcessor(String transactionProcessingStrategyCode)
     
    org.apache.fineract.portfolio.loanaccount.domain.ChangedTransactionDetail
    processLatestTransaction(String transactionProcessingStrategyCode, org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction loanTransaction, org.apache.fineract.portfolio.loanaccount.domain.transactionprocessor.TransactionCtx ctx)
     
    Optional<org.apache.fineract.portfolio.loanaccount.domain.ChangedTransactionDetail>
    processPostDisbursementTransactions(org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
     
    org.apache.fineract.portfolio.loanaccount.domain.ChangedTransactionDetail
    reprocessLoanTransactions(String transactionProcessingStrategyCode, LocalDate disbursementDate, List<org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction> loanTransactions, org.apache.fineract.organisation.monetary.domain.MonetaryCurrency currency, List<org.apache.fineract.portfolio.loanaccount.domain.LoanRepaymentScheduleInstallment> installments, Set<org.apache.fineract.portfolio.loanaccount.domain.LoanCharge> charges)
     

    Methods inherited from class java.lang.Object

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

    • LoanTransactionProcessingServiceImpl

      public LoanTransactionProcessingServiceImpl()
  • Method Details

    • canProcessLatestTransactionOnly

      public boolean canProcessLatestTransactionOnly(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction loanTransaction, org.apache.fineract.portfolio.loanaccount.domain.LoanRepaymentScheduleInstallment currentInstallment)
      Specified by:
      canProcessLatestTransactionOnly in interface org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService
    • processLatestTransaction

      public org.apache.fineract.portfolio.loanaccount.domain.ChangedTransactionDetail processLatestTransaction(String transactionProcessingStrategyCode, org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction loanTransaction, org.apache.fineract.portfolio.loanaccount.domain.transactionprocessor.TransactionCtx ctx)
      Specified by:
      processLatestTransaction in interface org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService
    • reprocessLoanTransactions

      public org.apache.fineract.portfolio.loanaccount.domain.ChangedTransactionDetail reprocessLoanTransactions(String transactionProcessingStrategyCode, LocalDate disbursementDate, List<org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction> loanTransactions, org.apache.fineract.organisation.monetary.domain.MonetaryCurrency currency, List<org.apache.fineract.portfolio.loanaccount.domain.LoanRepaymentScheduleInstallment> installments, Set<org.apache.fineract.portfolio.loanaccount.domain.LoanCharge> charges)
      Specified by:
      reprocessLoanTransactions in interface org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService
    • getTransactionProcessor

      public org.apache.fineract.portfolio.loanaccount.domain.transactionprocessor.LoanRepaymentScheduleTransactionProcessor getTransactionProcessor(String transactionProcessingStrategyCode)
      Specified by:
      getTransactionProcessor in interface org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService
    • processPostDisbursementTransactions

      public Optional<org.apache.fineract.portfolio.loanaccount.domain.ChangedTransactionDetail> processPostDisbursementTransactions(org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
      Specified by:
      processPostDisbursementTransactions in interface org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService
    • getRecalculatedSchedule

      public org.apache.fineract.portfolio.loanaccount.loanschedule.data.LoanScheduleDTO getRecalculatedSchedule(org.apache.fineract.portfolio.loanaccount.data.ScheduleGeneratorDTO generatorDTO, org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
      Specified by:
      getRecalculatedSchedule in interface org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService
    • fetchPrepaymentDetail

      public org.apache.fineract.portfolio.loanaccount.data.OutstandingAmountsDTO fetchPrepaymentDetail(org.apache.fineract.portfolio.loanaccount.data.ScheduleGeneratorDTO scheduleGeneratorDTO, LocalDate onDate, org.apache.fineract.portfolio.loanaccount.domain.Loan loan)
      Specified by:
      fetchPrepaymentDetail in interface org.apache.fineract.portfolio.loanaccount.service.LoanTransactionProcessingService