Commit de4d7049 authored by George Kalampokis's avatar George Kalampokis
Browse files

On "My Dataset Descriptions" the Dataset descriptions will also show their...

On "My Dataset Descriptions" the Dataset  descriptions will also show their DMP Version and can be filtered to show from all DMP Versions or the latest one
parent 0eff4ed6
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ public class DatasetCriteria extends Criteria<Dataset> {
    private List<UUID> grants;
    private List<UUID> collaborators;
    private List<UUID> datasetTemplates;
    private List<UUID> groupIds;

    public boolean getAllVersions() {
        return allVersions;
@@ -105,4 +106,11 @@ public class DatasetCriteria extends Criteria<Dataset> {
    public void setDatasetTemplates(List<UUID> datasetTemplates) {
        this.datasetTemplates = datasetTemplates;
    }

    public List<UUID> getGroupIds() {
        return groupIds;
    }
    public void setGroupIds(List<UUID> groupIds) {
        this.groupIds = groupIds;
    }
}
+2 −0
Original line number Diff line number Diff line
@@ -43,6 +43,8 @@ public class DatasetDaoImpl extends DatabaseAccess<Dataset> implements DatasetDa
            query.where((builder, root) -> builder.greaterThan(root.get("created"), criteria.getPeriodStart()));
        if (!criteria.getAllVersions())
            query.initSubQuery(String.class).where((builder, root) -> builder.equal(root.get("dmp").get("version"), query.<String>subQueryMax((builder1, externalRoot, nestedRoot) -> builder1.equal(externalRoot.get("dmp").get("groupId"), nestedRoot.get("dmp").get("groupId")), Arrays.asList(new SelectionField(FieldSelectionType.COMPOSITE_FIELD, "dmp:version")), String.class)));
        if (criteria.getGroupIds() != null && !criteria.getGroupIds().isEmpty())
            query.where((builder, root) -> root.get("dmp").get("groupId").in(criteria.getGroupIds()));
        if (criteria.getDmpIds() != null && !criteria.getDmpIds().isEmpty())
            query.where((builder, root) -> root.get("dmp").get("id").in(criteria.getDmpIds()));
        /*if (criteria.getRole() != null) {
+9 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ public class DatasetListingModel implements DataModel<Dataset, DatasetListingMod
    private String grantId;
    private Date finalizedAt;
    private Date dmpPublishedAt;
    private int version;

    public String getId() {
        return id;
@@ -148,6 +149,13 @@ public class DatasetListingModel implements DataModel<Dataset, DatasetListingMod
        this.dmpPublishedAt = dmpPublishedAt;
    }

    public int getVersion() {
        return version;
    }
    public void setVersion(int version) {
        this.version = version;
    }

    @Override
    public DatasetListingModel fromDataModel(Dataset entity) {
        this.id = entity.getId().toString();
@@ -167,6 +175,7 @@ public class DatasetListingModel implements DataModel<Dataset, DatasetListingMod
        this.services = LabelBuilder.getLabel(entity.getServices().stream().map(item -> new Service().fromDataModel(item.getService())).collect(Collectors.toList()));
        this.finalizedAt = entity.getFinalizedAt();
        this.dmpPublishedAt = entity.getDmp().getPublishedAt();
        this.version = entity.getDmp().getVersion();
        return this;
    }

+1 −0
Original line number Diff line number Diff line
@@ -16,4 +16,5 @@ export interface DatasetListingModel {
	modified: Date;
	finalizedAt: Date;
	dmpPublishedAt?: Date;
	version: number;
}
+2 −1
Original line number Diff line number Diff line
@@ -6,9 +6,10 @@ export class DatasetCriteria extends BaseCriteria {
	public status?: Number;
	public dmpIds?: string[] = [];
	public tags?: ExternalSourceItemModel[] = [];
	public allVersions?: boolean;
	public allVersions?: boolean = true;
	public role?: number;
	public organisations?: string[] = [];
	public collaborators?: string[] = [];
	public datasetTemplates?: string[] = [];
	public groupIds?: string[] = [];
}
Loading