This commit is contained in:
tiago.kayaya
2021-07-06 15:35:51 +01:00
parent c9b191029a
commit e4d05f17b7
4 changed files with 72 additions and 102 deletions
@@ -28,12 +28,7 @@
<div class="main-content"> <div class="main-content">
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)"> <ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
<ion-refresher-content <ion-refresher-content></ion-refresher-content>
pullingIcon="chevron-down-circle-outline"
pullingText="deslize para actualizar"
refreshingSpinner="circles"
refreshingText="A actualizar...">
</ion-refresher-content>
</ion-refresher> </ion-refresher>
<div class="width-100" [ngSwitch]="segment"> <div class="width-100" [ngSwitch]="segment">
@@ -41,7 +41,6 @@ constructor(
ngOnInit() { ngOnInit() {
this.router.events.forEach((event) => { this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == this.router.url) { if(event instanceof NavigationEnd && event.url == this.router.url) {
console.log('Atualiza');
this.refreshing(); this.refreshing();
} }
}); });
@@ -172,7 +171,8 @@ constructor(
"activityInstanceName": element.activityInstanceName, "activityInstanceName": element.activityInstanceName,
} }
this.diplomasList.push(task); this.diplomasList.push(task);
this.diplomasList = removeDuplicate( this.diplomasList) this.diplomasList = removeDuplicate(this.diplomasList);
this.diplomasList = this.sortArrayISODate(this.diplomasList).reverse();
}); });
this.showLoader = false; this.showLoader = false;
@@ -202,7 +202,8 @@ constructor(
"activityInstanceName": element.activityInstanceName, "activityInstanceName": element.activityInstanceName,
} }
this.diplomasList.push(task); this.diplomasList.push(task);
this.diplomasList = removeDuplicate( this.diplomasList) this.diplomasList = removeDuplicate(this.diplomasList);
this.diplomasList = this.sortArrayISODate(this.diplomasList).reverse();
}); });
this.showLoader = false; this.showLoader = false;
@@ -210,6 +211,12 @@ constructor(
} }
} }
sortArrayISODate(myArray: any) {
return myArray.sort(function(a, b) {
return (a.CreateDate < b.CreateDate) ? -1 : ((a.CreateDate > b.CreateDate) ? 1 : 0);
});
}
async refreshing() { async refreshing() {
setTimeout(() => { setTimeout(() => {
this.LoadList(); this.LoadList();
@@ -431,8 +431,7 @@ export class GabineteDigitalPage implements OnInit {
openDiplomasPage(segment:string) { openDiplomasPage(segment:string) {
if( window.innerWidth <= 801){ if( window.innerWidth <= 801){
/* let navigationExtras: NavigationExtras = { queryParams: {"segment": segment}}; */ this.router.navigate(['/home/gabinete-digital/diplomas']);
this.router.navigate(['/home/gabinete-digital/diplomas']/* , navigationExtras */);
} }
else{ else{
this.closeAllDesktopComponents(); this.closeAllDesktopComponents();
@@ -2,10 +2,9 @@ import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angu
import { ActivatedRoute, NavigationEnd, NavigationExtras, Router } from '@angular/router'; import { ActivatedRoute, NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { DailyWorkTask, tasksList } from '../../../models/dailyworktask.model'; import { DailyWorkTask, tasksList } from '../../../models/dailyworktask.model';
import { ProcessesService } from 'src/app/services/processes.service'; import { ProcessesService } from 'src/app/services/processes.service';
import { formatDate } from '@angular/common';
import { ModalController, NavParams } from '@ionic/angular'; import { ModalController, NavParams } from '@ionic/angular';
import { AlertService } from 'src/app/services/alert.service'; import { AlertService } from 'src/app/services/alert.service';
import { DiplomaPage } from 'src/app/pages/gabinete-digital/diplomas/diploma/diploma.page'; import { removeDuplicate } from 'src/plugin/removeDuplicate.js'
@Component({ @Component({
selector: 'app-diplomas', selector: 'app-diplomas',
@@ -33,7 +32,7 @@ constructor(
ngOnInit() { ngOnInit() {
this.router.events.forEach((event) => { this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == this.router.url) { if(event instanceof NavigationEnd && event.url == this.router.url) {
this.LoadList(); this.refreshing();
} }
}); });
} }
@@ -51,44 +50,21 @@ constructor(
} }
async LoadList(){ async LoadList(){
this.diplomasList = new Array(); this.diplomasList = [];
console.log(this.diplomasList);
console.log('OOOKAY');
let diplomas = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise(); let diplomas = await this.processes.GetTasksList("Despacho do Presidente da República", false).toPromise();
console.log(diplomas);
switch (this.segment) { switch (this.segment) {
case 'validar': case 'validar':
let diplomasValidar = diplomas.reverse().filter(data => data.activityInstanceName == "Revisar Diploma"); let diplomasValidar = diplomas.filter(data => data.activityInstanceName == "Revisar Diploma");
console.log(diplomasValidar); console.log(diplomasValidar);
diplomasValidar.forEach(element => {
diplomasValidar.forEach(async element => {
let DocId = element.workflowInstanceDataFields.FolderID; let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId; let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{ this.totalDocs = await this.getTotalDocs(DocId);
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 task = {
"SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.originator.email,
"CreateDate": taskDate,
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0,
"DocId": element.workflowInstanceDataFields.DispatchDocID,
"FolderID": element.workflowInstanceDataFields.FolderID,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
},
(error)=>{
let date = new Date(element.taskStartDate); let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1); date.setMonth(date.getMonth() + 1);
let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds(); let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds();
@@ -100,28 +76,25 @@ constructor(
"CreateDate": taskDate, "CreateDate": taskDate,
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest, "DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente, "Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0, "DocumentsQty": this.totalDocs,
"DocId": element.workflowInstanceDataFields.DispatchDocID, "DocId": element.workflowInstanceDataFields.DocIdDiferimento,
"FolderID": element.workflowInstanceDataFields.FolderID,
"WorkflowName": element.workflowDisplayName, "WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName, "activityInstanceName": element.activityInstanceName,
} }
this.diplomasList.push(task); this.diplomasList.push(task);
}); this.diplomasList = removeDuplicate(this.diplomasList);
this.diplomasList = this.sortArrayISODate(this.diplomasList).reverse();
}); });
this.showLoader = false; this.showLoader = false;
break; break;
case 'assinados': case 'assinados':
console.log(this.segment);
this.diplomasList = new Array(); this.diplomasList = new Array();
let diplomasAssinados = diplomas.reverse().filter(data => data.activityInstanceName == "Diploma Assinado"); let diplomasAssinados = diplomas.reverse().filter(data => data.activityInstanceName == "Diploma Assinado");
console.log(diplomasAssinados); diplomasAssinados.forEach(async element => {
diplomasAssinados.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID; let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId; let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{ this.totalDocs = await this.getTotalDocs(DocId);
this.totalDocs = res.DocumentsTotal;
console.log(res.DocumentsTotal);
let date = new Date(element.taskStartDate); let date = new Date(element.taskStartDate);
date.setMonth(date.getMonth() + 1); date.setMonth(date.getMonth() + 1);
@@ -134,40 +107,36 @@ constructor(
"CreateDate": taskDate, "CreateDate": taskDate,
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest, "DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente, "Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0, "DocumentsQty": this.totalDocs,
"DocId": element.workflowInstanceDataFields.DispatchDocID, "DocId": element.workflowInstanceDataFields.DocIdDiferimento,
"FolderID": element.workflowInstanceDataFields.FolderID,
"WorkflowName": element.workflowDisplayName, "WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName, "activityInstanceName": element.activityInstanceName,
} }
this.diplomasList.push(task); this.diplomasList.push(task);
}, this.diplomasList = removeDuplicate(this.diplomasList);
(error)=> { this.diplomasList = this.sortArrayISODate(this.diplomasList).reverse();
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.DispatchDocID,
"FolderID": element.workflowInstanceDataFields.FolderID,
"WorkflowName": element.workflowDisplayName,
"activityInstanceName": element.activityInstanceName,
}
this.diplomasList.push(task);
});
}); });
this.showLoader = false; this.showLoader = false;
break; break;
} }
} }
async getTotalDocs(DocId:any){
let res = await this.processes.GetDocumentDetails(DocId, '361').toPromise();
console.log(res.DocumentsTotal);
return res.DocumentsTotal;
}
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() { doRefresh() {
this.LoadList(); this.LoadList();