package com.jasamedika.medifirst2000.vo;

import java.util.Date;
import java.util.HashSet;
import java.util.Set;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.OneToOne;
import javax.persistence.Table;

import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonManagedReference;
import com.jasamedika.medifirst2000.base.BaseMaster;
import com.jasamedika.medifirst2000.base.vo.BaseMasterVO;
import com.jasamedika.medifirst2000.entities.AntrianPasienRegistrasiDetail;
import com.jasamedika.medifirst2000.helper.Caption;

public class JenisKartuDetailVO extends BaseMasterVO{
	@Column(name = "nameOnCard",length=50)
	@Caption(value="Name On Card")
	private String nameOnCard;
	
	@Column(name = "cardNumber",length=20)
	@Caption(value="Card Number")
	private String cardNumber;
	
	@ManyToOne
	@JoinColumn(name = "ObjectJenisKartuFk")
	@Caption(value="Object Jenis Kartu")
	private JenisKartuVO jenisKartu;
	
	@Column(name = "ObjectJenisKartuFk", insertable=false,updatable=false)
	private Integer jenisKartuId;
	
	@Column(name = "cardExpired")
	@Caption(value="Card Expired")
	private Date cardExpired;
	
	@Column(name = "securityCode",length=20)
	@Caption(value="Security Code")
	private String securityCode;
	
	@Column(name = "billingAddressAlamat",length=100)
	@Caption(value="Billing Address Alamat")
	private String billingAddressAlamat;
	
	@Column(name = "kodePost",length=10)
	@Caption(value="Kode Pos")
	private String kodePost;
	
	@ManyToOne
	@JoinColumn(name = "ObjectKecamatanFk")
	@Caption(value="Object Kecamatan")
	private KecamatanVO kecamatan;
	
	@Column(name = "ObjectKecamatanFk", insertable=false,updatable=false)
	private Integer kecamatanId;
	
	@ManyToOne
	@JoinColumn(name = "ObjectKotaKabupatenFk")
	@Caption(value="Object Kota Kabupaten")
	private KotaKabupatenVO kotaKabupaten;
	
	@Column(name = "ObjectKotaKabupatenFk", insertable=false,updatable=false)
	private Integer kotaKabupatenId;
	
	@ManyToOne
	@JoinColumn(name = "ObjectPropinsiFk")
	@Caption(value="Object Propinsi")
	private PropinsiVO propinsi;
	
	@Column(name = "ObjectPropinsiFk", insertable=false,updatable=false)
	private Integer propinsiId;
	
	@ManyToOne
	@JoinColumn(name = "ObjectNegaraFk")
	@Caption(value="Object Negara")
	private NegaraVO negara;
	
	@Column(name = "ObjectNegaraFk", insertable=false,updatable=false)
	private Integer negaraiId;
	
	@Column(name = "emailAddress",length=30)
	@Caption(value="Email Address")
	private String emailAddress;
	
	@Column(name = "phoneNumber",length=20)
	@Caption(value="Phone Number")
	private String phoneNumber;
	
	public String getNameOnCard() {
		return nameOnCard;
	}
	public void setNameOnCard(String nameOnCard) {
		this.nameOnCard = nameOnCard;
	}
	public String getCardNumber() {
		return cardNumber;
	}
	public void setCardNumber(String cardNumber) {
		this.cardNumber = cardNumber;
	}
	public Date getCardExpired() {
		return cardExpired;
	}
	public void setCardExpired(Date cardExpired) {
		this.cardExpired = cardExpired;
	}
	public String getSecurityCode() {
		return securityCode;
	}
	public void setSecurityCode(String securityCode) {
		this.securityCode = securityCode;
	}
	public String getBillingAddressAlamat() {
		return billingAddressAlamat;
	}
	public void setBillingAddressAlamat(String billingAddressAlamat) {
		this.billingAddressAlamat = billingAddressAlamat;
	}
	public String getEmailAddress() {
		return emailAddress;
	}
	public void setEmailAddress(String emailAddress) {
		this.emailAddress = emailAddress;
	}
	public String getPhoneNumber() {
		return phoneNumber;
	}
	public void setPhoneNumber(String phoneNumber) {
		this.phoneNumber = phoneNumber;
	}
	public JenisKartuVO getJenisKartu() {
		return jenisKartu;
	}
	public void setJenisKartu(JenisKartuVO jenisKartu) {
		this.jenisKartu = jenisKartu;
	}
	public String getKodePost() {
		return kodePost;
	}
	public void setKodePost(String kodePost) {
		this.kodePost = kodePost;
	}
	public KecamatanVO getKecamatan() {
		return kecamatan;
	}
	public void setKecamatan(KecamatanVO kecamatan) {
		this.kecamatan = kecamatan;
	}
	public KotaKabupatenVO getKotaKabupaten() {
		return kotaKabupaten;
	}
	public void setKotaKabupaten(KotaKabupatenVO kotaKabupaten) {
		this.kotaKabupaten = kotaKabupaten;
	}
	public PropinsiVO getPropinsi() {
		return propinsi;
	}
	public void setPropinsi(PropinsiVO propinsi) {
		this.propinsi = propinsi;
	}
	public NegaraVO getNegara() {
		return negara;
	}
	public void setNegara(NegaraVO negara) {
		this.negara = negara;
	}
	
}
