package com.jasamedika.medifirst2000.dao;

import java.util.List;

import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Repository;

import com.jasamedika.medifirst2000.entities.HargaPaketPenjamin;

@Repository("HargaPaketPenjaminDao")
public interface HargaPaketPenjaminDao extends PagingAndSortingRepository<HargaPaketPenjamin, Integer> {
	@Query("select a from HargaPaketPenjamin a, MapPaketPenjaminToProduk b where "
			+"a.kdGolonganAsuransi.id=b.kdGolonganAsuransi.id "
			+"and a.hubunganPeserta.id=b.hubunganPeserta.id "
			+"and a.kelompokPasien.id=b.kelompokPasien.id "
			+"and a.paket.id=b.paket.id "
			+"and a.kdPenjaminPasien=b.kdPenjaminPasien " 
			+"and a.hubunganPeserta.id=:hubunganPesertaId and a.kdGolonganAsuransi.id=:golonganAsuransiId and a.kelas.id=:kelasDiJaminId " 
			+"and a.kelompokPasien.id=:kelompokPasienId and a.paket.id=:paketId and a.kdPenjaminPasien=:rekananPenjaminId "
			+"and b.produk.id=:produkId" )
	List<HargaPaketPenjamin> findHargaPaketPenjamin(@Param("kelompokPasienId")Integer kelompokPasienId,
			@Param("rekananPenjaminId")Short rekananPenjaminId, @Param("golonganAsuransiId")Integer golonganAsuransiId, 
			@Param("hubunganPesertaId")Integer hubunganPesertaId, @Param("kelasDiJaminId")Integer kelasDiJaminId,
			@Param("paketId")Integer paketId,@Param("produkId")Integer produkId);

}
