[ADF - 1114] Process comments - Share the same comment between Task and Process (#2105)

* changed process comment template and used task comment component

* changed getTaskComment, getProcessInstanceComment, addTaskComment and addProcessInstanceComment to getComments and addComment

* removed provider from task comment component

* extended tasklist service and changed comment-list container css

* changed process service methods and associated test cases

* added error emitter and test cases for process-comments component

* fixed process header component test case
This commit is contained in:
Infad Kachancheri
2017-07-19 22:26:12 +05:30
committed by Eugenio Romano
parent 7fbdf4ed8a
commit 83a6f0d425
12 changed files with 154 additions and 317 deletions

View File

@@ -22,4 +22,11 @@
.adf-full-width {
width: 100%;
}
adf-comment-list {
float: left;
overflow: auto;
height: calc(100% - 101px);
width: 100%;
}

View File

@@ -66,12 +66,12 @@ describe('CommentsComponent', () => {
component = fixture.componentInstance;
service = fixture.debugElement.injector.get(TaskListService);
getCommentsSpy = spyOn(service, 'getTaskComments').and.returnValue(Observable.of([
getCommentsSpy = spyOn(service, 'getComments').and.returnValue(Observable.of([
{ message: 'Test1', created: Date.now(), createdBy: {firstName: 'Admin', lastName: 'User'} },
{ message: 'Test2', created: Date.now(), createdBy: {firstName: 'Admin', lastName: 'User'} },
{ message: 'Test3', created: Date.now(), createdBy: {firstName: 'Admin', lastName: 'User'} }
]));
addCommentSpy = spyOn(service, 'addTaskComment').and.returnValue(Observable.of({id: 123, message: 'Test Comment'}));
addCommentSpy = spyOn(service, 'addComment').and.returnValue(Observable.of({id: 123, message: 'Test Comment'}));
componentHandler = jasmine.createSpyObj('componentHandler', [
'upgradeAllRegistered',

View File

@@ -25,8 +25,7 @@ import { TaskListService } from '../services/tasklist.service';
@Component({
selector: 'adf-comments, activiti-comments',
templateUrl: './comments.component.html',
styleUrls: ['./comments.component.css'],
providers: [TaskListService]
styleUrls: ['./comments.component.css']
})
export class CommentsComponent implements OnChanges {
@@ -80,7 +79,7 @@ export class CommentsComponent implements OnChanges {
private getTaskComments(taskId: string): void {
this.resetComments();
if (taskId) {
this.activitiTaskList.getTaskComments(taskId).subscribe(
this.activitiTaskList.getComments(taskId).subscribe(
(res: Comment[]) => {
res = res.sort((comment1: Comment, comment2: Comment) => {
let date1 = new Date(comment1.created);
@@ -106,7 +105,7 @@ export class CommentsComponent implements OnChanges {
add(): void {
if (this.message && this.message.trim() && !this.beingAdded) {
this.beingAdded = true;
this.activitiTaskList.addTaskComment(this.taskId, this.message).subscribe(
this.activitiTaskList.addComment(this.taskId, this.message).subscribe(
(res: Comment) => {
this.comments.unshift(res);
this.message = '';

View File

@@ -73,7 +73,7 @@ describe('TaskDetailsComponent', () => {
getFormSpy = spyOn(formService, 'getTaskForm').and.returnValue(Observable.of(taskFormMock));
getTasksSpy = spyOn(service, 'getTasks').and.returnValue(Observable.of(tasksMock));
completeTaskSpy = spyOn(service, 'completeTask').and.returnValue(Observable.of({}));
spyOn(service, 'getTaskComments').and.returnValue(Observable.of(noDataMock));
spyOn(service, 'getComments').and.returnValue(Observable.of(noDataMock));
spyOn(service, 'getTaskChecklist').and.returnValue(Observable.of(noDataMock));
componentHandler = jasmine.createSpyObj('componentHandler', [

View File

@@ -161,7 +161,7 @@ describe('Activiti TaskList Service', () => {
});
it('should return the task list filtered', (done) => {
service.getTasks(<TaskQueryRequestRepresentationModel>fakeFilter).subscribe(
service.getTasks(<TaskQueryRequestRepresentationModel> fakeFilter).subscribe(
res => {
expect(res).toBeDefined();
expect(res.length).toEqual(1);
@@ -181,7 +181,7 @@ describe('Activiti TaskList Service', () => {
});
it('should return the task list filtered by processDefinitionKey', (done) => {
service.getTasks(<TaskQueryRequestRepresentationModel>fakeFilterWithProcessDefinitionKey).subscribe(
service.getTasks(<TaskQueryRequestRepresentationModel> fakeFilterWithProcessDefinitionKey).subscribe(
res => {
expect(res).toBeDefined();
expect(res.length).toEqual(1);
@@ -202,7 +202,7 @@ describe('Activiti TaskList Service', () => {
});
it('should throw an exception when the response is wrong', () => {
service.getTasks(<TaskQueryRequestRepresentationModel>fakeFilter).subscribe(
service.getTasks(<TaskQueryRequestRepresentationModel> fakeFilter).subscribe(
(res) => {
},
(err: any) => {
@@ -240,7 +240,7 @@ describe('Activiti TaskList Service', () => {
});
it('should return the tasks comments ', (done) => {
service.getTaskComments('999').subscribe(
service.getComments('999').subscribe(
(res: Comment[]) => {
expect(res).toBeDefined();
expect(res.length).toEqual(2);
@@ -327,7 +327,7 @@ describe('Activiti TaskList Service', () => {
});
it('should add a comment task ', (done) => {
service.addTaskComment('999', 'fake-comment-message').subscribe(
service.addComment('999', 'fake-comment-message').subscribe(
(res: Comment) => {
expect(res).toBeDefined();
expect(res.id).not.toEqual('');
@@ -367,7 +367,7 @@ describe('Activiti TaskList Service', () => {
});
it('should return the total number of tasks', (done) => {
service.getTotalTasks(<TaskQueryRequestRepresentationModel>fakeFilter).subscribe(
service.getTotalTasks(<TaskQueryRequestRepresentationModel> fakeFilter).subscribe(
res => {
expect(res).toBeDefined();
expect(res.size).toEqual(1);

View File

@@ -178,7 +178,7 @@ export class TaskListService {
* @param id - taskId
* @returns {<Comment[]>}
*/
getTaskComments(id: string): Observable<Comment[]> {
getComments(id: string): Observable<Comment[]> {
return Observable.fromPromise(this.callApiTaskComments(id))
.map(res => res)
.map((response: any) => {
@@ -321,7 +321,7 @@ export class TaskListService {
* @param message - content of the comment
* @returns {Comment}
*/
addTaskComment(id: string, message: string): Observable<Comment> {
addComment(id: string, message: string): Observable<Comment> {
return Observable.fromPromise(this.callApiAddTaskComment(id, message))
.map(res => res)
.map((response: Comment) => {