TradeFinance.java

package com.tradecloud.domain.model.ordermanagement;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.tradecloud.common.base.PersistenceBase;

import javax.persistence.*;
import java.math.BigDecimal;

/**
 * Created by ds on 2017/06/13.
 */
@Entity
@Table(name = "tradefinance", uniqueConstraints = {@UniqueConstraint(columnNames = {"tradeFinanceRequired", "financeableItems"})})
public class TradeFinance extends PersistenceBase {
    @JsonProperty(required = true)
    private boolean tradeFinanceRequired;
    @Enumerated(EnumType.STRING)
    @JsonProperty(required = true)
    private FinanceableItems financeableItems;
    @JsonPropertyDescription(value = "required when TradeFinanceDTO.level  is Item")
    private BigDecimal creditTermRequired;

    @JsonIgnore
    private BigDecimal primeRatePercentage;
    @JsonIgnore
    private BigDecimal marginFeePercentage;
    @JsonIgnore
    private BigDecimal serviceFeePercentage;

    private BigDecimal maxCreditTermRequired;

    public FinanceableItems getFinanceableItems() {
        return financeableItems;
    }

    public void setFinanceableItems(FinanceableItems financeableItems) {
        this.financeableItems = financeableItems;
    }

//    public Order getOrder() {
//        return order;
//    }
//
//    public void setOrder(Order order) {
//        this.order = order;
//    }

    public boolean isTradeFinanceRequired() {
        return tradeFinanceRequired;
    }

    public void setTradeFinanceRequired(boolean tradeFinanceRequired) {
        this.tradeFinanceRequired = tradeFinanceRequired;
    }

    public BigDecimal getCreditTermRequired() {
        return creditTermRequired;
    }

    public void setCreditTermRequired(BigDecimal creditTermRequired) {
        this.creditTermRequired = creditTermRequired;
    }

    public BigDecimal getPrimeRatePercentage() {
        return primeRatePercentage;
    }

    public void setPrimeRatePercentage(BigDecimal primeRatePercentage) {
        this.primeRatePercentage = primeRatePercentage;
    }

    public BigDecimal getMarginFeePercentage() {
        return marginFeePercentage;
    }

    public void setMarginFeePercentage(BigDecimal marginFeePercentage) {
        this.marginFeePercentage = marginFeePercentage;
    }

    public BigDecimal getServiceFeePercentage() {
        return serviceFeePercentage;
    }

    public void setServiceFeePercentage(BigDecimal serviceFeePercentage) {
        this.serviceFeePercentage = serviceFeePercentage;
    }

    public BigDecimal getMaxCreditTermRequired() {
        return maxCreditTermRequired;
    }

    public void setMaxCreditTermRequired(BigDecimal maxCreditTermRequired) {
        this.maxCreditTermRequired = maxCreditTermRequired;
    }
}