package com.jasamedika.medifirst2000.entities;

import java.io.Serializable;
import javax.persistence.*;
import org.joda.time.DateTime;
import org.hibernate.validator.constraints.NotEmpty;

import com.jasamedika.medifirst2000.base.BaseTransaction;
import javax.validation.constraints.NotNull;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.internal.util.logging.Messages;

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

/**
 *  class StokProdukDetailOpname
 * 
 * @author Generator
 */
@Entity
@Table(name = "StokProdukDetailOpname_T")
public class StokProdukDetailOpname extends BaseTransaction {
	
	@Caption(value="Harga Discount")
	@Column(name = "HargaDiscount", nullable = false )
	@NotNull(message="Harga Diskon Harus Diisi")
	private Double hargaDiscount;


	@Caption(value="Harga Netto1")
	@NotNull(message="Harga Netto 1 Harus Diisi")
	@Column(name = "HargaNetto1", nullable = false )
	private Double hargaNetto1;


	@Caption(value="Harga Netto2")
	@NotNull(message="Harga Netto 2 Harus Diisi")
	@Column(name = "HargaNetto2", nullable = false )
	private Double harganetto2;


	@ManyToOne
	@JoinColumn(name = "ObjectAsalProdukFk")
	@Caption(value="Object Asal Produk")
	private AsalProduk asalProduk;


	@Column(name = "ObjectAsalProdukFk", insertable=false,updatable=false)
	private Integer asalProdukId;

	

	@ManyToOne
	@JoinColumn(name = "ObjectProdukFk")
	@Caption(value="Object Produk")
	private Produk produk;


	@Column(name = "ObjectProdukFk", insertable=false,updatable=false)
	private Integer produkId;

	@ManyToOne
	@JoinColumn(name = "ObjectRuanganFk")
	@Caption(value="Object Ruangan")
	private Ruangan ruangan;


	@Column(name = "ObjectRuanganFk", insertable=false,updatable=false)
	private Integer ruanganId;

	@Caption(value="Keterangan Lainnya")
	@Column(name = "KeteranganLainnya", nullable = true , length = 150)
	private String keteranganLainnya;


	@ManyToOne
	@JoinColumn(name = "NoClosingFk")
	@Caption(value="No Closing")
	private StrukClosing strukClosing;


	@Column(name = "NoClosingFk", insertable=false,updatable=false)
	private String strukClosingId;

	@ManyToOne
	@JoinColumn(name = "NoStrukTerimaFk")
	@Caption(value="No Struk Terima")
	private StrukPelayanan strukPelayanan;


	@Column(name = "NoStrukTerimaFk", insertable=false,updatable=false)
	private String strukPelayananId;

	@ManyToOne
	@JoinColumn(name = "NoVerifikasiFk")
	@Caption(value="No Verifikasi")
	private StrukVerifikasi strukVerifikasi;


	@Column(name = "NoVerifikasiFk", insertable=false,updatable=false)
	private String strukVerifikasiId;

	@Caption(value="Persen Discount")
	@Column(name = "PersenDiscount", nullable = false )
	@NotNull(message="Persen Diskon Harus Diisi")
	private Double persenDiscount;


	@Caption(value="Qty Produk In Ext")
	@Column(name = "QtyProdukInExt", nullable = true )
	private Double qtyProdukiInExt;


	@Caption(value="Qty Produk In Int")
	@Column(name = "QtyProdukInInt", nullable = true )
	private Double qtyProdukInInt;


	@Caption(value="Qty Produk Out Ext")
	@Column(name = "QtyProdukOutExt", nullable = true )
	private Double qtyProdukOutExt;


	@Caption(value="Qty Produk Out Int")
	@Column(name = "QtyProdukOutInt", nullable = true )
	private Double qtyProdukOutInt;


	@Caption(value="Qty Produk Real")
	@NotNull(message="Qty Produk Real Harus Diisi")
	@Column(name = "QtyProdukReal", nullable = false )
	private Double qtyProdukReal;


	@Caption(value="Qty Produk System")
	@NotNull(message="Qty Produk System Diisi")
	@Column(name = "QtyProdukSystem", nullable = false )
	private Double qtyProdukSystem;


	public Double getHargaDiscount() {
		return hargaDiscount;
	}


	public void setHargaDiscount(Double hargaDiscount) {
		this.hargaDiscount = hargaDiscount;
	}


	public Double getHargaNetto1() {
		return hargaNetto1;
	}


	public void setHargaNetto1(Double hargaNetto1) {
		this.hargaNetto1 = hargaNetto1;
	}


	public Double getHarganetto2() {
		return harganetto2;
	}


	public void setHarganetto2(Double harganetto2) {
		this.harganetto2 = harganetto2;
	}


	public AsalProduk getAsalProduk() {
		return asalProduk;
	}


	public void setAsalProduk(AsalProduk asalProduk) {
		this.asalProduk = asalProduk;
	}


	public Integer getAsalProdukId() {
		return asalProdukId;
	}


	public void setAsalProdukId(Integer asalProdukId) {
		this.asalProdukId = asalProdukId;
	}


	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 Ruangan getRuangan() {
		return ruangan;
	}


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


	public Integer getRuanganId() {
		return ruanganId;
	}


	public void setRuanganId(Integer ruanganId) {
		this.ruanganId = ruanganId;
	}


	public String getKeteranganLainnya() {
		return keteranganLainnya;
	}


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


	public StrukClosing getStrukClosing() {
		return strukClosing;
	}


	public void setStrukClosing(StrukClosing strukClosing) {
		this.strukClosing = strukClosing;
	}


	public String getStrukClosingId() {
		return strukClosingId;
	}


	public void setStrukClosingId(String strukClosingId) {
		this.strukClosingId = strukClosingId;
	}


	public StrukPelayanan getStrukPelayanan() {
		return strukPelayanan;
	}


	public void setStrukPelayanan(StrukPelayanan strukPelayanan) {
		this.strukPelayanan = strukPelayanan;
	}


	public String getStrukPelayananId() {
		return strukPelayananId;
	}


	public void setStrukPelayananId(String strukPelayananId) {
		this.strukPelayananId = strukPelayananId;
	}


	public StrukVerifikasi getStrukVerifikasi() {
		return strukVerifikasi;
	}


	public void setStrukVerifikasi(StrukVerifikasi strukVerifikasi) {
		this.strukVerifikasi = strukVerifikasi;
	}


	public String getStrukVerifikasiId() {
		return strukVerifikasiId;
	}


	public void setStrukVerifikasiId(String strukVerifikasiId) {
		this.strukVerifikasiId = strukVerifikasiId;
	}


	public Double getPersenDiscount() {
		return persenDiscount;
	}


	public void setPersenDiscount(Double persenDiscount) {
		this.persenDiscount = persenDiscount;
	}


	public Double getQtyProdukiInExt() {
		return qtyProdukiInExt;
	}


	public void setQtyProdukiInExt(Double qtyProdukiInExt) {
		this.qtyProdukiInExt = qtyProdukiInExt;
	}


	public Double getQtyProdukInInt() {
		return qtyProdukInInt;
	}


	public void setQtyProdukInInt(Double qtyProdukInInt) {
		this.qtyProdukInInt = qtyProdukInInt;
	}


	public Double getQtyProdukOutExt() {
		return qtyProdukOutExt;
	}


	public void setQtyProdukOutExt(Double qtyProdukOutExt) {
		this.qtyProdukOutExt = qtyProdukOutExt;
	}


	public Double getQtyProdukOutInt() {
		return qtyProdukOutInt;
	}


	public void setQtyProdukOutInt(Double qtyProdukOutInt) {
		this.qtyProdukOutInt = qtyProdukOutInt;
	}


	public Double getQtyProdukReal() {
		return qtyProdukReal;
	}


	public void setQtyProdukReal(Double qtyProdukReal) {
		this.qtyProdukReal = qtyProdukReal;
	}


	public Double getQtyProdukSystem() {
		return qtyProdukSystem;
	}


	public void setQtyProdukSystem(Double qtyProdukSystem) {
		this.qtyProdukSystem = qtyProdukSystem;
	}
	
	



}

