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.jasamedika.medifirst2000.base.BaseMaster;
import com.jasamedika.medifirst2000.helper.Caption;

/**
 * class KelompokJabatan
 * 
 * @author Generator
 */
@Entity
@Table(name = "NilaiKelompokJabatan_M")
public class NilaiKelompokJabatan extends BaseMaster {

	@ManyToOne
	@JoinColumn(name = "KelompokJabatanFk")
	@NotNull(message = "KelompokJabatan Harus Diisi")
	@Caption(value = "KelompokJabatan")
	private KelompokJabatan kelompokJabatan;

	@Column(name = "KelompokJabatanFk", insertable = false, updatable = false)
	private Integer kelompokJabatanId;

	@Column(name = "DetailKelompokJabatan", nullable = false, length = 100)
	@Caption(value = "DetailKelompokJabatan")
	private String detailKelompokJabatan;

	@ManyToOne
	@JoinColumn(name = "objectgradefk")
	@Caption(value = "Grade")
	private GradeRemunerasi grade;

	@Column(name = "objectgradefk", insertable = false, updatable = false)
	private Integer gradeId;

	@Column(name = "Grade", nullable = false, length = 100)
	@Caption(value = "Grade")
	private String gradeDesc;

	@Column(name = "NilaiTerendah", nullable = false, length = 100)
	@Caption(value = "NilaiTerendah")
	private Integer nilaiTerendah;

	@Column(name = "NilaiTertinggi", nullable = false, length = 100)
	@Caption(value = "NilaiTertinggi")
	private Integer nilaiTertinggi;

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

	@Column(name = "GajiHonorarium", nullable = false)
	@Caption(value = "Gaji Honorarium")
	private Double gajiHonorarium;

	@Column(name = "MinInsentif", nullable = false)
	@Caption(value = "Minimal Insentif")
	private Double minInsentif;

	@Column(name = "maxInsentif", nullable = false)
	@Caption(value = "Maksimal Insentif")
	private Double maxInsentif;

	@Column(name = "maxTotalRemunerasi", nullable = false)
	@Caption(value = "Maksimal Total Remunerasi")
	private Double maxTotalRemunerasi;

	public KelompokJabatan getKelompokJabatan() {
		return kelompokJabatan;
	}

	public void setKelompokJabatan(KelompokJabatan kelompokJabatan) {
		this.kelompokJabatan = kelompokJabatan;
	}

	public Integer getKelompokJabatanId() {
		return kelompokJabatanId;
	}

	public void setKelompokJabatanId(Integer kelompokJabatanId) {
		this.kelompokJabatanId = kelompokJabatanId;
	}

	public String getDetailKelompokJabatan() {
		return detailKelompokJabatan;
	}

	public void setDetailKelompokJabatan(String detailKelompokJabatan) {
		this.detailKelompokJabatan = detailKelompokJabatan;
	}

	public GradeRemunerasi getGrade() {
		return grade;
	}

	public void setGrade(GradeRemunerasi grade) {
		this.grade = grade;
	}

	public Integer getGradeId() {
		return gradeId;
	}

	public void setGradeId(Integer gradeId) {
		this.gradeId = gradeId;
	}

	public String getGradeDesc() {
		return gradeDesc;
	}

	public void setGradeDesc(String gradeDesc) {
		this.gradeDesc = gradeDesc;
	}

	public Integer getNilaiTerendah() {
		return nilaiTerendah;
	}

	public void setNilaiTerendah(Integer nilaiTerendah) {
		this.nilaiTerendah = nilaiTerendah;
	}

	public Integer getNilaiTertinggi() {
		return nilaiTertinggi;
	}

	public void setNilaiTertinggi(Integer nilaiTertinggi) {
		this.nilaiTertinggi = nilaiTertinggi;
	}

	public Integer getId() {
		return id;
	}

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

	public Double getGajiHonorarium() {
		return gajiHonorarium;
	}

	public void setGajiHonorarium(Double gajiHonorarium) {
		this.gajiHonorarium = gajiHonorarium;
	}

	public Double getMinInsentif() {
		return minInsentif;
	}

	public void setMinInsentif(Double minInsentif) {
		this.minInsentif = minInsentif;
	}

	public Double getMaxInsentif() {
		return maxInsentif;
	}

	public void setMaxInsentif(Double maxInsentif) {
		this.maxInsentif = maxInsentif;
	}

	public Double getMaxTotalRemunerasi() {
		return maxTotalRemunerasi;
	}

	public void setMaxTotalRemunerasi(Double maxTotalRemunerasi) {
		this.maxTotalRemunerasi = maxTotalRemunerasi;
	}

}