package com.xinda.iot.domain;

import com.xinda.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.math.BigDecimal;

/**
 * 产品固件对象 iot_firmware
 * 
 * @author kerwincui
 * @date 2021-12-16
 */
@ApiModel(value = "Firmware", description = "产品固件对象 iot_firmware")
public class Firmware extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 固件ID */
    @ApiModelProperty("固件ID")
    private Long firmwareId;

    /** 固件名称 */
    @ApiModelProperty(value = "固件名称")
    private String firmwareName;

    /** 产品ID */
    @ApiModelProperty(value = "产品ID")
    private Long productId;

    /** 产品名称 */
    @ApiModelProperty(value = "产品名称")
    private String productName;

    /** 租户ID */
    @ApiModelProperty(value = "租户ID")
    private Long tenantId;

    /** 租户名称 */
    @ApiModelProperty(value = "租户名称")
    private String tenantName;

    /** 是否系统通用（0-否，1-是） */
    @ApiModelProperty(value = "是否系统通用")
    private Integer isSys;

    /** 是否最新版（0-否，1-是） */
    @ApiModelProperty(value = "是否系统通用")
    private Integer isLatest;

    /** 固件版本 */
    @ApiModelProperty(value = "固件版本")
    private BigDecimal version;

    /** 文件路径 */
    @ApiModelProperty(value = "文件路径")
    private String filePath;

    /*固件序列号*/
    @ApiModelProperty("固件序列号")
    private String seqNo;

    /** 删除标志（0代表存在 2代表删除） */
    @ApiModelProperty("逻辑删除标志")
    private String delFlag;

    public String getSeqNo() {
        return seqNo;
    }

    public void setSeqNo(String seqNo) {
        this.seqNo = seqNo;
    }

    public Integer getIsLatest() {
        return isLatest;
    }

    public void setIsLatest(Integer isLatest) {
        this.isLatest = isLatest;
    }

    public void setFirmwareId(Long firmwareId)
    {
        this.firmwareId = firmwareId;
    }

    public Long getFirmwareId() 
    {
        return firmwareId;
    }
    public void setFirmwareName(String firmwareName) 
    {
        this.firmwareName = firmwareName;
    }

    public String getFirmwareName() 
    {
        return firmwareName;
    }
    public void setProductId(Long productId) 
    {
        this.productId = productId;
    }

    public Long getProductId() 
    {
        return productId;
    }
    public void setProductName(String productName) 
    {
        this.productName = productName;
    }

    public String getProductName() 
    {
        return productName;
    }
    public void setTenantId(Long tenantId) 
    {
        this.tenantId = tenantId;
    }

    public Long getTenantId() 
    {
        return tenantId;
    }
    public void setTenantName(String tenantName) 
    {
        this.tenantName = tenantName;
    }

    public String getTenantName() 
    {
        return tenantName;
    }
    public void setIsSys(Integer isSys) 
    {
        this.isSys = isSys;
    }

    public Integer getIsSys() 
    {
        return isSys;
    }
    public void setVersion(BigDecimal version) 
    {
        this.version = version;
    }

    public BigDecimal getVersion() 
    {
        return version;
    }
    public void setFilePath(String filePath) 
    {
        this.filePath = filePath;
    }

    public String getFilePath() 
    {
        return filePath;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("firmwareId", getFirmwareId())
            .append("firmwareName", getFirmwareName())
            .append("productId", getProductId())
            .append("productName", getProductName())
            .append("tenantId", getTenantId())
            .append("tenantName", getTenantName())
            .append("isSys", getIsSys())
            .append("version", getVersion())
            .append("filePath", getFilePath())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
