package com.inkasso.factoring.steelwaiter.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

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

/**
 * <p>
 * 钢小二-销售单货物信息
 * </p>
 *
 * @author liutao
 * @since 2023-10-28
 */
@TableName("sell_bill_item")
public class SellBillItem  {

    private static final long serialVersionUID = 1L;

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

    /**
     * 租户ID
     */
    @TableField("tenant_id")
    private Long tenantId;

    /**
     * 清库版本号
     */
    @TableField("clear_version")
    private String clearVersion;

    /**
     * 钢小二-销售单信息id
     */
    @TableField("sell_bill_id")
    private Long sellBillId;

    /**
     * 最后更新日期 
     */
    @TableField("last_modify_time")
    private Date lastModifyTime;

    /**
     * 品名id
     */
    @TableField("product_name_id")
    private Long productNameId;

    /**
     * 销售单明细品名
     */
    @TableField("product_name")
    private String productName;

    /**
     * 材质Id
     */
    @TableField("material_id")
    private Long materialId;

    /**
     * 销售单明细材质
     */
    @TableField("material_name")
    private String materialName;

    /**
     * 规格Id
     */
    @TableField("specifications_id")
    private Long specificationsId;

    /**
     * 销售单明细规格
     */
    @TableField("specification_name")
    private String specificationName;

    @TableField("length")
    private String length;

    /**
     * 产地Id
     */
    @TableField("origin")
    private Long origin;

    /**
     * 销售单明细产地
     */
    @TableField("originName")
    private String originName;

    /**
     * 单位id
     */
    @TableField("unit")
    private Long unit;

    /**
     * 销售单明细单位
     */
    @TableField("unit_text")
    private String unitText;

    /**
     * 销售单数量（取审单数量 ）
     */
    @TableField("audit_quantity")
    private BigDecimal auditQuantity;

    /**
     * 销售单单价（取审单单价 ）
     */
    @TableField("audit_price")
    private BigDecimal auditPrice;

    /**
     * 销售单金额（取审单金额 ）
     */
    @TableField("audit_amount")
    private BigDecimal auditAmount;

    /**
     * 销售单代理单价（取审单代理单价）
     */
    @TableField("audit_proxy_price")
    private BigDecimal auditProxyPrice;

    /**
     * 库存卡号
     */
    @TableField("stock_number")
    private String stockNumber;

    @TableField("transfered_quantity")
    private BigDecimal transferedQuantity;

    /**
     * 销售单代理金额（取审单代理金额 ）
     */
    @TableField("audit_proxy_amount")
    private BigDecimal auditProxyAmount;

    public Long getId() {
        return id;
    }

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

    public Long getTenantId() {
        return tenantId;
    }

    public void setTenantId(Long tenantId) {
        this.tenantId = tenantId;
    }
    public String getClearVersion() {
        return clearVersion;
    }

    public void setClearVersion(String clearVersion) {
        this.clearVersion = clearVersion;
    }
    public Long getSellBillId() {
        return sellBillId;
    }

    public void setSellBillId(Long sellBillId) {
        this.sellBillId = sellBillId;
    }

    public Date getLastModifyTime() {
        return lastModifyTime;
    }

    public void setLastModifyTime(Date lastModifyTime) {
        this.lastModifyTime = lastModifyTime;
    }

    public Long getProductNameId() {
        return productNameId;
    }

    public void setProductNameId(Long productNameId) {
        this.productNameId = productNameId;
    }
    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }
    public Long getMaterialId() {
        return materialId;
    }

    public void setMaterialId(Long materialId) {
        this.materialId = materialId;
    }
    public String getMaterialName() {
        return materialName;
    }

    public void setMaterialName(String materialName) {
        this.materialName = materialName;
    }
    public Long getSpecificationsId() {
        return specificationsId;
    }

    public void setSpecificationsId(Long specificationsId) {
        this.specificationsId = specificationsId;
    }
    public String getSpecificationName() {
        return specificationName;
    }

    public void setSpecificationName(String specificationName) {
        this.specificationName = specificationName;
    }
    public String getLength() {
        return length;
    }

    public void setLength(String length) {
        this.length = length;
    }
    public Long getOrigin() {
        return origin;
    }

    public void setOrigin(Long origin) {
        this.origin = origin;
    }
    public String getOriginName() {
        return originName;
    }

    public void setOriginName(String originName) {
        this.originName = originName;
    }
    public Long getUnit() {
        return unit;
    }

    public void setUnit(Long unit) {
        this.unit = unit;
    }
    public String getUnitText() {
        return unitText;
    }

    public void setUnitText(String unitText) {
        this.unitText = unitText;
    }
    public BigDecimal getAuditQuantity() {
        return auditQuantity;
    }

    public void setAuditQuantity(BigDecimal auditQuantity) {
        this.auditQuantity = auditQuantity;
    }
    public BigDecimal getAuditPrice() {
        return auditPrice;
    }

    public void setAuditPrice(BigDecimal auditPrice) {
        this.auditPrice = auditPrice;
    }
    public BigDecimal getAuditAmount() {
        return auditAmount;
    }

    public void setAuditAmount(BigDecimal auditAmount) {
        this.auditAmount = auditAmount;
    }
    public BigDecimal getAuditProxyPrice() {
        return auditProxyPrice;
    }

    public void setAuditProxyPrice(BigDecimal auditProxyPrice) {
        this.auditProxyPrice = auditProxyPrice;
    }
    public String getStockNumber() {
        return stockNumber;
    }

    public void setStockNumber(String stockNumber) {
        this.stockNumber = stockNumber;
    }
    public BigDecimal getTransferedQuantity() {
        return transferedQuantity;
    }

    public void setTransferedQuantity(BigDecimal transferedQuantity) {
        this.transferedQuantity = transferedQuantity;
    }
    public BigDecimal getAuditProxyAmount() {
        return auditProxyAmount;
    }

    public void setAuditProxyAmount(BigDecimal auditProxyAmount) {
        this.auditProxyAmount = auditProxyAmount;
    }

    @Override
    public String toString() {
        return "SellBillItem{" +
            "tenantId=" + tenantId +
            ", clearVersion=" + clearVersion +
            ", sellBillId=" + sellBillId +
            ", lastModifyTime=" + lastModifyTime +
            ", productNameId=" + productNameId +
            ", productName=" + productName +
            ", materialId=" + materialId +
            ", materialName=" + materialName +
            ", specificationsId=" + specificationsId +
            ", specificationName=" + specificationName +
            ", length=" + length +
            ", origin=" + origin +
            ", originName=" + originName +
            ", unit=" + unit +
            ", unitText=" + unitText +
            ", auditQuantity=" + auditQuantity +
            ", auditPrice=" + auditPrice +
            ", auditAmount=" + auditAmount +
            ", auditProxyPrice=" + auditProxyPrice +
            ", stockNumber=" + stockNumber +
            ", transferedQuantity=" + transferedQuantity +
            ", auditProxyAmount=" + auditProxyAmount +
        "}";
    }
}
