package com.willalp.flow.domain;

import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.willalp.common.annotation.Excel;
import com.willalp.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 物资领用申请业务数据记录对象 reserve_consuming_record
 *
 * @author willalp
 * @date 2023-01-12
 */

@TableName("reserve_consuming_record")
public class ReserveConsumingRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private String id;

    /** 审批标题 */
    @Excel(name = "审批标题")
    private String title;

    /** 申请科室 */
    @Excel(name = "申请科室")
    private String applyDepartment;

    /** 物资类型 */
    @Excel(name = "物资类型")
    private String reserveType;

    /** 物资名称 */
    @Excel(name = "物资名称")
    private String reserveName;

    /** 物资型号 */
    @Excel(name = "物资型号")
    private String reserveModelNo;

    /** 申请数量 */
    @Excel(name = "申请数量")
    private Long applyAmount;

    /** 申请人user_code */
    @Excel(name = "申请人user_code")
    private String applyUserId;

    /** 申请人 */
    @Excel(name = "申请人")
    private String applyUserName;

    /** 申请原因（申请用途） */
    @Excel(name = "申请原因", readConverterExp = "申=请用途")
    private String applyReason;

    /** 申请日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applyDate;

    /** 是否删除（0.未删除；1.已删除） */
    @TableLogic
    private Integer isDelete;

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

    public String getId()
    {
        return id;
    }
    public void setTitle(String title)
    {
        this.title = title;
    }

    public String getTitle()
    {
        return title;
    }
    public void setApplyDepartment(String applyDepartment)
    {
        this.applyDepartment = applyDepartment;
    }

    public String getApplyDepartment()
    {
        return applyDepartment;
    }
    public void setReserveType(String reserveType)
    {
        this.reserveType = reserveType;
    }

    public String getReserveType()
    {
        return reserveType;
    }
    public void setReserveName(String reserveName)
    {
        this.reserveName = reserveName;
    }

    public String getReserveName()
    {
        return reserveName;
    }
    public void setReserveModelNo(String reserveModelNo)
    {
        this.reserveModelNo = reserveModelNo;
    }

    public String getReserveModelNo()
    {
        return reserveModelNo;
    }
    public void setApplyAmount(Long applyAmount)
    {
        this.applyAmount = applyAmount;
    }

    public Long getApplyAmount()
    {
        return applyAmount;
    }
    public void setApplyUserId(String applyUserId)
    {
        this.applyUserId = applyUserId;
    }

    public String getApplyUserId()
    {
        return applyUserId;
    }
    public void setApplyUserName(String applyUserName)
    {
        this.applyUserName = applyUserName;
    }

    public String getApplyUserName()
    {
        return applyUserName;
    }
    public void setApplyReason(String applyReason)
    {
        this.applyReason = applyReason;
    }

    public String getApplyReason()
    {
        return applyReason;
    }
    public void setApplyDate(Date applyDate)
    {
        this.applyDate = applyDate;
    }

    public Date getApplyDate()
    {
        return applyDate;
    }
    public void setIsDelete(Integer isDelete)
    {
        this.isDelete = isDelete;
    }

    public Integer getIsDelete()
    {
        return isDelete;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("title", getTitle())
            .append("applyDepartment", getApplyDepartment())
            .append("reserveType", getReserveType())
            .append("reserveName", getReserveName())
            .append("reserveModelNo", getReserveModelNo())
            .append("applyAmount", getApplyAmount())
            .append("applyUserId", getApplyUserId())
            .append("applyUserName", getApplyUserName())
            .append("applyReason", getApplyReason())
            .append("applyDate", getApplyDate())
            .append("isDelete", getIsDelete())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
