FINERACT-2081: Add missing fields to Loan product swagger

This commit is contained in:
Adam Saghy
2024-07-19 10:37:54 +02:00
parent 905a733f9e
commit e4c857d6fa
@@ -191,6 +191,12 @@ final class LoanProductsApiResourceSwagger {
public Integer recalculationCompoundingFrequencyInterval; public Integer recalculationCompoundingFrequencyInterval;
@Schema(example = "1") @Schema(example = "1")
public Integer recalculationCompoundingFrequencyOnDayType; public Integer recalculationCompoundingFrequencyOnDayType;
@Schema(example = "false")
public Boolean isArrearsBasedOnOriginalSchedule;
@Schema(example = "false")
public Boolean isCompoundingToBePostedAsTransaction;
@Schema(example = "false")
public Boolean allowCompoundingOnEod;
// Accounting // Accounting
@Schema(example = "3") @Schema(example = "3")
@@ -509,6 +515,10 @@ final class LoanProductsApiResourceSwagger {
public GetLoanProductsPreClosureInterestCalculationStrategy preClosureInterestCalculationStrategy; public GetLoanProductsPreClosureInterestCalculationStrategy preClosureInterestCalculationStrategy;
@Schema(example = "true") @Schema(example = "true")
public Boolean isArrearsBasedOnOriginalSchedule; public Boolean isArrearsBasedOnOriginalSchedule;
@Schema(example = "true")
public Boolean isCompoundingToBePostedAsTransaction;
@Schema(example = "true")
public Boolean allowCompoundingOnEod;
@Schema(example = "1") @Schema(example = "1")
public Integer recalculationCompoundingFrequencyInterval; public Integer recalculationCompoundingFrequencyInterval;
@Schema(example = "1") @Schema(example = "1")
@@ -1146,13 +1156,22 @@ final class LoanProductsApiResourceSwagger {
public GetGlAccountMapping loanPortfolioAccount; public GetGlAccountMapping loanPortfolioAccount;
public GetGlAccountMapping transfersInSuspenseAccount; public GetGlAccountMapping transfersInSuspenseAccount;
public GetGlAccountMapping receivableInterestAccount; public GetGlAccountMapping receivableInterestAccount;
public GetGlAccountMapping receivableFeeAccount;
public GetGlAccountMapping receivablePenaltyAccount; public GetGlAccountMapping receivablePenaltyAccount;
public GetGlAccountMapping interestOnLoanAccount; public GetGlAccountMapping interestOnLoanAccount;
public GetGlAccountMapping incomeFromFeeAccount; public GetGlAccountMapping incomeFromFeeAccount;
public GetGlAccountMapping incomeFromPenaltyAccount; public GetGlAccountMapping incomeFromPenaltyAccount;
public GetGlAccountMapping incomeFromRecoveryAccount; public GetGlAccountMapping incomeFromRecoveryAccount;
public GetGlAccountMapping incomeFromChargeOffFeesAccount;
public GetGlAccountMapping incomeFromChargeOffInterestAccount;
public GetGlAccountMapping incomeFromChargeOffPenaltyAccount;
public GetGlAccountMapping incomeFromGoodwillCreditInterestAccount;
public GetGlAccountMapping incomeFromGoodwillCreditFeesAccount;
public GetGlAccountMapping incomeFromGoodwillCreditPenaltyAccount;
public GetGlAccountMapping writeOffAccount; public GetGlAccountMapping writeOffAccount;
public GetGlAccountMapping goodwillCreditAccount; public GetGlAccountMapping goodwillCreditAccount;
public GetGlAccountMapping chargeOffExpenseAccount;
public GetGlAccountMapping chargeOffFraudExpenseAccount;
public GetGlAccountMapping overpaymentLiabilityAccount; public GetGlAccountMapping overpaymentLiabilityAccount;
} }
@@ -1198,6 +1217,8 @@ final class LoanProductsApiResourceSwagger {
public String name; public String name;
@Schema(example = "ad11") @Schema(example = "ad11")
public String shortName; public String shortName;
@Schema(example = "sample description")
public String description;
@Schema(example = "true") @Schema(example = "true")
public Boolean includeInBorrowerCycle; public Boolean includeInBorrowerCycle;
@Schema(example = "true") @Schema(example = "true")
@@ -1213,6 +1234,10 @@ final class LoanProductsApiResourceSwagger {
public Double maxPrincipal; public Double maxPrincipal;
@Schema(example = "7") @Schema(example = "7")
public Integer numberOfRepayments; public Integer numberOfRepayments;
@Schema(example = "5")
public Integer minNumberOfRepayments;
@Schema(example = "10")
public Integer maxNumberOfRepayments;
@Schema(example = "7") @Schema(example = "7")
public Integer repaymentEvery; public Integer repaymentEvery;
public GetLoanProductsResponse.GetLoanProductsRepaymentFrequencyType repaymentFrequencyType; public GetLoanProductsResponse.GetLoanProductsRepaymentFrequencyType repaymentFrequencyType;
@@ -1220,14 +1245,30 @@ final class LoanProductsApiResourceSwagger {
public Integer fixedLength; public Integer fixedLength;
@Schema(example = "5.000000") @Schema(example = "5.000000")
public Double interestRatePerPeriod; public Double interestRatePerPeriod;
@Schema(example = "0.000000")
public Double minInterestRatePerPeriod;
@Schema(example = "10.000000")
public Double maxInterestRatePerPeriod;
public GetLoanProductsProductIdResponse.GetLoanProductsInterestRateFrequencyType interestRateFrequencyType; public GetLoanProductsProductIdResponse.GetLoanProductsInterestRateFrequencyType interestRateFrequencyType;
@Schema(example = "60.000000") @Schema(example = "60.000000")
public Double annualInterestRate; public Double annualInterestRate;
@Schema(example = "false")
public Boolean isLinkedToFloatingInterestRates;
@Schema(example = "false")
public Boolean isFloatingInterestRateCalculationAllowed;
@Schema(example = "false")
public Boolean allowVariableInstallments;
@Schema(example = "0")
public Integer minimumGap;
@Schema(example = "1")
public Integer maximumGap;
public GetLoanProductsResponse.GetLoanProductsAmortizationType amortizationType; public GetLoanProductsResponse.GetLoanProductsAmortizationType amortizationType;
@Schema(example = "5.5") @Schema(example = "5.5")
public BigDecimal fixedPrincipalPercentagePerInstallment; public BigDecimal fixedPrincipalPercentagePerInstallment;
public GetLoanProductsTemplateResponse.GetLoanProductsInterestTemplateType interestType; public GetLoanProductsTemplateResponse.GetLoanProductsInterestTemplateType interestType;
public GetLoanProductsResponse.GetLoansProductsInterestCalculationPeriodType interestCalculationPeriodType; public GetLoanProductsResponse.GetLoansProductsInterestCalculationPeriodType interestCalculationPeriodType;
@Schema(example = "false")
public Boolean allowPartialPeriodInterestCalculation;
@Schema(example = "mifos-standard-strategy") @Schema(example = "mifos-standard-strategy")
public String transactionProcessingStrategyCode; public String transactionProcessingStrategyCode;
@Schema(example = "Mifos style") @Schema(example = "Mifos style")
@@ -1236,6 +1277,11 @@ final class LoanProductsApiResourceSwagger {
public List<AdvancedPaymentData> paymentAllocation; public List<AdvancedPaymentData> paymentAllocation;
@Schema(example = "[]") @Schema(example = "[]")
public List<CreditAllocationData> creditAllocation; public List<CreditAllocationData> creditAllocation;
@Schema(example = "false")
public Boolean isInterestRecalculationEnabled;
public GetLoanProductsResponse.GetLoanProductsInterestRecalculationData interestRecalculationData;
@Schema(example = "false")
public Boolean canDefineInstallmentAmount;
@Schema(example = "[]") @Schema(example = "[]")
public List<Integer> charges; public List<Integer> charges;
public Set<GetLoanProductsPrincipalVariationsForBorrowerCycle> productsPrincipalVariationsForBorrowerCycle; public Set<GetLoanProductsPrincipalVariationsForBorrowerCycle> productsPrincipalVariationsForBorrowerCycle;
@@ -1244,24 +1290,33 @@ final class LoanProductsApiResourceSwagger {
@Schema(example = "[]") @Schema(example = "[]")
public List<Integer> numberOfRepaymentVariationsForBorrowerCycle; public List<Integer> numberOfRepaymentVariationsForBorrowerCycle;
public GetLoanProductsResponse.GetLoanProductsAccountingRule accountingRule; public GetLoanProductsResponse.GetLoanProductsAccountingRule accountingRule;
@Schema(example = "false")
public Boolean canUseForTopup;
public GetLoanAccountingMappings accountingMappings; public GetLoanAccountingMappings accountingMappings;
public Set<GetLoanPaymentChannelToFundSourceMappings> paymentChannelToFundSourceMappings; public Set<GetLoanPaymentChannelToFundSourceMappings> paymentChannelToFundSourceMappings;
public Set<GetLoanFeeToIncomeAccountMappings> feeToIncomeAccountMappings; public Set<GetLoanFeeToIncomeAccountMappings> feeToIncomeAccountMappings;
@Schema(example = "false")
public Boolean isRatesEnabled;
@Schema(example = "true") @Schema(example = "true")
public Boolean multiDisburseLoan; public Boolean multiDisburseLoan;
@Schema(example = "3") @Schema(example = "3")
public Integer maxTrancheCount; public Integer maxTrancheCount;
@Schema(example = "36000.000000") @Schema(example = "36000.000000")
public Double outstandingLoanBalance; public Double outstandingLoanBalance;
@Schema(example = "true")
public Boolean disallowExpectedDisbursements;
@Schema(example = "true")
public Boolean allowApprovedDisbursedAmountsOverApplied;
@Schema(example = "flat")
public String overAppliedCalculationType;
@Schema(example = "2") @Schema(example = "2")
public Integer overdueDaysForNPA; public Integer overdueDaysForNPA;
@Schema(example = "50") @Schema(example = "50")
public Integer principalThresholdForLastInstalment; public Integer principalThresholdForLastInstalment;
public GetDelinquencyBucketsResponse delinquencyBucket; public GetDelinquencyBucketsResponse delinquencyBucket;
public List<GetDelinquencyBucketsResponse> delinquencyBucketOptions;
@Schema(example = "false") @Schema(example = "false")
public Boolean enableInstallmentLevelDelinquency; public Boolean enableInstallmentLevelDelinquency;
@Schema(example = "true")
public Boolean disallowExpectedDisbursements;
@Schema(example = "3") @Schema(example = "3")
public Integer dueDaysForRepaymentEvent; public Integer dueDaysForRepaymentEvent;
@Schema(example = "3") @Schema(example = "3")
@@ -1438,6 +1493,12 @@ final class LoanProductsApiResourceSwagger {
public Integer recalculationCompoundingFrequencyInterval; public Integer recalculationCompoundingFrequencyInterval;
@Schema(example = "1") @Schema(example = "1")
public Integer recalculationCompoundingFrequencyOnDayType; public Integer recalculationCompoundingFrequencyOnDayType;
@Schema(example = "false")
public Boolean isArrearsBasedOnOriginalSchedule;
@Schema(example = "false")
public Boolean isCompoundingToBePostedAsTransaction;
@Schema(example = "false")
public Boolean allowCompoundingOnEod;
// Accounting // Accounting
@Schema(example = "3") @Schema(example = "3")