argos/dmp-backend/src/main/java/eu/eudat/managers/DashBoardManager.java

37 lines
1.8 KiB
Java
Raw Normal View History

2017-12-15 00:01:26 +01:00
package eu.eudat.managers;
2017-12-14 18:07:09 +01:00
2017-12-15 00:01:26 +01:00
import eu.eudat.dao.entities.DMPDao;
import eu.eudat.dao.entities.DatasetDao;
import eu.eudat.dao.entities.ProjectDao;
2018-02-02 11:33:37 +01:00
import eu.eudat.entities.DMP;
import eu.eudat.entities.Dataset;
import eu.eudat.entities.Project;
import eu.eudat.entities.UserInfo;
2017-12-15 00:01:26 +01:00
import eu.eudat.models.dashboard.DashBoardStatistics;
2018-02-02 11:33:37 +01:00
import eu.eudat.models.security.Principal;
import java.lang.reflect.Array;
import java.util.Arrays;
2017-12-14 18:07:09 +01:00
public class DashBoardManager {
2018-02-02 11:33:37 +01:00
public DashBoardStatistics getStatistics(DatasetDao datasetRepository, DMPDao dataManagementPlanRepository, ProjectDao projectRepository) {
DashBoardStatistics statistics = new DashBoardStatistics();
statistics.setTotalDataManagementPlanCount(dataManagementPlanRepository.count());
statistics.setTotalDataSetCount(datasetRepository.count());
statistics.setTotalProjectCount(projectRepository.count());
return statistics;
}
public DashBoardStatistics getMeStatistics(DatasetDao datasetRepository, DMPDao dataManagementPlanRepository, ProjectDao projectRepository, Principal principal) {
DashBoardStatistics statistics = new DashBoardStatistics();
UserInfo user = new UserInfo();
user.setId(principal.getId());
statistics.setTotalDataManagementPlanCount(dataManagementPlanRepository.asQueryable().where((builder, root) -> builder.equal(root.get("creator").get("id"), principal.getId())).count());
statistics.setTotalDataSetCount(datasetRepository.asQueryable().where((builder, root) -> builder.equal(root.get("creator").get("id"), principal.getId())).count());
statistics.setTotalProjectCount(projectRepository.asQueryable().where((builder, root) -> builder.equal(root.get("creationUser").get("id"), principal.getId())).count());
return statistics;
}
2017-12-14 18:07:09 +01:00
}