コード例 #1
0
  public static LoanProductData sensibleDefaultsForNewLoanProductCreation() {
    final Long id = null;
    final String name = null;
    final String shortName = null;
    final String description = null;
    final CurrencyData currency = CurrencyData.blank();
    final BigDecimal principal = null;
    final BigDecimal minPrincipal = null;
    final BigDecimal maxPrincipal = null;
    final BigDecimal tolerance = null;
    final Integer numberOfRepayments = null;
    final Integer minNumberOfRepayments = null;
    final Integer maxNumberOfRepayments = null;

    final Integer repaymentEvery = null;
    final BigDecimal interestRatePerPeriod = null;
    final BigDecimal minInterestRatePerPeriod = null;
    final BigDecimal maxInterestRatePerPeriod = null;
    final BigDecimal annualInterestRate = null;
    final EnumOptionData repaymentFrequencyType =
        LoanEnumerations.repaymentFrequencyType(PeriodFrequencyType.MONTHS);
    final EnumOptionData interestRateFrequencyType =
        LoanEnumerations.interestRateFrequencyType(PeriodFrequencyType.MONTHS);
    final EnumOptionData amortizationType =
        LoanEnumerations.amortizationType(AmortizationMethod.EQUAL_INSTALLMENTS);
    final EnumOptionData interestType =
        LoanEnumerations.interestType(InterestMethod.DECLINING_BALANCE);
    final EnumOptionData interestCalculationPeriodType =
        LoanEnumerations.interestCalculationPeriodType(
            InterestCalculationPeriodMethod.SAME_AS_REPAYMENT_PERIOD);
    final Long fundId = null;
    final String fundName = null;
    final Long transactionProcessingStrategyId = null;
    final String transactionProcessingStrategyName = null;

    final Integer graceOnPrincipalPayment = null;
    final Integer graceOnInterestPayment = null;
    final Integer graceOnInterestCharged = null;
    final Integer graceOnArrearsAgeing = null;

    final Collection<ChargeData> charges = null;
    final Collection<LoanProductBorrowerCycleVariationData> principalVariationsForBorrowerCycle =
        new ArrayList<LoanProductBorrowerCycleVariationData>(1);
    final Collection<LoanProductBorrowerCycleVariationData> interestRateVariationsForBorrowerCycle =
        new ArrayList<LoanProductBorrowerCycleVariationData>(1);
    final Collection<LoanProductBorrowerCycleVariationData>
        numberOfRepaymentVariationsForBorrowerCycle =
            new ArrayList<LoanProductBorrowerCycleVariationData>(1);

    final EnumOptionData accountingType =
        AccountingEnumerations.accountingRuleType(AccountingRuleType.NONE);
    final boolean includeInBorrowerCycle = false;
    final boolean useBorrowerCycle = false;
    final LocalDate startDate = null;
    final LocalDate closeDate = null;
    final String status = null;
    final String externalId = null;
    final Boolean multiDisburseLoan = null;
    final Integer maxTrancheCount = null;
    final BigDecimal outstandingLoanBalance = null;

    return new LoanProductData(
        id,
        name,
        shortName,
        description,
        currency,
        principal,
        minPrincipal,
        maxPrincipal,
        tolerance,
        numberOfRepayments,
        minNumberOfRepayments,
        maxNumberOfRepayments,
        repaymentEvery,
        interestRatePerPeriod,
        minInterestRatePerPeriod,
        maxInterestRatePerPeriod,
        annualInterestRate,
        repaymentFrequencyType,
        interestRateFrequencyType,
        amortizationType,
        interestType,
        interestCalculationPeriodType,
        fundId,
        fundName,
        transactionProcessingStrategyId,
        transactionProcessingStrategyName,
        graceOnPrincipalPayment,
        graceOnInterestPayment,
        graceOnInterestCharged,
        charges,
        accountingType,
        includeInBorrowerCycle,
        useBorrowerCycle,
        startDate,
        closeDate,
        status,
        externalId,
        principalVariationsForBorrowerCycle,
        interestRateVariationsForBorrowerCycle,
        numberOfRepaymentVariationsForBorrowerCycle,
        multiDisburseLoan,
        maxTrancheCount,
        outstandingLoanBalance,
        graceOnArrearsAgeing);
  }