Class LoanTransactionValidatorImpl
java.lang.Object
org.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidatorImpl
- All Implemented Interfaces:
org.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
@Component("loanTransactionValidator")
public final class LoanTransactionValidatorImpl
extends Object
implements org.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvalidateActivityNotBeforeClientOrGroupTransferDate(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, org.apache.fineract.portfolio.loanaccount.domain.LoanEvent event, LocalDate activityDate) voidvalidateActivityNotBeforeLastTransactionDate(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, LocalDate activityDate, org.apache.fineract.portfolio.loanaccount.domain.LoanEvent event) voidvoidvoidvalidateClassificationCodeValue(String codeName, Long transactionClassificationId, org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator) voidvalidateDisbursement(org.apache.fineract.infrastructure.core.api.JsonCommand command, boolean isAccountTransfer, Long loanId) voidvalidateExternalId(org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator, com.google.gson.JsonElement element) voidvoidvalidateIfTransactionIsChargeback(org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction chargebackTransaction) voidvalidateLoanClientIsActive(org.apache.fineract.portfolio.loanaccount.domain.Loan loan) voidvoidvalidateLoanGroupIsActive(org.apache.fineract.portfolio.loanaccount.domain.Loan loan) voidvalidateLoanRescheduleDate(org.apache.fineract.portfolio.loanaccount.domain.Loan loan) voidvalidateLoanTransactionInterestPaymentWaiver(org.apache.fineract.infrastructure.core.api.JsonCommand command) voidvalidateLoanTransactionInterestPaymentWaiverAfterRecalculation(org.apache.fineract.portfolio.loanaccount.domain.Loan loan) voidvoidvoidvoidvoidvalidateNote(org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator, com.google.gson.JsonElement element) voidvalidatePaymentDetails(org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator, com.google.gson.JsonElement element) voidvalidateRefund(String json) voidvalidateRefund(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, org.apache.fineract.portfolio.loanaccount.domain.LoanTransactionType loanTransactionType, LocalDate transactionDate, org.apache.fineract.portfolio.loanaccount.data.ScheduleGeneratorDTO scheduleGeneratorDTO) voidvalidateRefundDateIsAfterLastRepayment(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, LocalDate refundTransactionDate) voidvalidateRepaymentDateIsOnHoliday(LocalDate repaymentDate, boolean allowTransactionsOnHoliday, List<org.apache.fineract.organisation.holiday.domain.Holiday> holidays) voidvalidateRepaymentDateIsOnNonWorkingDay(LocalDate repaymentDate, org.apache.fineract.organisation.workingdays.domain.WorkingDays workingDays, boolean allowTransactionsOnNonWorkingDay) voidvalidateReversalExternalId(org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator, com.google.gson.JsonElement element) voidvalidateTransaction(String json) voidvoidvalidateUndoChargeOff(String json) voidvalidateUpdateDisbursementDateAndAmount(String json, org.apache.fineract.portfolio.loanaccount.domain.LoanDisbursementDetails loanDisbursementDetails) void
-
Constructor Details
-
LoanTransactionValidatorImpl
public LoanTransactionValidatorImpl()
-
-
Method Details
-
validateDisbursement
public void validateDisbursement(org.apache.fineract.infrastructure.core.api.JsonCommand command, boolean isAccountTransfer, Long loanId) - Specified by:
validateDisbursementin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateUndoChargeOff
- Specified by:
validateUndoChargeOffin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateTransaction
- Specified by:
validateTransactionin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateChargebackTransaction
- Specified by:
validateChargebackTransactionin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateNewRepaymentTransaction
- Specified by:
validateNewRepaymentTransactionin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateTransactionWithNoAmount
- Specified by:
validateTransactionWithNoAmountin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateChargeOffTransaction
- Specified by:
validateChargeOffTransactionin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateUpdateOfLoanOfficer
- Specified by:
validateUpdateOfLoanOfficerin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateForBulkLoanReassignment
- Specified by:
validateForBulkLoanReassignmentin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateMarkAsFraudLoan
- Specified by:
validateMarkAsFraudLoanin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateUpdateDisbursementDateAndAmount
public void validateUpdateDisbursementDateAndAmount(String json, org.apache.fineract.portfolio.loanaccount.domain.LoanDisbursementDetails loanDisbursementDetails) - Specified by:
validateUpdateDisbursementDateAndAmountin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateNewRefundTransaction
- Specified by:
validateNewRefundTransactionin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateLoanForeclosure
- Specified by:
validateLoanForeclosurein interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateLoanClientIsActive
public void validateLoanClientIsActive(org.apache.fineract.portfolio.loanaccount.domain.Loan loan) - Specified by:
validateLoanClientIsActivein interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateLoanGroupIsActive
public void validateLoanGroupIsActive(org.apache.fineract.portfolio.loanaccount.domain.Loan loan) - Specified by:
validateLoanGroupIsActivein interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateActivityNotBeforeLastTransactionDate
public void validateActivityNotBeforeLastTransactionDate(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, LocalDate activityDate, org.apache.fineract.portfolio.loanaccount.domain.LoanEvent event) - Specified by:
validateActivityNotBeforeLastTransactionDatein interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateRepaymentDateIsOnNonWorkingDay
public void validateRepaymentDateIsOnNonWorkingDay(LocalDate repaymentDate, org.apache.fineract.organisation.workingdays.domain.WorkingDays workingDays, boolean allowTransactionsOnNonWorkingDay) - Specified by:
validateRepaymentDateIsOnNonWorkingDayin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateRepaymentDateIsOnHoliday
public void validateRepaymentDateIsOnHoliday(LocalDate repaymentDate, boolean allowTransactionsOnHoliday, List<org.apache.fineract.organisation.holiday.domain.Holiday> holidays) - Specified by:
validateRepaymentDateIsOnHolidayin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateLoanTransactionInterestPaymentWaiver
public void validateLoanTransactionInterestPaymentWaiver(org.apache.fineract.infrastructure.core.api.JsonCommand command) - Specified by:
validateLoanTransactionInterestPaymentWaiverin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateLoanTransactionInterestPaymentWaiverAfterRecalculation
public void validateLoanTransactionInterestPaymentWaiverAfterRecalculation(org.apache.fineract.portfolio.loanaccount.domain.Loan loan) - Specified by:
validateLoanTransactionInterestPaymentWaiverAfterRecalculationin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateRefund
- Specified by:
validateRefundin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateRefund
public void validateRefund(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, org.apache.fineract.portfolio.loanaccount.domain.LoanTransactionType loanTransactionType, LocalDate transactionDate, org.apache.fineract.portfolio.loanaccount.data.ScheduleGeneratorDTO scheduleGeneratorDTO) - Specified by:
validateRefundin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateRefundDateIsAfterLastRepayment
public void validateRefundDateIsAfterLastRepayment(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, LocalDate refundTransactionDate) - Specified by:
validateRefundDateIsAfterLastRepaymentin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateActivityNotBeforeClientOrGroupTransferDate
public void validateActivityNotBeforeClientOrGroupTransferDate(org.apache.fineract.portfolio.loanaccount.domain.Loan loan, org.apache.fineract.portfolio.loanaccount.domain.LoanEvent event, LocalDate activityDate) - Specified by:
validateActivityNotBeforeClientOrGroupTransferDatein interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validatePaymentDetails
public void validatePaymentDetails(org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator, com.google.gson.JsonElement element) - Specified by:
validatePaymentDetailsin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateIfTransactionIsChargeback
public void validateIfTransactionIsChargeback(org.apache.fineract.portfolio.loanaccount.domain.LoanTransaction chargebackTransaction) - Specified by:
validateIfTransactionIsChargebackin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateLoanRescheduleDate
public void validateLoanRescheduleDate(org.apache.fineract.portfolio.loanaccount.domain.Loan loan) - Specified by:
validateLoanRescheduleDatein interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateNote
public void validateNote(org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator, com.google.gson.JsonElement element) - Specified by:
validateNotein interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateExternalId
public void validateExternalId(org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator, com.google.gson.JsonElement element) - Specified by:
validateExternalIdin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateReversalExternalId
public void validateReversalExternalId(org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator, com.google.gson.JsonElement element) - Specified by:
validateReversalExternalIdin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateManualInterestRefundTransaction
- Specified by:
validateManualInterestRefundTransactionin interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-
validateClassificationCodeValue
public void validateClassificationCodeValue(String codeName, Long transactionClassificationId, org.apache.fineract.infrastructure.core.data.DataValidatorBuilder baseDataValidator) - Specified by:
validateClassificationCodeValuein interfaceorg.apache.fineract.portfolio.loanaccount.serialization.LoanTransactionValidator
-