mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-18 20:47:54 +00:00
123 lines
3.8 KiB
TypeScript
123 lines
3.8 KiB
TypeScript
import { Component, Input, OnInit } from '@angular/core';
|
|
import { NavigationEnd, NavigationStart, Router } from '@angular/router';
|
|
import { DailyWorkTask } from '../../../models/dailyworktask.model';
|
|
import { ProcessesService } from 'src/app/services/processes.service';
|
|
import { ModalController } from '@ionic/angular';
|
|
import { AlertService } from 'src/app/services/alert.service';
|
|
import { ToastService } from 'src/app/services/toast.service';
|
|
import { ExpedienteStorage } from 'src/app/store/expediente-storage-service.service';
|
|
|
|
@Component({
|
|
selector: 'app-expediente',
|
|
templateUrl: './expediente.page.html',
|
|
styleUrls: ['./expediente.page.scss'],
|
|
})
|
|
export class ExpedientePage implements OnInit {
|
|
|
|
segment:string;
|
|
skeletonLoader = true
|
|
//profile:string;
|
|
showLoader:boolean;
|
|
|
|
taskslist:DailyWorkTask[] = [];
|
|
serialNumber:string;
|
|
|
|
expedienteStorage = ExpedienteStorage
|
|
|
|
constructor(
|
|
private processes:ProcessesService,
|
|
private modalController: ModalController,
|
|
private alertService: AlertService,
|
|
private router: Router,
|
|
private toastService: ToastService
|
|
) {
|
|
}
|
|
|
|
ngOnInit() {
|
|
|
|
const location = window.location
|
|
const pathname = location.pathname + location.search
|
|
|
|
this.LoadList();
|
|
|
|
this.router.events.forEach((event) => {
|
|
if (event instanceof NavigationStart && event.url.startsWith(pathname)) {
|
|
if(window.location.pathname.split('/').length >= 4 && window.location.pathname.startsWith('/home/gabinete-digital')) {
|
|
this.refreshing()
|
|
} else {
|
|
this.LoadList()
|
|
}
|
|
}
|
|
});
|
|
|
|
}
|
|
|
|
async LoadList() {
|
|
this.skeletonLoader = true
|
|
|
|
try {
|
|
const expedientePr: object[] = await this.processes.GetTasksList("Expediente", false).toPromise()
|
|
const expedienteMD: object[] = await this.processes.GetTasksList("Expediente", false).toPromise()
|
|
|
|
const result = expedientePr.concat(expedienteMD)
|
|
|
|
console.log('result', result);
|
|
console.log('expedientePr', expedientePr)
|
|
console.log('expedienteMD', expedienteMD)
|
|
|
|
|
|
this.taskslist = new Array();
|
|
let res = result.reverse().filter((data: any) => data.workflowInstanceDataFields.Status == "Active");
|
|
|
|
res.forEach((element: any) => {
|
|
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: DailyWorkTask = {
|
|
"SerialNumber": element.serialNumber,
|
|
"Folio": element.workflowInstanceDataFields.Subject,
|
|
"Senders": element.workflowInstanceDataFields.Sender,
|
|
"CreateDate": taskDate,
|
|
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
|
|
"Remetente": element.workflowInstanceDataFields.Remetente,
|
|
"DocumentsQty": element.totalDocuments,
|
|
"WorkflowName": element.workflowDisplayName,
|
|
"activityInstanceName": element.activityInstanceName,
|
|
"Status": element.workflowInstanceDataFields.Status,
|
|
}
|
|
this.taskslist.push(task);
|
|
});
|
|
console.log(this.taskslist);
|
|
this.expedienteStorage.reset(this.taskslist);
|
|
this.skeletonLoader = false;
|
|
} catch (error) {
|
|
this.toastService.badRequest('Processo não encontrado')
|
|
this.goBack()
|
|
}
|
|
|
|
}
|
|
|
|
async refreshing() {
|
|
setTimeout(() => {
|
|
this.LoadList();
|
|
}, 1000);
|
|
}
|
|
|
|
doRefresh(event) {
|
|
this.LoadList();
|
|
setTimeout(() => {
|
|
event.target.complete();
|
|
}, 1000);
|
|
}
|
|
|
|
goBack() {
|
|
this.router.navigate(['/home/gabinete-digital']);
|
|
}
|
|
|
|
goToExpediente(serialNumber:any){
|
|
//console.log('ABRE');
|
|
this.router.navigate(['/home/gabinete-digital/expediente',serialNumber,'gabinete-digital']);
|
|
}
|
|
|
|
}
|