Interface PublicationRepository

  • All Superinterfaces:
    BaseRepository<Publication,​java.util.UUID>, org.springframework.data.repository.CrudRepository<Publication,​java.util.UUID>, org.springframework.data.jpa.repository.JpaRepository<Publication,​java.util.UUID>, org.springframework.data.jpa.repository.JpaSpecificationExecutor<Publication>, org.springframework.data.repository.PagingAndSortingRepository<Publication,​java.util.UUID>, org.springframework.data.repository.query.QueryByExampleExecutor<Publication>, org.springframework.data.repository.Repository<Publication,​java.util.UUID>

    @Repository
    public interface PublicationRepository
    extends BaseRepository<Publication,​java.util.UUID>
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      org.springframework.data.domain.Page<Publication> findByQuery​(java.lang.String name, java.lang.String purpose, java.lang.String publicationStatus, java.lang.String publishedKind, org.springframework.data.domain.Pageable pageable)  
      • Methods inherited from interface org.springframework.data.repository.CrudRepository

        count, delete, delete, delete, deleteAll, exists, findOne, save
      • Methods inherited from interface org.springframework.data.jpa.repository.JpaRepository

        deleteAllInBatch, deleteInBatch, findAll, findAll, findAll, findAll, findAll, flush, getOne, save, saveAndFlush
      • Methods inherited from interface org.springframework.data.jpa.repository.JpaSpecificationExecutor

        count, findAll, findAll, findAll, findOne
      • Methods inherited from interface org.springframework.data.repository.PagingAndSortingRepository

        findAll
      • Methods inherited from interface org.springframework.data.repository.query.QueryByExampleExecutor

        count, exists, findAll, findOne
    • Method Detail

      • findByQuery

        @Query(value="SELECT p.*  FROM publication p LEFT JOIN publication_status ps ON p.status_id = ps.id WHERE ( ps.published = :publishedKind and (ps.label similar to :publicationStatus or p.name ILIKE :name or p.purpose ILIKE :purpose) ) ORDER BY ?#{#pageable}",
               countQuery="SELECT count(p.*) FROM publication p LEFT JOIN publication_status ps ON p.status_id = ps.id WHERE ( ps.published = :publishedKind and (ps.label similar to :publicationStatus or p.name ILIKE :name or p.purpose ILIKE :purpose) ) ",
               nativeQuery=true)
        org.springframework.data.domain.Page<Publication> findByQuery​(@Param("name")
                                                                      java.lang.String name,
                                                                      @Param("purpose")
                                                                      java.lang.String purpose,
                                                                      @Param("publicationStatus")
                                                                      java.lang.String publicationStatus,
                                                                      @Param("publishedKind")
                                                                      java.lang.String publishedKind,
                                                                      @Param("pageable")
                                                                      org.springframework.data.domain.Pageable pageable)