package com.jasamedika.medifirst2000.entities;

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

import javax.persistence.*;

@Getter
@Setter
@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)
	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)
	private String noOrderBeforeId;

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

	@Column(name = "PegawaiTujuanFk", insertable = false, updatable = false)
	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)
	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)
	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)
	private String noKirim_ReturnId;

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

	@Column(name = "DokumenFk", insertable = false, updatable = false)
	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)
	private String noVerifikasiId;

}
