package com.bonus.sgzb.material.domain;

import com.bonus.sgzb.common.core.annotation.Excel;
import com.bonus.sgzb.common.core.web.domain.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.List;

/**
 * 新购工机具入库
 * 
 * @author bonus
 * @date 2023-12-10
 */
public class PurchaseInput extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    @ApiModelProperty(value = "主键id")
    private Long id;

    /** 任务ID */
    @ApiModelProperty(value = "任务ID")
    private Long taskId;

    @ApiModelProperty(value = "采购单号")
    @Excel(name = "采购单号")
    private String code;

    /** 采购日期 */
    @ApiModelProperty(value = "采购日期")
    @Excel(name = "采购日期")
    private String purchaseTime;

    /** 到货日期 */
    @ApiModelProperty(value = "到货日期")
    @Excel(name = "到货日期")
    private String arrivalTime;

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

    /** 采购员 */
    @ApiModelProperty(value = "采购员")
    private Long purchaser;

    /** 采购机具设备名称 */
    @ApiModelProperty(value = "采购机具设备")
    @Excel(name = "工器具类型名称")
    private String purchasingTypeName;

    /** 采购机具设备型号 */
    @ApiModelProperty(value = "规格型号")
    @Excel(name = "规格型号")
    private String purchasingTypeCode;

    /** 管理模式 */
    @ApiModelProperty(value = "管理模式")
    private String manageType;

    /** 机具厂家 */
    @ApiModelProperty(value = "机具厂家")
    private String supplier;

    /** 采购数量 */
    @ApiModelProperty(value = "采购数量")
    private String purchaseNum;

    /** 验收数量 */
    @ApiModelProperty(value = "验收数量")
    private String checkNum;

    /** 采购状态 */
    @ApiModelProperty(value = "采购状态")
    private String purchasingStatus;

    /** 入库人员 */
    @ApiModelProperty(value = "入库人员")
    @Excel(name = "入库人员")
    private String inputUser;

    /** 入库时间 */
    @ApiModelProperty(value = "入库时间")
    @Excel(name = "入库时间")
    private String inputTime;

    /** 入库状态 */
    @ApiModelProperty(value = "入库状态")
    @Excel(name = "入库状态",readConverterExp = "0=未入库,1=已入库")
    private String inputStatus;


    /** 不通过原因 */
    @ApiModelProperty(value = "不通过原因")
    @Excel(name = "不通过原因")
    private String reason;

    /** 数据所属组织 */
    @ApiModelProperty(value = "数据所属组织")
    private Integer companyId;

    public String getKeyWord() {
        return keyWord;
    }

    public void setKeyWord(String keyWord) {
        this.keyWord = keyWord;
    }



    @ApiModelProperty(value = "新购验收任务详情")
    private List<PurchaseCheckDetails> checkDetailsList;




    /**
     * 任务状态(定义数据字典)
     */
    @ApiModelProperty(value="任务状态(数据字典)")
    private Integer taskStatus;
    private String keyWord;

    public Long getId() {
        return id;
    }

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

    public void setTaskId(Long taskId)
    {
        this.taskId = taskId;
    }

    public Long getTaskId() 
    {
        return taskId;
    }
    public void setPurchaseTime(String purchaseTime) 
    {
        this.purchaseTime = purchaseTime;
    }

    public String getPurchaseTime() 
    {
        return purchaseTime;
    }
    public void setArrivalTime(String arrivalTime) 
    {
        this.arrivalTime = arrivalTime;
    }

    public String getArrivalTime() 
    {
        return arrivalTime;
    }
    public void setPurchaser(Long purchaser) 
    {
        this.purchaser = purchaser;
    }

    public Long getPurchaser() 
    {
        return purchaser;
    }
    public void setCompanyId(Integer companyId)
    {
        this.companyId = companyId;
    }

    public Integer getCompanyId()
    {
        return companyId;
    }

    public List<PurchaseCheckDetails> getCheckDetailsList() {
        return checkDetailsList;
    }

    public void setCheckDetailsList(List<PurchaseCheckDetails> checkDetailsList) {
        this.checkDetailsList = checkDetailsList;
    }

    public String getCode() {
        return code;
    }

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

    public String getPurchasingStatus() {
        return purchasingStatus;
    }

    public void setPurchasingStatus(String purchasingStatus) {
        this.purchasingStatus = purchasingStatus;
    }

    public String getPurchasingTypeName() {
        return purchasingTypeName;
    }

    public void setPurchasingTypeName(String purchasingTypeName) {
        this.purchasingTypeName = purchasingTypeName;
    }

    public String getPurchaserName() {
        return purchaserName;
    }

    public void setPurchaserName(String purchaserName) {
        this.purchaserName = purchaserName;
    }

    public Integer getTaskStatus() {
        return taskStatus;
    }

    public void setTaskStatus(Integer taskStatus) {
        this.taskStatus = taskStatus;
    }

    public String getPurchasingTypeCode() {
        return purchasingTypeCode;
    }

    public void setPurchasingTypeCode(String purchasingTypeCode) {
        this.purchasingTypeCode = purchasingTypeCode;
    }

    public String getSupplier() {
        return supplier;
    }

    public void setSupplier(String supplier) {
        this.supplier = supplier;
    }

    public String getPurchaseNum() {
        return purchaseNum;
    }

    public void setPurchaseNum(String purchaseNum) {
        this.purchaseNum = purchaseNum;
    }

    public String getCheckNum() {
        return checkNum;
    }

    public void setCheckNum(String checkNum) {
        this.checkNum = checkNum;
    }

    public String getManageType() {
        return manageType;
    }

    public void setManageType(String manageType) {
        this.manageType = manageType;
    }

    public String getInputUser() {
        return inputUser;
    }

    public void setInputUser(String inputUser) {
        this.inputUser = inputUser;
    }

    public String getInputTime() {
        return inputTime;
    }

    public void setInputTime(String inputTime) {
        this.inputTime = inputTime;
    }

    public String getInputStatus() {
        return inputStatus;
    }

    public void setInputStatus(String inputStatus) {
        this.inputStatus = inputStatus;
    }

    public String getReason() {
        return reason;
    }

    public void setReason(String reason) {
        this.reason = reason;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("taskId", getTaskId())
            .append("purchaseTime", getPurchaseTime())
            .append("arrivalTime", getArrivalTime())
            .append("purchaser", getPurchaser())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("companyId", getCompanyId())
            .toString();
    }
}
