package com.jasamedika.medifirst2000.entities;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import com.jasamedika.medifirst2000.base.BaseTransaction;
import com.jasamedika.medifirst2000.helper.Caption;

@Entity
@Table(name = "PemakaianAsuransi_T")
public class PemakaianAsuransi extends BaseTransaction {
	private static final long serialVersionUID = 8451625158161533060L;

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "NoRegistrasiFk", nullable = true)
	@Caption(value = "No Registrasi")
	private PasienDaftar pasienDaftar;

	@Column(name = "NoRegistrasiFk", columnDefinition = "CHAR(32)", insertable = false, updatable = false, nullable = true)
	private String pasienDaftarId;

	@Column(name = "PpkRujukan", nullable = true, length = 100)
	@Caption(value = "PpkRujukan")
	private String ppkRujukan;

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "DiagnosisFk")
	@Caption(value = "Diagnosis")
	private Diagnosa diagnosis;

	@Column(name = "DiagnosisFk", insertable = false, updatable = false, nullable = true)
	private Integer diagnosisId;

	@Column(name = "NoKepesertaan", nullable = true, length = 100)
	@Caption(value = "NoKepesertaan")
	private String noKepesertaan;

	@Column(name = "Lakalantas", nullable = true)
	@Caption(value = "Lakalantas")
	private Integer lakalantas;

	@Column(name = "TglRujukan", nullable = true)
	@Caption(value = "TglRujukan")
	private Date tglRujukan;

	@Column(name = "NoRujukan", nullable = true, length = 100)
	@Caption(value = "NoRujukan")
	private String noRujukan;

	@Column(name = "NoSep", nullable = true, length = 100)
	@Caption(value = "NoSep")
	private String noSep;

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ObjectAsuransiPasienFk")
	@Caption(value = "Object Asuransi Pasien")
	private AsuransiPasien asuransiPasien;

	@Column(name = "ObjectAsuransiPasienFk", insertable = false, updatable = false, nullable = true)
	private Integer asuransiPasienId;

	@Caption(value = "Tanggal Registrasi")
	@Column(name = "TglRegistrasi", nullable = true)
	private Date tglRegistrasi;

	@Caption(value = "Catatan")
	@Column(name = "Catatan", nullable = true)
	private String catatan;

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ObjectDiagnosaFK")
	@Caption(value = "ObjectDiagnosaFK")
	private Diagnosa diagnosa;

	@Column(name = "ObjectDiagnosaFK", insertable = false, updatable = false, nullable = true)
	private Integer diagnosaId;

	@Caption(value = "TanggalSep")
	@Column(name = "TanggalSep", nullable = true)
	private Date tanggalSep;

	public Date getTanggalPendaftaran() {
		return tglRegistrasi;
	}

	public void setTanggalPendaftaran(Date tanggalPendaftaran) {
		this.tglRegistrasi = tanggalPendaftaran;
	}

	public PasienDaftar getPasienDaftar() {
		return pasienDaftar;
	}

	public void setPasienDaftar(PasienDaftar pasienDaftar) {
		this.pasienDaftar = pasienDaftar;
	}

	public String getPasienDaftarId() {
		return pasienDaftarId;
	}

	public void setPasienDaftarId(String pasienDaftarId) {
		this.pasienDaftarId = pasienDaftarId;
	}

	public String getPpkRujukan() {
		return ppkRujukan;
	}

	public void setPpkRujukan(String ppkRujukan) {
		this.ppkRujukan = ppkRujukan;
	}

	public Diagnosa getDiagnosis() {
		return diagnosis;
	}

	public void setDiagnosis(Diagnosa diagnosis) {
		this.diagnosis = diagnosis;
	}

	public Integer getDiagnosisId() {
		return diagnosisId;
	}

	public void setDiagnosisId(Integer diagnosisId) {
		this.diagnosisId = diagnosisId;
	}

	public String getNoKepesertaan() {
		return noKepesertaan;
	}

	public void setNoKepesertaan(String noKepesertaan) {
		this.noKepesertaan = noKepesertaan;
	}

	public Integer getLakalantas() {
		return lakalantas;
	}

	public void setLakalantas(Integer lakalantas) {
		this.lakalantas = lakalantas;
	}

	public Date getTglRujukan() {
		return tglRujukan;
	}

	public void setTglRujukan(Date tglRujukan) {
		this.tglRujukan = tglRujukan;
	}

	public String getNoRujukan() {
		return noRujukan;
	}

	public void setNoRujukan(String noRujukan) {
		this.noRujukan = noRujukan;
	}

	public String getNoSep() {
		return noSep;
	}

	public void setNoSep(String noSep) {
		this.noSep = noSep;
	}

	public AsuransiPasien getAsuransiPasien() {
		return asuransiPasien;
	}

	public void setAsuransiPasien(AsuransiPasien asuransiPasien) {
		this.asuransiPasien = asuransiPasien;
	}

	public Integer getAsuransiPasienId() {
		return asuransiPasienId;
	}

	public void setAsuransiPasienId(Integer asuransiPasienId) {
		this.asuransiPasienId = asuransiPasienId;
	}

	public Date getTglRegistrasi() {
		return tglRegistrasi;
	}

	public void setTglRegistrasi(Date tglRegistrasi) {
		this.tglRegistrasi = tglRegistrasi;
	}

	public Diagnosa getDiagnosa() {
		return diagnosa;
	}

	public void setDiagnosa(Diagnosa diagnosa) {
		this.diagnosa = diagnosa;
	}

	public Integer getDiagnosaId() {
		return diagnosaId;
	}

	public void setDiagnosaId(Integer diagnosaId) {
		this.diagnosaId = diagnosaId;
	}

	public Date getTanggalSep() {
		return tanggalSep;
	}

	public void setTanggalSep(Date tanggalSep) {
		this.tanggalSep = tanggalSep;
	}

	public String getCatatan() {
		return catatan;
	}

	public void setCatatan(String catatan) {
		this.catatan = catatan;
	}
}
