mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-10 11:33:04 +00:00
Fixed issue with workflowitem edit
This commit is contained in:
@@ -43,9 +43,6 @@ import { SubmissionSectionError } from '../../objects/submission-objects.reducer
|
|||||||
import { DynamicFormControlEvent, DynamicFormControlEventType } from '@ng-dynamic-forms/core';
|
import { DynamicFormControlEvent, DynamicFormControlEventType } from '@ng-dynamic-forms/core';
|
||||||
import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner';
|
import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner';
|
||||||
import { FormRowModel } from '../../../core/config/models/config-submission-form.model';
|
import { FormRowModel } from '../../../core/config/models/config-submission-form.model';
|
||||||
import { WorkspaceitemDataService } from '../../../core/submission/workspaceitem-data.service';
|
|
||||||
import { RemoteData } from '../../../core/data/remote-data';
|
|
||||||
import { WorkspaceItem } from '../../../core/submission/models/workspaceitem.model';
|
|
||||||
|
|
||||||
function getMockSubmissionFormsConfigService(): SubmissionFormsConfigService {
|
function getMockSubmissionFormsConfigService(): SubmissionFormsConfigService {
|
||||||
return jasmine.createSpyObj('FormOperationsService', {
|
return jasmine.createSpyObj('FormOperationsService', {
|
||||||
@@ -183,7 +180,6 @@ describe('SubmissionSectionformComponent test suite', () => {
|
|||||||
{ provide: 'collectionIdProvider', useValue: collectionId },
|
{ provide: 'collectionIdProvider', useValue: collectionId },
|
||||||
{ provide: 'sectionDataProvider', useValue: sectionObject },
|
{ provide: 'sectionDataProvider', useValue: sectionObject },
|
||||||
{ provide: 'submissionIdProvider', useValue: submissionId },
|
{ provide: 'submissionIdProvider', useValue: submissionId },
|
||||||
{ provide: WorkspaceitemDataService, useValue: {findById: () => observableOf(new RemoteData(false, false, true, null, new WorkspaceItem()))}},
|
|
||||||
ChangeDetectorRef,
|
ChangeDetectorRef,
|
||||||
SubmissionSectionformComponent
|
SubmissionSectionformComponent
|
||||||
],
|
],
|
||||||
|
@@ -15,10 +15,7 @@ import { hasValue, isNotEmpty, isUndefined } from '../../../shared/empty.util';
|
|||||||
import { ConfigData } from '../../../core/config/config-data';
|
import { ConfigData } from '../../../core/config/config-data';
|
||||||
import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner';
|
import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner';
|
||||||
import { SubmissionFormsModel } from '../../../core/config/models/config-submission-forms.model';
|
import { SubmissionFormsModel } from '../../../core/config/models/config-submission-forms.model';
|
||||||
import {
|
import { SubmissionSectionError, SubmissionSectionObject } from '../../objects/submission-objects.reducer';
|
||||||
SubmissionSectionError,
|
|
||||||
SubmissionSectionObject
|
|
||||||
} from '../../objects/submission-objects.reducer';
|
|
||||||
import { FormFieldPreviousValueObject } from '../../../shared/form/builder/models/form-field-previous-value-object';
|
import { FormFieldPreviousValueObject } from '../../../shared/form/builder/models/form-field-previous-value-object';
|
||||||
import { GLOBAL_CONFIG } from '../../../../config';
|
import { GLOBAL_CONFIG } from '../../../../config';
|
||||||
import { GlobalConfig } from '../../../../config/global-config.interface';
|
import { GlobalConfig } from '../../../../config/global-config.interface';
|
||||||
@@ -31,11 +28,7 @@ import { NotificationsService } from '../../../shared/notifications/notification
|
|||||||
import { SectionsService } from '../sections.service';
|
import { SectionsService } from '../sections.service';
|
||||||
import { difference } from '../../../shared/object.util';
|
import { difference } from '../../../shared/object.util';
|
||||||
import { WorkspaceitemSectionFormObject } from '../../../core/submission/models/workspaceitem-section-form.model';
|
import { WorkspaceitemSectionFormObject } from '../../../core/submission/models/workspaceitem-section-form.model';
|
||||||
import { WorkspaceItem } from '../../../core/submission/models/workspaceitem.model';
|
|
||||||
import { WorkspaceitemDataService } from '../../../core/submission/workspaceitem-data.service';
|
import { WorkspaceitemDataService } from '../../../core/submission/workspaceitem-data.service';
|
||||||
import { combineLatest as combineLatestObservable } from 'rxjs';
|
|
||||||
import { getSucceededRemoteData } from '../../../core/shared/operators';
|
|
||||||
import { RemoteData } from '../../../core/data/remote-data';
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This component represents a section that contains a Form.
|
* This component represents a section that contains a Form.
|
||||||
@@ -108,7 +101,6 @@ export class SubmissionSectionformComponent extends SectionModelComponent {
|
|||||||
*/
|
*/
|
||||||
protected subs: Subscription[] = [];
|
protected subs: Subscription[] = [];
|
||||||
|
|
||||||
protected workspaceItem: WorkspaceItem;
|
|
||||||
/**
|
/**
|
||||||
* The FormComponent reference
|
* The FormComponent reference
|
||||||
*/
|
*/
|
||||||
@@ -140,7 +132,6 @@ export class SubmissionSectionformComponent extends SectionModelComponent {
|
|||||||
protected sectionService: SectionsService,
|
protected sectionService: SectionsService,
|
||||||
protected submissionService: SubmissionService,
|
protected submissionService: SubmissionService,
|
||||||
protected translate: TranslateService,
|
protected translate: TranslateService,
|
||||||
protected workspaceItemDataService: WorkspaceitemDataService,
|
|
||||||
@Inject(GLOBAL_CONFIG) protected EnvConfig: GlobalConfig,
|
@Inject(GLOBAL_CONFIG) protected EnvConfig: GlobalConfig,
|
||||||
@Inject('collectionIdProvider') public injectedCollectionId: string,
|
@Inject('collectionIdProvider') public injectedCollectionId: string,
|
||||||
@Inject('sectionDataProvider') public injectedSectionData: SectionDataObject,
|
@Inject('sectionDataProvider') public injectedSectionData: SectionDataObject,
|
||||||
@@ -157,16 +148,11 @@ export class SubmissionSectionformComponent extends SectionModelComponent {
|
|||||||
this.formConfigService.getConfigByHref(this.sectionData.config).pipe(
|
this.formConfigService.getConfigByHref(this.sectionData.config).pipe(
|
||||||
map((configData: ConfigData) => configData.payload),
|
map((configData: ConfigData) => configData.payload),
|
||||||
tap((config: SubmissionFormsModel) => this.formConfig = config),
|
tap((config: SubmissionFormsModel) => this.formConfig = config),
|
||||||
flatMap(() =>
|
flatMap(() => this.sectionService.getSectionData(this.submissionId, this.sectionData.id)),
|
||||||
combineLatestObservable(
|
|
||||||
this.sectionService.getSectionData(this.submissionId, this.sectionData.id),
|
|
||||||
this.workspaceItemDataService.findById(this.submissionId).pipe(getSucceededRemoteData(), map((wsiRD: RemoteData<WorkspaceItem>) => wsiRD.payload))
|
|
||||||
)),
|
|
||||||
take(1))
|
take(1))
|
||||||
.subscribe(([sectionData, workspaceItem]: [WorkspaceitemSectionFormObject, WorkspaceItem]) => {
|
.subscribe((sectionData: WorkspaceitemSectionFormObject) => {
|
||||||
if (isUndefined(this.formModel)) {
|
if (isUndefined(this.formModel)) {
|
||||||
this.sectionData.errors = [];
|
this.sectionData.errors = [];
|
||||||
this.workspaceItem = workspaceItem;
|
|
||||||
// Is the first loading so init form
|
// Is the first loading so init form
|
||||||
this.initForm(sectionData);
|
this.initForm(sectionData);
|
||||||
this.sectionData.data = sectionData;
|
this.sectionData.data = sectionData;
|
||||||
|
Reference in New Issue
Block a user