package cn.com.poc.human_resources.model;

import java.io.Serializable;
import cn.com.yict.framemax.data.model.BaseModelClass;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Id;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import javax.persistence.Version;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;

/**
 * Model class for biz_human_resource_position
 * 人力资源职位信息表
 */
@Entity
@Table(name = "biz_human_resource_position")
@DynamicInsert
@DynamicUpdate
public class BizHumanResourcePositionModel extends BaseModelClass implements Serializable {

    private static final long serialVersionUID = 1L;


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

    @Column(name = "id",length = 19)
	@Id @GeneratedValue(strategy = GenerationType.AUTO)
    public java.lang.Long getId(){
        return this.id;
    }

    public void setId(java.lang.Long id){
        this.id = id;
        super.addValidField("id");
    }

    /**
     * post_status
     * 发布状态
     * DRAFT-草稿
     * PUBLISHED - 已发布
     */
    private java.lang.String postStatus;

    @Column(name = "post_status",length = 10)
    public String getPostStatus() {
        return postStatus;
    }

    public void setPostStatus(String postStatus) {
        this.postStatus = postStatus;
        super.addValidField("postStatus");
    }

    /** job_title
    *职位名称
    */
    private java.lang.String jobTitle;

    @Column(name = "job_title",length = 100)
    public java.lang.String getJobTitle(){
        return this.jobTitle;
    }

    public void setJobTitle(java.lang.String jobTitle){
        this.jobTitle = jobTitle;
        super.addValidField("jobTitle");
    }


    /** department
    *所属部门
    */
    private java.lang.String department;

    @Column(name = "department",length = 100)
    public java.lang.String getDepartment(){
        return this.department;
    }

    public void setDepartment(java.lang.String department){
        this.department = department;
        super.addValidField("department");
    }


    /** work_location
    *工作地址
    */
    private java.lang.String workLocation;

    @Column(name = "work_location",length = 100)
    public java.lang.String getWorkLocation(){
        return this.workLocation;
    }

    public void setWorkLocation(java.lang.String workLocation){
        this.workLocation = workLocation;
        super.addValidField("workLocation");
    }


    /** job_nature
    *工作性质
    */
    private java.lang.String jobNature;

    @Column(name = "job_nature",length = 100)
    public java.lang.String getJobNature(){
        return this.jobNature;
    }

    public void setJobNature(java.lang.String jobNature){
        this.jobNature = jobNature;
        super.addValidField("jobNature");
    }


    /** number_of_recruits
    *招聘人数
    */
    private java.lang.Integer numberOfRecruits;

    @Column(name = "number_of_recruits",length = 10)
    public java.lang.Integer getNumberOfRecruits(){
        return this.numberOfRecruits;
    }

    public void setNumberOfRecruits(java.lang.Integer numberOfRecruits){
        this.numberOfRecruits = numberOfRecruits;
        super.addValidField("numberOfRecruits");
    }


    /** work_experience
    *工作经验
    */
    private java.lang.String workExperience;

    @Column(name = "work_experience",length = 100)
    public java.lang.String getWorkExperience(){
        return this.workExperience;
    }

    public void setWorkExperience(java.lang.String workExperience){
        this.workExperience = workExperience;
        super.addValidField("workExperience");
    }


    /** educational_re
    *学历要求
    */
    private java.lang.String educationalRe;

    @Column(name = "educational_re",length = 100)
    public java.lang.String getEducationalRe(){
        return this.educationalRe;
    }

    public void setEducationalRe(java.lang.String educationalRe){
        this.educationalRe = educationalRe;
        super.addValidField("educationalRe");
    }


    /** salary_range
    *薪资要求
    */
    private java.lang.String salaryRange;

    @Column(name = "salary_range",length = 100)
    public java.lang.String getSalaryRange(){
        return this.salaryRange;
    }

    public void setSalaryRange(java.lang.String salaryRange){
        this.salaryRange = salaryRange;
        super.addValidField("salaryRange");
    }


    /** job_requirements
    *任职资格
    */
    private java.lang.String jobRequirements;

    @Column(name = "job_requirements",length = 2147483647)
    public java.lang.String getJobRequirements(){
        return this.jobRequirements;
    }

    public void setJobRequirements(java.lang.String jobRequirements){
        this.jobRequirements = jobRequirements;
        super.addValidField("jobRequirements");
    }


    /** job_duties
    *职位描述
    */
    private java.lang.String jobDuties;

    @Column(name = "job_duties",length = 2147483647)
    public java.lang.String getJobDuties(){
        return this.jobDuties;
    }

    public void setJobDuties(java.lang.String jobDuties){
        this.jobDuties = jobDuties;
        super.addValidField("jobDuties");
    }


    /** essential
    *职位画像-必备项
    */
    private java.lang.String essential;

    @Column(name = "essential",length = 1073741824)
    public java.lang.String getEssential(){
        return this.essential;
    }

    public void setEssential(java.lang.String essential){
        this.essential = essential;
        super.addValidField("essential");
    }


    /** bonusPoints
    *职位画像-加分项
    */
    private java.lang.String bonusPoints;

    @Column(name = "bonusPoints",length = 1073741824)
    public java.lang.String getBonusPoints(){
        return this.bonusPoints;
    }

    public void setBonusPoints(java.lang.String bonusPoints){
        this.bonusPoints = bonusPoints;
        super.addValidField("bonusPoints");
    }


    /** exclusion
    *职位画像-排除项
    */
    private java.lang.String exclusion;

    @Column(name = "exclusion",length = 1073741824)
    public java.lang.String getExclusion(){
        return this.exclusion;
    }

    public void setExclusion(java.lang.String exclusion){
        this.exclusion = exclusion;
        super.addValidField("exclusion");
    }


    /** member_id
    *创建人ID
    */
    private java.lang.Long memberId;

    @Column(name = "member_id",length = 19)
    public java.lang.Long getMemberId(){
        return this.memberId;
    }

    public void setMemberId(java.lang.Long memberId){
        this.memberId = memberId;
        super.addValidField("memberId");
    }


    /** is_deleted
    *是否删除 1、Y 是 2、N 否
    */
    private java.lang.String isDeleted;

    @Column(name = "is_deleted",length = 1)
    public java.lang.String getIsDeleted(){
        return this.isDeleted;
    }

    public void setIsDeleted(java.lang.String isDeleted){
        this.isDeleted = isDeleted;
        super.addValidField("isDeleted");
    }


    /** CREATOR
    *创建人
    */
    private java.lang.String creator;

    @Column(name = "CREATOR",length = 225)
    public java.lang.String getCreator(){
        return this.creator;
    }

    public void setCreator(java.lang.String creator){
        this.creator = creator;
        super.addValidField("creator");
    }


    /** CREATED_TIME
    *创建时间
    */
    private java.util.Date createdTime;

    @Column(name = "CREATED_TIME",length = 19)
    public java.util.Date getCreatedTime(){
        return this.createdTime;
    }

    public void setCreatedTime(java.util.Date createdTime){
        this.createdTime = createdTime;
        super.addValidField("createdTime");
    }


    /** MODIFIER
    *修改人
    */
    private java.lang.String modifier;

    @Column(name = "MODIFIER",length = 225)
    public java.lang.String getModifier(){
        return this.modifier;
    }

    public void setModifier(java.lang.String modifier){
        this.modifier = modifier;
        super.addValidField("modifier");
    }


    /** MODIFIED_TIME
    *修改时间
    */
    private java.util.Date modifiedTime;

    @Column(name = "MODIFIED_TIME",length = 19)
    public java.util.Date getModifiedTime(){
        return this.modifiedTime;
    }

    public void setModifiedTime(java.util.Date modifiedTime){
        this.modifiedTime = modifiedTime;
        super.addValidField("modifiedTime");
    }


    /** SYS_VERSION
    *乐观锁,版本号
    */
    private java.lang.Integer sysVersion;

    @Column(name = "SYS_VERSION",length = 10)
	@Version
    public java.lang.Integer getSysVersion(){
        return this.sysVersion;
    }

    public void setSysVersion(java.lang.Integer sysVersion){
        this.sysVersion = sysVersion;
        super.addValidField("sysVersion");
    }


}