From 2329ad8bed83527aea026c8bb4624d2eaed58514 Mon Sep 17 00:00:00 2001 From: George Kalampokis Date: Tue, 10 Mar 2020 18:15:42 +0200 Subject: [PATCH] Fix issue when creating new DMPs --- .../logic/managers/DataManagementPlanManager.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) 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 8df6aaa9d..c42649e4a 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 @@ -760,6 +760,11 @@ public class DataManagementPlanManager { criteria.setReference(grant.getReference()); eu.eudat.data.entities.Grant grantEntity = grantDao.getWithCriteria(criteria).getSingleOrDefault(); if (grantEntity != null) grant.setId(grantEntity.getId()); + else { + grant.setType(Grant.GrantType.EXTERNAL.getValue()); + grant.setCreationUser(null); + grantDao.createOrUpdate(grant); + } } else { grant.setType(Grant.GrantType.EXTERNAL.getValue()); @@ -777,6 +782,9 @@ public class DataManagementPlanManager { criteria.setReference(funder.getReference()); eu.eudat.data.entities.Funder funderEntity = funderDao.getWithCritetia(criteria).getSingleOrDefault(); if (funderEntity != null) funder.setId(funderEntity.getId()); + else { + funderDao.createOrUpdate(funder); + } } else { funderDao.createOrUpdate(funder); @@ -792,6 +800,11 @@ public class DataManagementPlanManager { criteria.setReference(project.getReference()); eu.eudat.data.entities.Project projectEntity = projectDao.getWithCritetia(criteria).getSingleOrDefault(); 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); + } } else { project.setType(Project.ProjectType.EXTERNAL.getValue());