package com.hw.wms.domain;

import java.util.List;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.hw.common.core.annotation.Excel;
import com.hw.common.core.web.domain.BaseEntity;

/**
 * 盘点记录对象 wms_inventory_check
 * 
 * @author xs
 * @date 2023-12-20
 */
public class WmsInventoryCheck extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 盘点ID */
    private Long inventoryCheckId;

    /** 盘点单号 */
    @Excel(name = "盘点单号")
    private String inventoryCheckCode;

    /** 仓库ID */
    @Excel(name = "仓库ID")
    private Long warehouseId;

    /** 盘点状态(0待盘点,1盘点中,2盘点完成,3全部盘点完成);在仓库下所有库位都盘点完成时是全部盘点完成，而某一次盘点的库位范围盘点完成则是盘点完成 */
    @Excel(name = "盘点状态(0待盘点,1盘点中,2盘点完成,3全部盘点完成);在仓库下所有库位都盘点完成时是全部盘点完成，而某一次盘点的库位范围盘点完成则是盘点完成")
    private String checkStatus;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createDate;

    /** 最后更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateDate;

    /** 盘点记录明细信息 */
    private List<WmsInventoryCheckDetail> wmsInventoryCheckDetailList;

    public void setInventoryCheckId(Long inventoryCheckId) 
    {
        this.inventoryCheckId = inventoryCheckId;
    }

    public Long getInventoryCheckId() 
    {
        return inventoryCheckId;
    }
    public void setInventoryCheckCode(String inventoryCheckCode) 
    {
        this.inventoryCheckCode = inventoryCheckCode;
    }

    public String getInventoryCheckCode() 
    {
        return inventoryCheckCode;
    }
    public void setWarehouseId(Long warehouseId) 
    {
        this.warehouseId = warehouseId;
    }

    public Long getWarehouseId() 
    {
        return warehouseId;
    }
    public void setCheckStatus(String checkStatus) 
    {
        this.checkStatus = checkStatus;
    }

    public String getCheckStatus() 
    {
        return checkStatus;
    }
    public void setCreateDate(Date createDate) 
    {
        this.createDate = createDate;
    }

    public Date getCreateDate() 
    {
        return createDate;
    }
    public void setUpdateDate(Date updateDate) 
    {
        this.updateDate = updateDate;
    }

    public Date getUpdateDate() 
    {
        return updateDate;
    }

    public List<WmsInventoryCheckDetail> getWmsInventoryCheckDetailList()
    {
        return wmsInventoryCheckDetailList;
    }

    public void setWmsInventoryCheckDetailList(List<WmsInventoryCheckDetail> wmsInventoryCheckDetailList)
    {
        this.wmsInventoryCheckDetailList = wmsInventoryCheckDetailList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("inventoryCheckId", getInventoryCheckId())
            .append("inventoryCheckCode", getInventoryCheckCode())
            .append("warehouseId", getWarehouseId())
            .append("checkStatus", getCheckStatus())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .append("createDate", getCreateDate())
            .append("updateBy", getUpdateBy())
            .append("updateDate", getUpdateDate())
            .append("wmsInventoryCheckDetailList", getWmsInventoryCheckDetailList())
            .toString();
    }
}
