package com.jasamedika.medifirst2000.entities;

import com.jasamedika.medifirst2000.base.BaseTransaction;
import com.jasamedika.medifirst2000.helper.Caption;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.*;
import javax.validation.constraints.NotNull;

@Getter
@Setter
@Entity
@Table(name = "PemeriksaanFisisDokter_t")
public class FisisPemeriksaanDokter extends BaseTransaction {

	@ManyToOne
	@JoinColumn(name = "ObjectantrianPasienDiPeriksaFk")
	@NotNull(message = "antrianPasienDiPeriksa tidak boleh kosong")
	private AntrianPasienDiPeriksa antrianPasienDiPeriksa;

	@Column(name = "ObjectantrianPasienDiPeriksaFk", columnDefinition = "CHAR(32)", insertable = false, updatable = false, nullable = false)
	private String antrianPasienDiPeriksaId;

	@ManyToOne
	@JoinColumn(name = "ObjectneurologiFk")
	@Caption(value = "neurologi")
	private FisisNeurologi neurologi;

	@Column(name = "ObjectneurologiFk", insertable = false, updatable = false)
	private Integer neurologiId;

	@Column(name = "eye")
	@Caption(value = "eye")
	private String eye;

	@Column(name = "verbal")
	@Caption(value = "verbal")
	private String verbal;

	@Column(name = "motor")
	@Caption(value = "motor")
	private String motor;

	@Column(name = "gcs")
	@Caption(value = "gcs")
	private String gcs;

	@Column(name = "kelainanNeurologi")
	@Caption(value = "kelainanNeurologi")
	private String kelainanNeurologi;

	@ManyToOne
	@JoinColumn(name = "ObjectkulitFk")
	@Caption(value = "kulit")
	private FisisKulit kulit;

	@Column(name = "ObjectkulitFk", insertable = false, updatable = false)
	private Integer kulitId;

	@Column(name = "deskripsiLainLainKulit")
	@Caption(value = "deskripsiLainLainKulit")
	private String deskripsiLainLainKulit;

	@ManyToOne
	@JoinColumn(name = "ObjectkepalaFk")
	@Caption(value = "kepala")
	private FisisKepala kepala;

	@Column(name = "ObjectkepalaFk", insertable = false, updatable = false)
	private Integer kepalaId;

	@Column(name = "deskripsiLainLainKepala")
	@Caption(value = "deskripsiLainLainKepala")
	private String deskripsiLainLainKepala;

	@ManyToOne
	@JoinColumn(name = "ObjectmataFk")
	@Caption(value = "mata")
	private FisisMata mata;

	@Column(name = "ObjectmataFk", insertable = false, updatable = false)
	private Integer mataId;

	@Column(name = "deskripsiLainLainMata")
	@Caption(value = "deskripsiLainLainMata")
	private String deskripsiLainLainMata;

	@ManyToOne
	@JoinColumn(name = "ObjectthtFk")
	@Caption(value = "tht")
	private StatusNormalTidakNormal tht;

	@Column(name = "ObjectthtFk", insertable = false, updatable = false)
	private Integer thtId;

	@Column(name = "deskripsiTidakNormalTht")
	@Caption(value = "deskripsiTidakNormalTht")
	private String deskripsiTidakNormalTht;

	@ManyToOne
	@JoinColumn(name = "ObjectleherFk")
	@Caption(value = "leher")
	private FisisLeher leher;

	@Column(name = "ObjectleherFk", insertable = false, updatable = false)
	private Integer leherId;

	@Column(name = "deskripsiPembesaranKgbLeher")
	@Caption(value = "deskripsiPembesaranKgbLeher")
	private String deskripsiPembesaranKgbLeher;

	@Column(name = "deskripsiLainLainLeher")
	@Caption(value = "deskripsiLainLainLeher")
	private String deskripsiLainLainLeher;

	@ManyToOne
	@JoinColumn(name = "ObjectthoraxFk")
	@Caption(value = "thorax")
	private FisisThorax thorax;

	@Column(name = "ObjectthoraxFk", insertable = false, updatable = false)
	private Integer thoraxId;

	@ManyToOne
	@JoinColumn(name = "ObjectjantungFk")
	@Caption(value = "jantung")
	private StatusNormalTidakNormal jantung;

	@Column(name = "ObjectjantungFk", insertable = false, updatable = false)
	private Integer jantungId;

	@Column(name = "deskripsiLainLainJantung")
	@Caption(value = "deskripsiLainLainJantung")
	private String deskripsiLainLainJantung;

	@ManyToOne
	@JoinColumn(name = "ObjectparuFk")
	@Caption(value = "paru")
	private FisisParu paru;

	@Column(name = "ObjectparuFk", insertable = false, updatable = false)
	private Integer paruId;

	@Column(name = "deskripsiLainLainParu")
	@Caption(value = "deskripsiLainLainParu")
	private String deskripsiLainLainParu;

	@ManyToOne
	@JoinColumn(name = "ObjectabdomenFk")
	@Caption(value = "abdomen")
	private FisisAbdomen abdomen;

	@Column(name = "ObjectabdomenFk", insertable = false, updatable = false)
	private Integer abdomenId;

	@Column(name = "cmBacHeparMembesarAbdomen")
	@Caption(value = "cmBacHeparMembesarAbdomen")
	private String cmBacHeparMembesarAbdomen;

	@Column(name = "cmBpxHeparMembesarAbdomen")
	@Caption(value = "cmBpxHeparMembesarAbdomen")
	private String cmBpxHeparMembesarAbdomen;

	@Column(name = "deskripsiHeparMembesarAbdomen")
	@Caption(value = "deskripsiHeparMembesarAbdomen")
	private String deskripsiHeparMembesarAbdomen;

	@Column(name = "soefnes")
	@Caption(value = "soefnes")
	private String soefnes;

	@Column(name = "deskripsiLainLainAbdomen")
	@Caption(value = "deskripsiLainLainAbdomen")
	private String deskripsiLainLainAbdomen;

	@ManyToOne
	@JoinColumn(name = "ObjectektremitasFk")
	@Caption(value = "ektremitas")
	private FisisEkstremitas ektremitas;

	@Column(name = "ObjectektremitasFk", insertable = false, updatable = false)
	private Integer ektremitasId;

	@Column(name = "deskripsiLainLainEktremitas")
	@Caption(value = "deskripsiLainLainEktremitas")
	private String deskripsiLainLainEktremitas;

	@ManyToOne
	@JoinColumn(name = "ObjectgenitaliaFk")
	@Caption(value = "genitalia")
	private StatusNormalTidakNormal genitalia;

	@Column(name = "ObjectgenitaliaFk", insertable = false, updatable = false)
	private Integer genitaliaId;

	@Column(name = "deskripsiTidakNormalGenitalia")
	@Caption(value = "deskripsiTidakNormalGenitalia")
	private String deskripsiTidakNormalGenitalia;

	@Column(name = "statusLokalis")
	@Caption(value = "statusLokalis")
	private String statusLokalis;

}
