package com.jasamedika.medifirst2000.entities;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.jasamedika.medifirst2000.base.BaseMaster;
import com.jasamedika.medifirst2000.helper.Caption;

/**
 * class KualifikasiJurusan
 * 
 * @author Generator
 */
@Entity // @Audited
@JsonIgnoreProperties({ "hibernateLazyInitializer", "handler" })
@Table(name = "KualifikasiJurusan_M")
public class KualifikasiJurusan extends BaseMaster {
	@NotNull(message = "Kd Kualifikasi Jurusan tidak boleh kosong")
	@Column(name = "KdKualifikasiJurusan", nullable = false, length = 4)
	@Caption(value = "Kode Kualifikasi Jurusan")
	private String kdKualifikasiJurusan;

	public void setKdKualifikasiJurusan(String kdKualifikasiJurusan) {
		this.kdKualifikasiJurusan = kdKualifikasiJurusan;
	}

	public String getKdKualifikasiJurusan() {
		return this.kdKualifikasiJurusan;
	}

	@ManyToOne
	@JoinColumn(name = "ObjectPendidikanFk")

	@Caption(value = "Object Pendidikan")
	private Pendidikan pendidikan;

	public void setPendidikan(Pendidikan pendidikan) {
		this.pendidikan = pendidikan;
	}

	public Pendidikan getPendidikan() {
		return this.pendidikan;
	}

	@Column(name = "ObjectPendidikanFk", insertable = false, updatable = false)
	private Integer pendidikanId;

	@NotNull(message = "Kualifikasi Jurusan tidak boleh kosong")
	@Column(name = "KualifikasiJurusan", nullable = false, length = 75)
	@Caption(value = "Kualifikasi Jurusan")
	private String kualifikasiJurusan;

	public void setKualifikasiJurusan(String kualifikasiJurusan) {
		this.kualifikasiJurusan = kualifikasiJurusan;
	}

	public String getKualifikasiJurusan() {
		return this.kualifikasiJurusan;
	}

	@NotNull(message = "QKualifikasi Jurusan tidak boleh kosong")
	@Column(name = "QKualifikasiJurusan", nullable = false)
	@Caption(value = "QKualifikasi Jurusan")
	private short qKualifikasiJurusan;

	public void setqKualifikasiJurusan(short qKualifikasiJurusan) {
		this.qKualifikasiJurusan = qKualifikasiJurusan;
	}

	public short getqKualifikasiJurusan() {
		return this.qKualifikasiJurusan;
	}

	@Id
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "public.kualifikasijurusan_m_id_seq")
	@javax.persistence.SequenceGenerator(name = "public.kualifikasijurusan_m_id_seq", sequenceName = "public.kualifikasijurusan_m_id_seq", allocationSize = 1)
	@Column(name = "id")
	protected Integer id;

	public Integer getId() {

		return id;
	}

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