src/main/java/de/uapcore/lightpit/dao/postgres/PGProjectDao.java

changeset 86
0a658e53177c
parent 81
1a2e7b5d48f7
child 128
947d0f6a6a83
--- a/src/main/java/de/uapcore/lightpit/dao/postgres/PGProjectDao.java	Sat May 30 18:12:38 2020 +0200
+++ b/src/main/java/de/uapcore/lightpit/dao/postgres/PGProjectDao.java	Mon Jun 01 14:46:58 2020 +0200
@@ -29,6 +29,7 @@
 package de.uapcore.lightpit.dao.postgres;
 
 import de.uapcore.lightpit.dao.ProjectDao;
+import de.uapcore.lightpit.entities.IssueSummary;
 import de.uapcore.lightpit.entities.Project;
 import de.uapcore.lightpit.entities.User;
 
@@ -98,24 +99,26 @@
         return proj;
     }
 
-    private void mapIssueSummary(Project proj) throws SQLException {
-        issue_summary.setInt(1, proj.getId());
+    public IssueSummary getIssueSummary(Project project) throws SQLException {
+        issue_summary.setInt(1, project.getId());
         final var result = issue_summary.executeQuery();
+        final var summary = new IssueSummary();
         while (result.next()) {
             final var phase = result.getInt("phase");
             final var total = result.getInt("total");
             switch(phase) {
                 case 0:
-                    proj.setOpenIssues(total);
+                    summary.setOpen(total);
                     break;
                 case 1:
-                    proj.setActiveIssues(total);
+                    summary.setActive(total);
                     break;
                 case 2:
-                    proj.setDoneIssues(total);
+                    summary.setDone(total);
                     break;
             }
         }
+        return summary;
     }
 
     @Override
@@ -146,7 +149,6 @@
         try (var result = list.executeQuery()) {
             while (result.next()) {
                 final var project = mapColumns(result);
-                mapIssueSummary(project);
                 projects.add(project);
             }
         }
@@ -159,7 +161,6 @@
         try (var result = find.executeQuery()) {
             if (result.next()) {
                 final var project = mapColumns(result);
-                mapIssueSummary(project);
                 return project;
             } else {
                 return null;

mercurial