import { Component, OnInit } from '@angular/core'; import { DomSanitizer } from '@angular/platform-browser'; import { ModalController, NavParams } from '@ionic/angular'; import { ExpedientTaskModalPageNavParamsTask } from 'src/app/models/ExpedientTaskModalPage'; import { SearchDocumentDetails, SearchFolderDetails } from 'src/app/models/search-document'; import { ExpedientTaskModalPage } from 'src/app/pages/gabinete-digital/expediente/expedient-task-modal/expedient-task-modal.page'; import { ProcessesService } from 'src/app/services/processes.service'; import { EventDetailsDocumentsOptionsPage } from 'src/app/shared/popover/event-details-documents-options/event-details-documents-options.page'; import { DocumentSetUpMeetingPage } from '../document-set-up-meeting/document-set-up-meeting.page'; 8 @Component({ selector: 'app-view-document', templateUrl: './view-document.page.html', styleUrls: ['./view-document.page.scss'], }) export class ViewDocumentPage implements OnInit { url: string; a:string = "https://equilibrium.dyndns.info/FileShare/pdfjs/web/viewer.html?file="; viewerUrl: string; trustedUrl: any; file: any; applicationId: any; docId: any task: ExpedientTaskModalPageNavParamsTask; Document: any constructor( private modalController: ModalController, private navParams: NavParams, private sanitazer: DomSanitizer, private processes: ProcessesService, ) { this.file = this.navParams.get('file'); this.applicationId = this.navParams.get('applicationId'); this.docId = this.navParams.get('docId'); this.Document = this.navParams.get('Document') this.task = this.navParams.get('task') if(!this.file.title) { this.file.title = 'Sem Título' } } ngOnInit() { this.processes.GetViewer(this.docId, this.applicationId).subscribe(res=> { const link: string = res this.trustedUrl = this.sanitazer.bypassSecurityTrustResourceUrl(link); }, ()=>{ this.close() }) } close() { this.modalController.dismiss(); } async openOptions() { const modal = await this.modalController.create({ component: EventDetailsDocumentsOptionsPage, cssClass: 'model aside-modal search-submodal', componentProps: { fulltask: this.task, task: this.task } }); await modal.present(); modal.onDidDismiss().then((res)=>{ if(res.data.component == 'openBookMeetingModal') { this.openBookMeetingModal() } else if(res.data.component == 'openExpedientActionsModal') { this.openExpedientActionsModal(res.data.taskAction) } else { console.log('component not found') } }) } async openBookMeetingModal() { let classs; if( window.innerWidth < 701) { classs = 'book-meeting-modal modal modal-desktop' } else { classs = 'modal modal-desktop showAsideOptions' } const modal = await this.modalController.create({ component: DocumentSetUpMeetingPage, componentProps: { subject: this.task.workflowInstanceDataFields.Subject, document: this.Document, }, cssClass: classs, backdropDismiss: false }); await modal.present(); modal.onDidDismiss().then(res=>{ //this.location.back(); }); } // efetuar despacho async openExpedientActionsModal( taskAction: any) { let classs; if( window.innerWidth < 701) { classs = 'modal modal-desktop' } else { classs = 'modal modal-desktop showAsideOptions' } const modal = await this.modalController.create({ component: ExpedientTaskModalPage, componentProps: { taskAction: taskAction, task: this.task, seachDocuments: this.Document, aplicationId: this.Document.ApplicationId || this.Document.ApplicationID }, cssClass: classs, }); await modal.present(); modal.onDidDismiss().then( async(res)=>{}); } }