mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-1586] TaskListService & TaskFilterService documentation update because of 2.0 reorg (#2705)
This commit is contained in:
committed by
Eugenio Romano
parent
27f35dfe24
commit
c6cd7d6b40
324
docs/task-filter.service.md
Normal file
324
docs/task-filter.service.md
Normal file
@@ -0,0 +1,324 @@
|
||||
# Task Filter Service
|
||||
Manage Task Filters, which are pre-configured Task Instance queries.
|
||||
|
||||
## Importing
|
||||
|
||||
```ts
|
||||
import { TaskFilterService, FilterRepresentationModel } from '@alfresco/adf-process-services';
|
||||
|
||||
export class SomePageComponent implements OnInit {
|
||||
|
||||
constructor(private taskFilterService: TaskFilterService) {
|
||||
}
|
||||
```
|
||||
|
||||
## Methods
|
||||
|
||||
#### createDefaultFilters(appId: number): Observable`<FilterRepresentationModel[]>`
|
||||
Create and return the default task filters for a Process App:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
this.taskFilterService.createDefaultFilters(processAppId).subscribe( (filters: FilterRepresentationModel[]) => {
|
||||
console.log('Task filters: ', filters);
|
||||
}, error => {
|
||||
console.log('Error: ', error);
|
||||
});
|
||||
```
|
||||
|
||||
The response is an array of `FilterRepresentationModel` objects:
|
||||
|
||||
```
|
||||
filters:
|
||||
0: {
|
||||
appId: 2
|
||||
filter : {
|
||||
assignment: "involved"
|
||||
dueAfter: null
|
||||
dueBefore: null
|
||||
name: null
|
||||
processDefinitionId: null
|
||||
processDefinitionKey: null
|
||||
sort: "created-desc"
|
||||
state: "open"
|
||||
}
|
||||
icon: "glyphicon-align-left"
|
||||
id: null
|
||||
index: undefined
|
||||
name: "Involved Tasks"
|
||||
recent: false
|
||||
1: {id: null, appId: 2, name: "My Tasks", recent: false, icon: "glyphicon-inbox", …}
|
||||
2: {id: null, appId: 2, name: "Queued Tasks", recent: false, icon: "glyphicon-record", …}
|
||||
3: {id: null, appId: 2, name: "Completed Tasks", recent: true, icon: "glyphicon-ok-sign", …}
|
||||
```
|
||||
|
||||
These filters can now be used to get matching Task Instances for Process App with ID 2,
|
||||
such as 'Involved Tasks', 'My Tasks', 'Queued Tasks', and 'Completed Tasks'.
|
||||
|
||||
#### getTaskListFilters(appId?: number): Observable`<any>`
|
||||
Get all task filters defined for a Process App:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
this.taskFilterService.getTaskListFilters(processAppId).subscribe( (filters: FilterRepresentationModel[]) => {
|
||||
console.log('Task filters: ', filters);
|
||||
}, error => {
|
||||
console.log('Error: ', error);
|
||||
});
|
||||
```
|
||||
|
||||
The response is an array of `FilterRepresentationModel` objects:
|
||||
|
||||
```
|
||||
filters:
|
||||
0: {id: 10, appId: 2, name: "Involved Tasks", recent: true, icon: "glyphicon-align-left", …}
|
||||
1: {id: 9, appId: 2, name: "My Tasks", recent: false, icon: "glyphicon-inbox", …}
|
||||
2: {id: 11, appId: 2, name: "Queued Tasks", recent: false, icon: "glyphicon-record", …}
|
||||
3: {id: 12, appId: 2, name: "Completed Tasks", recent: false, icon: "glyphicon-ok-sign", …}
|
||||
4: {id: 4004, appId: 2, name: "Completed Tasks", recent: false, icon: "glyphicon-ok-sign", …}
|
||||
5: {id: 4005, appId: 2, name: "My Tasks", recent: false, icon: "glyphicon-inbox", …}
|
||||
6: {id: 4006, appId: 2, name: "Queued Tasks", recent: false, icon: "glyphicon-record", …}
|
||||
7: {id: 4007, appId: 2, name: "Involved Tasks", recent: false, icon: "glyphicon-align-left", …}
|
||||
```
|
||||
In this example I had run the `createDefaultFilters` method once, and that created the duplicate of
|
||||
the default filters.
|
||||
|
||||
These filters can now be used to get matching Task Instances for Process App with ID 2,
|
||||
such as 'Involved Tasks', 'My Tasks', 'Queued Tasks', and 'Completed Tasks'.
|
||||
|
||||
If you want to return all filters regardless of Process App, and filter out duplicates,
|
||||
then you can just leave out the Process App number:
|
||||
|
||||
```ts
|
||||
this.taskFilterService.getTaskListFilters().subscribe( (filters: FilterRepresentationModel[]) => {
|
||||
console.log('Task filters: ', filters);
|
||||
}, error => {
|
||||
console.log('Error: ', error);
|
||||
});
|
||||
```
|
||||
|
||||
#### getTaskFilterById(filterId: number, appId?: number): Observable`<FilterRepresentationModel>`
|
||||
Get a specific Task Filter based on its ID, optionally pass in Process App ID to improve performance
|
||||
when searching for filter:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
const taskFilterId = 4007;
|
||||
this.taskFilterService.getTaskFilterById(taskFilterId, processAppId).subscribe( (filter: FilterRepresentationModel) => {
|
||||
console.log('Task filter: ', filter);
|
||||
}, error => {
|
||||
console.log('Error: ', error);
|
||||
});
|
||||
```
|
||||
|
||||
The response is a `FilterRepresentationModel` object:
|
||||
|
||||
```
|
||||
Task filter:
|
||||
appId: 2
|
||||
filter:
|
||||
assignment: "involved"
|
||||
sort: "created-desc"
|
||||
state: "open"
|
||||
icon: "glyphicon-align-left"
|
||||
id: 4007
|
||||
name: "Involved Tasks"
|
||||
recent: false
|
||||
```
|
||||
|
||||
The filter can now be used to get 'Involved Tasks' Task Instances for Process App with ID 2.
|
||||
|
||||
#### getTaskFilterByName(taskName: string, appId?: number): Observable`<FilterRepresentationModel>`
|
||||
Get a specific Task Filter based on its name, optionally pass in Process App ID to improve performance
|
||||
when searching for filter:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
const taskFilterName = 'Completed Tasks';
|
||||
this.taskFilterService.getTaskFilterByName(taskFilterName, processAppId).subscribe( (filter: FilterRepresentationModel) => {
|
||||
console.log('Task filter: ', filter);
|
||||
}, error => {
|
||||
console.log('Error: ', error);
|
||||
});
|
||||
```
|
||||
|
||||
The response is a `FilterRepresentationModel` object:
|
||||
|
||||
```
|
||||
appId: 2
|
||||
filter: {sort: "created-desc", name: "", state: "completed", assignment: "involved"}
|
||||
icon: "glyphicon-ok-sign"
|
||||
id: 12
|
||||
name: "Completed Tasks"
|
||||
recent: false
|
||||
```
|
||||
If there are several filters with the same name for the Process App, then you get back the
|
||||
first one found matching the name.
|
||||
|
||||
The filter can now be used to get 'Completed Tasks' Task Instances for Process App with ID 2.
|
||||
|
||||
#### addFilter(filter: FilterRepresentationModel): Observable`<FilterRepresentationModel>`
|
||||
Add a new Task Instance filter:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
const filterName = 'InvolvedAsc';
|
||||
const filterInvolvedAsc = new FilterRepresentationModel({
|
||||
'name': filterName,
|
||||
'appId': processAppId,
|
||||
'recent': false,
|
||||
'icon': 'glyphicon-align-left',
|
||||
'filter': { 'assignment': 'involved', 'sort': 'created-asc', 'state': 'open' }
|
||||
});
|
||||
|
||||
this.taskFilterService.addFilter(filterInvolvedAsc).subscribe( (filterResponse: FilterRepresentationModel) => {
|
||||
console.log('Task filter: ', filterResponse);
|
||||
}, error => {
|
||||
console.log('Error: ', error);
|
||||
});
|
||||
```
|
||||
|
||||
The response is a `FilterRepresentationModel` object:
|
||||
|
||||
```
|
||||
appId: 2
|
||||
icon: "glyphicon-align-left"
|
||||
id: 4008
|
||||
name: "InvolvedAsc"
|
||||
recent: false
|
||||
```
|
||||
|
||||
The filter can now be used to get 'Involved' Task Instances for
|
||||
Process App with ID 2 in created date ascending order.
|
||||
|
||||
#### getRunningFilterInstance(appId: number): FilterProcessRepresentationModel
|
||||
Convenience method to create and return a filter that matches `involved` Task Instances
|
||||
for passed in Process App ID:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
const involvedFilter: FilterRepresentationModel = this.taskFilterService.getInvolvedTasksFilterInstance(processAppId);
|
||||
console.log('Involved filter', involvedFilter);
|
||||
```
|
||||
|
||||
The response is a `FilterRepresentationModel` object:
|
||||
|
||||
```
|
||||
appId: 2
|
||||
filter:
|
||||
assignment: "involved"
|
||||
dueAfter: null
|
||||
dueBefore: null
|
||||
name: null
|
||||
processDefinitionId: null
|
||||
processDefinitionKey: null
|
||||
sort: "created-desc"
|
||||
state: "open"
|
||||
icon: "glyphicon-align-left"
|
||||
id: null
|
||||
index: undefined
|
||||
name: "Involved Tasks"
|
||||
recent: false
|
||||
```
|
||||
|
||||
Use the `addFilter` to add this filter to a Process App.
|
||||
|
||||
#### getMyTasksFilterInstance(appId: number): FilterProcessRepresentationModel
|
||||
Convenience method to create and return a filter that matches `My Tasks` Task Instances
|
||||
for passed in Process App ID:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
const myTasksFilter: FilterRepresentationModel = this.taskFilterService.getMyTasksFilterInstance(processAppId);
|
||||
console.log('My Tasks filter', myTasksFilter);
|
||||
```
|
||||
|
||||
The response is a `FilterRepresentationModel` object:
|
||||
|
||||
```
|
||||
appId: 2
|
||||
filter:
|
||||
assignment: "assignee"
|
||||
dueAfter: null
|
||||
dueBefore: null
|
||||
name: null
|
||||
processDefinitionId: null
|
||||
processDefinitionKey: null
|
||||
sort: "created-desc"
|
||||
state: "open"
|
||||
icon: "glyphicon-inbox"
|
||||
id: null
|
||||
index: undefined
|
||||
name: "My Tasks"
|
||||
recent: false
|
||||
```
|
||||
|
||||
Use the `addFilter` to add this filter to a Process App.
|
||||
|
||||
#### getQueuedTasksFilterInstance(appId: number): FilterProcessRepresentationModel
|
||||
Convenience method to create and return a filter that matches `Queued Tasks` Task Instances
|
||||
for passed in Process App ID:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
const queuedTasksFilter: FilterRepresentationModel = this.taskFilterService.getQueuedTasksFilterInstance(processAppId);
|
||||
console.log('Queued Tasks filter', queuedTasksFilter);
|
||||
```
|
||||
|
||||
The response is a `FilterRepresentationModel` object:
|
||||
|
||||
```
|
||||
appId: 2
|
||||
filter:
|
||||
assignment: "candidate"
|
||||
dueAfter: null
|
||||
dueBefore: null
|
||||
name: null
|
||||
processDefinitionId: null
|
||||
processDefinitionKey: null
|
||||
sort: "created-desc"
|
||||
state: "open"
|
||||
icon: "glyphicon-record"
|
||||
id: null
|
||||
index: undefined
|
||||
name: "Queued Tasks"
|
||||
recent: false
|
||||
```
|
||||
|
||||
Use the `addFilter` to add this filter to a Process App.
|
||||
|
||||
#### getCompletedTasksFilterInstance(appId: number): FilterProcessRepresentationModel
|
||||
Convenience method to create and return a filter that matches `Completed Tasks` Task Instances
|
||||
for passed in Process App ID:
|
||||
|
||||
```ts
|
||||
const processAppId = 2;
|
||||
const completedTasksFilter: FilterRepresentationModel = this.taskFilterService.getCompletedTasksFilterInstance(processAppId);
|
||||
console.log('Completed Tasks filter', completedTasksFilter);
|
||||
```
|
||||
|
||||
The response is a `FilterRepresentationModel` object:
|
||||
|
||||
```
|
||||
appId: 2
|
||||
filter:
|
||||
assignment: "involved"
|
||||
dueAfter: null
|
||||
dueBefore: null
|
||||
name: null
|
||||
processDefinitionId: null
|
||||
processDefinitionKey: null
|
||||
sort: "created-desc"
|
||||
state: "completed"
|
||||
icon: "glyphicon-ok-sign"
|
||||
id: null
|
||||
index: undefined
|
||||
name: "Completed Tasks"
|
||||
recent: true
|
||||
```
|
||||
|
||||
Use the `addFilter` to add this filter to a Process App.
|
||||
|
||||
<!-- seealso start -->
|
||||
|
||||
<!-- seealso end -->
|
Reference in New Issue
Block a user