package com.sunxung.factoring.entity.salescontractmanagement;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sunxung.factoring.entity.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 销售合同-质保金信息表
 * </p>
 *
 * @author liutao
 * @since 2022-06-13
 */
@TableName("sales_contract_retention_info_history")
public class SalesContractRetentionInfoHistory extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** 是否有质保金 0:否,1:有 **/
    @TableField("is_retention")
    private Integer retention;

    /**
     * 质保金比例
     */
    @TableField("retention_percent")
    private BigDecimal retentionPercent;

    /** 质保金是否有上限 0:否,1:有 **/
    @TableField("is_limit")
    private Integer limit;

    /**
     * 质保金上限
     */
    @TableField("retention_limit")
    private BigDecimal retentionLimit;

    /**
     * 质保金释放方式（固定日期、项目结束、回款后固定天数）
     */
    @TableField("release_method")
    private Long releaseMethod;

    /**
     * 释放日期
     */
    @TableField("release_date")
    private Date releaseDate;

    /**
     * 释放天数
     */
    @TableField("release_days")
    private Integer releaseDays;

    /**
     * 销售合同基本信息表Id
     */
    @TableField("sales_contract_basic_info_id")
    private Long salesContractBasicInfoId;

    public Integer getRetention() {
        return retention;
    }

    public void setRetention(Integer retention) {
        this.retention = retention;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public BigDecimal getRetentionPercent() {
        return retentionPercent;
    }

    public void setRetentionPercent(BigDecimal retentionPercent) {
        this.retentionPercent = retentionPercent;
    }

    public BigDecimal getRetentionLimit() {
        return retentionLimit;
    }

    public void setRetentionLimit(BigDecimal retentionLimit) {
        this.retentionLimit = retentionLimit;
    }

    public Long getReleaseMethod() {
        return releaseMethod;
    }

    public void setReleaseMethod(Long releaseMethod) {
        this.releaseMethod = releaseMethod;
    }

    public Date getReleaseDate() {
        return releaseDate;
    }

    public void setReleaseDate(Date releaseDate) {
        this.releaseDate = releaseDate;
    }

    public Integer getReleaseDays() {
        return releaseDays;
    }

    public void setReleaseDays(Integer releaseDays) {
        this.releaseDays = releaseDays;
    }

    public Long getSalesContractBasicInfoId() {
        return salesContractBasicInfoId;
    }

    public void setSalesContractBasicInfoId(Long salesContractBasicInfoId) {
        this.salesContractBasicInfoId = salesContractBasicInfoId;
    }

}
