Updated The DatasetWizardModel on the backend in order to be similar to it's front end counterpart
This commit is contained in:
parent
abe95e0c5e
commit
d890763b41
|
@ -1,6 +1,8 @@
|
|||
package eu.eudat.controllers;
|
||||
|
||||
|
||||
import eu.eudat.data.entities.Dataset;
|
||||
import eu.eudat.data.entities.DatasetProfile;
|
||||
import eu.eudat.data.entities.Funder;
|
||||
import eu.eudat.data.entities.Project;
|
||||
import eu.eudat.logic.managers.DatasetManager;
|
||||
|
@ -86,8 +88,8 @@ public class QuickWizardController extends BaseController {
|
|||
quickWizard.getDmp().setId(dmpEntity.getId());
|
||||
for (DatasetDescriptionQuickWizardModel dataset : quickWizard.getDatasets().getDatasetsList()) {
|
||||
DataManagementPlan dmp = quickWizard.getDmp().toDataDmp(grantEntity, projectEntity, principal);
|
||||
UUID uuid = quickWizard.getDmp().getDatasetProfile().getId();
|
||||
DatasetWizardModel datasetWizardModel = dataset.toDataModel(dmp, uuid);
|
||||
DatasetProfile profile = quickWizard.getDmp().getDatasetProfile();
|
||||
DatasetWizardModel datasetWizardModel = dataset.toDataModel(dmp, profile);
|
||||
this.datasetManager.createOrUpdate(datasetWizardModel, principal);
|
||||
}
|
||||
|
||||
|
@ -98,7 +100,10 @@ public class QuickWizardController extends BaseController {
|
|||
public @ResponseBody
|
||||
ResponseEntity<ResponseItem<DatasetCreateWizardModel>> addDatasetWizard(@RequestBody DatasetCreateWizardModel datasetCreateWizardModel, Principal principal) throws Exception{
|
||||
for(DatasetDescriptionQuickWizardModel dataset : datasetCreateWizardModel.getDatasets().getDatasetsList()){
|
||||
this.datasetManager.createOrUpdate(dataset.toDataModel(datasetCreateWizardModel.getDmpMeta().getDmp(), datasetCreateWizardModel.getDmpMeta().getDatasetProfile().getId()), principal);
|
||||
DatasetProfile profile = new DatasetProfile();
|
||||
profile.setId(datasetCreateWizardModel.getDmpMeta().getDatasetProfile().getId());
|
||||
profile.setLabel(datasetCreateWizardModel.getDmpMeta().getDatasetProfile().getLabel());
|
||||
this.datasetManager.createOrUpdate(dataset.toDataModel(datasetCreateWizardModel.getDmpMeta().getDmp(), profile), principal);
|
||||
}
|
||||
|
||||
return ResponseEntity.status(HttpStatus.OK).body(new ResponseItem<DatasetCreateWizardModel>().status(ApiMessageCode.SUCCESS_MESSAGE).message("Dataset added!"));
|
||||
|
|
|
@ -37,6 +37,7 @@ import eu.eudat.models.data.dataset.DatasetOverviewModel;
|
|||
import eu.eudat.models.data.datasetImport.DatasetImportField;
|
||||
import eu.eudat.models.data.datasetImport.DatasetImportPagedDatasetProfile;
|
||||
import eu.eudat.models.data.datasetprofile.DatasetProfileListingModel;
|
||||
import eu.eudat.models.data.datasetprofile.DatasetProfileOverviewModel;
|
||||
import eu.eudat.models.data.datasetwizard.DatasetWizardModel;
|
||||
import eu.eudat.models.data.dmp.AssociatedProfile;
|
||||
import eu.eudat.models.data.dmp.DataManagementPlan;
|
||||
|
@ -606,7 +607,7 @@ public class DatasetManager {
|
|||
if (datasetWizardModel.getDmp().getGrant() == null) {
|
||||
datasetWizardModel.setDmp(new DataManagementPlan().fromDataModelNoDatasets(dataset1.getDmp()));
|
||||
}
|
||||
dataset1.setProfile(this.apiContext.getOperationsContext().getDatabaseRepository().getDatasetProfileDao().find(datasetWizardModel.getProfile()));
|
||||
dataset1.setProfile(this.apiContext.getOperationsContext().getDatabaseRepository().getDatasetProfileDao().find(datasetWizardModel.getProfile().getId()));
|
||||
// datasetWizardModel.setDatasetProfileDefinition(getPagedProfile(datasetWizardModel, dataset1));
|
||||
updateTags(dataset1, datasetWizardModel.getTags());
|
||||
if (sendNotification) {
|
||||
|
@ -938,7 +939,7 @@ public class DatasetManager {
|
|||
|
||||
// Sets the latest version of dataet Profile to the Dataset in question.
|
||||
dataset.setDatasetProfileDefinition(getLatestDatasetProfile(datasetEntity, item));
|
||||
dataset.setProfile(item.getId());
|
||||
dataset.setProfile(new DatasetProfileOverviewModel().fromDataModel(item));
|
||||
|
||||
// Now at latest version.
|
||||
dataset.setIsProfileLatestVersion(true);
|
||||
|
|
|
@ -6,6 +6,7 @@ import eu.eudat.models.DataModel;
|
|||
import eu.eudat.models.data.dataset.DataRepository;
|
||||
import eu.eudat.models.data.dataset.Registry;
|
||||
import eu.eudat.models.data.dataset.Service;
|
||||
import eu.eudat.models.data.datasetprofile.DatasetProfileOverviewModel;
|
||||
import eu.eudat.models.data.dmp.DataManagementPlan;
|
||||
import eu.eudat.models.data.externaldataset.ExternalDatasetListingModel;
|
||||
import eu.eudat.models.data.user.composite.PagedDatasetProfile;
|
||||
|
@ -31,7 +32,7 @@ public class DatasetWizardModel implements DataModel<Dataset, DatasetWizardModel
|
|||
private List<DataRepository> dataRepositories;
|
||||
private List<Tag> tags;
|
||||
private List<ExternalDatasetListingModel> externalDatasets;
|
||||
private UUID profile;
|
||||
private DatasetProfileOverviewModel profile;
|
||||
private Boolean isProfileLatestVersion;
|
||||
private Date modified;
|
||||
|
||||
|
@ -119,10 +120,11 @@ public class DatasetWizardModel implements DataModel<Dataset, DatasetWizardModel
|
|||
this.dataRepositories = dataRepositories;
|
||||
}
|
||||
|
||||
public UUID getProfile() {
|
||||
public DatasetProfileOverviewModel getProfile() {
|
||||
return profile;
|
||||
}
|
||||
public void setProfile(UUID profile) {
|
||||
|
||||
public void setProfile(DatasetProfileOverviewModel profile) {
|
||||
this.profile = profile;
|
||||
}
|
||||
|
||||
|
@ -161,7 +163,8 @@ public class DatasetWizardModel implements DataModel<Dataset, DatasetWizardModel
|
|||
this.status = entity.getStatus();
|
||||
this.reference = entity.getReference();
|
||||
this.description = entity.getDescription();
|
||||
this.profile = entity.getProfile().getId();
|
||||
this.profile = new DatasetProfileOverviewModel();
|
||||
this.profile = this.profile.fromDataModel(entity.getProfile());
|
||||
this.uri = entity.getUri();
|
||||
this.registries = entity.getRegistries() != null ? entity.getRegistries().stream().map(item -> new Registry().fromDataModel(item)).collect(Collectors.toList()) : new ArrayList<>();
|
||||
this.dataRepositories = entity.getDatasetDataRepositories() != null ? entity.getDatasetDataRepositories().stream().map(item -> {
|
||||
|
@ -196,7 +199,8 @@ public class DatasetWizardModel implements DataModel<Dataset, DatasetWizardModel
|
|||
this.status = entity.getStatus();
|
||||
this.reference = entity.getReference();
|
||||
this.description = entity.getDescription();
|
||||
this.profile = entity.getProfile().getId();
|
||||
this.profile = new DatasetProfileOverviewModel();
|
||||
this.profile = this.profile.fromDataModel(entity.getProfile());
|
||||
this.uri = entity.getUri();
|
||||
this.registries = entity.getRegistries() != null ? entity.getRegistries().stream().map(item -> new Registry().fromDataModel(item)).collect(Collectors.toList()) : new ArrayList<>();
|
||||
this.dataRepositories = entity.getDatasetDataRepositories() != null ? entity.getDatasetDataRepositories().stream().map(item -> {
|
||||
|
@ -241,7 +245,7 @@ public class DatasetWizardModel implements DataModel<Dataset, DatasetWizardModel
|
|||
entity.setCreated(this.created != null ? this.created : new Date());
|
||||
entity.setModified(new Date());
|
||||
DatasetProfile profile = new DatasetProfile();
|
||||
profile.setId(this.profile);
|
||||
profile.setId(this.profile.getId());
|
||||
entity.setProfile(profile);
|
||||
if (this.registries != null && !this.registries.isEmpty()) {
|
||||
entity.setRegistries(new HashSet<>());
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
package eu.eudat.models.data.quickwizard;
|
||||
|
||||
|
||||
import eu.eudat.data.entities.DatasetProfile;
|
||||
import eu.eudat.models.data.datasetprofile.DatasetProfileOverviewModel;
|
||||
import eu.eudat.models.data.dmp.DataManagementPlan;
|
||||
import eu.eudat.data.entities.Dataset;
|
||||
import eu.eudat.models.data.datasetwizard.DatasetWizardModel;
|
||||
|
@ -22,11 +24,11 @@ public class DatasetDescriptionQuickWizardModel extends PagedDatasetProfile {
|
|||
}
|
||||
|
||||
|
||||
public DatasetWizardModel toDataModel(DataManagementPlan dmp,UUID profile){
|
||||
public DatasetWizardModel toDataModel(DataManagementPlan dmp, DatasetProfile profile){
|
||||
DatasetWizardModel newDataset = new DatasetWizardModel();
|
||||
newDataset.setLabel(datasetLabel);
|
||||
newDataset.setCreated(new Date());
|
||||
newDataset.setProfile(profile);
|
||||
newDataset.setProfile(new DatasetProfileOverviewModel().fromDataModel(profile));
|
||||
newDataset.setDmp(dmp);
|
||||
newDataset.setStatus((short) this.getStatus());
|
||||
//newDataset.setStatus(Dataset.Status.SAVED.getValue());
|
||||
|
|
|
@ -52,7 +52,9 @@
|
|||
</div>
|
||||
</div>
|
||||
<app-dataset-external-references-editor-component (formChanged)="onFormChanged($event)" [formGroup]="formGroup" [viewOnly]="viewOnly"></app-dataset-external-references-editor-component>
|
||||
<app-dataset-description [form]="formGroup.get('datasetProfileDefinition')" [datasetProfileId]="formGroup.get('profile').value" (formChanged)="onFormChanged($event)"></app-dataset-description>
|
||||
<div *ngIf="hasProfileId() && formGroup.get('datasetProfileDefinition') !== null">
|
||||
<app-dataset-description [form]="formGroup.get('datasetProfileDefinition')" [datasetProfileId]="getProfileId()" (formChanged)="onFormChanged($event)"></app-dataset-description>
|
||||
</div>
|
||||
<!-- <app-dataset-description [form]="formGroup.get('datasetProfileDefinition')" [visibilityRules]="formGroup.get('datasetProfileDefinition').get('rules')" [datasetProfileId]="formGroup.get('profile').value">
|
||||
</app-dataset-description> -->
|
||||
|
||||
|
|
|
@ -191,7 +191,9 @@ export class DatasetEditorDetailsComponent extends BaseComponent implements OnIn
|
|||
this.formGroup.get('profile').valueChanges
|
||||
.pipe(takeUntil(this._destroyed))
|
||||
.subscribe(x => {
|
||||
this.datasetProfileValueChanged(x);
|
||||
if (!isNullOrUndefined(x)) {
|
||||
this.datasetProfileValueChanged(x.id);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
@ -283,4 +285,16 @@ export class DatasetEditorDetailsComponent extends BaseComponent implements OnIn
|
|||
}
|
||||
ev.input.value = '';
|
||||
}
|
||||
|
||||
getProfileId(): string {
|
||||
if (!isNullOrUndefined(this.formGroup.get('profile').value)) {
|
||||
return this.formGroup.get('profile').value.id;
|
||||
} else {
|
||||
return undefined;
|
||||
}
|
||||
}
|
||||
|
||||
hasProfileId(): boolean {
|
||||
return !isNullOrUndefined(this.getProfileId());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
</mat-form-field>
|
||||
<mat-form-field *ngIf="isNewDataset">
|
||||
<mat-select placeholder=" {{'DATASET-WIZARD.FIRST-STEP.PROFILE'| translate}}" [required]="true" [formControl]="this.formGroup.get('datasets')['controls'][0].get('profile')">
|
||||
<mat-option *ngFor="let profile of availableProfiles" [value]="profile.id">
|
||||
<mat-option *ngFor="let profile of availableProfiles" [value]="profile">
|
||||
{{profile.label}}
|
||||
</mat-option>
|
||||
</mat-select>
|
||||
|
|
Loading…
Reference in New Issue