package com.jasamedika.medifirst2000.dao; import java.util.List; import java.util.Map; 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.HVA; @Repository("HVADao") public interface HVADao extends PagingAndSortingRepository,JpaSpecificationExecutor{ @Query("select NEW Map (" + "a.noRec as noRec, " + "a.periodeTahun as periodeTahun) " + "from HVA a " + "where a.periodeTahun=:periodeTahun and " + "a.jenisHVAId=:jenisHVA") Map getHVA( @Param("periodeTahun") Long periodeTahun, @Param("jenisHVA") Integer jenisHVA); @Query("select NEW Map (" + "b.id as id, " + "b.nama as nama) " + "from HVA a " + "left join a.jenisHVA b " + "where a.periodeTahun=:periodeTahun and " + "b.id=:jenisHVA") Map getJenisHVA( @Param("periodeTahun") Long periodeTahun, @Param("jenisHVA") Integer jenisHVA); @Query("select NEW Map (" + "c.event as event, " + "c.probability as probability, " + "c.humanImpact as humanImpact, " + "c.propertyImpact as propertyImpact, " + "c.businessImpact as businessImpact, " + "c.preparedness as preparedness, " + "c.internalResponse as internalResponse, " + "c.externalResponse as externalResponse) " + "from HVA a " + "left join a.jenisHVA b " + "left join a.detailHVA c " + "where a.periodeTahun=:periodeTahun and " + "b.id=:jenisHVA") List> getDetailHVA( @Param("periodeTahun") Long periodeTahun, @Param("jenisHVA") Integer jenisHVA); }