From 7f2a277fad09f68160abdb1cc03fd7740f71c44b Mon Sep 17 00:00:00 2001 From: Martin Staehr <software@mstaehr.net> Date: Sun, 9 Jun 2019 15:55:07 +0200 Subject: [PATCH] #77 fix: create task for whole group the task for optional porfolio entries was just created for user uploading the dossier. now it is created for the whole group --- .../gf/interfaces/IReflectionService.java | 6 +++--- .../java/unipotsdam/gf/modules/group/GroupDAO.java | 4 ++++ .../reflection/service/ReflectionService.java | 14 ++++++++++---- .../gf/process/DossierCreationProcess.java | 3 ++- 4 files changed, 19 insertions(+), 8 deletions(-) diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IReflectionService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IReflectionService.java index e889868d..26918a20 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IReflectionService.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/interfaces/IReflectionService.java @@ -1,12 +1,12 @@ package unipotsdam.gf.interfaces; +import unipotsdam.gf.modules.group.Group; import unipotsdam.gf.modules.project.Project; -import unipotsdam.gf.modules.user.User; import unipotsdam.gf.process.phases.Phase; public interface IReflectionService { - void startOptionalPortfolioTask(Project project, User target, Phase phase); + void startOptionalPortfolioTask(Project project, Group group, Phase phase); - void finishOptionalPortfolioTask(Project project, User target, Phase phase); + void finishOptionalPortfolioTask(Project project, Group group, Phase phase); } diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/group/GroupDAO.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/group/GroupDAO.java index acfd6c3e..71e0913f 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/group/GroupDAO.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/group/GroupDAO.java @@ -185,6 +185,10 @@ public class GroupDAO { return groupId; } + public Group getMyGroup(User user, Project project) { + int groupId = getMyGroupId(user, project); + return getGroupByGroupId(groupId); + } private void fillGroupFromResultSet(ArrayList<Group> groups, VereinfachtesResultSet vereinfachtesResultSet, Boolean withRocketChatId) { diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/reflection/service/ReflectionService.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/reflection/service/ReflectionService.java index 2150a027..8329a231 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/reflection/service/ReflectionService.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/modules/reflection/service/ReflectionService.java @@ -1,6 +1,7 @@ package unipotsdam.gf.modules.reflection.service; import unipotsdam.gf.interfaces.IReflectionService; +import unipotsdam.gf.modules.group.Group; import unipotsdam.gf.modules.project.Project; import unipotsdam.gf.modules.user.User; import unipotsdam.gf.process.phases.Phase; @@ -21,12 +22,17 @@ public class ReflectionService implements IReflectionService { @Inject private TaskDAO taskDAO; - public void startOptionalPortfolioTask(Project project, User target, Phase phase) { - persistOptionalEntryTask(project, target, Progress.JUSTSTARTED, phase); + public void startOptionalPortfolioTask(Project project, Group group, Phase phase) { + group.getMembers().forEach(target -> { + persistOptionalEntryTask(project, target, Progress.JUSTSTARTED, phase); + }); + } - public void finishOptionalPortfolioTask(Project project, User target, Phase phase) { - persistOptionalEntryTask(project, target, Progress.FINISHED, phase); + public void finishOptionalPortfolioTask(Project project, Group group, Phase phase) { + group.getMembers().forEach(target -> { + persistOptionalEntryTask(project, target, Progress.FINISHED, phase); + }); } private void persistOptionalEntryTask(Project project, User target, Progress progress, Phase phase) { diff --git a/gemeinsamforschen/src/main/java/unipotsdam/gf/process/DossierCreationProcess.java b/gemeinsamforschen/src/main/java/unipotsdam/gf/process/DossierCreationProcess.java index 0b1eb340..7f76959b 100644 --- a/gemeinsamforschen/src/main/java/unipotsdam/gf/process/DossierCreationProcess.java +++ b/gemeinsamforschen/src/main/java/unipotsdam/gf/process/DossierCreationProcess.java @@ -76,7 +76,8 @@ public class DossierCreationProcess { // this triggers the annotate task taskDAO.persistTaskGroup(project, user, TaskName.ANNOTATE_DOSSIER, Phase.DossierFeedback); - reflectionService.startOptionalPortfolioTask(project, user, Phase.DossierFeedback); + Group group = groupDAO.getMyGroup(user, project); + reflectionService.startOptionalPortfolioTask(project, group, Phase.DossierFeedback); } -- GitLab