@Override public Collection<EnumOptionData> retrievewithdrawalFeeTypeOptions() { List<EnumOptionData> allowedOptions = Arrays.asList( // SavingsEnumerations.withdrawalFeeType(SavingsWithdrawalFeesType.FLAT), // SavingsEnumerations.withdrawalFeeType(SavingsWithdrawalFeesType.PERCENT_OF_AMOUNT) // ); return allowedOptions; }
@Override public Collection<EnumOptionData> retrieveInterestCalculationDaysInYearTypeOptions() { List<EnumOptionData> allowedOptions = Arrays.asList( // SavingsEnumerations.interestCalculationDaysInYearType( SavingsInterestCalculationDaysInYearType.DAYS_360), // SavingsEnumerations.interestCalculationDaysInYearType( SavingsInterestCalculationDaysInYearType.DAYS_365) // ); return allowedOptions; }
@Override public Collection<EnumOptionData> retrieveInterestCalculationTypeOptions() { List<EnumOptionData> allowedOptions = Arrays.asList( // SavingsEnumerations.interestCalculationType( SavingsInterestCalculationType.DAILY_BALANCE), // SavingsEnumerations.interestCalculationType( SavingsInterestCalculationType.AVERAGE_DAILY_BALANCE) // ); return allowedOptions; }
@Override public List<EnumOptionData> retrieveLockinPeriodFrequencyTypeOptions() { List<EnumOptionData> allowedLockinPeriodFrequencyTypeOptions = Arrays.asList( // SavingsEnumerations.lockinPeriodFrequencyType(SavingsPeriodFrequencyType.DAYS), // SavingsEnumerations.lockinPeriodFrequencyType(SavingsPeriodFrequencyType.WEEKS), // SavingsEnumerations.lockinPeriodFrequencyType(SavingsPeriodFrequencyType.MONTHS), // SavingsEnumerations.lockinPeriodFrequencyType(SavingsPeriodFrequencyType.YEARS) // ); return allowedLockinPeriodFrequencyTypeOptions; }
@Override public Collection<EnumOptionData> retrieveInterestPostingPeriodTypeOptions() { List<EnumOptionData> allowedOptions = Arrays.asList( // SavingsEnumerations.interestPostingPeriodType( SavingsPostingInterestPeriodType.MONTHLY), // SavingsEnumerations.interestPostingPeriodType( SavingsPostingInterestPeriodType.QUATERLY), // SavingsEnumerations.interestPostingPeriodType( SavingsPostingInterestPeriodType.ANNUAL) // ); return allowedOptions; }
@Override public Collection<EnumOptionData> retrieveCompoundingInterestPeriodTypeOptions() { List<EnumOptionData> allowedOptions = Arrays.asList( // SavingsEnumerations.compoundingInterestPeriodType( SavingsCompoundingInterestPeriodType.DAILY), // // // SavingsEnumerations.compoundingInterestPeriodType(SavingsCompoundingInterestPeriodType.WEEKLY), // // // SavingsEnumerations.compoundingInterestPeriodType(SavingsCompoundingInterestPeriodType.BIWEEKLY), // SavingsEnumerations.compoundingInterestPeriodType( SavingsCompoundingInterestPeriodType.MONTHLY) // // SavingsEnumerations.compoundingInterestPeriodType(SavingsCompoundingInterestPeriodType.QUATERLY), // // // SavingsEnumerations.compoundingInterestPeriodType(SavingsCompoundingInterestPeriodType.BI_ANNUAL), // // // SavingsEnumerations.compoundingInterestPeriodType(SavingsCompoundingInterestPeriodType.ANNUAL), // // // SavingsEnumerations.compoundingInterestPeriodType(SavingsCompoundingInterestPeriodType.NO_COMPOUNDING_SIMPLE_INTEREST) // ); return allowedOptions; }
@Override public SavingsProductData mapRow( final ResultSet rs, @SuppressWarnings("unused") final int rowNum) throws SQLException { final Long id = rs.getLong("id"); final String name = rs.getString("name"); final String shortName = rs.getString("shortName"); final String description = rs.getString("description"); final String currencyCode = rs.getString("currencyCode"); final String currencyName = rs.getString("currencyName"); final String currencyNameCode = rs.getString("currencyNameCode"); final String currencyDisplaySymbol = rs.getString("currencyDisplaySymbol"); final Integer currencyDigits = JdbcSupport.getInteger(rs, "currencyDigits"); final Integer inMultiplesOf = JdbcSupport.getInteger(rs, "inMultiplesOf"); final CurrencyData currency = new CurrencyData( currencyCode, currencyName, currencyDigits, inMultiplesOf, currencyDisplaySymbol, currencyNameCode); final BigDecimal nominalAnnualInterestRate = rs.getBigDecimal("nominalAnnualInterestRate"); final Integer compoundingInterestPeriodTypeValue = JdbcSupport.getInteger(rs, "compoundingInterestPeriodType"); final EnumOptionData compoundingInterestPeriodType = SavingsEnumerations.compoundingInterestPeriodType(compoundingInterestPeriodTypeValue); final Integer interestPostingPeriodTypeValue = JdbcSupport.getInteger(rs, "interestPostingPeriodType"); final EnumOptionData interestPostingPeriodType = SavingsEnumerations.interestPostingPeriodType(interestPostingPeriodTypeValue); final Integer interestCalculationTypeValue = JdbcSupport.getInteger(rs, "interestCalculationType"); final EnumOptionData interestCalculationType = SavingsEnumerations.interestCalculationType(interestCalculationTypeValue); EnumOptionData interestCalculationDaysInYearType = null; final Integer interestCalculationDaysInYearTypeValue = JdbcSupport.getInteger(rs, "interestCalculationDaysInYearType"); if (interestCalculationDaysInYearTypeValue != null) { interestCalculationDaysInYearType = SavingsEnumerations.interestCalculationDaysInYearType( interestCalculationDaysInYearTypeValue); } final Integer accountingRuleId = JdbcSupport.getInteger(rs, "accountingType"); final EnumOptionData accountingRuleType = AccountingEnumerations.accountingRuleType(accountingRuleId); final BigDecimal minRequiredOpeningBalance = rs.getBigDecimal("minRequiredOpeningBalance"); final Integer lockinPeriodFrequency = JdbcSupport.getInteger(rs, "lockinPeriodFrequency"); EnumOptionData lockinPeriodFrequencyType = null; final Integer lockinPeriodFrequencyTypeValue = JdbcSupport.getInteger(rs, "lockinPeriodFrequencyType"); if (lockinPeriodFrequencyTypeValue != null) { lockinPeriodFrequencyType = SavingsEnumerations.lockinPeriodFrequencyType(lockinPeriodFrequencyTypeValue); } final boolean withdrawalFeeForTransfers = rs.getBoolean("withdrawalFeeForTransfers"); final boolean allowOverdraft = rs.getBoolean("allowOverdraft"); final BigDecimal overdraftLimit = rs.getBigDecimal("overdraftLimit"); return SavingsProductData.instance( id, name, shortName, description, currency, nominalAnnualInterestRate, compoundingInterestPeriodType, interestPostingPeriodType, interestCalculationType, interestCalculationDaysInYearType, minRequiredOpeningBalance, lockinPeriodFrequency, lockinPeriodFrequencyType, withdrawalFeeForTransfers, accountingRuleType, allowOverdraft, overdraftLimit); }
@Override public RecurringDepositProductData mapRow( final ResultSet rs, @SuppressWarnings("unused") final int rowNum) throws SQLException { final DepositProductData depositProductData = super.mapRow(rs); final boolean interestFreePeriodApplicable = rs.getBoolean("interestFreePeriodApplicable"); final Integer interestFreeFromPeriod = JdbcSupport.getInteger(rs, "interestFreeFromPeriod"); final Integer interestFreeToPeriod = JdbcSupport.getInteger(rs, "interestFreeToPeriod"); final Integer periodFrequencyTypeId = JdbcSupport.getInteger(rs, "interestFreePeriodFrequencyId"); final EnumOptionData interestFreePeriodFrequencyType = (periodFrequencyTypeId == null) ? null : InterestRateChartEnumerations.periodType(periodFrequencyTypeId); final boolean preClosurePenalApplicable = rs.getBoolean("preClosurePenalApplicable"); final BigDecimal preClosurePenalInterest = JdbcSupport.getBigDecimalDefaultToNullIfZero(rs, "preClosurePenalInterest"); final Integer preClosurePenalInterestOnTypeId = JdbcSupport.getInteger(rs, "preClosurePenalInterestOnId"); final EnumOptionData preClosurePenalInterestOnType = (preClosurePenalInterestOnTypeId == null) ? null : SavingsEnumerations.preClosurePenaltyInterestOnType( preClosurePenalInterestOnTypeId); final Integer recurringDepositTypeId = JdbcSupport.getInteger(rs, "recurringDepositTypeId"); final EnumOptionData recurringDepositType = (recurringDepositTypeId == null) ? null : SavingsEnumerations.recurringDepositType(recurringDepositTypeId); final Integer recurringDepositFrequency = JdbcSupport.getInteger(rs, "recurringDepositFrequency"); final Integer recurringDepositFrequencyTypeId = JdbcSupport.getInteger(rs, "recurringDepositFrequencyTypeId"); final BigDecimal minDepositAmount = JdbcSupport.getBigDecimalDefaultToNullIfZero(rs, "minDepositAmount"); final BigDecimal depositAmount = JdbcSupport.getBigDecimalDefaultToNullIfZero(rs, "depositAmount"); final BigDecimal maxDepositAmount = JdbcSupport.getBigDecimalDefaultToNullIfZero(rs, "maxDepositAmount"); final EnumOptionData recurringDepositFrequencyType = (recurringDepositFrequencyTypeId == null) ? null : SavingsEnumerations.recurringDepositFrequencyType(recurringDepositFrequencyTypeId); final Integer minDepositTerm = JdbcSupport.getInteger(rs, "minDepositTerm"); final Integer maxDepositTerm = JdbcSupport.getInteger(rs, "maxDepositTerm"); final Integer minDepositTermTypeId = JdbcSupport.getInteger(rs, "minDepositTermTypeId"); final EnumOptionData minDepositTermType = (minDepositTermTypeId == null) ? null : SavingsEnumerations.depositTermFrequencyType(minDepositTermTypeId); final Integer maxDepositTermTypeId = JdbcSupport.getInteger(rs, "maxDepositTermTypeId"); final EnumOptionData maxDepositTermType = (maxDepositTermTypeId == null) ? null : SavingsEnumerations.depositTermFrequencyType(maxDepositTermTypeId); final Integer inMultiplesOfDepositTerm = JdbcSupport.getInteger(rs, "inMultiplesOfDepositTerm"); final Integer inMultiplesOfDepositTermTypeId = JdbcSupport.getInteger(rs, "inMultiplesOfDepositTermTypeId"); final EnumOptionData inMultiplesOfDepositTermType = (inMultiplesOfDepositTermTypeId == null) ? null : SavingsEnumerations.depositTermFrequencyType(inMultiplesOfDepositTermTypeId); return RecurringDepositProductData.instance( depositProductData, interestFreePeriodApplicable, interestFreeFromPeriod, interestFreeToPeriod, interestFreePeriodFrequencyType, preClosurePenalApplicable, preClosurePenalInterest, preClosurePenalInterestOnType, minDepositTerm, maxDepositTerm, minDepositTermType, maxDepositTermType, inMultiplesOfDepositTerm, inMultiplesOfDepositTermType, recurringDepositType, recurringDepositFrequency, recurringDepositFrequencyType, minDepositAmount, depositAmount, maxDepositAmount); }
public DepositProductData mapRow(final ResultSet rs) throws SQLException { final Long id = rs.getLong("id"); final String name = rs.getString("name"); final String shortName = rs.getString("shortName"); final String description = rs.getString("description"); final String currencyCode = rs.getString("currencyCode"); final String currencyName = rs.getString("currencyName"); final String currencyNameCode = rs.getString("currencyNameCode"); final String currencyDisplaySymbol = rs.getString("currencyDisplaySymbol"); final Integer currencyDigits = JdbcSupport.getInteger(rs, "currencyDigits"); final Integer inMultiplesOf = JdbcSupport.getInteger(rs, "inMultiplesOf"); final CurrencyData currency = new CurrencyData( currencyCode, currencyName, currencyDigits, inMultiplesOf, currencyDisplaySymbol, currencyNameCode); final BigDecimal nominalAnnualInterestRate = rs.getBigDecimal("nominalAnnualInterestRate"); final Integer compoundingInterestPeriodTypeValue = JdbcSupport.getInteger(rs, "compoundingInterestPeriodType"); final EnumOptionData compoundingInterestPeriodType = SavingsEnumerations.compoundingInterestPeriodType(compoundingInterestPeriodTypeValue); final Integer interestPostingPeriodTypeValue = JdbcSupport.getInteger(rs, "interestPostingPeriodType"); final EnumOptionData interestPostingPeriodType = SavingsEnumerations.interestPostingPeriodType(interestPostingPeriodTypeValue); final Integer interestCalculationTypeValue = JdbcSupport.getInteger(rs, "interestCalculationType"); final EnumOptionData interestCalculationType = SavingsEnumerations.interestCalculationType(interestCalculationTypeValue); EnumOptionData interestCalculationDaysInYearType = null; final Integer interestCalculationDaysInYearTypeValue = JdbcSupport.getInteger(rs, "interestCalculationDaysInYearType"); if (interestCalculationDaysInYearTypeValue != null) { interestCalculationDaysInYearType = SavingsEnumerations.interestCalculationDaysInYearType( interestCalculationDaysInYearTypeValue); } final Integer accountingRuleId = JdbcSupport.getInteger(rs, "accountingType"); final EnumOptionData accountingRuleType = AccountingEnumerations.accountingRuleType(accountingRuleId); final Integer lockinPeriodFrequency = JdbcSupport.getInteger(rs, "lockinPeriodFrequency"); EnumOptionData lockinPeriodFrequencyType = null; final Integer lockinPeriodFrequencyTypeValue = JdbcSupport.getInteger(rs, "lockinPeriodFrequencyType"); if (lockinPeriodFrequencyTypeValue != null) { lockinPeriodFrequencyType = SavingsEnumerations.lockinPeriodFrequencyType(lockinPeriodFrequencyTypeValue); } return DepositProductData.instance( id, name, shortName, description, currency, nominalAnnualInterestRate, compoundingInterestPeriodType, interestPostingPeriodType, interestCalculationType, interestCalculationDaysInYearType, lockinPeriodFrequency, lockinPeriodFrequencyType, accountingRuleType); }