From 328ac3b1f6d691affb7b893fba31529c4eca579a Mon Sep 17 00:00:00 2001 From: amandilaras Date: Fri, 5 Apr 2024 16:57:00 +0300 Subject: [PATCH 1/3] Dockerfile changes --- dmp-backend/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dmp-backend/Dockerfile b/dmp-backend/Dockerfile index 055b89a1b..0377f3cf3 100644 --- a/dmp-backend/Dockerfile +++ b/dmp-backend/Dockerfile @@ -35,4 +35,4 @@ EXPOSE ${SERVER_PORT} COPY --from=build-stage /build/web/target/web-${REVISION}.jar /app.jar -ENTRYPOINT ["java","-Dspring.config.additional-location=file:/config/","-Djava.security.egd=file:/dev/./urandom" ,"-Dspring.profiles.active=${PROFILE}","-jar","/app.jar"] \ No newline at end of file +ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-Dspring.profiles.active=${PROFILE}", "-Dspring.config.additional-location=/files/config/", "-cp", "/app/app.jar", "-Dloader.path=/files/repo-jars", "org.springframework.boot.loader.PropertiesLauncher"] \ No newline at end of file From 9ba20bdd170055f7ee7e58a88472fcb899130f77 Mon Sep 17 00:00:00 2001 From: Sofia Papacharalampous Date: Fri, 5 Apr 2024 17:17:33 +0300 Subject: [PATCH 2/3] added finalized date on dmp and description listing screens --- .../app/ui/description/listing/description-listing.component.ts | 1 + .../listing-item/description-listing-item.component.html | 2 +- dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.ts | 1 + .../ui/dmp/listing/listing-item/dmp-listing-item.component.html | 2 +- 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/dmp-frontend/src/app/ui/description/listing/description-listing.component.ts b/dmp-frontend/src/app/ui/description/listing/description-listing.component.ts index b7f4d2629..815000769 100644 --- a/dmp-frontend/src/app/ui/description/listing/description-listing.component.ts +++ b/dmp-frontend/src/app/ui/description/listing/description-listing.component.ts @@ -199,6 +199,7 @@ export class DescriptionListingComponent extends BaseComponent implements OnInit nameof(x => x.label), nameof(x => x.status), nameof(x => x.updatedAt), + nameof(x => x.finalizedAt), [nameof(x => x.authorizationFlags), AppPermission.EditDescription].join('.'), diff --git a/dmp-frontend/src/app/ui/description/listing/listing-item/description-listing-item.component.html b/dmp-frontend/src/app/ui/description/listing/listing-item/description-listing-item.component.html index f5c7a9288..d9d09e357 100644 --- a/dmp-frontend/src/app/ui/description/listing/listing-item/description-listing-item.component.html +++ b/dmp-frontend/src/app/ui/description/listing/listing-item/description-listing-item.component.html @@ -3,7 +3,7 @@
{{'DESCRIPTION-LISTING.DESCRIPTION' | translate}}
{{'DESCRIPTION-LISTING.STATES.EDITED' | translate}}: {{description.updatedAt | dateTimeCultureFormatter: "d MMMM y"}}
-
{{'DESCRIPTION-LISTING.STATES.PUBLISHED' | translate}}: {{description.dmpPublishedAt | dateTimeCultureFormatter: "d MMMM y"}}
+
{{'DESCRIPTION-LISTING.STATES.PUBLISHED' | translate}}: {{description.finalizedAt | dateTimeCultureFormatter: "d MMMM y"}}
{{description.label}}
{{description.label}}
diff --git a/dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.ts b/dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.ts index fe506000d..cf0dec9d8 100644 --- a/dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.ts +++ b/dmp-frontend/src/app/ui/dmp/listing/dmp-listing.component.ts @@ -187,6 +187,7 @@ export class DmpListingComponent extends BaseComponent implements OnInit { //IBr nameof(x => x.version), nameof(x => x.groupId), nameof(x => x.updatedAt), + nameof(x => x.finalizedAt), nameof(x => x.hash), [nameof(x => x.authorizationFlags), AppPermission.CreateNewVersionDmp].join('.'), [nameof(x => x.authorizationFlags), AppPermission.DeleteDmp].join('.'), diff --git a/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.html b/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.html index da02f3fe2..34450d06f 100644 --- a/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.html +++ b/dmp-frontend/src/app/ui/dmp/listing/listing-item/dmp-listing-item.component.html @@ -3,7 +3,7 @@
{{ 'DMP-LISTING.DMP' | translate }}
{{ 'DMP-LISTING.EDITED' | translate }}: {{ dmp.updatedAt | dateTimeCultureFormatter: "d MMMM y" }}
-
{{ 'DMP-LISTING.PUBLISHED' | translate }}: {{ dmp.publishedAt | dateTimeCultureFormatter: "d MMMM y" }}
+
{{ 'DMP-LISTING.PUBLISHED' | translate }}: {{ dmp.finalizedAt | dateTimeCultureFormatter: "d MMMM y" }}
{{dmp.label}}
From 4503bc0bcff0035d921b0d818a4cc57965c9c576 Mon Sep 17 00:00:00 2001 From: amentis Date: Fri, 5 Apr 2024 17:25:25 +0300 Subject: [PATCH 3/3] description field fixes --- .../FieldBuilder.java | 13 ++++++++++++- .../PropertyDefinitionFieldSetItemBuilder.java | 2 +- .../service/description/DescriptionServiceImpl.java | 8 ++++++-- ...n-template-editor-radio-box-field.component.html | 2 +- ...tion-template-editor-select-field.component.html | 2 +- 5 files changed, 21 insertions(+), 6 deletions(-) diff --git a/dmp-backend/core/src/main/java/eu/eudat/model/builder/descriptionpropertiesdefinition/FieldBuilder.java b/dmp-backend/core/src/main/java/eu/eudat/model/builder/descriptionpropertiesdefinition/FieldBuilder.java index 84927c4f9..50be8a7e7 100644 --- a/dmp-backend/core/src/main/java/eu/eudat/model/builder/descriptionpropertiesdefinition/FieldBuilder.java +++ b/dmp-backend/core/src/main/java/eu/eudat/model/builder/descriptionpropertiesdefinition/FieldBuilder.java @@ -3,6 +3,7 @@ package eu.eudat.model.builder.descriptionpropertiesdefinition; import eu.eudat.authorization.AuthorizationFlags; import eu.eudat.commons.enums.FieldType; import eu.eudat.commons.types.description.FieldEntity; +import eu.eudat.commons.types.descriptiontemplate.fielddata.SelectDataEntity; import eu.eudat.convention.ConventionService; import eu.eudat.model.Reference; import eu.eudat.model.builder.BaseBuilder; @@ -70,7 +71,17 @@ public class FieldBuilder extends BaseBuilder { Field m = new Field(); if (fields.hasField(this.asIndexer(Field._dateValue)) && FieldType.isDateType(fieldType)) m.setDateValue(d.getDateValue()); if (fields.hasField(this.asIndexer(Field._textValue)) && FieldType.isTextType(fieldType)) m.setTextValue(d.getTextValue()); - if (fields.hasField(this.asIndexer(Field._textListValue)) && FieldType.isTextListType(fieldType)) m.setTextListValue(d.getTextListValue()); + if (fields.hasField(this.asIndexer(Field._textListValue)) && FieldType.isTextListType(fieldType)) { + boolean isSelectMultiSelect = true; + if(this.fieldEntity != null && this.fieldEntity.getData() != null && this.fieldEntity.getData().getFieldType().equals(FieldType.SELECT) && this.fieldEntity.getData() instanceof SelectDataEntity){ + isSelectMultiSelect = ((SelectDataEntity) this.fieldEntity.getData()).getMultipleSelect(); + } + if (fieldType.equals(FieldType.SELECT) && !isSelectMultiSelect && !this.conventionService.isListNullOrEmpty(d.getTextListValue())){ + m.setTextValue(d.getTextListValue().stream().findFirst().orElse(null)); + } else{ + m.setTextListValue(d.getTextListValue()); + } + } if (!referenceFields.isEmpty() && FieldType.isReferenceType(fieldType) && referenceItemsMap != null && d.getTextListValue() != null && !d.getTextListValue().isEmpty()) { m.setReferences(new ArrayList<>()); for (UUID referenceId : d.getTextListValue().stream().map(UUID::fromString).toList()){ diff --git a/dmp-backend/core/src/main/java/eu/eudat/model/builder/descriptionpropertiesdefinition/PropertyDefinitionFieldSetItemBuilder.java b/dmp-backend/core/src/main/java/eu/eudat/model/builder/descriptionpropertiesdefinition/PropertyDefinitionFieldSetItemBuilder.java index 5e653ea6d..a9200a522 100644 --- a/dmp-backend/core/src/main/java/eu/eudat/model/builder/descriptionpropertiesdefinition/PropertyDefinitionFieldSetItemBuilder.java +++ b/dmp-backend/core/src/main/java/eu/eudat/model/builder/descriptionpropertiesdefinition/PropertyDefinitionFieldSetItemBuilder.java @@ -67,7 +67,7 @@ public class PropertyDefinitionFieldSetItemBuilder extends BaseBuilder()); for (String key : d.getFields().keySet()){ - FieldEntity fieldEntity = fieldSetEntity != null ? fieldSetEntity.getAllField().stream().findFirst().orElse(null) : null; + FieldEntity fieldEntity = fieldSetEntity != null ? fieldSetEntity.getFieldById(key).stream().findFirst().orElse(null) : null; m.getFields().put(key, this.builderFactory.builder(FieldBuilder.class).authorize(this.authorize).withFieldEntity(fieldEntity).build(fieldsFields, d.getFields().get(key))); } } diff --git a/dmp-backend/core/src/main/java/eu/eudat/service/description/DescriptionServiceImpl.java b/dmp-backend/core/src/main/java/eu/eudat/service/description/DescriptionServiceImpl.java index 8bdf334c0..c4435b141 100644 --- a/dmp-backend/core/src/main/java/eu/eudat/service/description/DescriptionServiceImpl.java +++ b/dmp-backend/core/src/main/java/eu/eudat/service/description/DescriptionServiceImpl.java @@ -381,7 +381,7 @@ public class DescriptionServiceImpl implements DescriptionService { data.setComment(persist.getComment()); data.setFields(new HashMap<>()); for (String key: persist.getFields().keySet()) { - eu.eudat.commons.types.descriptiontemplate.FieldEntity fieldEntity = fieldSetEntity != null ? fieldSetEntity.getAllField().stream().findFirst().orElse(null) : null; + eu.eudat.commons.types.descriptiontemplate.FieldEntity fieldEntity = fieldSetEntity != null ? fieldSetEntity.getFieldById(key).stream().findFirst().orElse(null) : null; data.getFields().put(key, this.buildFieldEntity(persist.getFields().get(key), fieldEntity, fieldToReferenceMap)); } } @@ -416,7 +416,11 @@ public class DescriptionServiceImpl implements DescriptionService { if (!existingIds.contains(id)) throw new MyNotFoundException(messageSource.getMessage("General_ItemNotFound", new Object[]{id, Description.class.getSimpleName()}, LocaleContextHolder.getLocale())); } } - data.setTextListValue(persist.getTextListValue()); + if (fieldType.equals(FieldType.SELECT) && this.conventionService.isListNullOrEmpty(persist.getTextListValue()) && !this.conventionService.isNullOrEmpty(persist.getTextValue())){ + data.setTextListValue(List.of(persist.getTextValue())); + } else{ + data.setTextListValue(persist.getTextListValue()); + } } else if (FieldType.isReferenceType(fieldType) && fieldEntity != null ) { List referenceIds = fieldToReferenceMap.getOrDefault(fieldEntity.getId(), null); diff --git a/dmp-frontend/src/app/ui/admin/description-template/editor/components/field-type/radio-box/description-template-editor-radio-box-field.component.html b/dmp-frontend/src/app/ui/admin/description-template/editor/components/field-type/radio-box/description-template-editor-radio-box-field.component.html index 1438d3bec..3edda54bb 100644 --- a/dmp-frontend/src/app/ui/admin/description-template/editor/components/field-type/radio-box/description-template-editor-radio-box-field.component.html +++ b/dmp-frontend/src/app/ui/admin/description-template/editor/components/field-type/radio-box/description-template-editor-radio-box-field.component.html @@ -36,7 +36,7 @@
- diff --git a/dmp-frontend/src/app/ui/admin/description-template/editor/components/field-type/select/description-template-editor-select-field.component.html b/dmp-frontend/src/app/ui/admin/description-template/editor/components/field-type/select/description-template-editor-select-field.component.html index 466dfee8d..1c297f479 100644 --- a/dmp-frontend/src/app/ui/admin/description-template/editor/components/field-type/select/description-template-editor-select-field.component.html +++ b/dmp-frontend/src/app/ui/admin/description-template/editor/components/field-type/select/description-template-editor-select-field.component.html @@ -37,7 +37,7 @@
{{form.get('data').get('options').getError('backendError').message}} -
\ No newline at end of file