package org.transgalactica.management.data.materiel.dao; import java.util.List; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.Repository; import org.transgalactica.management.data.materiel.bo.HangarEntity; import org.transgalactica.management.data.materiel.bo.HangarSummary; import org.transgalactica.management.data.materiel.bo.impl.JpaHangarEntity; public interface HangarDao extends Repository<JpaHangarEntity, Long> { HangarEntity findByNumero(Long numero); void save(HangarEntity hangarEntity); void delete(HangarEntity hangarEntity); @Query("select new org.transgalactica.management.data.materiel.bo.BasicHangarSummary(h.numero, h.localisation, h.nombreEmplacements)" // + " from JpaHangarEntity h" // + " order by h.numero") List<HangarSummary> findAllOrderByNumero(); @Query("select distinct new org.transgalactica.management.data.materiel.bo.BasicHangarSummary(h.numero, h.localisation, h.nombreEmplacements)" // + " from JpaHangarEntity h" // + " where h.localisation like ?1" // + " order by h.numero") List<HangarSummary> findByLocalisationOrderByNumero(String localisation); @Query("select distinct new org.transgalactica.management.data.materiel.bo.BasicHangarSummary(h.numero, h.localisation, h.nombreEmplacements)"// + " from JpaHangarEntity h inner join h.vaisseaux v"// + " where v.modele like ?1"// + " order by h.numero") List<HangarSummary> findByVaisseauxModeleOrderByNumero(String modele); }