Merge branch 'developer' of bitbucket.org:equilibriumito/gabinete-digital into developer

This commit is contained in:
Peter Maquiran
2021-06-08 15:59:31 +01:00
22 changed files with 218 additions and 179 deletions
@@ -13,7 +13,7 @@
<div class="ion-icon-class"> <div class="ion-icon-class">
<ion-icon slot="start" src="assets/images/icons-description.svg"></ion-icon> <ion-icon slot="start" src="assets/images/icons-description.svg"></ion-icon>
</div> </div>
<div class="ion-input-class"> <div class="ion-input-class flex-grow-1">
<ion-textarea class="add-border" placeholder="Descrição" [(ngModel)]="postData.DispatchFolder.Message"></ion-textarea> <ion-textarea class="add-border" placeholder="Descrição" [(ngModel)]="postData.DispatchFolder.Message"></ion-textarea>
</div> </div>
</div> </div>
@@ -46,12 +46,12 @@
} }
.ion-input-class{ .ion-input-class{
width: calc(100% - 45px); width: calc(100% - 45px);
height: 45px;
border: 1px solid #ebebeb; border: 1px solid #ebebeb;
border-radius: 5px; border-radius: 5px;
padding-left: 5px; padding-left: 5px;
padding-right: 10px; padding-right: 10px;
float: left; float: left;
flex: 1;
} }
.ion-input-class-no-height{ .ion-input-class-no-height{
border: 1px solid #ebebeb; border: 1px solid #ebebeb;
+1 -1
View File
@@ -2,7 +2,7 @@ export class DailyWorkTask{
SerialNumber: string; SerialNumber: string;
Folio: string; Folio: string;
Senders: string; Senders: string;
CreateDate: string; CreateDate: any;
DocumentURL: string; DocumentURL: string;
Remetente:string; Remetente:string;
DocumentsQty:any; DocumentsQty:any;
@@ -1,33 +1,6 @@
<ion-header class="ion-no-border"> <ion-header class="ion-no-border">
<app-header></app-header> <app-header></app-header>
</ion-header> </ion-header>
<ion-menu autoHide="false" side="end" content-id="main-content">
<ion-header>
<ion-toolbar translucent>
<ion-title>Ações</ion-title>
</ion-toolbar>
</ion-header>
<ion-content>
<ion-list>
<ion-item (click)="approveTask(loadedEvent.serialNumber)">
<ion-icon name="checkmark-sharp"></ion-icon>
<ion-label>Aprovar</ion-label>
</ion-item>
<ion-item (click)="emendTask(loadedEvent.serialNumber)">
<ion-icon name="create-outline"></ion-icon>
<ion-label>Adicionar Nota</ion-label>
</ion-item>
<ion-item (click)="rejectTask(loadedEvent.serialNumber)">
<ion-icon name="close-sharp"></ion-icon>
<ion-label>Rejeitar</ion-label>
</ion-item>
<ion-item (click)="editar(loadedEvent.serialNumber)">
<ion-icon name="close-sharp"></ion-icon>
<ion-label>Editar</ion-label>
</ion-item>
</ion-list>
</ion-content>
</ion-menu>
<ion-content id="main-content"> <ion-content id="main-content">
<div class="main-content d-flex height-100"> <div class="main-content d-flex height-100">
@@ -60,16 +60,6 @@ export class ApproveEventPage implements OnInit {
this.getTask(); this.getTask();
} }
notImplemented() {
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
}
close() {
/* this.router.navigate(['/home/gabinete-digital/event-list']); */
this.closeEventToApprove.emit();
this.modalController.dismiss();
}
goBack() { goBack() {
let navigationExtras: NavigationExtras = { let navigationExtras: NavigationExtras = {
queryParams: { queryParams: {
@@ -78,7 +68,8 @@ export class ApproveEventPage implements OnInit {
}; };
if( window.innerWidth < 801) { if( window.innerWidth < 801) {
this.router.navigate(['/home/gabinete-digital/event-list']); this.router.navigate(['/home/gabinete-digital/event-list']);
} else { }
else {
this.router.navigate(['/home/gabinete-digital'], navigationExtras); this.router.navigate(['/home/gabinete-digital'], navigationExtras);
} }
} }
@@ -86,9 +77,11 @@ export class ApproveEventPage implements OnInit {
async getTask(){ async getTask(){
this.loadedEvent = await this.processes.GetTask(this.serialNumber).toPromise(); this.loadedEvent = await this.processes.GetTask(this.serialNumber).toPromise();
console.log(this.loadedEvent); console.log(this.loadedEvent);
this.today = new Date(this.loadedEvent.workflowInstanceDataFields.StartDate); this.today = new Date(this.loadedEvent.workflowInstanceDataFields.StartDate);
console.log(new Date(this.today));
this.customDate = this.days[this.today.getDay()]+ ", " + this.today.getDate() +" de " + ( this.months[this.today.getMonth()]); this.customDate = this.days[this.today.getDay()]+ ", " + this.today.getDate() +" de " + ( this.months[this.today.getMonth()]);
let instanceId = this.loadedEvent.workflowInstanceDataFields.InstanceId; let instanceId = this.loadedEvent.workflowInstanceDataFields.InstanceId;
this.getAttachments(instanceId); this.getAttachments(instanceId);
} }
@@ -118,8 +111,6 @@ export class ApproveEventPage implements OnInit {
} }
emendTask(serialNumber:string){ emendTask(serialNumber:string){
/* console.log('Emendar'); */
this.menu.close();
this.openEmendMessageModal(serialNumber); this.openEmendMessageModal(serialNumber);
this.goBack(); this.goBack();
} }
@@ -130,9 +121,9 @@ export class ApproveEventPage implements OnInit {
console.log(body); console.log(body);
try { try {
this.processes.PostTaskAction(body).toPromise() this.processes.PostTaskAction(body).toPromise();
await this.successMessage();
this.goBack(); this.goBack();
await this.successMessage()
} catch (error) { } catch (error) {
this.badRequest() this.badRequest()
} }
@@ -191,18 +182,15 @@ export class ApproveEventPage implements OnInit {
"ReviewerUseComment": res.data, "ReviewerUseComment": res.data,
} }
} }
console.log(body); console.log(body);
try {
await this.processes.PostTaskAction(body).toPromise()
//this.router.navigate(['/home/gabinete-digital/event-list']);
this.goToEventsToApprove();
this.successMessage()
} catch (error) {
this.badRequest()
}
try {
await this.processes.PostTaskAction(body).toPromise();
this.successMessage();
this.goBack();
} catch (error) {
this.badRequest();
}
} }
else{ else{
//this.alertService.presentAlert('Operação cancelada!'); //this.alertService.presentAlert('Operação cancelada!');
@@ -210,14 +198,14 @@ export class ApproveEventPage implements OnInit {
}); });
} }
goToEventsToApprove(){ /* goToEventsToApprove(){
let navigationExtras: NavigationExtras = { let navigationExtras: NavigationExtras = {
queryParams: { queryParams: {
"events": true, "eventos": true,
} }
}; };
this.router.navigate(['/home/gabinete-digital'], navigationExtras); this.router.navigate(['/home/gabinete-digital'], navigationExtras);
} } */
async editar(serialNumber: string) { async editar(serialNumber: string) {
@@ -16,7 +16,7 @@
<div class="ion-icon-class"> <div class="ion-icon-class">
<ion-icon slot="start" src="assets/images/icons-description.svg"></ion-icon> <ion-icon slot="start" src="assets/images/icons-description.svg"></ion-icon>
</div> </div>
<div class="ion-input-class"> <div class="ion-input-class flex-grow-1">
<ion-textarea class="add-border" placeholder="Descrição" [(ngModel)]="postData.DispatchFolder.Message"></ion-textarea> <ion-textarea class="add-border" placeholder="Descrição" [(ngModel)]="postData.DispatchFolder.Message"></ion-textarea>
</div> </div>
</div> </div>
@@ -46,13 +46,13 @@
} }
.ion-input-class{ .ion-input-class{
width: calc(100% - 45px); width: calc(100% - 45px);
height: 51px;
border: 1px solid #ebebeb; border: 1px solid #ebebeb;
border-radius: 5px; border-radius: 5px;
padding-left: 5px; padding-left: 5px;
padding-right: 10px; padding-right: 10px;
float: left; float: left;
overflow: hidden; overflow: hidden;
flex: 1;
} }
.ion-input-class-no-height{ .ion-input-class-no-height{
border: 1px solid #ebebeb; border: 1px solid #ebebeb;
@@ -87,7 +87,11 @@ export class ExpedienteDetailPage implements OnInit {
this.toastService.presentToast('Não foi possível fazer login"'); this.toastService.presentToast('Não foi possível fazer login"');
} }
goBack(){ goBack() {
window.history.back()
}
/* goBack(){
let navigationExtras: NavigationExtras = { let navigationExtras: NavigationExtras = {
queryParams: { queryParams: {
"expedientes": true, "expedientes": true,
@@ -98,7 +102,7 @@ export class ExpedienteDetailPage implements OnInit {
} else { } else {
this.router.navigate(['/home/gabinete-digital'], navigationExtras); this.router.navigate(['/home/gabinete-digital'], navigationExtras);
} }
} } */
sendExpedienteToPending(){ sendExpedienteToPending(){
this.processes.SetTaskToPending(this.serialnumber).subscribe(res=>{ this.processes.SetTaskToPending(this.serialnumber).subscribe(res=>{
@@ -242,7 +246,8 @@ export class ExpedienteDetailPage implements OnInit {
try { try {
await this.processes.CompleteTask(otherbody).toPromise() await this.processes.CompleteTask(otherbody).toPromise()
this.successMessage() this.successMessage();
this.goBack();
} catch (error) { } catch (error) {
this.badRequest() this.badRequest()
} }
@@ -255,8 +260,9 @@ export class ExpedienteDetailPage implements OnInit {
else{ else{
if(res['data']== 'Yes'){ if(res['data']== 'Yes'){
try { try {
//await this.processes.CompleteTask(body).toPromise() await this.processes.CompleteTask(body).toPromise();
this.successMessage() this.successMessage();
this.goBack();
} catch (error) { } catch (error) {
this.badRequest() this.badRequest()
} }
@@ -270,7 +276,8 @@ export class ExpedienteDetailPage implements OnInit {
try { try {
await this.processes.UpdateTaskStatus(this.task.FolderId); await this.processes.UpdateTaskStatus(this.task.FolderId);
this.successMessage() this.successMessage();
this.goBack();
} catch (error) { } catch (error) {
this.badRequest() this.badRequest()
} }
@@ -77,7 +77,7 @@
</div> </div>
<p class="exp-card-title " *ngIf="loggeduser.Profile == 'MDGPR'">Expediente Presidente</p> <p class="exp-card-title " *ngIf="loggeduser.Profile == 'MDGPR'">Expediente Presidente</p>
<p class="exp-card-title " *ngIf="loggeduser.Profile == 'PR'">Expediente</p> <p class="exp-card-title " *ngIf="loggeduser.Profile == 'PR'">Expediente</p>
<p class="text-center exp-card-content"><span class="number">{{count_exp_pr}}</span> <span class="title1">Documentos</span></p> <p class="text-center exp-card-content"><span class="number">{{count_exp_pr}} </span> <span class="title1">Documentos</span></p>
</div> </div>
<div *ngIf="loggeduser.Profile == 'PR'" (click)="openDespachosPrPage(); selectedElement='DispatchesPr'" [class.active]="selectedElement == 'DispatchesPr'" class="exp-card d-md-flex flex-column justify-center" > <div *ngIf="loggeduser.Profile == 'PR'" (click)="openDespachosPrPage(); selectedElement='DispatchesPr'" [class.active]="selectedElement == 'DispatchesPr'" class="exp-card d-md-flex flex-column justify-center" >
@@ -97,7 +97,7 @@
<div class="exp-card-text"> <div class="exp-card-text">
<p class="exp-card-title " *ngIf="loggeduser.Profile == mdgpr">Expediente Presidente</p> <p class="exp-card-title " *ngIf="loggeduser.Profile == mdgpr">Expediente Presidente</p>
<p class="exp-card-title " *ngIf="loggeduser.Profile == pr">Expediente</p> <p class="exp-card-title " *ngIf="loggeduser.Profile == pr">Expediente</p>
<p class="exp-card-content"><span class="number">{{count_exp_pr}}</span> <span class="title1">Documentos</span> </p> <p class="exp-card-content"><span class="number">{{count_exp_pr}} </span> <span class="title1">Documentos</span> </p>
</div> </div>
</div> </div>
</div> </div>
@@ -139,7 +139,7 @@
<p class="text-center exp-card-title">Diplomas para Assinar</p> <p class="text-center exp-card-title">Diplomas para Assinar</p>
<p class="text-center exp-card-content">{{count_dip_as}} <span class="title1">Documentos</span></p> <p class="text-center exp-card-content">{{count_dip_as}} <span class="title1">Documentos</span></p>
</div> </div>
</div> </div>
</div> </div>
@@ -1,4 +1,4 @@
import { Component, OnInit } from '@angular/core'; import { AfterViewInit, Component, OnInit, ViewChild } from '@angular/core';
import { ProcessesService } from 'src/app/services/processes.service'; import { ProcessesService } from 'src/app/services/processes.service';
import { AlertService } from 'src/app/services/alert.service'; import { AlertService } from 'src/app/services/alert.service';
import { ModalController } from '@ionic/angular'; import { ModalController } from '@ionic/angular';
@@ -7,11 +7,14 @@ import { ExpedientePage } from './expediente/expediente.page';
import { ActivatedRoute, NavigationEnd, NavigationExtras, Router } from '@angular/router'; import { ActivatedRoute, NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { DespachosPage } from './despachos/despachos.page'; import { DespachosPage } from './despachos/despachos.page';
import { PedidosPage } from './pedidos/pedidos.page'; import { PedidosPage } from './pedidos/pedidos.page';
import { PendentesPage } from './pendentes/pendentes.page'; /* import { PendentesPage } from './pendentes/pendentes.page'; */
import { AuthService } from 'src/app/services/auth.service'; import { AuthService } from 'src/app/services/auth.service';
import { User } from 'src/app/models/user.model'; import { User } from 'src/app/models/user.model';
import { DespachosPrPage } from 'src/app/pages/gabinete-digital/despachos-pr/despachos-pr.page' import { DespachosPrPage } from 'src/app/pages/gabinete-digital/despachos-pr/despachos-pr.page'
import { DiplomasPage } from 'src/app/shared/gabinete-digital/diplomas/diplomas.page'; import { DiplomasPage } from 'src/app/shared/gabinete-digital/diplomas/diplomas.page';
import { ExpedientsPage } from 'src/app/shared/gabinete-digital/expedients/expedients.page';
import { PendentesPage } from 'src/app/shared/gabinete-digital/pendentes/pendentes.page';
import { EventsToApprovePage } from 'src/app/shared/gabinete-digital/events-to-approve/events-to-approve.page';
@Component({ @Component({
selector: 'app-gabinete-digital', selector: 'app-gabinete-digital',
templateUrl: './gabinete-digital.page.html', templateUrl: './gabinete-digital.page.html',
@@ -69,7 +72,11 @@ export class GabineteDigitalPage implements OnInit {
loggeduser: User; loggeduser: User;
mdgpr = "MDGPR"; mdgpr = "MDGPR";
pr = "PR" pr = "PR";
@ViewChild(ExpedientsPage) expedientesPage: ExpedientsPage;
@ViewChild(PendentesPage) pendentesListPage: PendentesPage;
@ViewChild(EventsToApprovePage) eventsToApprove: EventsToApprovePage;
constructor( constructor(
private processesbackend:ProcessesService, private processesbackend:ProcessesService,
@@ -88,61 +95,7 @@ export class GabineteDigitalPage implements OnInit {
this.modalController.dismiss(); this.modalController.dismiss();
} }
}; };
this.checkRoutes();
this.activatedRoute.queryParams.subscribe(params => {
switch (params)
{
case params["eventos"]:
this.openEventsToApprovePage("MDGPR");
this.selectedElement='approval'
break;
case params["expedientes"]:
this.openExpedientListPage();
this.selectedElement='Correspondence';
break;
case params["pendentes"]:
this.openPendentesPage('');
this.selectedElement='Pending'
break;
case params["despachos"]:
this.openDespachosPage('');
this.selectedElement='Dispatches';
break;
case params["pedidos"]:
this.openPedidosPage('parecer');
this.selectedElement='RequestsForOpinion';
break;
case params["expedientespr"]:
this.openEventsToApprovePage("MDGPR");
this.selectedElement='Expediente Presidente'
break;
case params["despachospr"]:
this.openDespachosPrPage('');
this.selectedElement='DispatchesPr'
break;
case params["diplomas"]:
this.openDiplomasPage('');
this.selectedElement='DiplomasPorAssinar'
break;
case params["diplomasassinar"]:
this.openDiplomasPage('');
this.selectedElement='DiplomasAssinar'
break;
}
});
/* if (window.innerWidth >= 800 && this.loggeduser.Profile == 'MDGPR') {
this.openEventsToApprovePage('MDGPR');
this.selectedElement='approval'
} */
} }
@@ -151,7 +104,9 @@ export class GabineteDigitalPage implements OnInit {
showEventList: false, showEventList: false,
showExpediente: false showExpediente: false
} }
} }
ngOnInit() { ngOnInit() {
switch(this.loggeduser.Profile){ switch(this.loggeduser.Profile){
@@ -164,9 +119,70 @@ export class GabineteDigitalPage implements OnInit {
} }
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.checkRoutes();
this.LoadCounts(); this.LoadCounts();
} }
}); });
}
checkRoutes(){
this.activatedRoute.queryParams.subscribe(params => {
switch (params)
{
case params["eventos"]:
this.openEventsToApprovePage("MDGPR");
this.selectedElement='approval';
break;
case params["expedientes"]:
this.openExpedientListPage();
this.selectedElement='Correspondence';
this.expedientesPage.doRefresh();
break;
case params["pendentes"]:
this.openPendentesPage('');
this.selectedElement='Pending';
break;
case params["despachos"]:
this.openDespachosPage('');
this.selectedElement='Dispatches';
break;
case params["pedidos"]:
this.openPedidosPage('parecer');
this.selectedElement='RequestsForOpinion';
break;
case params["expedientespr"]:
this.openEventsToApprovePage("MDGPR");
this.selectedElement='Expediente Presidente'
break;
case params["despachospr"]:
this.openDespachosPrPage('');
this.selectedElement='DispatchesPr'
break;
case params["diplomas"]:
this.openDiplomasPage('');
this.selectedElement='DiplomasPorAssinar'
break;
case params["diplomasassinar"]:
this.openDiplomasPage('');
this.selectedElement='DiplomasAssinar'
break;
}
});
}
refreshExpedientes(){
this.expedientesPage.doRefresh();
//this.pendentesListPage.doRefresh();
//this.eventsToApprove.doRefresh();
} }
closeAllDesktopComponents() { closeAllDesktopComponents() {
@@ -250,6 +266,7 @@ export class GabineteDigitalPage implements OnInit {
case 'MDGPR': case 'MDGPR':
this.selectedElement='Correspondence'; this.selectedElement='Correspondence';
this.showExpedients = true; this.showExpedients = true;
this.expedientesPage.doRefresh();
break; break;
case 'PR': case 'PR':
this.selectedElement='ExpedientesPr'; this.selectedElement='ExpedientesPr';
@@ -257,9 +274,9 @@ export class GabineteDigitalPage implements OnInit {
break; break;
} }
this.LoadCounts(); this.LoadCounts();
//this.refreshExpedientes();
setTimeout(() => { setTimeout(() => {
//event.target.complete();
}, 2000); }, 2000);
} }
@@ -519,7 +536,7 @@ export class GabineteDigitalPage implements OnInit {
//} //}
} }
async openPendenteList(){ /* async openPendenteList(){
this.closeAllDesktopComponent(); this.closeAllDesktopComponent();
const modal = await this.modalController.create({ const modal = await this.modalController.create({
component: PendentesPage, component: PendentesPage,
@@ -531,7 +548,7 @@ export class GabineteDigitalPage implements OnInit {
await modal.present(); await modal.present();
modal.onDidDismiss(); modal.onDidDismiss();
console.log('show desktop modal') console.log('show desktop modal')
} } */
async openDespachoList(){ async openDespachoList(){
this.closeAllDesktopComponent(); this.closeAllDesktopComponent();
@@ -47,7 +47,7 @@
<ion-icon src="assets/images/icons-arrow-arrow-left.svg"></ion-icon> <ion-icon src="assets/images/icons-arrow-arrow-left.svg"></ion-icon>
</div> </div>
<div class="header-title flex-grow-1 cursor-pointer"> <div class="header-title flex-grow-1 cursor-pointer">
<label>{{loadedEvent.workflowInstanceDataFields.Subject}}</label> <label>{{loadedEvent.workflowInstanceDataFields.Subject}} 11 </label>
</div> </div>
<div (click)="editar(loadedEvent.serialNumber)" class="header-icon-right display-none-{{showAside}}"> <div (click)="editar(loadedEvent.serialNumber)" class="header-icon-right display-none-{{showAside}}">
<ion-icon src="assets/images/icons-edit.svg"></ion-icon> <ion-icon src="assets/images/icons-edit.svg"></ion-icon>
@@ -16,7 +16,7 @@ import { AuthService } from 'src/app/services/auth.service';
import { DespachoPage } from 'src/app/pages/gabinete-digital/despachos/despacho/despacho.page'; import { DespachoPage } from 'src/app/pages/gabinete-digital/despachos/despacho/despacho.page';
import { DespachoPrPage } from 'src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page'; import { DespachoPrPage } from 'src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page';
import { User } from 'src/app/models/user.model'; import { User } from 'src/app/models/user.model';
import { NavigationExtras, Router } from '@angular/router'; import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
@Component({ @Component({
selector: 'app-despachos-pr', selector: 'app-despachos-pr',
@@ -65,9 +65,11 @@ ngOnInit() {
//Inicializar segment //Inicializar segment
this.segment = "despachos"; this.segment = "despachos";
this.LoadList(); this.LoadList();
this.authService.userData$.subscribe((res:any)=>{ this.router.events.forEach((event) => {
console.log(res); if(event instanceof NavigationEnd && event.url == this.router.url) {
}); this.doRefresh();
}
});
} }
segmentChanged(ev: any) { segmentChanged(ev: any) {
this.LoadList(); this.LoadList();
@@ -14,7 +14,7 @@ import { DiscartExpedientModalPage } from 'src/app/pages/gabinete-digital/discar
import { AuthService } from 'src/app/services/auth.service'; import { AuthService } from 'src/app/services/auth.service';
import { DespachoPage } from 'src/app/pages/gabinete-digital/despachos/despacho/despacho.page'; import { DespachoPage } from 'src/app/pages/gabinete-digital/despachos/despacho/despacho.page';
import { ActivatedRoute, NavigationExtras, Router } from '@angular/router'; import { ActivatedRoute, NavigationEnd, NavigationExtras, Router } from '@angular/router';
@Component({ @Component({
selector: 'app-despachos', selector: 'app-despachos',
@@ -65,6 +65,11 @@ export class DespachosPage implements OnInit {
//Inicializar segment //Inicializar segment
this.segment = "despachos"; this.segment = "despachos";
this.LoadList(); this.LoadList();
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == this.router.url) {
this.doRefresh();
}
});
} }
@@ -1,5 +1,5 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { NavigationExtras, Router } from '@angular/router'; import { 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 { formatDate } from '@angular/common';
@@ -32,6 +32,11 @@ serialNumber:string;
ngOnInit() { ngOnInit() {
this.LoadList(); this.LoadList();
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == this.router.url) {
this.doRefresh();
}
});
} }
goToDiploma(serialNumber:any){ goToDiploma(serialNumber:any){
@@ -1,5 +1,5 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { ActivatedRoute, 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 { formatDate } from '@angular/common';
@@ -32,6 +32,11 @@ constructor(
ngOnInit() { ngOnInit() {
this.LoadList(); this.LoadList();
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == this.router.url) {
this.doRefresh();
}
});
} }
segmentChanged(ev: any) { segmentChanged(ev: any) {
@@ -7,7 +7,7 @@
</button> </button>
</div> </div>
<ion-toolbar> <ion-toolbar>
<ion-segment [(ngModel)]="profile"> <ion-segment [(ngModel)]="segment">
<ion-segment-button value="MDGPR"> <ion-segment-button value="MDGPR">
Seu calendário Seu calendário
</ion-segment-button> </ion-segment-button>
@@ -22,7 +22,7 @@
<ion-refresher-content> <ion-refresher-content>
</ion-refresher-content> </ion-refresher-content>
</ion-refresher> </ion-refresher>
<div class="main-content" [ngSwitch]="profile" *ngIf="eventsMDGPRList"> <div class="main-content" [ngSwitch]="segment" *ngIf="eventsMDGPRList">
<!-- <div class="header-content width-100"> --> <!-- <div class="header-content width-100"> -->
<!-- </div> --> <!-- </div> -->
@@ -51,7 +51,8 @@
<ion-item <ion-item
class=" ion-no-padding width-100 cursor-pointer" class=" ion-no-padding width-100 cursor-pointer"
*ngFor="let event of eventsPRList" *ngFor="let event of eventsPRList"
(click)="openApproveModal(event)"> (click)="goToEventDetail(event)"
>
<div class="item event-pr-{{event.workflowInstanceDataFields.Agenda}} width-100"> <div class="item event-pr-{{event.workflowInstanceDataFields.Agenda}} width-100">
<div class="approve-event-time"> <div class="approve-event-time">
<p>{{event.workflowInstanceDataFields.StartDate | date: 'hh:mm'}}</p> <p>{{event.workflowInstanceDataFields.StartDate | date: 'hh:mm'}}</p>
@@ -1,11 +1,11 @@
import { Component, Input, OnInit } from '@angular/core'; import { Component, Input, OnInit } from '@angular/core';
import { EventBody } from 'src/app/models/eventbody.model'; import { EventBody } from 'src/app/models/eventbody.model';
import { EventPerson } from 'src/app/models/eventperson.model'; import { EventPerson } from 'src/app/models/eventperson.model';
import { Event } from 'src/app/models/event.model';
import { ProcessesService } from 'src/app/services/processes.service'; import { ProcessesService } from 'src/app/services/processes.service';
import { ModalController, NavParams } from '@ionic/angular'; import { ModalController } from '@ionic/angular';
import { NavigationEnd, NavigationExtras, Router } from '@angular/router'; import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { ApproveEventPage } from '../../agenda/approve-event/approve-event.page'; import { User } from 'src/app/models/user.model';
import { AuthService } from 'src/app/services/auth.service';
@Component({ @Component({
selector: 'app-events-to-approve', selector: 'app-events-to-approve',
@@ -14,7 +14,6 @@ import { ApproveEventPage } from '../../agenda/approve-event/approve-event.page'
}) })
export class EventsToApprovePage implements OnInit { export class EventsToApprovePage implements OnInit {
//segment:string;
showLoader: boolean; showLoader: boolean;
eventsPRList: any; eventsPRList: any;
eventsMDGPRList: any; eventsMDGPRList: any;
@@ -22,25 +21,25 @@ export class EventsToApprovePage implements OnInit {
eventBody: EventBody; eventBody: EventBody;
categories: string[]; categories: string[];
serialnumber:string; serialnumber:string;
loggeduser: User;
@Input() profile:string; segment:string;
constructor( constructor(
private processes:ProcessesService, private processes:ProcessesService,
private modalController: ModalController, private modalController: ModalController,
private router: Router, private router: Router,
//private navParams: NavParams, private userAuth: AuthService,
) { } )
{
this.loggeduser = userAuth.ValidatedUser;
}
ngOnInit() { ngOnInit() {
//this.segment = this.navParams.get('segment'); this.segment = this.loggeduser.Profile;
/* console.log(this.navParams.get('md')); */
console.log(this.profile);
this.LoadToApproveEvents(); this.LoadToApproveEvents();
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.LoadToApproveEvents(); this.doRefresh();
} }
}); });
@@ -87,7 +86,7 @@ export class EventsToApprovePage implements OnInit {
this.router.navigate(['/home/gabinete-digital/event-list/approve-event'], navigationExtras) this.router.navigate(['/home/gabinete-digital/event-list/approve-event'], navigationExtras)
} }
async openApproveModal(eventToAprove) { /* async openApproveModal(eventToAprove) {
let classs; let classs;
if( window.innerWidth <= 800){ if( window.innerWidth <= 800){
classs = 'modal modal-desktop' classs = 'modal modal-desktop'
@@ -118,13 +117,19 @@ export class EventsToApprovePage implements OnInit {
this.LoadToApproveEvents(); this.LoadToApproveEvents();
}); });
} */
lis(){
console.log('Teste');
} }
doRefresh(event) { doRefresh() {
console.log('Refresh Events');
this.LoadToApproveEvents(); this.LoadToApproveEvents();
console.log('refresh'); console.log('refresh');
setTimeout(() => { setTimeout(() => {
event.target.complete();
}, 2000); }, 2000);
} }
close(){ close(){
@@ -1,5 +1,5 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { NavigationExtras, Router } from '@angular/router'; import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { CalendarComponent } from 'ionic2-calendar'; import { CalendarComponent } from 'ionic2-calendar';
import { DailyWorkTask } from '../../../models/dailyworktask.model'; import { DailyWorkTask } from '../../../models/dailyworktask.model';
@@ -39,6 +39,11 @@ export class ExpedientesPrPage implements OnInit {
ngOnInit() { ngOnInit() {
this.LoadList(); this.LoadList();
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == this.router.url) {
this.doRefresh();
}
});
} }
notImplemented(){ notImplemented(){
@@ -1,5 +1,5 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { NavigationExtras, Router } from '@angular/router'; import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { CalendarComponent } from 'ionic2-calendar'; import { CalendarComponent } from 'ionic2-calendar';
import { DailyWorkTask } from '../../../models/dailyworktask.model'; import { DailyWorkTask } from '../../../models/dailyworktask.model';
@@ -40,6 +40,11 @@ export class ExpedientsPage implements OnInit {
//Inicializar segment //Inicializar segment
this.segment = "expedientes"; this.segment = "expedientes";
this.LoadList(); this.LoadList();
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == this.router.url) {
this.doRefresh();
}
});
} }
segmentChanged(){ segmentChanged(){
@@ -83,11 +88,12 @@ export class ExpedientsPage implements OnInit {
}); });
} }
doRefresh(event) { doRefresh() {
console.log('refresh expedientes1');
this.LoadList(); this.LoadList();
setTimeout(() => { setTimeout(() => {
event.target.complete();
}, 2000); }, 2000);
} }
@@ -2,7 +2,7 @@
<div class="title"> <div class="title">
<div class="thetitle"><ion-label >Pedidos</ion-label></div> <div class="thetitle"><ion-label >Pedidos</ion-label></div>
<div class="theicon"> <div class="theicon">
<button class="btn-no-color" (click)="doRefresh($event)"> <button class="btn-no-color" (click)="doRefresh()">
<ion-icon slot="end" class="title-icon" name="reload-circle"></ion-icon> <ion-icon slot="end" class="title-icon" name="reload-circle"></ion-icon>
</button> </button>
</div> </div>
@@ -19,7 +19,7 @@
</ion-toolbar> </ion-toolbar>
</ion-header> </ion-header>
<ion-content> <ion-content>
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)"> <ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh()">
<ion-refresher-content <ion-refresher-content
pullingIcon="chevron-down-circle-outline" pullingIcon="chevron-down-circle-outline"
pullingText="deslize para actualizar" pullingText="deslize para actualizar"
@@ -1,5 +1,5 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { NavigationExtras, Router } from '@angular/router'; import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { CalendarComponent } from 'ionic2-calendar'; import { CalendarComponent } from 'ionic2-calendar';
import { DailyWorkTask, tasksList } from '../../../models/dailyworktask.model'; import { DailyWorkTask, tasksList } from '../../../models/dailyworktask.model';
@@ -49,6 +49,11 @@ export class PedidosPage implements OnInit {
ngOnInit() { ngOnInit() {
this.LoadList(); this.LoadList();
this.router.events.forEach((event) => {
if(event instanceof NavigationEnd && event.url == this.router.url) {
this.doRefresh();
}
});
} }
segmentChanged(ev: any) { segmentChanged(ev: any) {
@@ -134,10 +139,9 @@ export class PedidosPage implements OnInit {
console.log(this.taskType); console.log(this.taskType);
} }
doRefresh(event) { doRefresh() {
this.LoadList(); this.LoadList();
setTimeout(() => { setTimeout(() => {
event.target.complete();
}, 2000); }, 2000);
} }
@@ -1,5 +1,5 @@
import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';
import { NavigationExtras, Router } from '@angular/router'; import { NavigationEnd, NavigationExtras, Router } from '@angular/router';
import { CalendarComponent } from 'ionic2-calendar'; import { CalendarComponent } from 'ionic2-calendar';
import { DailyWorkTask } from '../../../models/dailyworktask.model'; import { DailyWorkTask } from '../../../models/dailyworktask.model';
@@ -45,10 +45,14 @@ export class PendentesPage implements OnInit {
//Inicializar segment //Inicializar segment
this.segment = "despachos"; this.segment = "despachos";
this.LoadList(); this.LoadList();
this.authService.userData$.subscribe((res:any)=>{
console.log(res); this.router.events.forEach((event) => {
}); if(event instanceof NavigationEnd && event.url == this.router.url) {
this.doRefresh();
}
});
} }
segmentChanged(ev: any) { segmentChanged(ev: any) {
this.LoadList(); this.LoadList();
} }
@@ -64,7 +68,9 @@ export class PendentesPage implements OnInit {
async LoadList(){ async LoadList(){
this.showLoader = true; this.showLoader = true;
this.pendentesList = new Array(); this.pendentesList = [];
console.log('clear');
let despachos = await this.processes.GetTasksList("Despacho", false).toPromise(); let despachos = await this.processes.GetTasksList("Despacho", false).toPromise();
let pareceres = await this.processes.GetTasksList("Pedido de Parecer", false).toPromise(); let pareceres = await this.processes.GetTasksList("Pedido de Parecer", false).toPromise();
@@ -72,7 +78,8 @@ export class PendentesPage implements OnInit {
let expedientes = await this.processes.GetTasksList("Expediente", false).toPromise(); let expedientes = await this.processes.GetTasksList("Expediente", false).toPromise();
let expedientes_pr = await this.processes.GetTasksList("Expediente do Presidente", 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"); let pendentes = despachos.concat(pareceres, deferimentos, expedientes, expedientes_pr).filter(data => data.workflowInstanceDataFields.Status == "Pending");
pendentes.forEach(element => { pendentes.forEach(element => {
let DocId = element.workflowInstanceDataFields.FolderID; let DocId = element.workflowInstanceDataFields.FolderID;
let ApplicationId = element.workflowInstanceDataFields.ApplicationId; let ApplicationId = element.workflowInstanceDataFields.ApplicationId;
@@ -87,7 +94,7 @@ export class PendentesPage implements OnInit {
"SerialNumber": element.serialNumber, "SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject, "Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender, "Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": taskDate, "CreateDate": new Date(element.taskStartDate),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest, "DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Sender, "Remetente": element.workflowInstanceDataFields.Sender,
"DocumentsQty": 0, "DocumentsQty": 0,
@@ -102,7 +109,7 @@ export class PendentesPage implements OnInit {
"SerialNumber": element.serialNumber, "SerialNumber": element.serialNumber,
"Folio": element.workflowInstanceDataFields.Subject, "Folio": element.workflowInstanceDataFields.Subject,
"Senders": element.workflowInstanceDataFields.Sender, "Senders": element.workflowInstanceDataFields.Sender,
"CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'), "CreateDate": new Date(element.taskStartDate),
"DocumentURL": element.workflowInstanceDataFields.ViewerRequest, "DocumentURL": element.workflowInstanceDataFields.ViewerRequest,
"Remetente": element.workflowInstanceDataFields.Remetente, "Remetente": element.workflowInstanceDataFields.Remetente,
"DocumentsQty": 0, "DocumentsQty": 0,
@@ -113,14 +120,23 @@ export class PendentesPage implements OnInit {
this.pendentesList.push(task); this.pendentesList.push(task);
}); });
}); });
this.pendentesList = this.sortArrayISODate(this.pendentesList).reverse();
this.showLoader = false; this.showLoader = false;
} }
sortArrayISODate(myArray: any){
return myArray.sort(function(a, b) {
return (a.CreateDate < b.CreateDate) ? -1 : ((a.CreateDate > b.CreateDate) ? 1 : 0);
});
}
doRefresh(event) { doRefresh() {
console.log('Refresh pendentes');
this.LoadList(); this.LoadList();
setTimeout(() => { setTimeout(() => {
//event.target.complete();
}, 2000); }, 2000);
} }