package org.dromara.ems.info.domain;

import cn.idev.excel.annotation.ExcelIgnoreUnannotated;
import cn.idev.excel.annotation.ExcelProperty;
import cn.idev.excel.annotation.format.DateTimeFormat;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 动力能源部行输科备件领用更换记录对象 spare_parts_usage_record
 * 
 * @author Yinq
 * @date 2025-06-05
 */
@ExcelIgnoreUnannotated
public class SparePartsUsageRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键，自增ID */
    private Long id;

    /** 日期 */
    @DateTimeFormat("yyyy/MM/dd")
    @ExcelProperty(value = "日期")
    private String date;

    /** 备件名称 */
    @ExcelProperty(value = "备件名称")
    private String sparePartName;

    /** 备件型号 */
    @ExcelProperty(value = "备件型号")
    private String sparePartModel;

    /** 使用数量 */
    @ExcelProperty(value = "使用数量")
    private Long quantityUsed;

    /** 剩余数量 */
    @ExcelProperty(value = "剩余数量")
    private Long remainingQuantity;

    /** 领用库房 */
    @ExcelProperty(value = "领用库房")
    private String issuingWarehouse;

    /** 更换位置 */
    @ExcelProperty(value = "更换位置")
    private String replacementLocation;

    /** 领用人 */
    @ExcelProperty(value = "领用人")
    private String personReceived;

    /** 库管确认人 */
    @ExcelProperty(value = "库管确认人")
    private String warehouseManagerConfirmation;

    /** 库存表状态 */
    @ExcelProperty(value = "库存表状态")
    private String inventoryStatus;

    /** 部门仓库 */
    @ExcelProperty(value = "部门仓库")
    private String departmentWarehouse;

    /** 备注 */
    @ExcelProperty(value = "备注")
    private String remarks;

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

    public Long getId() 
    {
        return id;
    }
    public void setDate(String date) 
    {
        this.date = date;
    }

    public String getDate() 
    {
        return date;
    }
    public void setSparePartName(String sparePartName) 
    {
        this.sparePartName = sparePartName;
    }

    public String getSparePartName() 
    {
        return sparePartName;
    }
    public void setSparePartModel(String sparePartModel) 
    {
        this.sparePartModel = sparePartModel;
    }

    public String getSparePartModel() 
    {
        return sparePartModel;
    }
    public void setQuantityUsed(Long quantityUsed) 
    {
        this.quantityUsed = quantityUsed;
    }

    public Long getQuantityUsed() 
    {
        return quantityUsed;
    }
    public void setRemainingQuantity(Long remainingQuantity) 
    {
        this.remainingQuantity = remainingQuantity;
    }

    public Long getRemainingQuantity() 
    {
        return remainingQuantity;
    }
    public void setIssuingWarehouse(String issuingWarehouse) 
    {
        this.issuingWarehouse = issuingWarehouse;
    }

    public String getIssuingWarehouse() 
    {
        return issuingWarehouse;
    }
    public void setReplacementLocation(String replacementLocation) 
    {
        this.replacementLocation = replacementLocation;
    }

    public String getReplacementLocation() 
    {
        return replacementLocation;
    }
    public void setPersonReceived(String personReceived) 
    {
        this.personReceived = personReceived;
    }

    public String getPersonReceived() 
    {
        return personReceived;
    }
    public void setWarehouseManagerConfirmation(String warehouseManagerConfirmation) 
    {
        this.warehouseManagerConfirmation = warehouseManagerConfirmation;
    }

    public String getWarehouseManagerConfirmation() 
    {
        return warehouseManagerConfirmation;
    }
    public void setInventoryStatus(String inventoryStatus) 
    {
        this.inventoryStatus = inventoryStatus;
    }

    public String getInventoryStatus() 
    {
        return inventoryStatus;
    }
    public void setDepartmentWarehouse(String departmentWarehouse) 
    {
        this.departmentWarehouse = departmentWarehouse;
    }

    public String getDepartmentWarehouse() 
    {
        return departmentWarehouse;
    }
    public void setRemarks(String remarks) 
    {
        this.remarks = remarks;
    }

    public String getRemarks() 
    {
        return remarks;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("date", getDate())
            .append("sparePartName", getSparePartName())
            .append("sparePartModel", getSparePartModel())
            .append("quantityUsed", getQuantityUsed())
            .append("remainingQuantity", getRemainingQuantity())
            .append("issuingWarehouse", getIssuingWarehouse())
            .append("replacementLocation", getReplacementLocation())
            .append("personReceived", getPersonReceived())
            .append("warehouseManagerConfirmation", getWarehouseManagerConfirmation())
            .append("inventoryStatus", getInventoryStatus())
            .append("departmentWarehouse", getDepartmentWarehouse())
            .append("remarks", getRemarks())
            .toString();
    }
}
