package com.jasamedika.medifirst2000.entities;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.validation.constraints.NotNull;

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

@Entity  
@Table(name = "resdt")
public class ResdtSysmex  {//extends BaseBridging{
	// untuk menyesuaikan dengan tabel yang dibutuhkan oleh sysmex
		// nama class dan nama tabel sengaja dibuat tidak standar
/*	@Id
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "public.resdt_id_seq")
	@javax.persistence.SequenceGenerator(name = "public.resdt_id_seq", sequenceName = "public.resdt_id_seq", allocationSize = 50)
	@Column(name = "id")
	protected Integer id;
*/
	@Id
	@Column(name = "ID", nullable = false, length = 30)
	@Caption(value = "ID")
	private String id;

/*	@JsonBackReference
	@ManyToOne
	@JoinColumn(name = "ONO")
	@Caption(value = "ONO")
	private ReshdSysmex ono;*/
	
	@Column(name = "ONO", nullable = false, length = 20)
	//@Column(name = "ONO", insertable = false, updatable = false, nullable = false)
	@Caption(value = "ONO")
	private String ono;
	
	@Column(name = "TEST_CD", nullable = false, length = 20)
	@Caption(value = "TEST_CD")
	private String testCd;
	
 
	@Column(name = "TEST_NM", nullable = true, length = 30)
	@Caption(value = "TEST_NM")
	private String testNm;
	 
	@Column(name = "DATA_TYP", nullable = true, length = 20)
	@Caption(value = "DATA_TYP")
	private String dataTyp;
	 
	@Column(name = "RESULT_VALUE", nullable = true, length = 40)
	@Caption(value = "RESULT_VALUE")
	private String resultValue;
	 
	@Column(name = "RESULT_FT", nullable = true, length = 8192)
	@Caption(value = "RESULT_FT")
	private String resultFt;

	@Column(name = "UNIT", nullable = true, length = 15)
	@Caption(value = "UNIT")
	private String unit;
	
	@Column(name = "FLAG", nullable = true, length = 2)
	@Caption(value = "FLAG")
	private String flag;

	@Column(name = "REF_RANGE", nullable = true, length = 30)
	@Caption(value = "REF_RANGE")
	private String refRange;
	
 
	@Column(name = "STATUS", nullable = true, length = 1)
	@Caption(value = "STATUS")
	private String status;
		
	@Column(name = "TEST_COMMENT", nullable = true, length = 300)
	@Caption(value = "TEST_COMMENT")
	private String testComment;
	
 
	@Column(name = "VALIDATE_BY", nullable = true, length = 60)
	@Caption(value = "VALIDATE_BY")
	private String validateBy;
	
 	
	@Column(name = "VALIDATE_ON", nullable = true, length = 14)
	@Caption(value = "VALIDATE_ON")
	private String validateOn;
	
	
	@Column(name = "DISP_SEQ", nullable = true, length = 15)
	@Caption(value = "DISP_SEQ")
	private String dispSeq;
	
	@Column(name = "ORDER_TESTID", nullable = true, length = 6)
	@Caption(value = "ORDER_TESTID")
	private String orderTestId;
	
	@Column(name = "ORDER_TESTNM", nullable = true, length = 30)
	@Caption(value = "ORDER_TESTNM")
	private String orderTestnm;
	
	@Column(name = "TEST_GROUP", nullable = true, length = 20)
	@Caption(value = "TEST_GROUP")
	private String testGroup;
	
	@Column(name = "ITEM_PARENT", nullable = true, length = 6)
	@Caption(value = "ITEM_PARENT")
	private String itemParent;
 
	@Column(name = "his_header", nullable = true, length = 30)
	@Caption(value = "his_header")
	private String hisHeader ;
	
	@Column(name = "his_detil", nullable = true, length = 30)
	@Caption(value = "his_detil")
	private String hisDetil ;
	
	public String getTestCd() {
		return testCd;
	}

	public void setTestCd(String testCd) {
		this.testCd = testCd;
	}

	public String getTestNm() {
		return testNm;
	}

	public void setTestNm(String testNm) {
		this.testNm = testNm;
	}

	public String getDataTyp() {
		return dataTyp;
	}

	public void setDataTyp(String dataTyp) {
		this.dataTyp = dataTyp;
	}

	public String getResultValue() {
		return resultValue;
	}

	public void setResultValue(String resultValue) {
		this.resultValue = resultValue;
	}

	public String getResultFt() {
		return resultFt;
	}

	public void setResultFt(String resultFt) {
		this.resultFt = resultFt;
	}

	public String getUnit() {
		return unit;
	}

	public void setUnit(String unit) {
		this.unit = unit;
	}

	public String getFlag() {
		return flag;
	}

	public void setFlag(String flag) {
		this.flag = flag;
	}

	public String getRefRange() {
		return refRange;
	}

	public void setRefRange(String refRange) {
		this.refRange = refRange;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getTestComment() {
		return testComment;
	}

	public void setTestComment(String testComment) {
		this.testComment = testComment;
	}

	public String getValidateBy() {
		return validateBy;
	}

	public void setValidateBy(String validateBy) {
		this.validateBy = validateBy;
	}

	public String getValidateOn() {
		return validateOn;
	}

	public void setValidateOn(String validateOn) {
		this.validateOn = validateOn;
	}

	public String getDispSeq() {
		return dispSeq;
	}

	public void setDispSeq(String dispSeq) {
		this.dispSeq = dispSeq;
	}

	public String getOrderTestId() {
		return orderTestId;
	}

	public void setOrderTestId(String orderTestId) {
		this.orderTestId = orderTestId;
	}

	public String getOrderTestnm() {
		return orderTestnm;
	}

	public void setOrderTestnm(String orderTestnm) {
		this.orderTestnm = orderTestnm;
	}

	public String getTestGroup() {
		return testGroup;
	}

	public void setTestGroup(String testGroup) {
		this.testGroup = testGroup;
	}

	public String getItemParent() {
		return itemParent;
	}

	public void setItemParent(String itemParent) {
		this.itemParent = itemParent;
	}

	public String getOno() {
		return ono;
	}

	public void setOno(String ono) {
		this.ono = ono;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getHisHeader() {
		return hisHeader;
	}

	public void setHisHeader(String hisHeader) {
		this.hisHeader = hisHeader;
	}

	public String getHisDetil() {
		return hisDetil;
	}

	public void setHisDetil(String hisDetil) {
		this.hisDetil = hisDetil;
	}
			
}
