mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-31 17:38:48 +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
|
* Select the Running filter
|
||||||
|
* @deprecated in 3.9.0, Use the filterParam Input() with a running filter instance instead
|
||||||
*/
|
*/
|
||||||
selectRunningFilter() {
|
selectRunningFilter() {
|
||||||
this.selectProcessFilter(this.processFilterService.getRunningFilterInstance(null));
|
this.selectProcessFilter(this.processFilterService.getRunningFilterInstance(null));
|
||||||
|
@@ -88,20 +88,21 @@ export class ProcessFilterService {
|
|||||||
* @returns Default filters just created
|
* @returns Default filters just created
|
||||||
*/
|
*/
|
||||||
public createDefaultFilters(appId: number): Observable<FilterProcessRepresentationModel[]> {
|
public createDefaultFilters(appId: number): Observable<FilterProcessRepresentationModel[]> {
|
||||||
const runningFilter = this.getRunningFilterInstance(appId);
|
const runningFilter = this.getRunningFilterInstance(appId, 0);
|
||||||
const runningObservable = this.addProcessFilter(runningFilter);
|
const runningObservable = this.addProcessFilter(runningFilter);
|
||||||
|
|
||||||
const completedFilter = this.getCompletedFilterInstance(appId);
|
const completedFilter = this.getCompletedFilterInstance(appId, 1);
|
||||||
const completedObservable = this.addProcessFilter(completedFilter);
|
const completedObservable = this.addProcessFilter(completedFilter);
|
||||||
|
|
||||||
const allFilter = this.getAllFilterInstance(appId);
|
const allFilter = this.getAllFilterInstance(appId, 2);
|
||||||
const allObservable = this.addProcessFilter(allFilter);
|
const allObservable = this.addProcessFilter(allFilter);
|
||||||
|
|
||||||
return new Observable((observer) => {
|
return new Observable((observer) => {
|
||||||
forkJoin(
|
forkJoin([
|
||||||
runningObservable,
|
runningObservable,
|
||||||
completedObservable,
|
completedObservable,
|
||||||
allObservable
|
allObservable
|
||||||
|
]
|
||||||
).subscribe(
|
).subscribe(
|
||||||
(res) => {
|
(res) => {
|
||||||
const filters: FilterProcessRepresentationModel[] = [];
|
const filters: FilterProcessRepresentationModel[] = [];
|
||||||
@@ -129,45 +130,51 @@ export class ProcessFilterService {
|
|||||||
/**
|
/**
|
||||||
* Creates and returns a filter that matches "running" process instances.
|
* Creates and returns a filter that matches "running" process instances.
|
||||||
* @param appId ID of the target app
|
* @param appId ID of the target app
|
||||||
|
* @param index of the filter (optional)
|
||||||
* @returns Filter just created
|
* @returns Filter just created
|
||||||
*/
|
*/
|
||||||
public getRunningFilterInstance(appId: number): FilterProcessRepresentationModel {
|
public getRunningFilterInstance(appId: number, index?: number): FilterProcessRepresentationModel {
|
||||||
return new FilterProcessRepresentationModel({
|
return new FilterProcessRepresentationModel({
|
||||||
'name': 'Running',
|
'name': 'Running',
|
||||||
'appId': appId,
|
'appId': appId,
|
||||||
'recent': true,
|
'recent': true,
|
||||||
'icon': 'glyphicon-random',
|
'icon': 'glyphicon-random',
|
||||||
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'running' }
|
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'running' },
|
||||||
|
index
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns a static Completed filter instance.
|
* Returns a static Completed filter instance.
|
||||||
* @param appId ID of the target app
|
* @param appId ID of the target app
|
||||||
|
* @param index of the filter (optional)
|
||||||
* @returns Details of the filter
|
* @returns Details of the filter
|
||||||
*/
|
*/
|
||||||
private getCompletedFilterInstance(appId: number): FilterProcessRepresentationModel {
|
private getCompletedFilterInstance(appId: number, index?: number): FilterProcessRepresentationModel {
|
||||||
return new FilterProcessRepresentationModel({
|
return new FilterProcessRepresentationModel({
|
||||||
'name': 'Completed',
|
'name': 'Completed',
|
||||||
'appId': appId,
|
'appId': appId,
|
||||||
'recent': false,
|
'recent': false,
|
||||||
'icon': 'glyphicon-ok-sign',
|
'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.
|
* Returns a static All filter instance.
|
||||||
* @param appId ID of the target app
|
* @param appId ID of the target app
|
||||||
|
* @param index of the filter (optional)
|
||||||
* @returns Details of the filter
|
* @returns Details of the filter
|
||||||
*/
|
*/
|
||||||
private getAllFilterInstance(appId: number): FilterProcessRepresentationModel {
|
private getAllFilterInstance(appId: number, index?: number): FilterProcessRepresentationModel {
|
||||||
return new FilterProcessRepresentationModel({
|
return new FilterProcessRepresentationModel({
|
||||||
'name': 'All',
|
'name': 'All',
|
||||||
'appId': appId,
|
'appId': appId,
|
||||||
'recent': true,
|
'recent': true,
|
||||||
'icon': 'glyphicon-th',
|
'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 []) => {
|
service.createDefaultFilters(1234).subscribe((res: FilterRepresentationModel []) => {
|
||||||
expect(res).toBeDefined();
|
expect(res).toBeDefined();
|
||||||
expect(res.length).toEqual(4);
|
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[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[1].id).toEqual(222);
|
||||||
expect(res[2].name).toEqual('Queued Tasks');
|
expect(res[2].name).toEqual('Queued Tasks');
|
||||||
expect(res[2].id).toEqual(333);
|
expect(res[2].id).toEqual(333);
|
||||||
@@ -144,7 +144,7 @@ describe('Activiti Task filter Service', () => {
|
|||||||
'status': 200,
|
'status': 200,
|
||||||
contentType: 'application/json',
|
contentType: 'application/json',
|
||||||
responseText: JSON.stringify({
|
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,
|
'status': 200,
|
||||||
contentType: 'application/json',
|
contentType: 'application/json',
|
||||||
responseText: JSON.stringify({
|
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
|
* @returns Array of default filters just created
|
||||||
*/
|
*/
|
||||||
public createDefaultFilters(appId: number): Observable<FilterRepresentationModel[]> {
|
public createDefaultFilters(appId: number): Observable<FilterRepresentationModel[]> {
|
||||||
const involvedTasksFilter = this.getInvolvedTasksFilterInstance(appId);
|
const myTasksFilter = this.getMyTasksFilterInstance(appId, 0);
|
||||||
const involvedObservable = this.addFilter(involvedTasksFilter);
|
|
||||||
|
|
||||||
const myTasksFilter = this.getMyTasksFilterInstance(appId);
|
|
||||||
const myTaskObservable = this.addFilter(myTasksFilter);
|
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 queuedObservable = this.addFilter(queuedTasksFilter);
|
||||||
|
|
||||||
const completedTasksFilter = this.getCompletedTasksFilterInstance(appId);
|
const completedTasksFilter = this.getCompletedTasksFilterInstance(appId, 3);
|
||||||
const completeObservable = this.addFilter(completedTasksFilter);
|
const completeObservable = this.addFilter(completedTasksFilter);
|
||||||
|
|
||||||
return new Observable((observer) => {
|
return new Observable((observer) => {
|
||||||
forkJoin(
|
forkJoin([
|
||||||
involvedObservable,
|
myTaskObservable,
|
||||||
myTaskObservable,
|
involvedObservable,
|
||||||
queuedObservable,
|
queuedObservable,
|
||||||
completeObservable
|
completeObservable
|
||||||
|
]
|
||||||
).subscribe(
|
).subscribe(
|
||||||
(res) => {
|
(res) => {
|
||||||
const filters: FilterRepresentationModel[] = [];
|
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.
|
* Creates and returns a filter for "My Tasks" task instances.
|
||||||
* @param appId ID of the target app
|
* @param appId ID of the target app
|
||||||
|
* @param index of the filter (optional)
|
||||||
* @returns The newly created filter
|
* @returns The newly created filter
|
||||||
*/
|
*/
|
||||||
getMyTasksFilterInstance(appId: number): FilterRepresentationModel {
|
getMyTasksFilterInstance(appId: number, index?: number): FilterRepresentationModel {
|
||||||
return new FilterRepresentationModel({
|
return new FilterRepresentationModel({
|
||||||
'name': 'My Tasks',
|
'name': 'My Tasks',
|
||||||
'appId': appId,
|
'appId': appId,
|
||||||
'recent': false,
|
'recent': false,
|
||||||
'icon': 'glyphicon-inbox',
|
'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.
|
* Creates and returns a filter for "Queued Tasks" task instances.
|
||||||
* @param appId ID of the target app
|
* @param appId ID of the target app
|
||||||
|
* @param index of the filter (optional)
|
||||||
* @returns The newly created filter
|
* @returns The newly created filter
|
||||||
*/
|
*/
|
||||||
getQueuedTasksFilterInstance(appId: number): FilterRepresentationModel {
|
getQueuedTasksFilterInstance(appId: number, index?: number): FilterRepresentationModel {
|
||||||
return new FilterRepresentationModel({
|
return new FilterRepresentationModel({
|
||||||
'name': 'Queued Tasks',
|
'name': 'Queued Tasks',
|
||||||
'appId': appId,
|
'appId': appId,
|
||||||
'recent': false,
|
'recent': false,
|
||||||
'icon': 'glyphicon-record',
|
'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.
|
* Creates and returns a filter for "Completed" task instances.
|
||||||
* @param appId ID of the target app
|
* @param appId ID of the target app
|
||||||
|
* @param index of the filter (optional)
|
||||||
* @returns The newly created filter
|
* @returns The newly created filter
|
||||||
*/
|
*/
|
||||||
getCompletedTasksFilterInstance(appId: number): FilterRepresentationModel {
|
getCompletedTasksFilterInstance(appId: number, index?: number): FilterRepresentationModel {
|
||||||
return new FilterRepresentationModel({
|
return new FilterRepresentationModel({
|
||||||
'name': 'Completed Tasks',
|
'name': 'Completed Tasks',
|
||||||
'appId': appId,
|
'appId': appId,
|
||||||
'recent': true,
|
'recent': true,
|
||||||
'icon': 'glyphicon-ok-sign',
|
'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