package com.common.bean;

import java.io.Serializable;

/**
 * Created by SiKang on 2018/10/16.
 */
public class ProductBean implements Serializable {
    private Double interestRate = 0.0;
    private Double serviceFee = 0.0;
    private Double minAmount = 0.0;
    private int gracePeriodDays = 0;
    private int periodStep = 0;
    private int minPeriod = 0;
    private int maxPeriod = 0;
    private long id = 0;
    private Double minRepaymentAmount = 0.0;
    private Double gracePeriodRate = 0.0;
    private Double amountStep = 0.0;
    private Double overdueRate = 0.0;
    private Double maxAmount = 0.0;
    private String description = "";
    private String updateTime = "";
    private String periodUnit = "";
    private String createTime = "";
    private String name = "";
    private String withholdMethod = "";
    private String certProgress = "";
    private boolean choose;

    private double checkedAmount = 0;
    private int checkedPeriod = 0;


    public double getCheckedAmount() {
        if(checkedAmount==0){
            return minAmount;
        }
        return checkedAmount;
    }

    public void setCheckedAmount(double checkedAmount) {
        this.checkedAmount = checkedAmount;
    }

    public int getCheckedPeriod() {
        if(checkedPeriod==0){
            return minPeriod;
        }
        return checkedPeriod;
    }

    public void setCheckedPeriod(int checkedPeriod) {
        this.checkedPeriod = checkedPeriod;
    }

    public Double getInterestRate() {
        return interestRate;
    }

    public void setInterestRate(Double interestRate) {
        this.interestRate = interestRate;
    }

    public Double getServiceFee() {
        return serviceFee;
    }

    public void setServiceFee(Double serviceFee) {
        this.serviceFee = serviceFee;
    }

    public Double getMinAmount() {
        return minAmount;
    }

    public void setMinAmount(Double minAmount) {
        this.minAmount = minAmount;
    }

    public int getGracePeriodDays() {
        return gracePeriodDays;
    }

    public void setGracePeriodDays(int gracePeriodDays) {
        this.gracePeriodDays = gracePeriodDays;
    }

    public int getPeriodStep() {
        return periodStep;
    }

    public void setPeriodStep(int periodStep) {
        this.periodStep = periodStep;
    }

    public int getMinPeriod() {
        return minPeriod;
    }

    public void setMinPeriod(int minPeriod) {
        this.minPeriod = minPeriod;
    }

    public int getMaxPeriod() {
        return maxPeriod;
    }

    public void setMaxPeriod(int maxPeriod) {
        this.maxPeriod = maxPeriod;
    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public Double getMinRepaymentAmount() {
        return minRepaymentAmount;
    }

    public void setMinRepaymentAmount(Double minRepaymentAmount) {
        this.minRepaymentAmount = minRepaymentAmount;
    }

    public Double getGracePeriodRate() {
        return gracePeriodRate;
    }

    public void setGracePeriodRate(Double gracePeriodRate) {
        this.gracePeriodRate = gracePeriodRate;
    }

    public Double getAmountStep() {
        return amountStep;
    }

    public void setAmountStep(Double amountStep) {
        this.amountStep = amountStep;
    }

    public Double getOverdueRate() {
        return overdueRate;
    }

    public void setOverdueRate(Double overdueRate) {
        this.overdueRate = overdueRate;
    }

    public Double getMaxAmount() {
        return maxAmount;
    }

    public void setMaxAmount(Double maxAmount) {
        this.maxAmount = maxAmount;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    public String getPeriodUnit() {
        return periodUnit;
    }

    public void setPeriodUnit(String periodUnit) {
        this.periodUnit = periodUnit;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getWithholdMethod() {
        return withholdMethod;
    }

    public void setWithholdMethod(String withholdMethod) {
        this.withholdMethod = withholdMethod;
    }

    public String getCertProgress() {
        return certProgress == null ? "" : certProgress;
    }

    public void setCertProgress(String certProgress) {
        this.certProgress = certProgress;
    }

    public boolean isChoose() {
        return choose;
    }

    public void setChoose(boolean choose) {
        this.choose = choose;
    }

    public ProductBean() {
    }

    public ProductBean(int index) {
        interestRate = 0.0;
        serviceFee = 0.0;
        minAmount = 500000.0 + (index * 500000);
        gracePeriodDays = 0;
        periodStep = 0;
        minPeriod = 90 + (index * 10);
        maxPeriod = 90 + (index * 10);
        id = 0;
        minRepaymentAmount = 0.0;
        gracePeriodRate = 0.0;
        amountStep = 0.0;
        overdueRate = 0.0;
        maxAmount = 500000.0 + (index * 500000);
        description = "";
        updateTime = "";
        periodUnit = "D";
        createTime = "";
        name = "Product " + index;
        withholdMethod = "";
        certProgress = "";
        choose = true;
    }


}
