main
Last change
on this file since 3c0f9a9 was 3c0f9a9, checked in by Petar Partaloski <ppartaloski@…>, 2 years ago |
Added genre liking, fixed counter, improved paging, improved searches
|
-
Property mode
set to
100644
|
File size:
1.3 KB
|
Rev | Line | |
---|
[6e7b472] | 1 | package com.wediscussmovies.project.repository;
|
---|
| 2 |
|
---|
[e0ef1b1] | 3 | import com.wediscussmovies.project.model.Genre;
|
---|
| 4 | import com.wediscussmovies.project.querymodels.GenreLikes;
|
---|
[6e7b472] | 5 | import org.springframework.data.jpa.repository.JpaRepository;
|
---|
[3c0f9a9] | 6 | import org.springframework.data.jpa.repository.Modifying;
|
---|
[e0ef1b1] | 7 | import org.springframework.data.jpa.repository.Query;
|
---|
[3c0f9a9] | 8 | import org.springframework.data.repository.query.Param;
|
---|
[6e7b472] | 9 | import org.springframework.stereotype.Repository;
|
---|
| 10 |
|
---|
[e0ef1b1] | 11 | import javax.transaction.Transactional;
|
---|
[3c0f9a9] | 12 | import java.sql.Date;
|
---|
[7a0bf79] | 13 | import java.util.List;
|
---|
| 14 |
|
---|
[6e7b472] | 15 | @Repository
|
---|
| 16 | public interface GenreRepository extends JpaRepository<Genre, Integer> {
|
---|
[e0ef1b1] | 17 | List<Genre> findAllByGenreType(String genre);
|
---|
| 18 |
|
---|
[3c0f9a9] | 19 | @Query(value = "select new com.wediscussmovies.project.querymodels.GenreLikes(g.genreId, g.genreType, count(ug.id.userId)) from Genre g" +
|
---|
[e0ef1b1] | 20 | " left join UserGenres ug on ug.id.genreId = g.genreId" +
|
---|
[3c0f9a9] | 21 | " group by g.genreId, g.genreType" +
|
---|
[e0ef1b1] | 22 | " order by count(ug.id.userId) desc")
|
---|
| 23 | @Transactional
|
---|
| 24 | List<GenreLikes> findAllWithLikes();
|
---|
[3c0f9a9] | 25 |
|
---|
| 26 | @Modifying
|
---|
| 27 | @Query(value = "insert into project.user_genres (user_id,genre_id) values(:user_id,:genre_id)",nativeQuery = true)
|
---|
| 28 | @Transactional
|
---|
| 29 | void insertInto(@Param("user_id")Integer userId, @Param("genre_id")Integer genreId);
|
---|
[6e7b472] | 30 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.