package com.ruoyi.system.domain.project;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目-线索信息对象 bm_project_info
 * 
 * @author ruoyi
 * @date 2021-03-04
 */
public class BmProjectInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id* */
    private Long id;

    /** 项目id* */
    @Excel(name = "项目id*")
    private Long bmProjectId;

    /** 项目名称* */
    @Excel(name = "项目名称*")
    private String name;

    /** 投资方联系人* */
    @Excel(name = "投资方联系人*")
    private String contactor;

    /** 投资方联系方式* */
    @Excel(name = "投资方联系方式*")
    private String phone;

    /** 预计投资额* */
    @Excel(name = "预计投资额*")
    private BigDecimal needAmt;

    /** 固定资产投资* */
    @Excel(name = "固定资产投资*")
    private BigDecimal fixedAssets;

    /** 产品名称* */
    @Excel(name = "产品名称*")
    private String productName;

    /** 设计产能* */
    @Excel(name = "设计产能*")
    private String productQty;

    /** 预计产值* */
    @Excel(name = "预计产值*")
    private BigDecimal productPrice;

    /** 预计税收* */
    @Excel(name = "预计税收*")
    private BigDecimal productTax;

    /** 预计用工* */
    @Excel(name = "预计用工*")
    private String productEmp;

    /** 项目计划用地 */
    @Excel(name = "项目计划用地")
    private BigDecimal plannedLand;

    /** 独立供地 */
    @Excel(name = "独立供地")
    private BigDecimal independentLand;

    /** 流转土地 */
    @Excel(name = "流转土地")
    private BigDecimal circulationLan;

    /** 计划租赁用房 */
    @Excel(name = "计划租赁用房")
    private BigDecimal needRoom;

    /** 计划租赁厂房 */
    @Excel(name = "计划租赁厂房")
    private BigDecimal needFactoryRoom;

    /** 计划租赁办公生活用房 */
    @Excel(name = "计划租赁办公生活用房")
    private BigDecimal needBusRoom;

    /** 其他需求 */
    @Excel(name = "其他需求")
    private String other;

    /** 拟落户地点* */
    @Excel(name = "拟落户地点*")
    private String address;

    /** 是否签订框架协议* Y/N */
    @Excel(name = "是否签订框架协议* Y/N")
    private String isFrameorder;

    /** 框架协议附件url(框架协议为是，需要上传) */
    @Excel(name = "框架协议附件url(框架协议为是，需要上传)")
    private String attachment;

    /** 备注 */
    @Excel(name = "备注")
    private String description;

    /**
     * 项目引荐列表
     */
    private List<BmProjectReferral> referralList;

    public List<BmProjectReferral> getReferralList() {
        return referralList;
    }

    public void setReferralList(List<BmProjectReferral> referralList) {
        this.referralList = referralList;
    }

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

    public Long getId() 
    {
        return id;
    }
    public void setBmProjectId(Long bmProjectId) 
    {
        this.bmProjectId = bmProjectId;
    }

    public Long getBmProjectId() 
    {
        return bmProjectId;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }

    public void setContactor(String contactor) 
    {
        this.contactor = contactor;
    }

    public String getContactor() 
    {
        return contactor;
    }
    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }
    public void setNeedAmt(BigDecimal needAmt) 
    {
        this.needAmt = needAmt;
    }

    public BigDecimal getNeedAmt() 
    {
        return needAmt;
    }
    public void setFixedAssets(BigDecimal fixedAssets) 
    {
        this.fixedAssets = fixedAssets;
    }

    public BigDecimal getFixedAssets() 
    {
        return fixedAssets;
    }
    public void setProductName(String productName) 
    {
        this.productName = productName;
    }

    public String getProductName() 
    {
        return productName;
    }
    public void setProductQty(String productQty) 
    {
        this.productQty = productQty;
    }

    public String getProductQty() 
    {
        return productQty;
    }
    public void setProductPrice(BigDecimal productPrice) 
    {
        this.productPrice = productPrice;
    }

    public BigDecimal getProductPrice() 
    {
        return productPrice;
    }
    public void setProductTax(BigDecimal productTax) 
    {
        this.productTax = productTax;
    }

    public BigDecimal getProductTax() 
    {
        return productTax;
    }
    public void setProductEmp(String productEmp) 
    {
        this.productEmp = productEmp;
    }

    public String getProductEmp() 
    {
        return productEmp;
    }
    public void setPlannedLand(BigDecimal plannedLand) 
    {
        this.plannedLand = plannedLand;
    }

    public BigDecimal getPlannedLand() 
    {
        return plannedLand;
    }
    public void setIndependentLand(BigDecimal independentLand) 
    {
        this.independentLand = independentLand;
    }

    public BigDecimal getIndependentLand() 
    {
        return independentLand;
    }
    public void setCirculationLan(BigDecimal circulationLan) 
    {
        this.circulationLan = circulationLan;
    }

    public BigDecimal getCirculationLan() 
    {
        return circulationLan;
    }
    public void setNeedRoom(BigDecimal needRoom) 
    {
        this.needRoom = needRoom;
    }

    public BigDecimal getNeedRoom() 
    {
        return needRoom;
    }
    public void setNeedFactoryRoom(BigDecimal needFactoryRoom) 
    {
        this.needFactoryRoom = needFactoryRoom;
    }

    public BigDecimal getNeedFactoryRoom() 
    {
        return needFactoryRoom;
    }
    public void setNeedBusRoom(BigDecimal needBusRoom) 
    {
        this.needBusRoom = needBusRoom;
    }

    public BigDecimal getNeedBusRoom() 
    {
        return needBusRoom;
    }
    public void setOther(String other) 
    {
        this.other = other;
    }

    public String getOther() 
    {
        return other;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setIsFrameorder(String isFrameorder) 
    {
        this.isFrameorder = isFrameorder;
    }

    public String getIsFrameorder() 
    {
        return isFrameorder;
    }
    public void setAttachment(String attachment) 
    {
        this.attachment = attachment;
    }

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

    public String getDescription() 
    {
        return description;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("bmProjectId", getBmProjectId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("name", getName())
            .append("isDel", getIsDel())
            .append("contactor", getContactor())
            .append("phone", getPhone())
            .append("needAmt", getNeedAmt())
            .append("fixedAssets", getFixedAssets())
            .append("productName", getProductName())
            .append("productQty", getProductQty())
            .append("productPrice", getProductPrice())
            .append("productTax", getProductTax())
            .append("productEmp", getProductEmp())
            .append("plannedLand", getPlannedLand())
            .append("independentLand", getIndependentLand())
            .append("circulationLan", getCirculationLan())
            .append("needRoom", getNeedRoom())
            .append("needFactoryRoom", getNeedFactoryRoom())
            .append("needBusRoom", getNeedBusRoom())
            .append("other", getOther())
            .append("address", getAddress())
            .append("isFrameorder", getIsFrameorder())
            .append("attachment", getAttachment())
            .append("description", getDescription())
            .toString();
    }
}
