From 3630727fed223639dca6b9e683ea516a902ba592 Mon Sep 17 00:00:00 2001 From: Aldo Mihasi Date: Wed, 21 Jun 2023 12:20:30 +0300 Subject: [PATCH] dmp profile bug fixes: 1) dmp profile was not saved 2) if you select external autocomplete field and change it to another type, the external field was saved --- .../eu/eudat/logic/managers/DataManagementPlanManager.java | 4 ++++ .../dmp-profile/editor/dmp-profile-editor.component.ts | 6 ++++++ 2 files changed, 10 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 4e38e6411..f767bc2dd 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 @@ -477,6 +477,10 @@ public class DataManagementPlanManager { } DMP newDmp = dataManagementPlan.toDataModel(); + if(dataManagementPlan.getProfile() != null){ + DMPProfile dmpProfile = apiContext.getOperationsContext().getDatabaseRepository().getDmpProfileDao().find(dataManagementPlan.getProfile().getId()); + newDmp.setProfile(dmpProfile); + } if (newDmp.getStatus() == (int) DMP.DMPStatus.FINALISED.getValue()) { checkDmpValidationRules(newDmp); } diff --git a/dmp-frontend/src/app/ui/admin/dmp-profile/editor/dmp-profile-editor.component.ts b/dmp-frontend/src/app/ui/admin/dmp-profile/editor/dmp-profile-editor.component.ts index 5cd76ceda..55a0cff24 100644 --- a/dmp-frontend/src/app/ui/admin/dmp-profile/editor/dmp-profile-editor.component.ts +++ b/dmp-frontend/src/app/ui/admin/dmp-profile/editor/dmp-profile-editor.component.ts @@ -245,6 +245,7 @@ export class DmpProfileEditorComponent extends BaseComponent implements AfterVie this.addControl(formGroup); return true; } else { + this.removeControl(formGroup); return false; } } @@ -253,4 +254,9 @@ export class DmpProfileEditorComponent extends BaseComponent implements AfterVie if (formGroup.get('dataType').value == 3) formGroup.addControl('externalAutocomplete', new DmpProfileExternalAutoCompleteFieldDataEditorModel().buildForm()); } + + removeControl(formGroup: FormGroup) { + if (formGroup.get('dataType').value != 3) + formGroup.removeControl('externalAutocomplete'); + } }