issue 812

This commit is contained in:
tiago.kayaya
2021-07-13 11:15:19 +01:00
parent 5e5578dd54
commit 76cbf8a527
7 changed files with 183 additions and 201 deletions
@@ -26,12 +26,12 @@
refreshingText="A actualizar...">
</ion-refresher-content>
</ion-refresher>
<div *ngIf="pendentesList" class="width-100">
<div *ngIf="pendentesList.length >= 1" class="width-100">
<div >
<ion-list>
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
<div
class="expediente ion-no-padding ion-no-margin cursor-pointer"
*ngFor = "let task of pendentesList"
(click)="viewTaskDetails(task.SerialNumber, task.WorkflowName)"
>
@@ -43,7 +43,7 @@
</div>
<div class="exp-icon">
<ion-icon src="assets/images/icons-expediente-attachment.svg"></ion-icon>
<label>{{task.DocumentsQty}}</label>
<label *ngIf="task.DocumentsQty != 0">{{task.DocumentsQty}}</label>
</div>
</div>
<div class="exp-bottom-detail">
@@ -53,7 +53,7 @@
</div>
<div class="exp-middle-detail">
<div class="exp-workflow">
<span class="label">{{task.WorkflowName}}</span>
<span class="label">{{task.activityInstanceName}}</span>
</div>
<div class="exp-date">
<ion-label>{{ task.CreateDate | date: 'dd-MM-yy' }}</ion-label>
@@ -62,10 +62,10 @@
</div>
</div>
</ion-list>
</div>
</div>
<div *ngIf="!pendentesList">
<div *ngIf="pendentesList.length < 1">
<ion-list>
<ion-item>
<ion-thumbnail slot="end">
@@ -21,24 +21,25 @@ export class PendentesPage implements OnInit {
serialNumber:string;
totalDocs:any;
showLoader: boolean;
@Input() profile:string;
segment:string;
@Output() openExpedientDetail:EventEmitter<any> = new EventEmitter<any>();
constructor(
private processes:ProcessesService,
private alertService: AlertService,
private router: Router,
private activatedRoute: ActivatedRoute,
) {
) {
this.pendentesList = new Array();
this.profile = 'mdgpr';
}
ngOnInit() {
//Inicializar segment
this.segment = "despachos";
const pathname = window.location.pathname
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == pathname) {
@@ -46,7 +47,7 @@ export class PendentesPage implements OnInit {
}
});
}
segmentChanged(ev: any) {
this.refreshing();
}
@@ -54,88 +55,65 @@ export class PendentesPage implements OnInit {
goBack() {
this.router.navigate(['/home/gabinete-digital']);
}
notImplemented(){
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
}
openExpedientDetailPage(data){
this.openExpedientDetail.emit(data);
}
async LoadList(){
this.showLoader = true;
this.pendentesList = new Array();
let pendentes = await this.processes.GetPendingTasks(false).toPromise();
let despachos = await this.processes.GetTasksList("Despacho", false).toPromise();
let pareceres = await this.processes.GetTasksList("Pedido de Parecer", false).toPromise();
let deferimentos = await this.processes.GetTasksList("Pedido de Deferimento", false).toPromise();
let expedientes = await this.processes.GetTasksList("Expediente", false).toPromise();
let expedientes_pr = await this.processes.GetTasksList("Expediente do Presidente", false).toPromise();
let pendentes = despachos.concat(pareceres, deferimentos, expedientes, expedientes_pr).reverse().filter(data => data.workflowInstanceDataFields.Status == "Pending");
console.log(pendentes);
pendentes.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{
this.totalDocs = res.DocumentsTotal;
console.log(res.DocumentsTotal);
let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1);
let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds();
let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1);
let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds();
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": taskDate,
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocIdDiferimento,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
"Status": element.workflowInstanceDataFields.Status,
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": taskDate,
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocIdDiferimento,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
"Status": element.workflowInstanceDataFields.Status,
}
this.pendentesList.push(task);
this.pendentesList = removeDuplicate( this.pendentesList)
},
(error)=>{
let task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DocId,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
"Status": element.workflowInstanceDataFields.Status,
}
this.pendentesList.push(task);
this.pendentesList = removeDuplicate( this.pendentesList)
});
this.pendentesList = this.sortArrayISODate(this.pendentesList);
});
this.showLoader = false;
}
sortArrayISODate(myArray: any){
return myArray.sort(function(a, b) {
return (a.CreateDate < b.CreateDate) ? -1 : ((a.CreateDate > b.CreateDate) ? 1 : 0);
});
}
async refreshing() {
setTimeout(() => {
this.LoadList();
}, 1500);
}
doRefresh(event) {
this.LoadList();
setTimeout(() => {
event.target.complete();
}, 2000);
}
async viewTaskDetails(serialNumber:string, workflowName:string) {
if(workflowName == 'Despacho'){
this.router.navigate(['/home/gabinete-digital/despachos',serialNumber,'gabinete-digital']);
@@ -146,9 +124,8 @@ export class PendentesPage implements OnInit {
else if(workflowName == 'Expediente'){
this.router.navigate(['/home/gabinete-digital/expediente',serialNumber,'gabinete-digital']);
}
}
}