[ https://issues.apache.org/jira/browse/FINERACT-1783?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksandar Vidakovic updated FINERACT-1783: ------------------------------------------- Summary: Customizeable LoanRepaymentScheduleTransactionProcessor (was: Make LoanRepaymentScheduleTransactionProcessor customizeable) > Customizeable LoanRepaymentScheduleTransactionProcessor > ------------------------------------------------------- > > Key: FINERACT-1783 > URL: https://issues.apache.org/jira/browse/FINERACT-1783 > Project: Apache Fineract > Issue Type: Improvement > Reporter: Aleksandar Vidakovic > Assignee: Aleksandar Vidakovic > Priority: Major > Fix For: 1.9.0 > > > Currently Fineract supports 6 loan transaction processing strategies: > * standard > * heavens family > * early payment > * creocore > * Indian RBI > * principal/interest/penalty/fees order (default) > The strategy is loaded/instantiated via a factory class > "LoanRepaymentScheduleTransactionProcessor" and it's only method > "determineProcessor" by passing a "LoanTransactionProcessingStrategy" object. > "LoanTransactionProcessingStrategy" is effectively treated like an enum (only > its "code" attribute is used). The other attributes > "LoanTransactionProcessingStrategy" seem to be only for display purposes in a > UI. > Proposed improvements: > * remove hardcoded instantiations of processors > * remove "LoanTransactionProcessingStrategy" and avoid storing this > information in the database (table > "ref_loan_transaction_processing_strategy") in the first place. This would > also remove some unnecessary constraints/joins to this table. > * use dependency injection to make loan transaction processing customizable > * provide possibility to list all available processors for display in a UI -- This message was sent by Atlassian Jira (v8.20.10#820010)