From 5e7887740de0ecf46fb2272f082f049c24dea0d6 Mon Sep 17 00:00:00 2001 From: Anton Romanov Date: Tue, 6 Apr 2021 14:44:05 +0400 Subject: [PATCH] #18 - Create CommitTimeStatistic --- .../controller/StatisticController.java | 4 +++ .../extractor/model/CommitTimeStatistic.java | 22 ++++++++++++++++ .../repository/CommitRepository.java | 5 ++++ src/main/resources/templates/statistic.html | 25 +++---------------- 4 files changed, 34 insertions(+), 22 deletions(-) create mode 100644 src/main/java/ru/ulstu/extractor/model/CommitTimeStatistic.java diff --git a/src/main/java/ru/ulstu/extractor/controller/StatisticController.java b/src/main/java/ru/ulstu/extractor/controller/StatisticController.java index a6e60ce..a364330 100644 --- a/src/main/java/ru/ulstu/extractor/controller/StatisticController.java +++ b/src/main/java/ru/ulstu/extractor/controller/StatisticController.java @@ -38,6 +38,10 @@ public class StatisticController { .map(stat -> new Object[]{stat.getUrl(), stat.getCountCommit()}) .collect(Collectors.toList()); model.addAttribute("commitUrlData", urlCommits); + List timeCommits = commitRepository.getCommitTimeStatistic().stream() + .map(stat -> new Object[]{stat.getCountCommit(), stat.getDate()}) + .collect(Collectors.toList()); + model.addAttribute("commitTimeData", timeCommits); return "statistic"; } } diff --git a/src/main/java/ru/ulstu/extractor/model/CommitTimeStatistic.java b/src/main/java/ru/ulstu/extractor/model/CommitTimeStatistic.java new file mode 100644 index 0000000..7828896 --- /dev/null +++ b/src/main/java/ru/ulstu/extractor/model/CommitTimeStatistic.java @@ -0,0 +1,22 @@ +package ru.ulstu.extractor.model; + +import java.util.Date; + +public class CommitTimeStatistic { + private Date date; + private Long countCommit; + + public CommitTimeStatistic(Date date, Long countCommit) { + this.date = date; + this.countCommit = countCommit; + } + + public Date getDate() { + return date; + } + + public Long getCountCommit() { + return countCommit; + } + +} diff --git a/src/main/java/ru/ulstu/extractor/repository/CommitRepository.java b/src/main/java/ru/ulstu/extractor/repository/CommitRepository.java index c3870a6..5dbe4ab 100644 --- a/src/main/java/ru/ulstu/extractor/repository/CommitRepository.java +++ b/src/main/java/ru/ulstu/extractor/repository/CommitRepository.java @@ -7,6 +7,7 @@ import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; import ru.ulstu.extractor.model.Commit; import ru.ulstu.extractor.model.CommitAuthorStatistic; +import ru.ulstu.extractor.model.CommitTimeStatistic; import ru.ulstu.extractor.model.CommitUrlStatistic; import ru.ulstu.extractor.model.Repository; @@ -21,4 +22,8 @@ public interface CommitRepository extends JpaRepository { @Query("SELECT new ru.ulstu.extractor.model.CommitUrlStatistic(c.branch.repository.url, COUNT(c)) FROM Commit c GROUP by c.branch.repository.url") List getCommitUrlStatistic(); + + @Query("SELECT new ru.ulstu.extractor.model.CommitTimeStatistic(cast(c.date as date), COUNT(c)) FROM Commit c GROUP by cast(c.date as date)") + List getCommitTimeStatistic(); + } diff --git a/src/main/resources/templates/statistic.html b/src/main/resources/templates/statistic.html index ce7997e..afd1b73 100644 --- a/src/main/resources/templates/statistic.html +++ b/src/main/resources/templates/statistic.html @@ -61,7 +61,7 @@ -