package com.mossle.asset.persistence.domain;

// Generated by Hibernate Tools
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * AssetRequest 资产申请.
 * 
 * @author Lingo
 */
@Entity
@Table(name = "ASSET_REQUEST")
public class AssetRequest implements java.io.Serializable {
    private static final long serialVersionUID = 0L;

    /** 主键. */
    private Long id;

    /** 单号. */
    private String code;

    /** 申请人. */
    private String userId;

    /** 申请人部门编码. */
    private String deptCode;

    /** 申请人部门名称. */
    private String deptName;

    /** 创建时间. */
    private Date createTime;

    /** 状态. */
    private String status;

    /** 申请原因. */
    private String description;

    /** 多租户. */
    private String tenantId;

    /** 产品分类. */
    private String productCategory;

    /** 申请用途. */
    private String purpose;

    /** 资产名称. */
    private String productName;

    /** 规格型号. */
    private String productModel;

    /** 价格. */
    private Integer productPrice;

    /** 数量. */
    private Integer productNum;

    public AssetRequest() {
    }

    public AssetRequest(Long id) {
        this.id = id;
    }

    public AssetRequest(Long id, String code, String userId, String deptCode,
            String deptName, Date createTime, String status,
            String description, String tenantId, String productCategory,
            String purpose, String productName, String productModel,
            Integer productPrice, Integer productNum) {
        this.id = id;
        this.code = code;
        this.userId = userId;
        this.deptCode = deptCode;
        this.deptName = deptName;
        this.createTime = createTime;
        this.status = status;
        this.description = description;
        this.tenantId = tenantId;
        this.productCategory = productCategory;
        this.purpose = purpose;
        this.productName = productName;
        this.productModel = productModel;
        this.productPrice = productPrice;
        this.productNum = productNum;
    }

    /** @return 主键. */
    @Id
    @Column(name = "ID", unique = true, nullable = false)
    public Long getId() {
        return this.id;
    }

    /**
     * @param id
     *            主键.
     */
    public void setId(Long id) {
        this.id = id;
    }

    /** @return 单号. */
    @Column(name = "CODE", length = 100)
    public String getCode() {
        return this.code;
    }

    /**
     * @param code
     *            单号.
     */
    public void setCode(String code) {
        this.code = code;
    }

    /** @return 申请人. */
    @Column(name = "USER_ID", length = 64)
    public String getUserId() {
        return this.userId;
    }

    /**
     * @param userId
     *            申请人.
     */
    public void setUserId(String userId) {
        this.userId = userId;
    }

    /** @return 申请人部门编码. */
    @Column(name = "DEPT_CODE", length = 50)
    public String getDeptCode() {
        return this.deptCode;
    }

    /**
     * @param deptCode
     *            申请人部门编码.
     */
    public void setDeptCode(String deptCode) {
        this.deptCode = deptCode;
    }

    /** @return 申请人部门名称. */
    @Column(name = "DEPT_NAME", length = 200)
    public String getDeptName() {
        return this.deptName;
    }

    /**
     * @param deptName
     *            申请人部门名称.
     */
    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    /** @return 创建时间. */
    @Temporal(TemporalType.TIMESTAMP)
    @Column(name = "CREATE_TIME", length = 26)
    public Date getCreateTime() {
        return this.createTime;
    }

    /**
     * @param createTime
     *            创建时间.
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /** @return 状态. */
    @Column(name = "STATUS", length = 50)
    public String getStatus() {
        return this.status;
    }

    /**
     * @param status
     *            状态.
     */
    public void setStatus(String status) {
        this.status = status;
    }

    /** @return 申请原因. */
    @Column(name = "DESCRIPTION", length = 200)
    public String getDescription() {
        return this.description;
    }

    /**
     * @param description
     *            申请原因.
     */
    public void setDescription(String description) {
        this.description = description;
    }

    /** @return 多租户. */
    @Column(name = "TENANT_ID", length = 64)
    public String getTenantId() {
        return this.tenantId;
    }

    /**
     * @param tenantId
     *            多租户.
     */
    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    /** @return 产品分类. */
    @Column(name = "PRODUCT_CATEGORY", length = 100)
    public String getProductCategory() {
        return this.productCategory;
    }

    /**
     * @param productCategory
     *            产品分类.
     */
    public void setProductCategory(String productCategory) {
        this.productCategory = productCategory;
    }

    /** @return 申请用途. */
    @Column(name = "PURPOSE", length = 100)
    public String getPurpose() {
        return this.purpose;
    }

    /**
     * @param purpose
     *            申请用途.
     */
    public void setPurpose(String purpose) {
        this.purpose = purpose;
    }

    /** @return 资产名称. */
    @Column(name = "PRODUCT_NAME", length = 200)
    public String getProductName() {
        return this.productName;
    }

    /**
     * @param productName
     *            资产名称.
     */
    public void setProductName(String productName) {
        this.productName = productName;
    }

    /** @return 规格型号. */
    @Column(name = "PRODUCT_MODEL", length = 50)
    public String getProductModel() {
        return this.productModel;
    }

    /**
     * @param productModel
     *            规格型号.
     */
    public void setProductModel(String productModel) {
        this.productModel = productModel;
    }

    /** @return 价格. */
    @Column(name = "PRODUCT_PRICE")
    public Integer getProductPrice() {
        return this.productPrice;
    }

    /**
     * @param productPrice
     *            价格.
     */
    public void setProductPrice(Integer productPrice) {
        this.productPrice = productPrice;
    }

    /** @return 数量. */
    @Column(name = "PRODUCT_NUM")
    public Integer getProductNum() {
        return this.productNum;
    }

    /**
     * @param productNum
     *            数量.
     */
    public void setProductNum(Integer productNum) {
        this.productNum = productNum;
    }
}
