Skip to content
Snippets Groups Projects
Commit bafbb7df authored by stevereis's avatar stevereis
Browse files

feat: add longitudinal info on datasets

parent 5a3378e4
No related branches found
No related tags found
No related merge requests found
import { Category } from 'src/engine/models/category.model'; import { Category } from 'src/engine/models/category.model';
import { Dataset } from 'src/engine/models/dataset.model';
import { Algorithm } from 'src/engine/models/experiment/algorithm.model'; import { Algorithm } from 'src/engine/models/experiment/algorithm.model';
import { Experiment } from 'src/engine/models/experiment/experiment.model'; import { Experiment } from 'src/engine/models/experiment/experiment.model';
import { import { AlgorithmParamInput } from 'src/engine/models/experiment/input/algorithm-parameter.input';
AlgorithmParamInput,
ParamType,
} from 'src/engine/models/experiment/input/algorithm-parameter.input';
import { ExperimentCreateInput } from 'src/engine/models/experiment/input/experiment-create.input'; import { ExperimentCreateInput } from 'src/engine/models/experiment/input/experiment-create.input';
import { Group } from 'src/engine/models/group.model'; import { Group } from 'src/engine/models/group.model';
import { ResultUnion } from 'src/engine/models/result/common/result-union.model'; import { ResultUnion } from 'src/engine/models/result/common/result-union.model';
...@@ -51,6 +49,14 @@ export const dataToCategory = (data: Entity): Category => { ...@@ -51,6 +49,14 @@ export const dataToCategory = (data: Entity): Category => {
}; };
}; };
export const dataToDataset = (data: Entity): Dataset => {
return {
id: data.code,
label: data.label,
isLongitudinal: !!data.code.toLowerCase().includes('longitudinal'),
};
};
export const dataToVariable = (data: VariableEntity): Variable => { export const dataToVariable = (data: VariableEntity): Variable => {
return { return {
id: data.code, id: data.code,
......
...@@ -24,7 +24,7 @@ import { Group } from 'src/engine/models/group.model'; ...@@ -24,7 +24,7 @@ import { Group } from 'src/engine/models/group.model';
import { Variable } from 'src/engine/models/variable.model'; import { Variable } from 'src/engine/models/variable.model';
import { import {
dataToAlgorithms, dataToAlgorithms,
dataToCategory, dataToDataset,
dataToExperiment, dataToExperiment,
dataToGroup, dataToGroup,
dataToVariable, dataToVariable,
...@@ -141,7 +141,7 @@ export default class ExaremeService implements IEngineService { ...@@ -141,7 +141,7 @@ export default class ExaremeService implements IEngineService {
label: data.label, label: data.label,
groups: groups, groups: groups,
rootGroup: dataToGroup(data.metadataHierarchy), rootGroup: dataToGroup(data.metadataHierarchy),
datasets: data.datasets ? data.datasets.map(dataToCategory) : [], datasets: data.datasets ? data.datasets.map(dataToDataset) : [],
variables: data.metadataHierarchy variables: data.metadataHierarchy
? this.flattenVariables(data.metadataHierarchy, groups) ? this.flattenVariables(data.metadataHierarchy, groups)
: [], : [],
......
import { Field, ObjectType } from '@nestjs/graphql';
import { Entity } from './entity.model';
@ObjectType()
export class Dataset extends Entity {
@Field({ nullable: true, defaultValue: false })
isLongitudinal?: boolean;
}
import { Field, ObjectType } from '@nestjs/graphql'; import { Field, ObjectType } from '@nestjs/graphql';
import { Category } from './category.model'; import { Dataset } from './dataset.model';
import { Entity } from './entity.model'; import { Entity } from './entity.model';
import { Group } from './group.model'; import { Group } from './group.model';
import { Variable } from './variable.model'; import { Variable } from './variable.model';
...@@ -15,8 +15,8 @@ export class Domain extends Entity { ...@@ -15,8 +15,8 @@ export class Domain extends Entity {
@Field(() => [Variable]) @Field(() => [Variable])
variables: Variable[]; variables: Variable[];
@Field(() => [Category]) @Field(() => [Dataset])
datasets: Category[]; datasets: Dataset[];
@Field(() => Group) @Field(() => Group)
rootGroup: Group; rootGroup: Group;
......
...@@ -2,9 +2,10 @@ ...@@ -2,9 +2,10 @@
# THIS FILE WAS AUTOMATICALLY GENERATED (DO NOT MODIFY) # THIS FILE WAS AUTOMATICALLY GENERATED (DO NOT MODIFY)
# ------------------------------------------------------ # ------------------------------------------------------
type Category { type Dataset {
id: String! id: String!
label: String label: String
isLongitudinal: Boolean
} }
type Group { type Group {
...@@ -17,6 +18,11 @@ type Group { ...@@ -17,6 +18,11 @@ type Group {
variables: [String!] variables: [String!]
} }
type Category {
id: String!
label: String
}
type Variable { type Variable {
id: String! id: String!
label: String label: String
...@@ -32,7 +38,7 @@ type Domain { ...@@ -32,7 +38,7 @@ type Domain {
description: String description: String
groups: [Group!]! groups: [Group!]!
variables: [Variable!]! variables: [Variable!]!
datasets: [Category!]! datasets: [Dataset!]!
rootGroup: Group! rootGroup: Group!
} }
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment