package com.jasamedika.medifirst2000.vo;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;
import org.hibernate.validator.constraints.NotEmpty;

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

/**
 *  class MenuDietBahan
 * 
 * @author Generator
 */
//@Entity
//@Table(name = "MenuDietBahan_M")
public class MenuDietBahanVO extends BaseMasterVO {
	@Caption(value="Formulasi Racikan")
	private String formulasiRacikan;

	public void setFormulasiRacikan(String formulasiRacikan) {
		this.formulasiRacikan = formulasiRacikan;
	}

	@Column(name = "FormulasiRacikan", nullable = true , length = 200)
	public String getFormulasiRacikan(){
		return this.formulasiRacikan;
	}

	@ManyToOne
	@JoinColumn(name = "ObjectProdukBDFk")
	@NotNull(message="Object ProdukVO B D Harus Diisi")
	@Caption(value="Object ProdukVO B D")
	private ProdukVO produkBD;

	public void setProdukBD(ProdukVO produkBD) {
		this.produkBD = produkBD;
	}

	@Column(name = "KdProdukBD", nullable = false , length = 6)
	public ProdukVO getProdukBD(){
		return this.produkBD;
	}

	@Column(name = "ObjectProdukBDFk", insertable=false,updatable=false)
	private Integer produkBDId;

	@ManyToOne
	@JoinColumn(name = "ObjectProdukMDFk")
	@NotNull(message="Object ProdukVO M D Harus Diisi")
	@Caption(value="Object ProdukVO M D")
	private ProdukVO produkMD;

	public void setProdukMD(ProdukVO produkMD) {
		this.produkMD = produkMD;
	}

	@Column(name = "KdProdukMD", nullable = false , length = 6)
	public ProdukVO getProdukMD(){
		return this.produkMD;
	}

	@Column(name = "ObjectProdukMDFk", insertable=false,updatable=false)
	private Integer produkMDId;

	@ManyToOne
	@JoinColumn(name = "ObjectSatuanKecilFk")
	@Caption(value="Object Satuan Kecil")
	private SatuanKecilVO satuanKecil;

	public void setSatuanKecil(SatuanKecilVO satuanKecil) {
		this.satuanKecil = satuanKecil;
	}

	@Column(name = "KdSatuanKecil", nullable = true )
	public SatuanKecilVO getSatuanKecil(){
		return this.satuanKecil;
	}

	@Column(name = "ObjectSatuanKecilFk", insertable=false,updatable=false)
	private Integer satuanKecilId;

	@ManyToOne
	@JoinColumn(name = "ObjectSatuanStandarFk")
	@Caption(value="Object Satuan Standar")
	private SatuanStandarVO satuanStandar;

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

	@Column(name = "KdSatuanStandar", nullable = true )
	public SatuanStandarVO getSatuanStandar(){
		return this.satuanStandar;
	}

	@Column(name = "ObjectSatuanStandarFk", insertable=false,updatable=false)
	private Integer satuanStandarId;

	@Caption(value="Keterangan Lainnya")
	private String keteranganLainnya;

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

	@Column(name = "KeteranganLainnya", nullable = true , length = 150)
	public String getKeteranganLainnya(){
		return this.keteranganLainnya;
	}

	@Caption(value="Qty Produk")
	private Double qtyProduk;

	public void setqtyProduk(Double qtyProduk) {
		this.qtyProduk = qtyProduk;
	}

	@Column(name = "QtyProduk", nullable = false )
	public Double getqtyProduk(){
		return this.qtyProduk;
	}

	@Caption(value="Satuan")
	private String satuan;

	public void setSatuan(String satuan) {
		this.satuan = satuan;
	}

	@Column(name = "Satuan", nullable = false , length = 1)
	public String getSatuan(){
		return this.satuan;
	}


}

