package com.ruoyi.buyerapi.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
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;

/**
 * 企业信息管理设备对象 buyer_dept_device
 *
 * @author ruoyi
 * @date 2022-09-22
 */
@ApiModel(value = "企业信息管理设备对象")
@Data
public class BuyerDeptDevice extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    @ApiModelProperty(value = "id")
    private String id;

    /** 备注 */
    @ApiModelProperty(value = "备注")
    @Excel(name = "备注")
    private String remarks;

    /** 删除标志（0代表存在 1代表删除） */
    @ApiModelProperty(value = "删除标志（0代表存在 1代表删除）")
    private String delFlag;

    /** 公司id */
    @Excel(name = "公司id")
    @ApiModelProperty(value = "公司id")
    private String deptId;

    /** 编码 */
    @Excel(name = "编码")
    @ApiModelProperty(value = "编码")
    private String code;

    /** 名称 */
    @Excel(name = "名称")
    @ApiModelProperty(value = "名称")
    private String name;

    /** 原值（元） */
    @ApiModelProperty(value = "原值（元）")
    @Excel(name = "原值", readConverterExp = "元=")
    private BigDecimal originalValue;

    /** 残值率 */
    @ApiModelProperty(value = "残值率")
    @Excel(name = "残值率")
    private BigDecimal crippleValueRate;

    /** 购入日期 */
    @ApiModelProperty(value = "购入日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "购入日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date buyDate;

    /** 生产单位 */
    @ApiModelProperty(value = "生产单位")
    @Excel(name = "生产单位")
    private String productionUnit;

    /** 折旧年限 */
    @ApiModelProperty(value = "折旧年限(数字)")
    @Excel(name = "折旧年限")
    private Integer depreciableLife;

    /** 专用设备(1是2否) */
    @ApiModelProperty(value = "专用设备(1是2否)")
    @Excel(name = "专用设备(1是2否)")
    private String professionalDevice;

    /** 设备状态(1正常2停用) */
    @ApiModelProperty(value = "设备状态(1正常2停用)")
    @Excel(name = "设备状态(1正常2停用)")
    private String status;

    /** 停用日期 */
    @ApiModelProperty(value = "停用日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "停用日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date stopDate;

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

    public String getId()
    {
        return id;
    }
    public void setRemarks(String remarks)
    {
        this.remarks = remarks;
    }

    public String getRemarks()
    {
        return remarks;
    }
    public void setDelFlag(String delFlag)
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag()
    {
        return delFlag;
    }
    public void setCode(String code)
    {
        this.code = code;
    }

    public String getCode()
    {
        return code;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setOriginalValue(BigDecimal originalValue)
    {
        this.originalValue = originalValue;
    }

    public BigDecimal getOriginalValue()
    {
        return originalValue;
    }
    public void setCrippleValueRate(BigDecimal crippleValueRate)
    {
        this.crippleValueRate = crippleValueRate;
    }

    public BigDecimal getCrippleValueRate()
    {
        return crippleValueRate;
    }
    public void setBuyDate(Date buyDate)
    {
        this.buyDate = buyDate;
    }

    public Date getBuyDate()
    {
        return buyDate;
    }
    public void setProductionUnit(String productionUnit)
    {
        this.productionUnit = productionUnit;
    }

    public String getProductionUnit()
    {
        return productionUnit;
    }
    public void setDepreciableLife(Integer depreciableLife)
    {
        this.depreciableLife = depreciableLife;
    }

    public Integer getDepreciableLife()
    {
        return depreciableLife;
    }
    public void setProfessionalDevice(String professionalDevice)
    {
        this.professionalDevice = professionalDevice;
    }

    public String getProfessionalDevice()
    {
        return professionalDevice;
    }
    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }
    public void setStopDate(Date stopDate)
    {
        this.stopDate = stopDate;
    }

    public Date getStopDate()
    {
        return stopDate;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remarks", getRemarks())
            .append("delFlag", getDelFlag())
            .append("deptId", getDeptId())
            .append("code", getCode())
            .append("name", getName())
            .append("originalValue", getOriginalValue())
            .append("crippleValueRate", getCrippleValueRate())
            .append("buyDate", getBuyDate())
            .append("productionUnit", getProductionUnit())
            .append("depreciableLife", getDepreciableLife())
            .append("professionalDevice", getProfessionalDevice())
            .append("status", getStatus())
            .append("stopDate", getStopDate())
            .toString();
    }
}
