package com.jasamedika.medifirst2000.dao; import java.util.List; import java.util.Map; import org.springframework.data.domain.Pageable; 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.PelayananPasienPetugas; /** * Repository class for PelayananPasien * * @author Generator */ @Repository("PelayananPasienPetugasDao") public interface PelayananPasienPetugasDao extends PagingAndSortingRepository { @Query("select new Map(ppp.pelayananPasienId as pelayananId, count(ppp.pelayananPasienId) as sumPelayananId) " + "from PelayananPasienPetugas ppp " + "inner join ppp.pelayananPasien pp " + "where ppp.statusEnabled is true " + "and pp.statusEnabled is true " + "and ppp.ObjectJenisPetugasPeId in (4,6) " + "and ppp.pelayananPasienId in (:listPelayananId) " + "group by ppp.pelayananPasienId " + "having count(ppp.pelayananPasienId) > 1") List> countReferensiSkorPelayananAnestesi( @Param("listPelayananId") List listPelayananId); @Query("select new Map(ppp.pelayananPasienId as pelayananId,ppp.ObjectJenisPetugasPeId as jenisPetugasId," + "ppp.ObjectPegawaiId as petugasId,coalesce(ppp.asaId,1) as asaId," + "mj.subUnitKerjaPegawaiId as kkId,pp.produkId as produkId) " + "from PelayananPasienPetugas ppp, MapPegawaiJabatanToUnitKerja mj " + "inner join ppp.pelayananPasien pp " + "inner join mj.subUnitKerjaPegawai sk " + "where ppp.ObjectPegawaiId = mj.pegawaiId " + "and ppp.statusEnabled is true " + "and pp.statusEnabled is true " + "and mj.statusEnabled is true " + "and sk.statusEnabled is true " + "and ppp.ObjectJenisPetugasPeId in (4,6) " + "and ppp.pelayananPasienId in (:listPelayananId) " + "and mj.unitKerjaPegawaiId in (:listKsmId) " + "and sk.name like 'KK%' " + "order by ppp.pelayananPasienId") List> findReferensiSkorPelayananAnestesi(@Param("listPelayananId") List listPelayananId, @Param("listKsmId") List listKsmId); @Query("select new Map(pgw.id as id,pgw.namaLengkap as namaLengkap) " + "from PelayananPasienPetugas ppp, MapPegawaiJabatanToUnitKerja mpj " + "inner join ppp.pelayananPasien plp " + "inner join ppp.kdpegawai pgw " + "where ppp.ObjectPegawaiId = mpj.pegawaiId " + "and mpj.pegawaiId = pgw.id " + "and ppp.statusEnabled is true " + "and plp.statusEnabled is true " + "and plp.produkId = :produkId " + "and mpj.subUnitKerjaPegawaiId = :kelompokKerjaId " + "order by plp.tglPelayanan desc") List> findDokterByTindakan(@Param("produkId") Integer idProduk, @Param("kelompokKerjaId") Integer idKelompokKerja, Pageable pageable); }