Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@ import {TaskEventOutcome} from './task-event-outcome';

// eslint-disable-next-line @typescript-eslint/no-empty-interface
export interface FinishTaskEventOutcome extends TaskEventOutcome {

isTaskStillExecutable?: boolean;
}
Original file line number Diff line number Diff line change
Expand Up @@ -70,4 +70,6 @@ export interface Task {
delegateTitle?: string;
immediateData?: Array<ImmediateData>;
assignedUserPolicy?: AssignedUserPolicy;

isStillExecutable?: boolean;
}
Original file line number Diff line number Diff line change
Expand Up @@ -206,11 +206,12 @@ export abstract class TaskContentService implements OnDestroy {
/**
* Clears the assignee, start date and finish date from the managed Task.
*/
public updateStateData(eventOutcome: TaskEventOutcome): void {
public updateStateData(eventOutcome: TaskEventOutcome, isStillExecutable: boolean = true): void {
if (this._task) {
this._task.user = eventOutcome.task.user;
this._task.startDate = eventOutcome.task.startDate;
this._task.finishDate = eventOutcome.task.finishDate;
this._task.isStillExecutable = isStillExecutable;
}
}

Expand All @@ -235,7 +236,7 @@ export abstract class TaskContentService implements OnDestroy {
}

protected updateField(chFields: ChangedFields, field: DataField<any>, frontendActions: Change, referenced: boolean = false): void {
if (this._fieldConverterService.resolveType(field) === FieldTypeResource.TASK_REF) {
if (this._fieldConverterService.resolveType(field) === FieldTypeResource.TASK_REF && (!!this._task?.isStillExecutable || this._task?.isStillExecutable === undefined)) {
this._taskDataReloadRequest$.next(frontendActions ? frontendActions : undefined);
return;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,8 @@ export class FinishTaskService extends TaskHandlingService {
}

if (outcomeResource.success) {
this._taskContentService.updateStateData(outcomeResource.outcome as FinishTaskEventOutcome);
const outcome = outcomeResource.outcome as FinishTaskEventOutcome
this._taskContentService.updateStateData(outcome, outcome.isTaskStillExecutable);
const changedFieldsMap: ChangedFieldsMap = this._eventService
.parseChangedFieldsFromOutcomeTree(outcomeResource.outcome);
if (!!changedFieldsMap) {
Expand Down
Loading