package com.jasamedika.medifirst2000.entities;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

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

/**
 * @author salmanoe
 * @since Oct 19, 2021
 */
@Entity
@Table(name = "cppt_t")
public class CatatanPerkembanganPasienTerintegrasi extends BaseTransaction {

	@ManyToOne
	@JoinColumn(name = "pegawaifk")
	@Caption(value = "Pegawai")
	private Pegawai pegawai;

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

	@ManyToOne
	@JoinColumn(name = "noregistrasifk")
	@Caption(value = "Antrian Pasien Diperiksa")
	private AntrianPasienDiPeriksa antrianPasienDiperiksa;

	@Column(name = "noregistrasifk", columnDefinition = "char(32)", insertable = false, updatable = false, nullable = true)
	private String antrianPasienDiperiksaId;

	@Column(name = "isverifikasi", nullable = true)
	@Caption(value = "Status Verifikasi")
	private Boolean isVerifikasi;

	@Column(name = "nocppt", columnDefinition = "varchar(32)", nullable = true)
	@Caption(value = "Nomor CPPT")
	private String noCPPT;

	@Column(name = "tglinput", nullable = true)
	@Caption(value = "Tanggal Input")
	@Temporal(TemporalType.TIMESTAMP)
	private Date tglInput;

	@Column(name = "s", columnDefinition = "varchar(5000)", nullable = true)
	@Caption(value = "Subjektif/ Assesmen")
	private String subjektifOrAssesmen;

	@Column(name = "o", columnDefinition = "varchar(5000)", nullable = true)
	@Caption(value = "Objektif/ Diagnosis")
	private String objecktifOrDiagnosis;

	@Column(name = "a", columnDefinition = "varchar(5000)", nullable = true)
	@Caption(value = "Analisis/ Intervensi")
	private String analisisOrIntervensi;

	@Column(name = "p", columnDefinition = "varchar(5000)", nullable = true)
	@Caption(value = "Perencanaan/ Monitoring")
	private String perencanaanOrMonitoring;

	@Column(name = "e", columnDefinition = "varchar(5000)", nullable = true)
	@Caption(value = "ADIME: Evaluasi")
	private String adimeEvaluasi;

	@Column(name = "cppt_e", columnDefinition = "varchar(5000)", nullable = true)
	@Caption(value = "CPPT: Evaluasi")
	private String cpptEvaluasi;

	@Column(name = "cppt_i", columnDefinition = "varchar(5000)", nullable = true)
	@Caption(value = "CPPT: Implementasi")
	private String cpptImplementasi;

	@ManyToOne
	@JoinColumn(name = "ruanganfk")
	@Caption(value = "Ruangan")
	private Ruangan ruangan;

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

	@ManyToOne
	@JoinColumn(name = "pasienfk")
	@Caption(value = "Pasien")
	private Pasien pasien;

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

	@ManyToOne
	@JoinColumn(name = "pegawaiasalfk")
	@Caption(value = "Pegawai Asal")
	private Pegawai pegawaiAsal;

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

	@Column(name = "flag_", nullable = true)
	@Caption(value = "Flag")
	private Integer flag;

	@Column(name = "tbak", columnDefinition = "varchar(2000)", nullable = true)
	@Caption(value = "Tulis Baca dan Konfirmasi")
	private String tulisBacaKonfirmasi;

	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 AntrianPasienDiPeriksa getAntrianPasienDiperiksa() {
		return antrianPasienDiperiksa;
	}

	public void setAntrianPasienDiperiksa(AntrianPasienDiPeriksa antrianPasienDiperiksa) {
		this.antrianPasienDiperiksa = antrianPasienDiperiksa;
	}

	public String getAntrianPasienDiperiksaId() {
		return antrianPasienDiperiksaId;
	}

	public void setAntrianPasienDiperiksaId(String antrianPasienDiperiksaId) {
		this.antrianPasienDiperiksaId = antrianPasienDiperiksaId;
	}

	public Boolean getIsVerifikasi() {
		return isVerifikasi;
	}

	public void setIsVerifikasi(Boolean isVerifikasi) {
		this.isVerifikasi = isVerifikasi;
	}

	public String getNoCPPT() {
		return noCPPT;
	}

	public void setNoCPPT(String noCPPT) {
		this.noCPPT = noCPPT;
	}

	public Date getTglInput() {
		return tglInput;
	}

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

	public String getSubjektifOrAssesmen() {
		return subjektifOrAssesmen;
	}

	public void setSubjektifOrAssesmen(String subjektifOrAssesmen) {
		this.subjektifOrAssesmen = subjektifOrAssesmen;
	}

	public String getObjecktifOrDiagnosis() {
		return objecktifOrDiagnosis;
	}

	public void setObjecktifOrDiagnosis(String objecktifOrDiagnosis) {
		this.objecktifOrDiagnosis = objecktifOrDiagnosis;
	}

	public String getAnalisisOrIntervensi() {
		return analisisOrIntervensi;
	}

	public void setAnalisisOrIntervensi(String analisisOrIntervensi) {
		this.analisisOrIntervensi = analisisOrIntervensi;
	}

	public String getPerencanaanOrMonitoring() {
		return perencanaanOrMonitoring;
	}

	public void setPerencanaanOrMonitoring(String perencanaanOrMonitoring) {
		this.perencanaanOrMonitoring = perencanaanOrMonitoring;
	}

	public String getAdimeEvaluasi() {
		return adimeEvaluasi;
	}

	public void setAdimeEvaluasi(String adimeEvaluasi) {
		this.adimeEvaluasi = adimeEvaluasi;
	}

	public String getCpptEvaluasi() {
		return cpptEvaluasi;
	}

	public void setCpptEvaluasi(String cpptEvaluasi) {
		this.cpptEvaluasi = cpptEvaluasi;
	}

	public String getCpptImplementasi() {
		return cpptImplementasi;
	}

	public void setCpptImplementasi(String cpptImplementasi) {
		this.cpptImplementasi = cpptImplementasi;
	}

	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 Pasien getPasien() {
		return pasien;
	}

	public void setPasien(Pasien pasien) {
		this.pasien = pasien;
	}

	public Integer getPasienId() {
		return pasienId;
	}

	public void setPasienId(Integer pasienId) {
		this.pasienId = pasienId;
	}

	public Pegawai getPegawaiAsal() {
		return pegawaiAsal;
	}

	public void setPegawaiAsal(Pegawai pegawaiAsal) {
		this.pegawaiAsal = pegawaiAsal;
	}

	public Integer getPegawaiAsalId() {
		return pegawaiAsalId;
	}

	public void setPegawaiAsalId(Integer pegawaiAsalId) {
		this.pegawaiAsalId = pegawaiAsalId;
	}

	public Integer getFlag() {
		return flag;
	}

	public void setFlag(Integer flag) {
		this.flag = flag;
	}

	public String getTulisBacaKonfirmasi() {
		return tulisBacaKonfirmasi;
	}

	public void setTulisBacaKonfirmasi(String tulisBacaKonfirmasi) {
		this.tulisBacaKonfirmasi = tulisBacaKonfirmasi;
	}

}
