package com.jasamedika.medifirst2000.entities;

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.*;
import com.jasamedika.medifirst2000.entities.Pegawai;
import com.jasamedika.medifirst2000.entities.JenisPetugasPelaksana;

import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.jasamedika.medifirst2000.base.BaseTransaction;

import javax.validation.constraints.NotNull;
import com.jasamedika.medifirst2000.helper.Caption;

/**
 * class DetailRencanaOperasi
 * 
 * @author Generator
 */
@Entity
@Table(name = "DetailRencanaOperasi_T")
@JsonIgnoreProperties({ "hibernateLazyInitializer", "handler" })
public class DetailRencanaOperasi extends BaseTransaction {

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "RencanaOperasi")
	@Caption(value = "Rencana Operasi")
	private RencanaOperasi rencanaOperasi;

	@Column(name = "RencanaOperasi", columnDefinition = "CHAR(32)", insertable = false, updatable = false, nullable = false)
	private String rencanaOperasiId;
	
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "PegawaiFk")
	@NotNull(message = "Pegawai Harus Diisi")
	@Caption(value = "Pegawai")
	private Pegawai pegawai;
	
	@Column(name = "PegawaiFk", insertable = false, updatable = false)
	private Integer pegawaiId;
	
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ObjectRuanganFk")
	@Caption(value = "Ruangan")
	private Ruangan ruangan;
	
	@Column(name = "ObjectRuanganFk", insertable = false, updatable = false)
	private Integer ruanganId;

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "JenisPelaksanaFk")
	@NotNull(message = "Jenis Pelaksana Harus Diisi")
	@Caption(value = "Jenis Pelaksana")
	private JenisPetugasPelaksana jenisPelaksana;

	@Column(name = "JenisPelaksanaFk", insertable = false, updatable = false)
	private Integer jenisPelaksanaId;

	public RencanaOperasi getRencanaOperasi() {
		return rencanaOperasi;
	}

	public void setRencanaOperasi(RencanaOperasi rencanaOperasi) {
		this.rencanaOperasi = rencanaOperasi;
	}

	public String getRencanaOperasiId() {
		return rencanaOperasiId;
	}

	public void setRencanaOperasiId(String rencanaOperasiId) {
		this.rencanaOperasiId = rencanaOperasiId;
	}

	public Pegawai getPegawai() {
		return pegawai;
	}

	public void setPegawai(Pegawai pegawai) {
		this.pegawai = pegawai;
	}

	public Integer getPegawaiId() {
		return pegawaiId;
	}

	public void setPegawaiId(Integer pegawaiId) {
		this.pegawaiId = pegawaiId;
	}

	public Ruangan getRuangan() {
		return ruangan;
	}

	public void setRuangan(Ruangan ruangan) {
		this.ruangan = ruangan;
	}

	public Integer getRuanganId() {
		return ruanganId;
	}

	public void setRuanganId(Integer ruanganId) {
		this.ruanganId = ruanganId;
	}

	public JenisPetugasPelaksana getJenisPelaksana() {
		return jenisPelaksana;
	}

	public void setJenisPelaksana(JenisPetugasPelaksana jenisPelaksana) {
		this.jenisPelaksana = jenisPelaksana;
	}

	public Integer getJenisPelaksanaId() {
		return jenisPelaksanaId;
	}

	public void setJenisPelaksanaId(Integer jenisPelaksanaId) {
		this.jenisPelaksanaId = jenisPelaksanaId;
	}

}