From 87d889e8affe55015bf53cc0a4bfd786e4add284 Mon Sep 17 00:00:00 2001 From: Maurizio Vitale Date: Tue, 18 Apr 2017 10:22:55 +0100 Subject: [PATCH] Provide a way to retrieve the task filter by Id or by name (#1815) * Provide a way to retrieve the task filter by Id or by name * Update activiti-tasklist.service.ts * Update activiti-tasklist.service.spec.ts * Removed space --- .../activiti-tasklist.service.spec.ts | 40 +++++++++++++++++++ .../src/services/activiti-tasklist.service.ts | 38 ++++++++++++++---- 2 files changed, 71 insertions(+), 7 deletions(-) diff --git a/ng2-components/ng2-activiti-tasklist/src/services/activiti-tasklist.service.spec.ts b/ng2-components/ng2-activiti-tasklist/src/services/activiti-tasklist.service.spec.ts index ae979abe6f..e6961ae81f 100644 --- a/ng2-components/ng2-activiti-tasklist/src/services/activiti-tasklist.service.spec.ts +++ b/ng2-components/ng2-activiti-tasklist/src/services/activiti-tasklist.service.spec.ts @@ -101,6 +101,46 @@ describe('Activiti TaskList Service', () => { }); }); + it('should return the task filter by id', (done) => { + service.getTaskFilterById('2').subscribe( + (res: FilterRepresentationModel) => { + expect(res).toBeDefined(); + expect(res.id).toEqual('2'); + expect(res.name).toEqual('FakeMyTasks'); + expect(res.filter.sort).toEqual('created-desc'); + expect(res.filter.state).toEqual('open'); + expect(res.filter.assignment).toEqual('fake-assignee'); + done(); + } + ); + + jasmine.Ajax.requests.mostRecent().respondWith({ + 'status': 200, + contentType: 'application/json', + responseText: JSON.stringify(fakeFilters) + }); + }); + + it('should return the task filter by name', (done) => { + service.getTaskFilterByName('FakeMyTasks').subscribe( + (res: FilterRepresentationModel) => { + expect(res).toBeDefined(); + expect(res.id).toEqual('2'); + expect(res.name).toEqual('FakeMyTasks'); + expect(res.filter.sort).toEqual('created-desc'); + expect(res.filter.state).toEqual('open'); + expect(res.filter.assignment).toEqual('fake-assignee'); + done(); + } + ); + + jasmine.Ajax.requests.mostRecent().respondWith({ + 'status': 200, + contentType: 'application/json', + responseText: JSON.stringify(fakeFilters) + }); + }); + it('should call the api withthe appId', (done) => { spyOn(service, 'callApiTaskFilters').and.returnValue((fakeAppPromise)); diff --git a/ng2-components/ng2-activiti-tasklist/src/services/activiti-tasklist.service.ts b/ng2-components/ng2-activiti-tasklist/src/services/activiti-tasklist.service.ts index 82ea6fe045..d64b4ff926 100644 --- a/ng2-components/ng2-activiti-tasklist/src/services/activiti-tasklist.service.ts +++ b/ng2-components/ng2-activiti-tasklist/src/services/activiti-tasklist.service.ts @@ -35,7 +35,7 @@ export class ActivitiTaskListService { } /** - * Retrive all the Deployed app + * Retrieve all the Deployed app * @returns {Observable} */ getDeployedApplications(name?: string): Observable { @@ -50,7 +50,7 @@ export class ActivitiTaskListService { } /** - * Retrive all the Tasks filters + * Retrieve all the Tasks filters * @returns {Observable} */ getTaskListFilters(appId?: string): Observable { @@ -65,6 +65,30 @@ export class ActivitiTaskListService { }).catch(err => this.handleError(err)); } + /** + * Retrieve the Tasks filter by id + * @param taskId - string - The id of the filter + * @returns {Observable} + */ + getTaskFilterById(taskId: string, appId?: string): Observable { + return Observable.fromPromise(this.callApiTaskFilters(appId)) + .map((response: any) => { + return response.data.find(filter => filter.id === taskId); + }).catch(err => this.handleError(err)); + } + + /** + * Retrieve the Tasks filter by name + * @param taskName - string - The name of the filter + * @returns {Observable} + */ + getTaskFilterByName(taskName: string, appId?: string): Observable { + return Observable.fromPromise(this.callApiTaskFilters(appId)) + .map((response: any) => { + return response.data.find(filter => filter.name === taskName); + }).catch(err => this.handleError(err)); + } + /** * Return all the filters in the list where the task id belong * @param taskId - string @@ -108,7 +132,7 @@ export class ActivitiTaskListService { } /** - * Retrive all the tasks filtered by filterModel + * Retrieve all the tasks filtered by filterModel * @param filter - TaskFilterRepresentationModel * @returns {any} */ @@ -124,7 +148,7 @@ export class ActivitiTaskListService { } /** - * Retrive all the task details + * Retrieve all the task details * @param id - taskId * @returns {} */ @@ -137,7 +161,7 @@ export class ActivitiTaskListService { } /** - * Retrive all the task's comments + * Retrieve all the task's comments * @param id - taskId * @returns {} */ @@ -155,7 +179,7 @@ export class ActivitiTaskListService { } /** - * Retrive all the task's checklist + * Retrieve all the task's checklist * @param id - taskId * @returns {TaskDetailsModel} */ @@ -172,7 +196,7 @@ export class ActivitiTaskListService { } /** - * Retrive all the form shared with this user + * Retrieve all the form shared with this user * @returns {TaskDetailsModel} */ getFormList(): Observable
{