Adds logic on DMP quick wizard for saving new entities "Funder" and "Project".

This commit is contained in:
gkolokythas 2019-08-29 11:30:17 +03:00
parent 9081ccadfe
commit 3140cf62bd
2 changed files with 13 additions and 3 deletions

View File

@ -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();

View File

@ -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)