diff --git a/dmp-backend/data/src/main/java/eu/eudat/data/dao/criteria/DatasetProfileCriteria.java b/dmp-backend/data/src/main/java/eu/eudat/data/dao/criteria/DatasetProfileCriteria.java index b8e2c35c4..cc556701d 100644 --- a/dmp-backend/data/src/main/java/eu/eudat/data/dao/criteria/DatasetProfileCriteria.java +++ b/dmp-backend/data/src/main/java/eu/eudat/data/dao/criteria/DatasetProfileCriteria.java @@ -33,6 +33,7 @@ public class DatasetProfileCriteria extends Criteria { private Short filter; private UUID userId; private boolean finalized; + private Integer status; public boolean getAllVersions() { return allVersions; } public void setAllVersions(boolean allVersions) { this.allVersions = allVersions; } @@ -60,4 +61,12 @@ public class DatasetProfileCriteria extends Criteria { public void setFinalized(boolean finalized) { this.finalized = finalized; } + + public Integer getStatus() { + return status; + } + + public void setStatus(Integer status) { + this.status = status; + } } diff --git a/dmp-backend/data/src/main/java/eu/eudat/data/dao/entities/DatasetProfileDaoImpl.java b/dmp-backend/data/src/main/java/eu/eudat/data/dao/entities/DatasetProfileDaoImpl.java index b06d5d8fd..36fcc5433 100644 --- a/dmp-backend/data/src/main/java/eu/eudat/data/dao/entities/DatasetProfileDaoImpl.java +++ b/dmp-backend/data/src/main/java/eu/eudat/data/dao/entities/DatasetProfileDaoImpl.java @@ -52,6 +52,9 @@ public class DatasetProfileDaoImpl extends DatabaseAccess implem builder.notEqual(root.get("id"), criteria.getUserId()))); } } + if (criteria.getStatus() != null) { + query.where(((builder, root) -> builder.equal(root.get("status"), criteria.getStatus()))); + } if (criteria.getFinalized()) { query.where(((builder, root) -> builder.equal(root.get("status"), DatasetProfile.Status.FINALIZED.getValue()))); } else { diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/dataset-profile.module.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/dataset-profile.module.ts index 1e7c9eb19..af103eebc 100644 --- a/dmp-frontend/src/app/ui/admin/dataset-profile/dataset-profile.module.ts +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/dataset-profile.module.ts @@ -27,6 +27,7 @@ import { DialodConfirmationUploadDatasetProfiles } from '@app/ui/admin/dataset-p import { DatasetProfileListingComponent } from '@app/ui/admin/dataset-profile/listing/dataset-profile-listing.component'; import { CommonFormsModule } from '@common/forms/common-forms.module'; import { CommonUiModule } from '@common/ui/common-ui.module'; +import { ParseStatus } from './listing/pipe/parse-status.pipe'; @NgModule({ imports: [ @@ -59,7 +60,8 @@ import { CommonUiModule } from '@common/ui/common-ui.module'; DatasetProfileEditorInternalDmpEntitiesFieldComponent, DatasetProfileEditorResearchersAutoCompleteFieldComponent, DatasetProfileEditorDatasetsAutoCompleteFieldComponent, - DatasetProfileEditorDmpsAutoCompleteFieldComponent + DatasetProfileEditorDmpsAutoCompleteFieldComponent, + ParseStatus ], entryComponents: [ DialodConfirmationUploadDatasetProfiles diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/criteria/dataset-profile.component.html b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/criteria/dataset-profile.component.html index 8026e4251..c303267ef 100644 --- a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/criteria/dataset-profile.component.html +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/criteria/dataset-profile.component.html @@ -5,6 +5,13 @@ + + + {{'DATASET-PROFILE-STATUS.NONE' | translate}} + {{'DATASET-PROFILE-STATUS.DRAFT' | translate}} + {{'DATASET-PROFILE-STATUS.FINALIZED' | translate}} + +
diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.html b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.html index 44a5c5adf..b0e01d2c1 100644 --- a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.html +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.html @@ -27,6 +27,13 @@ {{row.created | date:'shortDate'}} + + + {{'DATASET-PROFILE-LISTING.COLUMNS.STATUS' | + translate}} + {{ (row.status | parseStatus) | translate}} + + {{'DATASET-PROFILE-LISTING.COLUMNS.ACTIONS' | translate}} diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.ts index 8f903dedd..230ebf16f 100644 --- a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.ts +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/dataset-profile-listing.component.ts @@ -30,7 +30,7 @@ export class DatasetProfileListingComponent extends BaseComponent implements OnI breadCrumbs: Observable; dataSource: DatasetDataSource | null; - displayedColumns: String[] = ['label', 'description', 'created', 'actions']; + displayedColumns: String[] = ['label', 'description', 'created', 'status', 'actions']; pageEvent: PageEvent; titlePrefix: String; dmpId: String; diff --git a/dmp-frontend/src/app/ui/admin/dataset-profile/listing/pipe/parse-status.pipe.ts b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/pipe/parse-status.pipe.ts new file mode 100644 index 000000000..33cbd4b8c --- /dev/null +++ b/dmp-frontend/src/app/ui/admin/dataset-profile/listing/pipe/parse-status.pipe.ts @@ -0,0 +1,16 @@ +import { Pipe, PipeTransform } from '@angular/core'; + +@Pipe({ + name: 'parseStatus', + pure: true +}) +export class ParseStatus implements PipeTransform { + transform(value: any, ...args: any[]) { + return this.parseStatus(value); + } + + + parseStatus(status: number): string { + return status != 0 ? 'DATASET-PROFILE-STATUS.FINALIZED' : 'DATASET-PROFILE-STATUS.DRAFT'; + } +} diff --git a/dmp-frontend/src/assets/i18n/en.json b/dmp-frontend/src/assets/i18n/en.json index 63fd0f3d6..64210103d 100644 --- a/dmp-frontend/src/assets/i18n/en.json +++ b/dmp-frontend/src/assets/i18n/en.json @@ -765,7 +765,8 @@ } }, "DATASET-PROFILE": { - "LIKE": "Search" + "LIKE": "Search", + "STATUS": "Status" }, "DATA-SETS": { "PERIOD-FROM": "Start", @@ -1261,5 +1262,10 @@ } }, "HINT": "(Suggested Default Name)" + }, + "DATASET-PROFILE-STATUS": { + "NONE": "None", + "DRAFT": "Draft", + "FINALIZED": "Finalized" } }