Merge pull request 'master' (#180) from Maxime/Clyde:master into master
All checks were successful
Build and test backend / Build-backend (push) Successful in 1m24s
deploy to production / deploy-frontend (push) Successful in 35s
deploy to production / deploy-backend (push) Successful in 1m7s
Build and test FrontEnd / Build-frontend (push) Successful in 31s

Reviewed-on: #180
This commit is contained in:
2024-04-22 11:31:25 +02:00
5 changed files with 29 additions and 28 deletions

View File

@ -15,33 +15,33 @@ import java.util.Map;
public interface StatsRepository extends CrudRepository<Research,Long> {
@Query("select new map(to_char(r.releaseDate, 'month') as label, sum(r.views) as y) from Research r group by to_char(r.releaseDate, 'month')")
Iterable<Map<String ,Integer>> viewsByMonths();
@Query("select new map(to_char(r.releaseDate, 'month') as label, sum(r.views) as y) from Research r where r.author.id = ?1 group by to_char(r.releaseDate, 'month')")
Iterable<Map<String ,Integer>> viewsByMonths(long researcherId);
@Query("select new map(to_char(r.releaseDate,'YYYY') as label, sum (r.views) as y) from Research r group by to_char(r.releaseDate,'YYYY')")
Iterable<Map<String ,Integer>> viewsByYears();
Iterable<Map<String ,Integer>> viewsByYears(long researcherId);
@Query("select new map(r.domain as label, sum(r.views) as y) from Research r group by r.domain")
Iterable<Map<String ,Integer>> viewsByTopics();
@Query("select new map(r.domain as label, sum(r.views) as y) from Research r where r.author.id = ?1 group by r.domain")
Iterable<Map<String ,Integer>> viewsByTopics(long researcherId);
@Query("select new map(r.domain as label, count(distinct r.language) as y) from Research r group by r.domain")
Iterable<Map<String ,Integer>> languageByTopics();
@Query("select new map(r.domain as label, count(distinct r.language) as y) from Research r where r.author.id = ?1 group by r.domain")
Iterable<Map<String ,Integer>> languageByTopics(long researcherId);
@Query("select new map(to_char(r.releaseDate,'YYYY') as label, count(distinct r.language) as y) from Research r group by to_char(r.releaseDate,'YYYY')")
Iterable<Map<String ,Integer>> languageByYears();
@Query("select new map(to_char(r.releaseDate,'YYYY') as label, count(distinct r.language) as y) from Research r where r.author.id = ?1 group by to_char(r.releaseDate,'YYYY')")
Iterable<Map<String ,Integer>> languageByYears(long researcherId);
@Query("select new map(to_char(r.releaseDate, 'month') as label, count(distinct r.language) as y) from Research r group by to_char(r.releaseDate, 'month')")
Iterable<Map<String ,Integer>> languageByMonths();
@Query("select new map(to_char(r.releaseDate, 'month') as label, count(distinct r.language) as y) from Research r where r.author.id = ?1 group by to_char(r.releaseDate, 'month')")
Iterable<Map<String ,Integer>> languageByMonths(long researcherId);
@Query("select new map(to_char(r.releaseDate,'YYYY') as label, count(distinct r) as y) from Research r group by to_char(r.releaseDate,'YYYY')")
Iterable<Map<String ,Integer>> researchesByYears();
@Query("select new map(to_char(r.releaseDate,'YYYY') as label, count(distinct r) as y) from Research r where r.author.id = ?1 group by to_char(r.releaseDate,'YYYY')")
Iterable<Map<String ,Integer>> researchesByYears(long researcherId);
@Query("select new map(r.domain as label, count(distinct r) as y) from Research r group by r.domain")
Iterable<Map<String ,Integer>> researchesByTopics();
@Query("select new map(r.domain as label, count(distinct r) as y) from Research r where r.author.id = ?1 group by r.domain")
Iterable<Map<String ,Integer>> researchesByTopics(long researcherId);
@Query("select new map(to_char(r.releaseDate, 'month') as label, count(distinct r) as y) from Research r group by to_char(r.releaseDate, 'month')")
Iterable<Map<String ,Integer>> researchesByMonth();
@Query("select new map(to_char(r.releaseDate, 'month') as label, count(distinct r) as y) from Research r where r.author.id = ?1 group by to_char(r.releaseDate, 'month')")
Iterable<Map<String ,Integer>> researchesByMonth(long researcherId);
}

View File

@ -34,17 +34,17 @@ public class StatisticsService {
ArrayList<Iterable<Map<String,Integer>>> toReturn = new ArrayList<>();
toReturn.add(statsRepo.viewsByYears());
toReturn.add(statsRepo.viewsByMonths());
toReturn.add(statsRepo.viewsByTopics());
toReturn.add(statsRepo.viewsByYears(researcher.getId()));
toReturn.add(statsRepo.viewsByMonths(researcher.getId()));
toReturn.add(statsRepo.viewsByTopics(researcher.getId()));
toReturn.add(statsRepo.researchesByYears());
toReturn.add(statsRepo.researchesByMonth());
toReturn.add(statsRepo.researchesByTopics());
toReturn.add(statsRepo.researchesByYears(researcher.getId()));
toReturn.add(statsRepo.researchesByMonth(researcher.getId()));
toReturn.add(statsRepo.researchesByTopics(researcher.getId()));
toReturn.add(statsRepo.languageByYears());
toReturn.add(statsRepo.languageByMonths());
toReturn.add(statsRepo.languageByTopics());
toReturn.add(statsRepo.languageByYears(researcher.getId()));
toReturn.add(statsRepo.languageByMonths(researcher.getId()));
toReturn.add(statsRepo.languageByTopics(researcher.getId()));
return toReturn;
}
}