mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ACA-3326] Create the default filters following the new order (#5713)
* [ACA-3326] Change default filters order * [ACA-3326] Make selectRunningFilter method deprecated * [ACA-3326] Add filter index as optional
This commit is contained in:
@@ -173,6 +173,7 @@ export class ProcessFiltersComponent implements OnInit, OnChanges {
|
||||
|
||||
/**
|
||||
* Select the Running filter
|
||||
* @deprecated in 3.9.0, Use the filterParam Input() with a running filter instance instead
|
||||
*/
|
||||
selectRunningFilter() {
|
||||
this.selectProcessFilter(this.processFilterService.getRunningFilterInstance(null));
|
||||
|
@@ -88,20 +88,21 @@ export class ProcessFilterService {
|
||||
* @returns Default filters just created
|
||||
*/
|
||||
public createDefaultFilters(appId: number): Observable<FilterProcessRepresentationModel[]> {
|
||||
const runningFilter = this.getRunningFilterInstance(appId);
|
||||
const runningFilter = this.getRunningFilterInstance(appId, 0);
|
||||
const runningObservable = this.addProcessFilter(runningFilter);
|
||||
|
||||
const completedFilter = this.getCompletedFilterInstance(appId);
|
||||
const completedFilter = this.getCompletedFilterInstance(appId, 1);
|
||||
const completedObservable = this.addProcessFilter(completedFilter);
|
||||
|
||||
const allFilter = this.getAllFilterInstance(appId);
|
||||
const allFilter = this.getAllFilterInstance(appId, 2);
|
||||
const allObservable = this.addProcessFilter(allFilter);
|
||||
|
||||
return new Observable((observer) => {
|
||||
forkJoin(
|
||||
runningObservable,
|
||||
completedObservable,
|
||||
allObservable
|
||||
forkJoin([
|
||||
runningObservable,
|
||||
completedObservable,
|
||||
allObservable
|
||||
]
|
||||
).subscribe(
|
||||
(res) => {
|
||||
const filters: FilterProcessRepresentationModel[] = [];
|
||||
@@ -129,45 +130,51 @@ export class ProcessFilterService {
|
||||
/**
|
||||
* Creates and returns a filter that matches "running" process instances.
|
||||
* @param appId ID of the target app
|
||||
* @param index of the filter (optional)
|
||||
* @returns Filter just created
|
||||
*/
|
||||
public getRunningFilterInstance(appId: number): FilterProcessRepresentationModel {
|
||||
return new FilterProcessRepresentationModel({
|
||||
public getRunningFilterInstance(appId: number, index?: number): FilterProcessRepresentationModel {
|
||||
return new FilterProcessRepresentationModel({
|
||||
'name': 'Running',
|
||||
'appId': appId,
|
||||
'recent': true,
|
||||
'icon': 'glyphicon-random',
|
||||
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'running' }
|
||||
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'running' },
|
||||
index
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a static Completed filter instance.
|
||||
* @param appId ID of the target app
|
||||
* @param index of the filter (optional)
|
||||
* @returns Details of the filter
|
||||
*/
|
||||
private getCompletedFilterInstance(appId: number): FilterProcessRepresentationModel {
|
||||
private getCompletedFilterInstance(appId: number, index?: number): FilterProcessRepresentationModel {
|
||||
return new FilterProcessRepresentationModel({
|
||||
'name': 'Completed',
|
||||
'appId': appId,
|
||||
'recent': false,
|
||||
'icon': 'glyphicon-ok-sign',
|
||||
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'completed' }
|
||||
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'completed' },
|
||||
index
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a static All filter instance.
|
||||
* @param appId ID of the target app
|
||||
* @param index of the filter (optional)
|
||||
* @returns Details of the filter
|
||||
*/
|
||||
private getAllFilterInstance(appId: number): FilterProcessRepresentationModel {
|
||||
private getAllFilterInstance(appId: number, index?: number): FilterProcessRepresentationModel {
|
||||
return new FilterProcessRepresentationModel({
|
||||
'name': 'All',
|
||||
'appId': appId,
|
||||
'recent': true,
|
||||
'icon': 'glyphicon-th',
|
||||
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'all' }
|
||||
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'all' },
|
||||
index
|
||||
});
|
||||
}
|
||||
|
||||
|
@@ -129,9 +129,9 @@ describe('Activiti Task filter Service', () => {
|
||||
service.createDefaultFilters(1234).subscribe((res: FilterRepresentationModel []) => {
|
||||
expect(res).toBeDefined();
|
||||
expect(res.length).toEqual(4);
|
||||
expect(res[0].name).toEqual('Involved Tasks');
|
||||
expect(res[0].name).toEqual('My Tasks');
|
||||
expect(res[0].id).toEqual(111);
|
||||
expect(res[1].name).toEqual('My Tasks');
|
||||
expect(res[1].name).toEqual('Involved Tasks');
|
||||
expect(res[1].id).toEqual(222);
|
||||
expect(res[2].name).toEqual('Queued Tasks');
|
||||
expect(res[2].id).toEqual(333);
|
||||
@@ -144,7 +144,7 @@ describe('Activiti Task filter Service', () => {
|
||||
'status': 200,
|
||||
contentType: 'application/json',
|
||||
responseText: JSON.stringify({
|
||||
appId: 1001, id: 111, name: 'Involved Tasks', icon: 'fake-icon', recent: false
|
||||
appId: 1001, id: 111, name: 'My Tasks', icon: 'fake-icon', recent: false
|
||||
})
|
||||
});
|
||||
|
||||
@@ -152,7 +152,7 @@ describe('Activiti Task filter Service', () => {
|
||||
'status': 200,
|
||||
contentType: 'application/json',
|
||||
responseText: JSON.stringify({
|
||||
appId: 1001, id: 222, name: 'My Tasks', icon: 'fake-icon', recent: false
|
||||
appId: 1001, id: 222, name: 'Involved Tasks', icon: 'fake-icon', recent: false
|
||||
})
|
||||
});
|
||||
|
||||
|
@@ -36,24 +36,25 @@ export class TaskFilterService {
|
||||
* @returns Array of default filters just created
|
||||
*/
|
||||
public createDefaultFilters(appId: number): Observable<FilterRepresentationModel[]> {
|
||||
const involvedTasksFilter = this.getInvolvedTasksFilterInstance(appId);
|
||||
const involvedObservable = this.addFilter(involvedTasksFilter);
|
||||
|
||||
const myTasksFilter = this.getMyTasksFilterInstance(appId);
|
||||
const myTasksFilter = this.getMyTasksFilterInstance(appId, 0);
|
||||
const myTaskObservable = this.addFilter(myTasksFilter);
|
||||
|
||||
const queuedTasksFilter = this.getQueuedTasksFilterInstance(appId);
|
||||
const involvedTasksFilter = this.getInvolvedTasksFilterInstance(appId, 1);
|
||||
const involvedObservable = this.addFilter(involvedTasksFilter);
|
||||
|
||||
const queuedTasksFilter = this.getQueuedTasksFilterInstance(appId, 2);
|
||||
const queuedObservable = this.addFilter(queuedTasksFilter);
|
||||
|
||||
const completedTasksFilter = this.getCompletedTasksFilterInstance(appId);
|
||||
const completedTasksFilter = this.getCompletedTasksFilterInstance(appId, 3);
|
||||
const completeObservable = this.addFilter(completedTasksFilter);
|
||||
|
||||
return new Observable((observer) => {
|
||||
forkJoin(
|
||||
involvedObservable,
|
||||
myTaskObservable,
|
||||
queuedObservable,
|
||||
completeObservable
|
||||
forkJoin([
|
||||
myTaskObservable,
|
||||
involvedObservable,
|
||||
queuedObservable,
|
||||
completeObservable
|
||||
]
|
||||
).subscribe(
|
||||
(res) => {
|
||||
const filters: FilterRepresentationModel[] = [];
|
||||
@@ -155,63 +156,71 @@ export class TaskFilterService {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a filter for "Involved" task instances.
|
||||
* @param appId ID of the target app
|
||||
* @returns The newly created filter
|
||||
*/
|
||||
getInvolvedTasksFilterInstance(appId: number): FilterRepresentationModel {
|
||||
return new FilterRepresentationModel({
|
||||
'name': 'Involved Tasks',
|
||||
'appId': appId,
|
||||
'recent': false,
|
||||
'icon': 'glyphicon-align-left',
|
||||
'filter': {'sort': 'created-desc', 'name': '', 'state': 'open', 'assignment': 'involved'}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a filter for "My Tasks" task instances.
|
||||
* @param appId ID of the target app
|
||||
* @param index of the filter (optional)
|
||||
* @returns The newly created filter
|
||||
*/
|
||||
getMyTasksFilterInstance(appId: number): FilterRepresentationModel {
|
||||
getMyTasksFilterInstance(appId: number, index?: number): FilterRepresentationModel {
|
||||
return new FilterRepresentationModel({
|
||||
'name': 'My Tasks',
|
||||
'appId': appId,
|
||||
'recent': false,
|
||||
'icon': 'glyphicon-inbox',
|
||||
'filter': {'sort': 'created-desc', 'name': '', 'state': 'open', 'assignment': 'assignee'}
|
||||
'filter': {'sort': 'created-desc', 'name': '', 'state': 'open', 'assignment': 'assignee'},
|
||||
index
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a filter for "Involved" task instances.
|
||||
* @param appId ID of the target app
|
||||
* @param index of the filter (optional)
|
||||
* @returns The newly created filter
|
||||
*/
|
||||
getInvolvedTasksFilterInstance(appId: number, index?: number): FilterRepresentationModel {
|
||||
return new FilterRepresentationModel({
|
||||
'name': 'Involved Tasks',
|
||||
'appId': appId,
|
||||
'recent': false,
|
||||
'icon': 'glyphicon-align-left',
|
||||
'filter': {'sort': 'created-desc', 'name': '', 'state': 'open', 'assignment': 'involved'},
|
||||
index
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a filter for "Queued Tasks" task instances.
|
||||
* @param appId ID of the target app
|
||||
* @param index of the filter (optional)
|
||||
* @returns The newly created filter
|
||||
*/
|
||||
getQueuedTasksFilterInstance(appId: number): FilterRepresentationModel {
|
||||
getQueuedTasksFilterInstance(appId: number, index?: number): FilterRepresentationModel {
|
||||
return new FilterRepresentationModel({
|
||||
'name': 'Queued Tasks',
|
||||
'appId': appId,
|
||||
'recent': false,
|
||||
'icon': 'glyphicon-record',
|
||||
'filter': {'sort': 'created-desc', 'name': '', 'state': 'open', 'assignment': 'candidate'}
|
||||
'filter': {'sort': 'created-desc', 'name': '', 'state': 'open', 'assignment': 'candidate'},
|
||||
index
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates and returns a filter for "Completed" task instances.
|
||||
* @param appId ID of the target app
|
||||
* @param index of the filter (optional)
|
||||
* @returns The newly created filter
|
||||
*/
|
||||
getCompletedTasksFilterInstance(appId: number): FilterRepresentationModel {
|
||||
getCompletedTasksFilterInstance(appId: number, index?: number): FilterRepresentationModel {
|
||||
return new FilterRepresentationModel({
|
||||
'name': 'Completed Tasks',
|
||||
'appId': appId,
|
||||
'recent': true,
|
||||
'icon': 'glyphicon-ok-sign',
|
||||
'filter': {'sort': 'created-desc', 'name': '', 'state': 'completed', 'assignment': 'involved'}
|
||||
'filter': {'sort': 'created-desc', 'name': '', 'state': 'completed', 'assignment': 'involved'},
|
||||
index
|
||||
});
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user