package com.jasamedika.medifirst2000.vo;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;

import com.jasamedika.medifirst2000.base.BaseTransaction;
import com.jasamedika.medifirst2000.base.vo.BaseMasterVO;
import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
import com.jasamedika.medifirst2000.entities.Dokumen;
import com.jasamedika.medifirst2000.entities.JenisKeputusan;
import com.jasamedika.medifirst2000.entities.JenisProduk;
import com.jasamedika.medifirst2000.entities.KomponenHarga;
import com.jasamedika.medifirst2000.entities.Pegawai;
import com.jasamedika.medifirst2000.entities.Ruangan;
import com.jasamedika.medifirst2000.helper.Caption;

public class SuratKeputusanVO extends BaseMasterVO{

	@Caption(value="NoSK")
	private String noSK;
	
	@Caption(value="NoSK_Intern")
	private String noSK_Intern;
	
	@Caption(value="NamaSK")
	private String namaSK;
	
	@Caption(value="TglBerlakuAwal")
	private Date tglBerlakuAwal;
	
	@Caption(value="TglBerlakuAkhir")
	private Date tglBerlakuAkhir;
	
	@Caption(value="TglTTSK")
	private Date tglTTSK;
	
	@ManyToOne(fetch=FetchType.LAZY)
	@Caption(value="Object Pegawai TTFk")
	private PegawaiVO pegawaiTTFk;
	
	@ManyToOne(fetch=FetchType.LAZY)
	@Caption(value="Object Ruangan")
	private RuanganVO ruangan;
	
	@ManyToOne(fetch=FetchType.LAZY)
	@Caption(value="Object Dokumen")
	private DokumenVO dokumen;
	
	@ManyToOne(fetch=FetchType.LAZY)
	@Caption(value="Object Keputusan")
	private JenisKeputusanVO jenisKeputusan;
	
	@ManyToOne(fetch=FetchType.LAZY)
	@Caption(value="Object Jenis Produk Loan")
	private JenisProdukVO JenisProdukLoan;
	
	@Caption(value="DeskripsiLoan")
	private String deskripsiLoan;
	
	@Caption(value="TotalLoan")
	private Float totalLoan;
	
	@Caption(value="QtyCicilan")
	private Integer qtyCicilan;
	
	@Caption(value="HargaSatuanCicilan")
	private Float hargaSatuanCicilan;
	
	@Caption(value="TglJatuhTempo")
	private Date tglJatuhTempo;
	
	@ManyToOne(fetch=FetchType.LAZY)
	@Caption(value="Object Komponen Harga Gaji")
	private KomponenHargaVO komponenHargaGaji;
	
	@Column(name="ObjectKomponenHargaGajiFk", insertable=false, updatable=false)
	private Integer komponenHargaGajiId;
	
	@Caption(value="QtyPencairanLoan")
	private Integer qtyPencairanLoan;
	
	@Caption(value="PencairanKeLast")
	private Integer pencairanKeLast;
	
	@Caption(value="NoSBKLast")
	private Integer noSBKLast;
	
	@Caption(value="TotalSudahDiCairkan")
	private Float totalSudahDiCairkan;
	
	@Caption(value="NoSBMLast")
	private String noSBMLast;
	
	@Caption(value="CicilanKeLast")
	private Integer cicilanKeLast;
	
	@ManyToOne(fetch=FetchType.LAZY)
	@Caption(value="Object Pegawai Objek SKFk")
	private PegawaiVO pegawaiObjekSK;
	
	@Caption(value="KeteranganLainnya")
	private String keteranganLainnya;

	public String getNoSK() {
		return noSK;
	}

	public void setNoSK(String noSK) {
		this.noSK = noSK;
	}

	public String getNoSK_Intern() {
		return noSK_Intern;
	}

	public void setNoSK_Intern(String noSK_Intern) {
		this.noSK_Intern = noSK_Intern;
	}

	public String getNamaSK() {
		return namaSK;
	}

	public void setNamaSK(String namaSK) {
		this.namaSK = namaSK;
	}

	public Date getTglBerlakuAwal() {
		return tglBerlakuAwal;
	}

	public void setTglBerlakuAwal(Date tglBerlakuAwal) {
		this.tglBerlakuAwal = tglBerlakuAwal;
	}

	public Date getTglBerlakuAkhir() {
		return tglBerlakuAkhir;
	}

	public void setTglBerlakuAkhir(Date tglBerlakuAkhir) {
		this.tglBerlakuAkhir = tglBerlakuAkhir;
	}

	public Date getTglTTSK() {
		return tglTTSK;
	}

	public void setTglTTSK(Date tglTTSK) {
		this.tglTTSK = tglTTSK;
	}

	public PegawaiVO getPegawaiTTFk() {
		return pegawaiTTFk;
	}

	public void setPegawaiTTFk(PegawaiVO pegawaiTTFk) {
		this.pegawaiTTFk = pegawaiTTFk;
	}

	public RuanganVO getRuangan() {
		return ruangan;
	}

	public void setRuangan(RuanganVO ruangan) {
		this.ruangan = ruangan;
	}

	public DokumenVO getDokumen() {
		return dokumen;
	}

	public void setDokumen(DokumenVO dokumen) {
		this.dokumen = dokumen;
	}

	public JenisKeputusanVO getJenisKeputusan() {
		return jenisKeputusan;
	}

	public void setJenisKeputusan(JenisKeputusanVO jenisKeputusan) {
		this.jenisKeputusan = jenisKeputusan;
	}

	public JenisProdukVO getJenisProdukLoan() {
		return JenisProdukLoan;
	}

	public void setJenisProdukLoan(JenisProdukVO jenisProdukLoan) {
		JenisProdukLoan = jenisProdukLoan;
	}

	public String getDeskripsiLoan() {
		return deskripsiLoan;
	}

	public void setDeskripsiLoan(String deskripsiLoan) {
		this.deskripsiLoan = deskripsiLoan;
	}

	public Float getTotalLoan() {
		return totalLoan;
	}

	public void setTotalLoan(Float totalLoan) {
		this.totalLoan = totalLoan;
	}

	public Integer getQtyCicilan() {
		return qtyCicilan;
	}

	public void setQtyCicilan(Integer qtyCicilan) {
		this.qtyCicilan = qtyCicilan;
	}

	public Float getHargaSatuanCicilan() {
		return hargaSatuanCicilan;
	}

	public void setHargaSatuanCicilan(Float hargaSatuanCicilan) {
		this.hargaSatuanCicilan = hargaSatuanCicilan;
	}

	public Date getTglJatuhTempo() {
		return tglJatuhTempo;
	}

	public void setTglJatuhTempo(Date tglJatuhTempo) {
		this.tglJatuhTempo = tglJatuhTempo;
	}

	public KomponenHargaVO getKomponenHargaGaji() {
		return komponenHargaGaji;
	}

	public void setKomponenHargaGaji(KomponenHargaVO komponenHargaGaji) {
		this.komponenHargaGaji = komponenHargaGaji;
	}

	public Integer getKomponenHargaGajiId() {
		return komponenHargaGajiId;
	}

	public void setKomponenHargaGajiId(Integer komponenHargaGajiId) {
		this.komponenHargaGajiId = komponenHargaGajiId;
	}

	public Integer getQtyPencairanLoan() {
		return qtyPencairanLoan;
	}

	public void setQtyPencairanLoan(Integer qtyPencairanLoan) {
		this.qtyPencairanLoan = qtyPencairanLoan;
	}

	public Integer getPencairanKeLast() {
		return pencairanKeLast;
	}

	public void setPencairanKeLast(Integer pencairanKeLast) {
		this.pencairanKeLast = pencairanKeLast;
	}

	public Integer getNoSBKLast() {
		return noSBKLast;
	}

	public void setNoSBKLast(Integer noSBKLast) {
		this.noSBKLast = noSBKLast;
	}

	public Float getTotalSudahDiCairkan() {
		return totalSudahDiCairkan;
	}

	public void setTotalSudahDiCairkan(Float totalSudahDiCairkan) {
		this.totalSudahDiCairkan = totalSudahDiCairkan;
	}

	public String getNoSBMLast() {
		return noSBMLast;
	}

	public void setNoSBMLast(String noSBMLast) {
		this.noSBMLast = noSBMLast;
	}

	public Integer getCicilanKeLast() {
		return cicilanKeLast;
	}

	public void setCicilanKeLast(Integer cicilanKeLast) {
		this.cicilanKeLast = cicilanKeLast;
	}

	public PegawaiVO getPegawaiObjekSK() {
		return pegawaiObjekSK;
	}

	public void setPegawaiObjekSK(PegawaiVO pegawaiObjekSK) {
		this.pegawaiObjekSK = pegawaiObjekSK;
	}

	public String getKeteranganLainnya() {
		return keteranganLainnya;
	}

	public void setKeteranganLainnya(String keteranganLainnya) {
		this.keteranganLainnya = keteranganLainnya;
	}
}
