package com.jasamedika.medifirst2000.vo;

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;

import com.fasterxml.jackson.annotation.JsonManagedReference;
import com.jasamedika.medifirst2000.base.BaseTransaction;
import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
import com.jasamedika.medifirst2000.helper.Caption;

public class PapRiwayatYangLaluVO extends BaseTransactionVO {

	@ManyToOne
	@JoinColumn(name = "ObjectAntrianPasienDiPeriksaFk")
	@Caption(value = "Object AntrianPasienDiPeriksa")
	private AntrianPasienDiPeriksaVO antrianPasienDiPeriksa;

	@NotNull(message = "Tgl Input tidak boleh kosong")
	@Column(name = "tglInput", nullable = false)
	@Caption(value = "Tgl Input")
	private Date tglInput;

	@NotNull(message = "Tgl Tahun Kelahiran tidak boleh kosong")
	@Column(name = "tglTahunKelahiran", nullable = false)
	@Caption(value = "Tgl Tahun Kelahiran")	
	private Date tglTahunKelahiran;
	
	@NotNull(message = "Berat Badan Lahir tidak boleh kosong")
	@Column(name = "beratBadanLahir", nullable = false)
	@Caption(value = "Berat Badan Lahir")	
	private String beratBadanLahir;
	
	@NotNull(message = "Keterangan Lain tidak boleh kosong")
	@Column(name = "keteranganLain", nullable = false)
	@Caption(value = "Keterangan Lain")	
	private String keteranganLain;

	@ManyToOne
	@JoinColumn(name = "ObjectJenisKelaminFk")
	@Caption(value = "Object JenisKelamin")
	private JenisKelaminVO jenisKelamin;
	
	@ManyToOne
	@JoinColumn(name = "ObjectAntrianPasienDiPeriksaFk")
	@Caption(value = "Object AntrianPasienDiPeriksa")
	private KeadaanLahirBayiVO keadaanLahirBayi;
	
	@ManyToOne
	@JoinColumn(name = "ObjectPenyakitFk")
	@Caption(value = "Object Penyakit")
	private PenyakitVO penyakit;
	
	@ManyToOne
	@JoinColumn(name = "ObjectJenisPersalinanFk")
	@Caption(value = "Object JenisPersalinan")
	private JenisPersalinanVO jenisPersalinan;
	
	@ManyToOne
	@JoinColumn(name = "ObjectKomplikasiKehamilanFk")
	@Caption(value = "Object KomplikasiKehamilan")
	private KomplikasiKehamilanVO komplikasiKehamilan;

	public AntrianPasienDiPeriksaVO getAntrianPasienDiPeriksa() {
		return antrianPasienDiPeriksa;
	}

	public void setAntrianPasienDiPeriksa(AntrianPasienDiPeriksaVO antrianPasienDiPeriksa) {
		this.antrianPasienDiPeriksa = antrianPasienDiPeriksa;
	}

	public Date getTglInput() {
		return tglInput;
	}

	public void setTglInput(Date tglInput) {
		this.tglInput = tglInput;
	}

	public Date getTglTahunKelahiran() {
		return tglTahunKelahiran;
	}

	public void setTglTahunKelahiran(Date tglTahunKelahiran) {
		this.tglTahunKelahiran = tglTahunKelahiran;
	}

	public String getBeratBadanLahir() {
		return beratBadanLahir;
	}

	public void setBeratBadanLahir(String beratBadanLahir) {
		this.beratBadanLahir = beratBadanLahir;
	}

	public String getKeteranganLain() {
		return keteranganLain;
	}

	public void setKeteranganLain(String keteranganLain) {
		this.keteranganLain = keteranganLain;
	}

	public JenisKelaminVO getJenisKelamin() {
		return jenisKelamin;
	}

	public void setJenisKelamin(JenisKelaminVO jenisKelamin) {
		this.jenisKelamin = jenisKelamin;
	}

	public KeadaanLahirBayiVO getKeadaanLahirBayi() {
		return keadaanLahirBayi;
	}

	public void setKeadaanLahirBayi(KeadaanLahirBayiVO keadaanLahirBayi) {
		this.keadaanLahirBayi = keadaanLahirBayi;
	}

	public PenyakitVO getPenyakit() {
		return penyakit;
	}

	public void setPenyakit(PenyakitVO penyakit) {
		this.penyakit = penyakit;
	}

	public JenisPersalinanVO getJenisPersalinan() {
		return jenisPersalinan;
	}

	public void setJenisPersalinan(JenisPersalinanVO jenisPersalinan) {
		this.jenisPersalinan = jenisPersalinan;
	}

	public KomplikasiKehamilanVO getKomplikasiKehamilan() {
		return komplikasiKehamilan;
	}

	public void setKomplikasiKehamilan(KomplikasiKehamilanVO komplikasiKehamilan) {
		this.komplikasiKehamilan = komplikasiKehamilan;
	}
	
}
