From 58ecadd79b9196c12c032537a0000e2c19268058 Mon Sep 17 00:00:00 2001 From: George Kalampokis Date: Tue, 9 Nov 2021 10:19:20 +0200 Subject: [PATCH] Fix issue with project creation --- .../managers/DataManagementPlanManager.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java index d244ee0a3..b9dcd6d62 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/DataManagementPlanManager.java @@ -859,21 +859,24 @@ public class DataManagementPlanManager { eu.eudat.data.entities.Project projectEntity = projectDao.getWithCritetia(criteria).toList().stream().max(Comparator.comparing(project1 -> project1.getModified().getTime())).orElse(null); if (projectEntity != null) project.setId(projectEntity.getId()); else { - project.setType(Project.ProjectType.EXTERNAL.getValue()); - if (project.getId() == null) project.setId(UUID.randomUUID()); - projectDao.createOrUpdate(project); - metricsManager.increaseValue(MetricNames.PROJECT, 1, null); + createExternalProject(project, projectDao); } } else { - project.setType(Project.ProjectType.EXTERNAL.getValue()); - if (project.getId() == null) project.setId(UUID.randomUUID()); - projectDao.createOrUpdate(project); - metricsManager.increaseValue(MetricNames.PROJECT, 1, null); + createExternalProject(project, projectDao); } } } + private void createExternalProject(Project project, ProjectDao projectDao) { + if (project.getStartdate() == null) project.setStartdate(new Date()); + if (project.getEnddate() == null) project.setEnddate(new Date()); + project.setType(Project.ProjectType.EXTERNAL.getValue()); + if (project.getId() == null) project.setId(UUID.randomUUID()); + projectDao.createOrUpdate(project); + metricsManager.increaseValue(MetricNames.PROJECT, 1, null); + } + private void copyDatasets(DMP newDmp, DatasetDao datasetDao) { List> futures = new LinkedList<>(); for (Dataset dataset : newDmp.getDataset()) {