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.jasamedika.medifirst2000.base.BaseTransaction;
import com.jasamedika.medifirst2000.helper.Caption;

@Entity
@Table(name = "UnitCostDetail_T")
public class UnitCostDetail extends BaseTransaction {

	@ManyToOne
	@JoinColumn(name = "ObjectUnitCostFk")
	@Caption(value = "Object Unit Cost")
	private UnitCost unitCost;
	
	@Column(name = "ObjectUnitCostFk", insertable = false, updatable = false, nullable = true)
	private Integer unitCostId;
	
	@ManyToOne
	@JoinColumn(name = "ObjectUnitCostDetailJenisFk")
	@Caption(value = "Object Unit Cost Detail Jenis")
	private UnitCostDetailJenis unitCostDetailJenis;
	
	@Column(name = "ObjectUnitCostDetailJenisFk", insertable = false, updatable = false, nullable = true)
	private Integer unitCostDetailJenisId;

	@ManyToOne
	@JoinColumn(name = "ObjectProdukFk")
	@Caption(value = "Produk Unit Cost")
	private Produk produk;
	
	@Column(name = "ObjectProdukFk", insertable = false, updatable = false, nullable = true)
	private Integer produkId;
	
	@ManyToOne
	@JoinColumn(name = "ObjectSatuanStandarFk")
	@Caption(value = "Object Satuan Standar")
	private SatuanStandar satuanStandar;
	
	@Column(name = "ObjectSatuanStandarFk", insertable = false, updatable = false, nullable = true)
	private Integer satuanStandarId;
	
	
	
	
	 
	/*@ManyToOne
	@JoinColumn(name = "ObjectHargaNettoProdukByTerimaFk")
	@Caption(value = "Object Harga Netto Produk By Terima")
	private HargaNettoProdukByTerima hargaNettoProdukByTerima;
	
	@Column(name = "ObjectHargaNettoProdukByTerimaFk", insertable = false, updatable = false, nullable = true)
	private Integer hargaNettoProdukByTerimaNoRec;
	*/
	@Column(name = "Qty", nullable = true)
	@Caption(value = "Qty")
	private Integer qty;

	@Column(name = "harga", nullable = true)
	@Caption(value = "Harga")
	private Double harga;
	
	 


	/*@JsonManagedReference
	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "departemenFk")
	@Caption(value = "Departemen FK")
	private HashSet<Departemen> instalasiDepartemen = new HashSet<Departemen>();*/
	public UnitCostDetailJenis getUnitCostDetailJenis() {
		return unitCostDetailJenis;
	}

	public void setUnitCostDetailJenis(UnitCostDetailJenis unitCostDetailJenis) {
		this.unitCostDetailJenis = unitCostDetailJenis;
	}

	public Integer getUnitCostDetailJenisId() {
		return unitCostDetailJenisId;
	}

	public void setUnitCostDetailJenisId(Integer unitCostDetailJenisId) {
		this.unitCostDetailJenisId = unitCostDetailJenisId;
	}

	public Produk getProduk() {
		return produk;
	}

	public void setProduk(Produk produk) {
		this.produk = produk;
	}

	public Integer getProdukId() {
		return produkId;
	}

	public void setProdukId(Integer produkId) {
		this.produkId = produkId;
	}

	public SatuanStandar getSatuanStandar() {
		return satuanStandar;
	}

	public void setSatuanStandar(SatuanStandar satuanStandar) {
		this.satuanStandar = satuanStandar;
	}

	public Integer getSatuanStandarId() {
		return satuanStandarId;
	}

	public void setSatuanStandarId(Integer satuanStandarId) {
		this.satuanStandarId = satuanStandarId;
	}

	 

	public UnitCost getUnitCost() {
		return unitCost;
	}

	public Integer getUnitCostId() {
		return unitCostId;
	}

	public void setUnitCostId(Integer unitCostId) {
		this.unitCostId = unitCostId;
	}

	public Integer getQty() {
		return qty;
	}

	public void setQty(Integer qty) {
		this.qty = qty;
	}

	public Double getHarga() {
		return harga;
	}

	public void setHarga(Double harga) {
		this.harga = harga;
	}

	 

	public void setUnitCost(UnitCost unitCost) {
		this.unitCost = unitCost;
	}
 

	 
}
