package com.jasamedika.medifirst2000.entities;

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

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

@Entity
@Table(name = "DokumenVerifikasi_T")
@JsonIgnoreProperties({ "hibernateLazyInitializer", "handler" })
public class DokumenVerifikasi extends BaseTransaction {

	@ManyToOne
	@JoinColumn(name = "NoOrderFk")
	@Caption(value = "Object No Order")
	private StrukOrder noOrder;

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

	@ManyToOne
	@JoinColumn(name = "NoOrderBeforeFk")
	@Caption(value = "Object No Order Before")
	private StrukOrder noOrderBefore;

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

	@ManyToOne
	@JoinColumn(name = "PegawaiTujuanFk")
	@Caption(value = "Object Pegawai Tujuan")
	private Pegawai kdPegawaiTujuan;

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

	@ManyToOne
	@JoinColumn(name = "NoStrukTintFk")
	@Caption(value = "Object No Struk Tint")
	private StrukPelayanan noStruk_Tint;

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

	@ManyToOne
	@JoinColumn(name = "NoStrukTintReturnFk")
	@Caption(value = "Object No Struk Tint Return")
	private StrukPelayanan NoStruk_Tint_Return;

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

	@ManyToOne
	@JoinColumn(name = "NoKirimReturnFk")
	@Caption(value = "Object No Kirim Return")
	private StrukKirim noKirim_Return;

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

	@ManyToOne
	@JoinColumn(name = "DokumenFk")
	@Caption(value = "Object Dokumen")
	private Dokumen kdDokumen;

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

	@ManyToOne
	@JoinColumn(name = "StrukVerifikasiFK")
	@Caption(value = "Object Struk Verifikasi")
	private StrukVerifikasi noVerifikasi;

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

	public StrukOrder getNoOrder() {
		return noOrder;
	}

	public void setNoOrder(StrukOrder noOrder) {
		this.noOrder = noOrder;
	}

	public String getNoOrderId() {
		return noOrderId;
	}

	public void setNoOrderId(String noOrderId) {
		this.noOrderId = noOrderId;
	}

	public StrukOrder getNoOrderBefore() {
		return noOrderBefore;
	}

	public void setNoOrderBefore(StrukOrder noOrderBefore) {
		this.noOrderBefore = noOrderBefore;
	}

	public Pegawai getKdPegawaiTujuan() {
		return kdPegawaiTujuan;
	}

	public void setKdPegawaiTujuan(Pegawai kdPegawaiTujuan) {
		this.kdPegawaiTujuan = kdPegawaiTujuan;
	}

	public StrukPelayanan getNoStruk_Tint() {
		return noStruk_Tint;
	}

	public void setNoStruk_Tint(StrukPelayanan noStruk_Tint) {
		this.noStruk_Tint = noStruk_Tint;
	}

	public StrukPelayanan getNoStruk_Tint_Return() {
		return NoStruk_Tint_Return;
	}

	public void setNoStruk_Tint_Return(StrukPelayanan noStruk_Tint_Return) {
		NoStruk_Tint_Return = noStruk_Tint_Return;
	}

	public StrukKirim getNoKirim_Return() {
		return noKirim_Return;
	}

	public void setNoKirim_Return(StrukKirim noKirim_Return) {
		this.noKirim_Return = noKirim_Return;
	}

	public Dokumen getKdDokumen() {
		return kdDokumen;
	}

	public void setKdDokumen(Dokumen kdDokumen) {
		this.kdDokumen = kdDokumen;
	}

	public StrukVerifikasi getNoVerifikasi() {
		return noVerifikasi;
	}

	public void setNoVerifikasi(StrukVerifikasi noVerifikasi) {
		this.noVerifikasi = noVerifikasi;
	}

}
