From 3140cf62bdceafc37dda63440d481d83b62ca11f Mon Sep 17 00:00:00 2001 From: gkolokythas Date: Thu, 29 Aug 2019 11:30:17 +0300 Subject: [PATCH] Adds logic on DMP quick wizard for saving new entities "Funder" and "Project". --- .../eu/eudat/controllers/QuickWizardController.java | 11 ++++++++--- .../eu/eudat/logic/managers/QuickWizardManager.java | 5 +++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/dmp-backend/web/src/main/java/eu/eudat/controllers/QuickWizardController.java b/dmp-backend/web/src/main/java/eu/eudat/controllers/QuickWizardController.java index 3f9f073f2..044700940 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/controllers/QuickWizardController.java +++ b/dmp-backend/web/src/main/java/eu/eudat/controllers/QuickWizardController.java @@ -44,7 +44,10 @@ public class QuickWizardController extends BaseController { Funder funderEntity; //Create Funder - if (quickWizard.getFunder().getExistFunder() == null) { + if (quickWizard.getFunder().getExistFunder() == null + && quickWizard.getFunder().getLabel() == null) { + funderEntity = null; + } else if (quickWizard.getFunder().getExistFunder() == null && quickWizard.getFunder().getLabel() != null){ funderEntity = this.quickWizardManager.createOrUpdate(quickWizard.getFunder().toDataFunder(), principal); } else { funderEntity = quickWizard.getFunder().getExistFunder().toDataModel(); @@ -57,11 +60,13 @@ public class QuickWizardController extends BaseController { } else { grantEntity = quickWizard.getGrant().getExistGrant().toDataModel(); } - //grantEntity.setFunder(funderEntity); Project projectEntity; //Create Project - if (quickWizard.getProject().getExistProject() == null) { + if (quickWizard.getProject().getExistProject() == null + && quickWizard.getProject().getLabel() == null) { + projectEntity = null; + } else if (quickWizard.getProject().getExistProject() == null && quickWizard.getProject().getLabel() != null){ projectEntity = this.quickWizardManager.createOrUpdate(quickWizard.getProject().toDataProject(), principal); } else { projectEntity = quickWizard.getProject().getExistProject().toDataModel(); diff --git a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/QuickWizardManager.java b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/QuickWizardManager.java index e39aa383f..b0a424c3f 100644 --- a/dmp-backend/web/src/main/java/eu/eudat/logic/managers/QuickWizardManager.java +++ b/dmp-backend/web/src/main/java/eu/eudat/logic/managers/QuickWizardManager.java @@ -52,7 +52,12 @@ public class QuickWizardManager { UserInfo user = apiContext.getOperationsContext().getDatabaseRepository().getUserInfoDao().find(principal.getId()); createFunderIfItDoesntExist(newDmp, user); createGrantIfItDoesntExist(newDmp, user); + if (newDmp.getProject() == null) { + newDmp.setProject(new Project()); + newDmp.setProject(newDmp.getProject().projectFromGrant(newDmp.getGrant())); + } createProjectIfItDoesntExist(newDmp, user); + apiContext.getOperationsContext().getDatabaseRepository().getGrantDao().createOrUpdate(newDmp.getGrant()); DMP dmpret = apiContext.getOperationsContext().getDatabaseRepository().getDmpDao().createOrUpdate(newDmp); if (dataManagementPlan.getAssociatedUsers().size() == 0)