package com.jasamedika.medifirst2000.dao;

import java.util.Date;
import java.util.List;

import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
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.JadwalRencanaPemeriksaan;

@Repository("JadwalRencanaPemeriksaanDao")
public interface JadwalRencanaPemeriksaanDao extends PagingAndSortingRepository<JadwalRencanaPemeriksaan, Integer>,JpaSpecificationExecutor{
	@Query("select NEW com.jasamedika.medifirst2000.entities.JadwalRencanaPemeriksaan(j.id,j.pegawaiId,j.pemeriksaan,j.tglPemeriksaan) from JadwalRencanaPemeriksaan j where j.pegawai.id = :id and j.tglPemeriksaan between :from and :to")
	public List<JadwalRencanaPemeriksaan> findByPegawaiId(@Param("from") Date from, @Param("to") Date to, @Param("id") Integer pegawaiId);
	
	@Query("select model from JadwalRencanaPemeriksaan model where model.pegawai.satuanKerjaId = :id")
	public List<JadwalRencanaPemeriksaan> findBySatuanKerja(@Param("id")Integer satuanKerjaId);
}
