AAE-28584 Fix process tasks not showing after clicking in the list (#10410)

This commit is contained in:
Robert Duda 2024-11-20 11:26:15 +01:00 committed by GitHub
parent b575d16e61
commit ab1b54531c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 29 additions and 6 deletions

View File

@ -114,6 +114,7 @@ export class TaskListRequestModel {
status?: string[]; status?: string[];
completedBy?: string[]; completedBy?: string[];
assignee?: string[]; assignee?: string[];
processInstanceId?: string;
createdFrom?: string; createdFrom?: string;
createdTo?: string; createdTo?: string;
lastModifiedFrom?: string; lastModifiedFrom?: string;
@ -148,6 +149,7 @@ export class TaskListRequestModel {
this.status = obj.status; this.status = obj.status;
this.completedBy = obj.completedBy; this.completedBy = obj.completedBy;
this.assignee = obj.assignee; this.assignee = obj.assignee;
this.processInstanceId = obj.processInstanceId;
this.createdFrom = obj.createdFrom; this.createdFrom = obj.createdFrom;
this.createdTo = obj.createdTo; this.createdTo = obj.createdTo;
this.lastModifiedFrom = obj.lastModifiedFrom; this.lastModifiedFrom = obj.lastModifiedFrom;

View File

@ -19,7 +19,7 @@ import { Injectable } from '@angular/core';
import { Observable, throwError } from 'rxjs'; import { Observable, throwError } from 'rxjs';
import { BaseCloudService } from '../../../services/base-cloud.service'; import { BaseCloudService } from '../../../services/base-cloud.service';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { TaskQueryCloudRequestModel } from '../../../models/filter-cloud-model'; import { TaskListRequestModel, TaskQueryCloudRequestModel } from '../../../models/filter-cloud-model';
import { TaskCloudNodePaging } from '../../../models/task-cloud.model'; import { TaskCloudNodePaging } from '../../../models/task-cloud.model';
import { TaskListCloudSortingModel } from '../../../models/task-list-sorting.model'; import { TaskListCloudSortingModel } from '../../../models/task-list-sorting.model';
@ -55,6 +55,30 @@ export class ProcessTaskListCloudService extends BaseCloudService {
} }
} }
/**
* Retrieves a list of tasks using an object with optional query properties.
*
* @param requestNode Query object
* @param queryUrl Query url
* @returns List of tasks
*/
fetchTaskList(requestNode: TaskListRequestModel, queryUrl?: string): Observable<any> {
return this.getTaskByRequest(
new TaskQueryCloudRequestModel({
appName: requestNode.appName,
processInstanceId: requestNode.processInstanceId
}),
queryUrl
);
}
getTaskListCounter(requestNode: TaskListRequestModel): Observable<number> {
if (!requestNode.appName) {
return throwError(() => new Error('Appname not configured'));
}
return this.fetchTaskList(requestNode).pipe(map((tasks) => tasks.list.pagination.totalItems));
}
protected buildQueryParams(requestNode: TaskQueryCloudRequestModel): any { protected buildQueryParams(requestNode: TaskQueryCloudRequestModel): any {
const queryParam: any = {}; const queryParam: any = {};
for (const property in requestNode) { for (const property in requestNode) {

View File

@ -20,11 +20,7 @@ import { AppConfigService, UserPreferencesService } from '@alfresco/adf-core';
import { TaskListRequestModel, TaskQueryCloudRequestModel } from '../../../models/filter-cloud-model'; import { TaskListRequestModel, TaskQueryCloudRequestModel } from '../../../models/filter-cloud-model';
import { BaseTaskListCloudComponent } from './base-task-list-cloud.component'; import { BaseTaskListCloudComponent } from './base-task-list-cloud.component';
import { TaskCloudService } from '../../services/task-cloud.service'; import { TaskCloudService } from '../../services/task-cloud.service';
import { import { TASK_LIST_CLOUD_TOKEN, TASK_LIST_PREFERENCES_SERVICE_TOKEN, TASK_SEARCH_API_METHOD_TOKEN } from '../../../services/cloud-token.service';
TASK_LIST_CLOUD_TOKEN,
TASK_LIST_PREFERENCES_SERVICE_TOKEN,
TASK_SEARCH_API_METHOD_TOKEN
} from '../../../services/cloud-token.service';
import { PreferenceCloudServiceInterface } from '../../../services/preference-cloud.interface'; import { PreferenceCloudServiceInterface } from '../../../services/preference-cloud.interface';
import { TaskListCloudServiceInterface } from '../../../services/task-list-cloud.service.interface'; import { TaskListCloudServiceInterface } from '../../../services/task-list-cloud.service.interface';
import { BehaviorSubject, combineLatest, Subject } from 'rxjs'; import { BehaviorSubject, combineLatest, Subject } from 'rxjs';
@ -266,6 +262,7 @@ export class TaskListCloudComponent extends BaseTaskListCloudComponent<ProcessLi
onlyStandalone: this.standalone, onlyStandalone: this.standalone,
name: this.names, name: this.names,
processDefinitionName: this.processDefinitionNames, processDefinitionName: this.processDefinitionNames,
processInstanceId: this.processInstanceId,
priority: this.priorities, priority: this.priorities,
status: this.statuses, status: this.statuses,
completedBy: this.completedByUsers, completedBy: this.completedByUsers,