package com.jasamedika.medifirst2000.vo;

import com.jasamedika.medifirst2000.base.vo.BaseTransactionVO;
import com.jasamedika.medifirst2000.helper.Caption;
import lombok.Getter;
import lombok.Setter;

import javax.validation.constraints.NotNull;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@Getter
@Setter
public class PelayananPasienDetailVO extends BaseTransactionVO {

	private List<RacikanDetailVO> racikan = new ArrayList<>();

	@Caption(value = "Pasien Daftar")
	private PasienDaftarVO pasienDaftar;

	private GenerikVO generik;

	private Integer generikId;

	private Byte statusOrder;

	private Double jasa;

	@Caption(value = "Is Pasien")
	private Boolean isPasien;

	@Caption(value = "Is Obat")
	private Boolean isObat;

	@Caption(value = "Is Dosis")
	private Boolean isDosis;

	@Caption(value = "Is Route")
	private Boolean isRoute;

	@Caption(value = "Is Dokumentasi")
	private Boolean isDokumentasi;

	@Caption(value = "Is Waktu")
	private Boolean isWaktu;

	@Caption(value = "Is Informasi")
	private Boolean isInformasi;

	@Caption(value = "Komponen Harga")
	private KomponenHargaVO komponenHarga;

	@Caption(value = "Tanggal Pelayanan")
	private Date tglPelayanan;

	private Integer komponenHargaId;

	@Caption(value = "Harga Satuan")
	private Double hargaSatuan;

	@Caption(value = "Harga Jual")
	private Double hargaJual;

	@Caption("Persen Diskon")
	private String persenDiskon;

	@Caption("Persen Diskon Sayatan")
	private String persenDiskonSayatan;

	@Caption(value = "Nilai Normal")
	private Boolean nilaiNormal;

	@Caption(value = "Piutang Penjamin")
	private Double piutangPenjamin;

	@Caption(value = "Piutang Rumah Sakit")
	private Double piutangRumahSakit;

	@Caption(value = "Struk Order")
	private StrukOrderVO strukOrder;

	private String strukOrderId;

	@Caption(value = "Jenis Obat")
	private JenisObatVO jenisObat;

	private String jenisObatId;

	@NotNull(message = "Produk Harus Diisi")
	@Caption(value = "Produk")
	private ProdukVO produk;

	private String produkId;

	@Caption(value = "Stock")
	private Integer stock;

	@Caption(value = "Jumlah")
	private Double jumlah;

	@Caption(value = "AturanPakai")
	private String aturanPakai;

	@Caption(value = "Route")
	private RouteFarmasiVO route;

	private String routeId;

	@Caption(value = "Keterangan Pakai")
	private StigmaVO keteranganPakai;

	private Integer keteranganPakaiId;

	@Caption(value = "KeteranganPakai2")
	private String keteranganPakai2;

	@Caption(value = "KeteranganLain")
	private String keteranganLain;

	@Caption(value = "Harga Discount")
	private Double hargaDiscount;

	@Caption(value = "PelayananPasien")
	private PelayananPasienVO pelayananPasien;

	@Caption(value = "hargaNetto")
	private Double hargaNetto;

	@Caption(value = "Jumlah Pembulatan")
	private Double jumlahPembulatan;

	@Caption(value = "Is Benar")
	private Boolean isBenar;

	@Caption(value = "ID Trigger")
	private String noRecTriger;
}
