package com.ruoyi.project.business.domain;

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

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 【请填写功能名称】对象 tp_area_optional_para_price
 * 
 * @author ruoyi
 * @date 2024-05-28
 */
public class TpAreaOptionalParaPrice extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 电梯型号ID */
    @Excel(name = "电梯型号ID")
    private Long elevatorModelId;

    /** 加价项目ID */
    @Excel(name = "加价项目ID")
    private Long markupId;
    @TableField(exist = false)
    private List<Long> markupIds;

    /** 加价编码 */
    @Excel(name = "加价编码")
    private String markupKey;

    /** 加价名称 */
    @Excel(name = "加价名称")
    private String markupName;

    /** 选配关联参数 */
    @Excel(name = "选配关联参数")
    private String paraCode;

    /** 其他关联参数1 */
    @Excel(name = "其他关联参数1")
    private String relatedParaValue1;

    /** 其他关联参数2 */
    @Excel(name = "其他关联参数2")
    private String relatedParaValue2;

    /** 其他关联参数3 */
    @Excel(name = "其他关联参数3")
    private String relatedParaValue3;

    /** 其他关联参数4 */
    @Excel(name = "其他关联参数4")
    private String relatedParaValue4;

    /** 其他关联参数5 */
    @Excel(name = "其他关联参数5")
    private String relatedParaValue5;

    /** 其他关联参数6 */
    @Excel(name = "其他关联参数6")
    private String relatedParaValue6;

    /** 其他关联参数7 */
    @Excel(name = "其他关联参数7")
    private String relatedParaValue7;

    /** 其他关联参数8 */
    @Excel(name = "其他关联参数8")
    private String relatedParaValue8;

    /** 其他关联参数9 */
    @Excel(name = "其他关联参数9")
    private String relatedParaValue9;

    /** 其他关联参数10 */
    @Excel(name = "其他关联参数10")
    private String relatedParaValue10;

    /** 数量类型（00：固定值 01：公式） */
    @Excel(name = "数量类型", readConverterExp = "0=0：固定值,0=1：公式")
    private String quantityType;

    /** 数量固定值 */
    @Excel(name = "数量固定值")
    private Long quantity;

    /** 数量公式 */
    @Excel(name = "数量公式")
    private String quantityFormula;
    private String quantityFormulaTxt;

    /** 数量单位 */
    @Excel(name = "数量单位")
    private String quantityUnit;

    /** 价格类型（00：固定值 01：公式） */
    @Excel(name = "价格类型", readConverterExp = "0=0：固定值,0=1：公式")
    private String priceType;

    /** 价格固定值 */
    @Excel(name = "价格固定值")
    private BigDecimal price;

    /** 价格公式 */
    @Excel(name = "价格公式")
    private String priceFormula;
    private String priceFormulaTxt;

    /** 状态（0：启用  1：停用） */
    @Excel(name = "状态", readConverterExp = "0=：启用,1=：停用")
    private String status;

    /** 删除标记（0：未删除  1：已删除） */
    private String delFlag;

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

    public Long getId() 
    {
        return id;
    }
    public void setElevatorModelId(Long elevatorModelId) 
    {
        this.elevatorModelId = elevatorModelId;
    }

    public Long getElevatorModelId() 
    {
        return elevatorModelId;
    }
    public void setMarkupId(Long markupId) 
    {
        this.markupId = markupId;
    }

    public Long getMarkupId() 
    {
        return markupId;
    }
    public void setMarkupKey(String markupKey) 
    {
        this.markupKey = markupKey;
    }

    public String getMarkupKey() 
    {
        return markupKey;
    }
    public void setMarkupName(String markupName) 
    {
        this.markupName = markupName;
    }

    public String getMarkupName() 
    {
        return markupName;
    }
    public void setParaCode(String paraCode) 
    {
        this.paraCode = paraCode;
    }

    public String getParaCode() 
    {
        return paraCode;
    }
    public void setRelatedParaValue1(String relatedParaValue1) 
    {
        this.relatedParaValue1 = relatedParaValue1;
    }

    public String getRelatedParaValue1() 
    {
        return relatedParaValue1;
    }
    public void setRelatedParaValue2(String relatedParaValue2) 
    {
        this.relatedParaValue2 = relatedParaValue2;
    }

    public String getRelatedParaValue2() 
    {
        return relatedParaValue2;
    }
    public void setRelatedParaValue3(String relatedParaValue3) 
    {
        this.relatedParaValue3 = relatedParaValue3;
    }

    public String getRelatedParaValue3() 
    {
        return relatedParaValue3;
    }
    public void setRelatedParaValue4(String relatedParaValue4) 
    {
        this.relatedParaValue4 = relatedParaValue4;
    }

    public String getRelatedParaValue4() 
    {
        return relatedParaValue4;
    }
    public void setRelatedParaValue5(String relatedParaValue5) 
    {
        this.relatedParaValue5 = relatedParaValue5;
    }

    public String getRelatedParaValue5() 
    {
        return relatedParaValue5;
    }
    public void setRelatedParaValue6(String relatedParaValue6) 
    {
        this.relatedParaValue6 = relatedParaValue6;
    }

    public String getRelatedParaValue6() 
    {
        return relatedParaValue6;
    }
    public void setRelatedParaValue7(String relatedParaValue7) 
    {
        this.relatedParaValue7 = relatedParaValue7;
    }

    public String getRelatedParaValue7() 
    {
        return relatedParaValue7;
    }
    public void setRelatedParaValue8(String relatedParaValue8) 
    {
        this.relatedParaValue8 = relatedParaValue8;
    }

    public String getRelatedParaValue8() 
    {
        return relatedParaValue8;
    }
    public void setRelatedParaValue9(String relatedParaValue9) 
    {
        this.relatedParaValue9 = relatedParaValue9;
    }

    public String getRelatedParaValue9() 
    {
        return relatedParaValue9;
    }
    public void setRelatedParaValue10(String relatedParaValue10) 
    {
        this.relatedParaValue10 = relatedParaValue10;
    }

    public String getRelatedParaValue10() 
    {
        return relatedParaValue10;
    }
    public void setQuantityType(String quantityType) 
    {
        this.quantityType = quantityType;
    }

    public String getQuantityType() 
    {
        return quantityType;
    }
    public void setQuantity(Long quantity) 
    {
        this.quantity = quantity;
    }

    public Long getQuantity() 
    {
        return quantity;
    }
    public void setQuantityFormula(String quantityFormula) 
    {
        this.quantityFormula = quantityFormula;
    }

    public String getQuantityFormula() 
    {
        return quantityFormula;
    }
    public void setQuantityUnit(String quantityUnit) 
    {
        this.quantityUnit = quantityUnit;
    }

    public String getQuantityUnit() 
    {
        return quantityUnit;
    }
    public void setPriceType(String priceType) 
    {
        this.priceType = priceType;
    }

    public String getPriceType() 
    {
        return priceType;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setPriceFormula(String priceFormula) 
    {
        this.priceFormula = priceFormula;
    }

    public String getPriceFormula() 
    {
        return priceFormula;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public List<Long> getMarkupIds() {
        return markupIds;
    }

    public void setMarkupIds(List<Long> markupIds) {
        this.markupIds = markupIds;
    }

    public String getQuantityFormulaTxt() {
        return quantityFormulaTxt;
    }

    public void setQuantityFormulaTxt(String quantityFormulaTxt) {
        this.quantityFormulaTxt = quantityFormulaTxt;
    }

    public String getPriceFormulaTxt() {
        return priceFormulaTxt;
    }

    public void setPriceFormulaTxt(String priceFormulaTxt) {
        this.priceFormulaTxt = priceFormulaTxt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("elevatorModelId", getElevatorModelId())
            .append("markupId", getMarkupId())
            .append("markupKey", getMarkupKey())
            .append("markupName", getMarkupName())
            .append("paraCode", getParaCode())
            .append("relatedParaValue1", getRelatedParaValue1())
            .append("relatedParaValue2", getRelatedParaValue2())
            .append("relatedParaValue3", getRelatedParaValue3())
            .append("relatedParaValue4", getRelatedParaValue4())
            .append("relatedParaValue5", getRelatedParaValue5())
            .append("relatedParaValue6", getRelatedParaValue6())
            .append("relatedParaValue7", getRelatedParaValue7())
            .append("relatedParaValue8", getRelatedParaValue8())
            .append("relatedParaValue9", getRelatedParaValue9())
            .append("relatedParaValue10", getRelatedParaValue10())
            .append("quantityType", getQuantityType())
            .append("quantity", getQuantity())
            .append("quantityFormula", getQuantityFormula())
            .append("quantityUnit", getQuantityUnit())
            .append("priceType", getPriceType())
            .append("price", getPrice())
            .append("priceFormula", getPriceFormula())
            .append("status", getStatus())
            .append("delFlag", getDelFlag())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .append("remark", getRemark())
            .toString();
    }
}
