Disable the attachment component when the task/process is completed (#2351)

This commit is contained in:
Maurizio Vitale
2017-09-19 13:36:05 +01:00
committed by Eugenio Romano
parent d7bd9aa50b
commit 7a31a16178
6 changed files with 61 additions and 6 deletions

View File

@@ -6,13 +6,14 @@
[showNotificationBar]="false">
<adf-process-attachment-list #processAttachList
*ngIf="processId"
[disabled]="isCompletedProcess()"
[processInstanceId]="processId"
(attachmentClick)="onAttachmentClick($event)">
</adf-process-attachment-list>
</adf-upload-drag-area>
<adf-create-process-attachment
*ngIf="isRunning()"
*ngIf="!isCompletedProcess()"
[processInstanceId]="processId"
(success)="onFileUploadComplete($event)">
</adf-create-process-attachment>

View File

@@ -67,8 +67,8 @@ export class ActivitiProcessAttachmentsComponent implements OnInit, OnChanges {
this.contentName = content.name;
}
isRunning(): boolean {
return this.processInstance && !this.processInstance.ended;
isCompletedProcess(): boolean {
return this.processInstance && this.processInstance.ended !== undefined && this.processInstance.ended !== null;
}
}

View File

@@ -7,11 +7,13 @@
<adf-task-attachment-list #taskAttachList
*ngIf="taskId"
[taskId]="taskId"
[disabled]="isCompletedTask()"
(attachmentClick)="onAttachmentClick($event)">
</adf-task-attachment-list>
</adf-upload-drag-area>
<adf-create-task-attachment
*ngIf="!isCompletedTask()"
[taskId]="taskId"
(success)="onFileUploadComplete($event)">
</adf-create-task-attachment>

View File

@@ -15,8 +15,9 @@
* limitations under the License.
*/
import { Component, Input, OnInit, ViewChild } from '@angular/core';
import { Component, Input, OnChanges, OnInit, ViewChild } from '@angular/core';
import { ProcessUploadService, TaskAttachmentListComponent } from 'ng2-activiti-tasklist';
import { ActivitiTaskListService } from 'ng2-activiti-tasklist';
import { UploadService } from 'ng2-alfresco-core';
@Component({
@@ -28,7 +29,7 @@ import { UploadService } from 'ng2-alfresco-core';
]
})
export class ActivitiTaskAttachmentsComponent implements OnInit {
export class ActivitiTaskAttachmentsComponent implements OnInit, OnChanges {
@Input()
taskId: string;
@@ -40,7 +41,10 @@ export class ActivitiTaskAttachmentsComponent implements OnInit {
content: Blob;
contentName: string;
constructor(private uploadService: UploadService) {
taskDetails: any;
constructor(private uploadService: UploadService,
private activitiTaskList: ActivitiTaskListService) {
}
@@ -48,6 +52,15 @@ export class ActivitiTaskAttachmentsComponent implements OnInit {
this.uploadService.fileUploadComplete.subscribe(value => this.onFileUploadComplete(value.data));
}
ngOnChanges() {
if (this.taskId) {
this.activitiTaskList.getTaskDetails(this.taskId).map((res) => res).subscribe(
(res: any) => {
this.taskDetails = res;
});
}
}
onFileUploadComplete(content: any) {
this.taskAttachList.add(content);
}
@@ -58,4 +71,7 @@ export class ActivitiTaskAttachmentsComponent implements OnInit {
this.contentName = content.name;
}
isCompletedTask(): boolean {
return this.taskDetails && this.taskDetails.endDate !== undefined && this.taskDetails.endDate !== null;
}
}