package com.sunxung.factoring.entity.financing.contract;

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

/**
 * <p>
 * 合同融资信息
 * </p>
 *
 * @author liutao
 * @since 2024-01-23
 */
@TableName("contract_financing_info")
public class ContractFinancingInfo extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 合同基础信息ID
     */
    @TableField("contract_info_id")
    private Long contractInfoId;

    /**
     * 本金支付方式
     */
    @TableField("principal_collection_method")
    private String principalCollectionMethod;

    /**
     * 利息支付方式
     */
    @TableField("interest_collection_method")
    private String interestCollectionMethod;

    /**
     * 管理费支付方式
     */
    @TableField("management_fee_collection_method")
    private String managementFeeCollectionMethod;

    /**
     * 保证金支付方式
     */
    @TableField("margin_collection_method")
    private String marginCollectionMethod;

    /**
     * 保证金退还方式
     */
    @TableField("margin_return_method")
    private String marginReturnMethod;

    /**
     * 保证金退还条件
     */
    @TableField("margin_return_condition")
    private String marginReturnCondition;

    /**
     * 其他费用支付方式
     */
    @TableField("other_fee_collection_method")
    private String otherFeeCollectionMethod;

    public Long getContractInfoId() {
        return contractInfoId;
    }

    public void setContractInfoId(Long contractInfoId) {
        this.contractInfoId = contractInfoId;
    }

    public String getPrincipalCollectionMethod() {
        return principalCollectionMethod;
    }

    public void setPrincipalCollectionMethod(String principalCollectionMethod) {
        this.principalCollectionMethod = principalCollectionMethod;
    }

    public String getInterestCollectionMethod() {
        return interestCollectionMethod;
    }

    public void setInterestCollectionMethod(String interestCollectionMethod) {
        this.interestCollectionMethod = interestCollectionMethod;
    }

    public String getManagementFeeCollectionMethod() {
        return managementFeeCollectionMethod;
    }

    public void setManagementFeeCollectionMethod(String managementFeeCollectionMethod) {
        this.managementFeeCollectionMethod = managementFeeCollectionMethod;
    }

    public String getMarginCollectionMethod() {
        return marginCollectionMethod;
    }

    public void setMarginCollectionMethod(String marginCollectionMethod) {
        this.marginCollectionMethod = marginCollectionMethod;
    }

    public String getMarginReturnMethod() {
        return marginReturnMethod;
    }

    public void setMarginReturnMethod(String marginReturnMethod) {
        this.marginReturnMethod = marginReturnMethod;
    }

    public String getMarginReturnCondition() {
        return marginReturnCondition;
    }

    public void setMarginReturnCondition(String marginReturnCondition) {
        this.marginReturnCondition = marginReturnCondition;
    }

    public String getOtherFeeCollectionMethod() {
        return otherFeeCollectionMethod;
    }

    public void setOtherFeeCollectionMethod(String otherFeeCollectionMethod) {
        this.otherFeeCollectionMethod = otherFeeCollectionMethod;
    }

    @Override
    public String toString() {
        return "ContractFinancingInfo{" +
                "contractInfoId=" + contractInfoId +
                ", principalCollectionMethod=" + principalCollectionMethod +
                ", interestCollectionMethod=" + interestCollectionMethod +
                ", managementFeeCollectionMethod=" + managementFeeCollectionMethod +
                ", marginCollectionMethod=" + marginCollectionMethod +
                ", marginReturnMethod=" + marginReturnMethod +
                ", marginReturnCondition=" + marginReturnCondition +
                ", otherFeeCollectionMethod=" + otherFeeCollectionMethod +
                "}";
    }
}
