Class DepositProduct

java.lang.Object
tech.corefinance.product.entity.Product
tech.corefinance.product.entity.DepositProduct
All Implemented Interfaces:
Serializable, tech.corefinance.common.audit.AuditableEntity<ZonedDateTime,tech.corefinance.common.dto.BasicUserDto>, tech.corefinance.common.model.GenericModel<String>

@Entity public class DepositProduct extends Product
CurrentAccount:
A transactional account where a client may perform regular deposit and withdrawals, accrue interest and may optionally be allowed to go into overdraft.

Savings Account:
Allows you to create accounts where clients can make deposits and withdrawals when they wish. The interest is posted at the frequency you choose and accrued over time. It doesn't allow overdrafts.

Fixed Deposit:
As the name suggests, fixed deposits have a fixed term after which they should be withdrawn or closed. With this type of product, clients are able to make deposits until the minimum opening balance has been reached. At this point, you can begin the maturity period, during which they will be unable to deposit, but will be able to withdraw. Before the maturity date, you have the option to undo maturity.

Savings Plan:
Uses a maturity period like fixed deposits, but once the minimum opening balance has been reached, they will still be able to make deposits, even during the maturity period itself. However, they will no longer be able to make deposits once the maturity period has ended.

Savings Plan:
Uses a maturity period like fixed deposits, but once the minimum opening balance has been reached, they will still be able to make deposits, even during the maturity period itself. However, they will no longer be able to make deposits once the maturity period has ended.

See Also:
  • Constructor Details

    • DepositProduct

      public DepositProduct()
  • Method Details

    • getInterestRate

      public DepositInterestRate getInterestRate()
      Interest Rate.
    • getDaysToSetToDormant

      public Integer getDaysToSetToDormant()
    • getDepositLimits

      public List<DepositLimit> getDepositLimits()
      Deposit transaction limits.
    • getWithdrawalLimits

      public List<WithdrawalLimit> getWithdrawalLimits()
      Withdrawal Limits.
    • getEarlyClosurePeriod

      public Integer getEarlyClosurePeriod()
      Early Closure Period.
    • getAllowOverdrafts

      public Boolean getAllowOverdrafts()
    • getOverdraftsInterest

      public DepositInterestRate getOverdraftsInterest()
    • getMaxOverdraftLimit

      public List<CurrencyLimitValue> getMaxOverdraftLimit()
    • getOverdraftsUnderCreditArrangementManaged

      public CreditArrangementManaged getOverdraftsUnderCreditArrangementManaged()
    • isEnableTermDeposit

      public boolean isEnableTermDeposit()
    • getTermUnit

      public FrequencyOptionYearly getTermUnit()
    • getMinTermLength

      public Integer getMinTermLength()
    • getMaxTermLength

      public Integer getMaxTermLength()
    • getDefaultTermLength

      public Integer getDefaultTermLength()
    • setInterestRate

      public void setInterestRate(DepositInterestRate interestRate)
      Interest Rate.
    • setDaysToSetToDormant

      public void setDaysToSetToDormant(Integer daysToSetToDormant)
    • setDepositLimits

      public void setDepositLimits(List<DepositLimit> depositLimits)
      Deposit transaction limits.
    • setWithdrawalLimits

      public void setWithdrawalLimits(List<WithdrawalLimit> withdrawalLimits)
      Withdrawal Limits.
    • setEarlyClosurePeriod

      public void setEarlyClosurePeriod(Integer earlyClosurePeriod)
      Early Closure Period.
    • setAllowOverdrafts

      public void setAllowOverdrafts(Boolean allowOverdrafts)
    • setOverdraftsInterest

      public void setOverdraftsInterest(DepositInterestRate overdraftsInterest)
    • setMaxOverdraftLimit

      public void setMaxOverdraftLimit(List<CurrencyLimitValue> maxOverdraftLimit)
    • setOverdraftsUnderCreditArrangementManaged

      public void setOverdraftsUnderCreditArrangementManaged(CreditArrangementManaged overdraftsUnderCreditArrangementManaged)
    • setEnableTermDeposit

      public void setEnableTermDeposit(boolean enableTermDeposit)
    • setTermUnit

      public void setTermUnit(FrequencyOptionYearly termUnit)
    • setMinTermLength

      public void setMinTermLength(Integer minTermLength)
    • setMaxTermLength

      public void setMaxTermLength(Integer maxTermLength)
    • setDefaultTermLength

      public void setDefaultTermLength(Integer defaultTermLength)
    • toString

      public String toString()
      Overrides:
      toString in class Product
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Product
    • canEqual

      protected boolean canEqual(Object other)
      Overrides:
      canEqual in class Product
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Product