diff --git a/src/app/home/home-routing.module.ts b/src/app/home/home-routing.module.ts index e2efc927d..6a3858af9 100644 --- a/src/app/home/home-routing.module.ts +++ b/src/app/home/home-routing.module.ts @@ -37,6 +37,15 @@ const routes: Routes = [ }, ] }, + { + path:'expedientes-pr', + children: [ + { + path:':SerialNumber/:caller', + loadChildren: ()=> import('../pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.module').then(m => m.ExpedientePrPageModule), + }, + ] + }, ] }, { @@ -160,6 +169,19 @@ const routes: Routes = [ }, ] }, + { + path: 'expedientes-pr', + children: [ + { + path: '', + loadChildren: ()=> import('../pages/gabinete-digital/expedientes-pr/expedientes-pr.module').then(m => m.ExpedientesPrPageModule), + }, + { + path:':SerialNumber/:caller', + loadChildren: ()=> import('../pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.module').then(m => m.ExpedientePrPageModule), + }, + ] + }, { path: 'despachos', children: [ diff --git a/src/app/pages/events/events.page.ts b/src/app/pages/events/events.page.ts index 9f2d50d46..39e6ba261 100644 --- a/src/app/pages/events/events.page.ts +++ b/src/app/pages/events/events.page.ts @@ -310,18 +310,35 @@ export class EventsPage implements OnInit { } goToExpediente(SerialNumber:any){ - this.router.navigate(['/home/events/expediente', SerialNumber, 'events']); + if(this.loggeduser.Profile == 'MDGPR'){ + this.router.navigate(['/home/events/expediente', SerialNumber, 'events']); + } + else if(this.loggeduser.Profile == 'PR'){ + this.router.navigate(['/home/events/expedientes-pr', SerialNumber, 'events']); + } } viewExpedientListPage(){ - if( window.innerWidth <= 1024){ - this.router.navigate(['/home/gabinete-digital/expediente']); + if(this.loggeduser.Profile == 'MDGPR'){ + if( window.innerWidth < 801){ + this.router.navigate(['/home/gabinete-digital/expediente']); + } + else{ + let navigationExtras: NavigationExtras = { queryParams: {"expedientes": true,} }; + this.router.navigate(['/home/gabinete-digital'], navigationExtras); + } } - else{ - let navigationExtras: NavigationExtras = { queryParams: {"expedientes": true,} }; - this.router.navigate(['/home/gabinete-digital'], navigationExtras); + else if(this.loggeduser.Profile == 'PR'){ + if( window.innerWidth < 801){ + this.router.navigate(['/home/gabinete-digital/expedientes-pr']); + } + else{ + let navigationExtras: NavigationExtras = { queryParams: {"expedientes-pr": true,} }; + this.router.navigate(['/home/gabinete-digital'], navigationExtras); + } } } + } diff --git a/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.ts b/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.ts index a3a79cfe8..c033ff438 100644 --- a/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.ts +++ b/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.ts @@ -38,13 +38,14 @@ export class ExpedientePrPage implements OnInit { fulltask: any; eventsList: Event[]; serialnumber: string; + caller:string; profile: string; intervenientes: any; cc: any = []; loggeduser: User; - constructor(private activateRoute: ActivatedRoute, + constructor( private processes: ProcessesService, private iab: InAppBrowser, private attachments: AttachmentsService, @@ -52,7 +53,6 @@ export class ExpedientePrPage implements OnInit { private menu: MenuController, private router: Router, private modalController: ModalController, - private alertService: AlertService, public popoverController: PopoverController, private activatedRoute: ActivatedRoute, private userAuth: AuthService, @@ -61,10 +61,12 @@ export class ExpedientePrPage implements OnInit { ) { this.loggeduser = userAuth.ValidatedUser; - this.activatedRoute.queryParams.subscribe(params => { - if(params["serialNumber"]) { - this.serialnumber = params["serialNumber"]; - console.log(params["serialNumber"]); + this.activatedRoute.paramMap.subscribe(params => { + if(params["params"].SerialNumber) { + this.serialnumber = params["params"].SerialNumber; + } + if(params["params"].caller) { + this.caller = params["params"].caller; } }); } @@ -73,7 +75,7 @@ export class ExpedientePrPage implements OnInit { this.profile = "mdgpr"; console.log(this.serialnumber); - this.activateRoute.paramMap.subscribe(paramMap => { + this.activatedRoute.paramMap.subscribe(paramMap => { if (!paramMap.has('SerialNumber')) { return; } @@ -90,15 +92,42 @@ export class ExpedientePrPage implements OnInit { } goBack() { - let navigationExtras: NavigationExtras = { - queryParams: { - "expedientes-pr": true, + if(this.task.Status == "Pending" && this.caller != 'events'){ + if (window.innerWidth <= 800) { + this.router.navigate(['/home/gabinete-digital/pendentes']); + } + else { + let navigationExtras: NavigationExtras = { + queryParams: { + "pendentes": true, + } + } + this.router.navigate(['/home/gabinete-digital'], navigationExtras); } - }; - this.router.navigate(['/home/gabinete-digital'], navigationExtras); - - - + } + else{ + this.activatedRoute.paramMap.subscribe(params => { + switch (params["params"].caller) { + case 'events': + this.router.navigate(['/home',params["params"].caller]); + break; + + case 'gabinete-digital': + let navigationExtras: NavigationExtras = { + queryParams: { + "expedientes-pr": true, + } + } + if( window.innerWidth < 801) { + this.router.navigate(['/home/gabinete-digital/expedientes-pr']); + } else { + this.router.navigate(['/home/gabinete-digital'], navigationExtras); + } + break; + + } + }); + } } sendExpedienteToPending(){ @@ -332,14 +361,14 @@ export class ExpedientePrPage implements OnInit { } } - try { - await this.processes.CompleteTask(otherbody).toPromise(); - this.toastService.successMessage('Processo descartado') + try { + await this.processes.CompleteTask(otherbody).toPromise() + this.toastService.successMessage('Processo descartado'); + this.goBack(); } catch (error) { this.toastService.badRequest('Processo não descartado') } - } else if(res['data'] == 'No'){ //Do nothing @@ -347,30 +376,24 @@ export class ExpedientePrPage implements OnInit { } else{ if(res['data']== 'Yes'){ - + try { + await this.processes.CompleteTask(body).toPromise(); + this.toastService.successMessage('Processo descartado'); + this.goBack(); + } catch (error) { + this.toastService.badRequest('Processo não descartado') + } + this.goBack(); + } + else if(res['data'] == 'No'){ + console.log('Update'); try { - //await this.processes.CompleteTask(body).toPromise() - this.toastService.successMessage() + await this.processes.UpdateTaskStatus(this.task.FolderId).toPromise(); + this.toastService.successMessage(); this.goBack(); } catch (error) { this.toastService.badRequest() } - - - - - } - else if(res['data'] == 'No'){ - console.log('Update'); - - try { - await this.processes.UpdateTaskStatus(this.task.FolderId); - this.toastService.successMessage() - } catch (error) { - this.toastService.badRequest() - } - - } } }); diff --git a/src/app/pages/gabinete-digital/expedientes-pr/expedientes-pr.page.ts b/src/app/pages/gabinete-digital/expedientes-pr/expedientes-pr.page.ts index 9676e9706..c12c8b06f 100644 --- a/src/app/pages/gabinete-digital/expedientes-pr/expedientes-pr.page.ts +++ b/src/app/pages/gabinete-digital/expedientes-pr/expedientes-pr.page.ts @@ -36,10 +36,10 @@ export class ExpedientesPrPage implements OnInit { private router: Router, ) { this.loggeduser = authService.ValidatedUser; + this.LoadList(); } ngOnInit() { - this.LoadList(); this.router.events.forEach((event) => { if(event instanceof NavigationEnd && event.url == this.router.url) { this.LoadList(); @@ -47,15 +47,6 @@ export class ExpedientesPrPage implements OnInit { }); } - notImplemented(){ - this.alertService.presentAlert('Funcionalidade em desenvolvimento'); - } - - openExpedientDetailPage(data){ - console.log(data); - this.openExpedientDetail.emit(data); - } - LoadList(){ this.showLoader = true; switch (this.loggeduser.Profile) { @@ -124,13 +115,7 @@ export class ExpedientesPrPage implements OnInit { } goToExpediente(serialNumber:any){ - let navigationExtras: NavigationExtras = { - queryParams: { - "serialNumber": serialNumber, - "profile": this.loggeduser.Profile - } - }; - this.router.navigate(['/home/gabinete-digital/expedientes-pr/expediente-pr'], navigationExtras); + this.router.navigate(['/home/gabinete-digital/expedientes-pr',serialNumber,'gabinete-digital']); } async viewExpedientDetail(serialNumber:any) { diff --git a/src/app/pages/publications/publications.page.html b/src/app/pages/publications/publications.page.html index 54e4ef780..3c7eef106 100644 --- a/src/app/pages/publications/publications.page.html +++ b/src/app/pages/publications/publications.page.html @@ -127,6 +127,7 @@ [folderId]="folderId" class="height-100 d-flex flex-column overflow-hidden background-white flex-grow-1" (closeDesktopComponent)="closeDesktopComponent($event)" + (updateDesktopComponent)="updateDesktopComponent($event)" > diff --git a/src/app/pages/publications/publications.page.ts b/src/app/pages/publications/publications.page.ts index cfae7d49f..4781abae5 100644 --- a/src/app/pages/publications/publications.page.ts +++ b/src/app/pages/publications/publications.page.ts @@ -266,6 +266,10 @@ export class PublicationsPage implements OnInit { this.desktopComponent.showPublicationDetail = true; } + + async updateDesktopComponent(e?:any){ + this.getActions(); + } async closeDesktopComponent (xx?: any){ @@ -317,11 +321,7 @@ export class PublicationsPage implements OnInit { await modal.present(); modal.onDidDismiss().then(res =>{ if(res['data']=='edit'){ - //this.closeDesktopComponent(); - this.desktopComponent.showViewPublication = false, - this.desktopComponent.showAddNewPublication = false, - this.desktopComponent.showPublicationDetail = false, - this.desktopComponent.showAddActions = false, + this.closeDesktopComponent(); this.desktopComponent.showEditActions = true; } }); diff --git a/src/app/shared/agenda/edit-event-to-approve/edit-event-to-approve.page.ts b/src/app/shared/agenda/edit-event-to-approve/edit-event-to-approve.page.ts index db19f8610..774c84205 100644 --- a/src/app/shared/agenda/edit-event-to-approve/edit-event-to-approve.page.ts +++ b/src/app/shared/agenda/edit-event-to-approve/edit-event-to-approve.page.ts @@ -154,7 +154,6 @@ export class EditEventToApprovePage implements OnInit { } setOtherData() { - if(this.eventProcess.workflowInstanceDataFields.ParticipantsList) { this.eventProcess.workflowInstanceDataFields.ParticipantsList.forEach(e => { if(e.IsRequired) { diff --git a/src/app/shared/popover/despachos-options/despachos-options.page.ts b/src/app/shared/popover/despachos-options/despachos-options.page.ts index a12c2ef96..583cca30b 100644 --- a/src/app/shared/popover/despachos-options/despachos-options.page.ts +++ b/src/app/shared/popover/despachos-options/despachos-options.page.ts @@ -114,6 +114,7 @@ export class DespachosOptionsPage implements OnInit { } async openDelegarModal(task: any) { + this.popoverController.dismiss(); let classs; if( window.innerWidth <= 800){ classs = 'book-meeting-modal modal modal-desktop' @@ -129,7 +130,9 @@ export class DespachosOptionsPage implements OnInit { backdropDismiss: false }); await modal.present(); - modal.onDidDismiss(); + modal.onDidDismiss().then(res=>{ + this.goBack(); + }); } async generateDiploma(note:string, documents:any){ diff --git a/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.html b/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.html index 035fc6fe9..136e1dd02 100644 --- a/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.html +++ b/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.html @@ -11,13 +11,13 @@
- +
- +
diff --git a/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.ts b/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.ts index c4abc7566..227b4626c 100644 --- a/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.ts +++ b/src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page.ts @@ -33,6 +33,8 @@ export class OptsExpedientePrPage implements OnInit { serialnumber: string; profile: string; + showEnviarPendentes = false; + loggeduser: User; constructor( @@ -53,18 +55,21 @@ export class OptsExpedientePrPage implements OnInit { this.fulltask = this.navParams.get('fulltask'); this.loggeduser = userAuth.ValidatedUser; - this.activatedRoute.queryParams.subscribe(params => { - if(params["serialNumber"]) { - this.serialnumber = params["serialNumber"]; - console.log(params["serialNumber"]); - } - }); - this.profile = "mdgpr"; + if(this.task.Status != 'Pending'){ + this.showEnviarPendentes = true; + } } ngOnInit() { + } - + close(){ + if( window.innerWidth <= 1024){ + this.popoverController.dismiss(); + } + else{ + this.modalController.dismiss(); + } } async openAddNoteModal(actionName:string) { @@ -112,6 +117,7 @@ export class OptsExpedientePrPage implements OnInit { } async approve(note:string, documents:any){ + this.popoverController.dismiss(); let body = { "serialNumber": this.serialnumber, "action": "Aprovar", @@ -131,15 +137,11 @@ export class OptsExpedientePrPage implements OnInit { } } - async distartExpedientModal(body:any) { + async distartExpedientModal(body:any){ this.popoverController.dismiss(); - console.log(this.fulltask); const modal = await this.modalController.create({ component: DiscartExpedientModalPage, componentProps: { - serialNumber: this.fulltask.serialNumber, - folderId: this.fulltask.workflowInstanceDataFields.FolderID, - action: 'complete', }, cssClass: 'discart-expedient-modal', backdropDismiss: false @@ -148,42 +150,53 @@ export class OptsExpedientePrPage implements OnInit { await modal.present(); modal.onDidDismiss().then( async (res)=>{ console.log(res['data']); - if(res['data']== 'Yes'){ - try { - await this.processes.CompleteTask(body).toPromise() - this.toastService.successMessage() - this.goBack(); + if(body == 'descartar'){ + if(res['data']== 'Yes'){ + let otherbody = { + "serialNumber": this.task.SerialNumber, + "action": "Passivo", + "ActionTypeId": 99999877, + "dataFields": { + "Note": "", + } + } + + try { + await this.processes.CompleteTask(otherbody).toPromise() + this.toastService.successMessage('Processo descartado'); + this.goBack(); + } catch (error) { + this.toastService.badRequest('Processo não descartado') + } - } catch (error) { - this.toastService.badRequest() } - - + else if(res['data'] == 'No'){ + //Do nothing + } } - else if(res['data'] == 'No'){ - let otherbody = { - "serialNumber": body.serialNumber, - "action": "Passivo", - "ActionTypeId": 99999877, - "dataFields": { - "Note": "", + else{ + if(res['data']== 'Yes'){ + try { + await this.processes.CompleteTask(body).toPromise(); + this.toastService.successMessage('Processo descartado'); + this.goBack(); + } catch (error) { + this.toastService.badRequest('Processo não descartado') + } + this.goBack(); + } + else if(res['data'] == 'No'){ + console.log('Update'); + try { + await this.processes.UpdateTaskStatus(this.task.FolderId).toPromise(); + this.toastService.successMessage(); + this.goBack(); + } catch (error) { + this.toastService.badRequest() } } - - try { - await this.processes.CompleteTask(otherbody).toPromise() - this.toastService.successMessage() - } catch (error) { - this.toastService.badRequest() - } - - } - //Volta na lista principal - this.goBack(); - this.modalController.dismiss(); - }); } @@ -209,6 +222,7 @@ export class OptsExpedientePrPage implements OnInit { } sendExpedienteToPending(){ + this.popoverController.dismiss(); this.processes.SetTaskToPending(this.serialnumber).subscribe(res=>{ console.log(res); this.close(); @@ -270,16 +284,6 @@ export class OptsExpedientePrPage implements OnInit { modal.onDidDismiss(); } - - close() { - if( window.innerWidth <= 1024) { - this.popoverController.dismiss(); - } - else{ - this.modalController.dismiss(); - } - } - goBack() { let navigationExtras: NavigationExtras = { queryParams: { diff --git a/src/app/shared/publication/edit-action/edit-action.page.ts b/src/app/shared/publication/edit-action/edit-action.page.ts index ec0f5200f..6c03235e3 100644 --- a/src/app/shared/publication/edit-action/edit-action.page.ts +++ b/src/app/shared/publication/edit-action/edit-action.page.ts @@ -13,6 +13,7 @@ export class EditActionPage implements OnInit { folder: PublicationFolder; @Input() folderId: string; @Output() closeDesktopComponent= new EventEmitter(); + @Output() updateDesktopComponent= new EventEmitter(); constructor( private publicationsService: PublicationsService, @@ -49,9 +50,10 @@ export class EditActionPage implements OnInit { try { await this.publicationsService.UpdatePresidentialAction(body).toPromise() this.close(); - this.toastService.successMessage('Acção presidencial criada') + this.updateDesktopComponent.emit(); + this.toastService.successMessage('Acção presidencial atualizada') } catch (error) { - this.toastService.badRequest('Não foi possivel criar a acção presidencial') + this.toastService.badRequest('Não foi possivel atualizar a acção presidencial') } }