From c36ef9ef8722a09de7850c875f40e13615cd094a Mon Sep 17 00:00:00 2001 From: "tiago.kayaya" Date: Sat, 9 Oct 2021 20:24:34 +0100 Subject: [PATCH] add document viewer in chat --- .../document-set-up-meeting.page.ts | 2 + .../group-messages/group-messages.page.html | 2 +- .../group-messages/group-messages.page.ts | 50 +++++++- src/app/pages/chat/messages/messages.page.ts | 108 +++++++----------- src/app/services/functions/file.service.ts | 1 + src/app/services/processes.service.ts | 21 +++- .../group-messages/group-messages.page.html | 2 +- .../group-messages/group-messages.page.ts | 48 +++++++- .../shared/chat/messages/messages.page.html | 2 +- src/app/shared/chat/messages/messages.page.ts | 48 +++++++- 10 files changed, 196 insertions(+), 88 deletions(-) diff --git a/src/app/modals/document-set-up-meeting/document-set-up-meeting.page.ts b/src/app/modals/document-set-up-meeting/document-set-up-meeting.page.ts index 0fb21d728..74beab957 100644 --- a/src/app/modals/document-set-up-meeting/document-set-up-meeting.page.ts +++ b/src/app/modals/document-set-up-meeting/document-set-up-meeting.page.ts @@ -183,6 +183,8 @@ export class DocumentSetUpMeetingPage implements OnInit { }) } else{ + console.log(this.document); +alert('PARA') this.docs.push({ ApplicationId: this.document.ApplicationId || this.document.ApplicationType, Source: 1, diff --git a/src/app/pages/chat/group-messages/group-messages.page.html b/src/app/pages/chat/group-messages/group-messages.page.html index 13523de85..0330f2033 100644 --- a/src/app/pages/chat/group-messages/group-messages.page.html +++ b/src/app/pages/chat/group-messages/group-messages.page.html @@ -66,7 +66,7 @@
-
+
diff --git a/src/app/pages/chat/group-messages/group-messages.page.ts b/src/app/pages/chat/group-messages/group-messages.page.ts index e77fd6af9..43b7cadcb 100644 --- a/src/app/pages/chat/group-messages/group-messages.page.ts +++ b/src/app/pages/chat/group-messages/group-messages.page.ts @@ -371,22 +371,60 @@ export class GroupMessagesPage implements OnInit, AfterViewInit, OnDestroy { this.fileService.viewDocumentByUrl(fullUrl); } else{ - this.fileService.viewDocumentByUrl(file.title_link); - //this.openViewDocumentModal(file); + //this.fileService.viewDocumentByUrl(file.title_link); + this.openViewDocumentModal(file); } } async openViewDocumentModal(file:any){ + + let task = { + serialNumber: '', + taskStartDate: '', + isEvent: true, + workflowInstanceDataFields: { + FolderID: '', + Subject: file.Assunto, + SourceSecFsID: file.ApplicationId, + SourceType: 'DOC', + SourceID: file.DocId, + DispatchNumber: '' + } + } + + let doc = { + "Id": "", + "ParentId": "", + "Source": 1, + "ApplicationId": file.ApplicationId, + "CreateDate": "", + "Data": null, + "Description":"", + "Link": null, + "SourceId": file.DocId, + "SourceName": file.Assunto, + "Stakeholders": "", + } + const modal = await this.modalController.create({ component: ViewDocumentPage, componentProps: { - file: file, + trustedUrl: '', + file: { + title: file.Assunto, + url: '', + title_link: '', + }, + Document: doc, + applicationId: file.ApplicationId, + docId: file.DocId, + folderId: '', + task: task }, - cssClass: 'modal modal-desktop', - backdropDismiss: false + cssClass: 'modal modal-desktop' }); await modal.present(); - modal.onDidDismiss(); + } async bookMeeting() { diff --git a/src/app/pages/chat/messages/messages.page.ts b/src/app/pages/chat/messages/messages.page.ts index 072fb8230..d5a28d934 100644 --- a/src/app/pages/chat/messages/messages.page.ts +++ b/src/app/pages/chat/messages/messages.page.ts @@ -290,8 +290,8 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy { this.fileService.viewDocumentByUrl(fullUrl); } else{ - this.fileService.viewDocumentByUrl(file.title_link); - //this.openViewDocumentModal(file); + //this.fileService.viewDocumentByUrl(file.title_link); + this.openViewDocumentModal(file); } } @@ -300,75 +300,53 @@ export class MessagesPage implements OnInit, AfterViewInit, OnDestroy { } async openViewDocumentModal(file:any){ - console.log(file); - const docId = file.DocId; - const applicationId: any = file.ApplicationId; - this.processes.GetDocumentDetails(docId, applicationId).subscribe( async(res)=> { - - this.LoadedDocument = res; - this.LoadedDocument.Subject = this.LoadedDocument.Assunto - - let thedate = new Date(this.LoadedDocument.DateDispatch || this.LoadedDocument.DocDate); - //this.customDate = this.days[thedate.getDay()]+ ", " + thedate.getDate() +" de " + ( this.months[thedate.getMonth()]); - - let task: ExpedientTaskModalPageNavParamsTask - let document: SearchDocumentDetails = this.LoadedDocument - let folder: SearchFolderDetails = this.LoadedDocument - - if(this.LoadedDocument.ApplicationID == 361 || this.LoadedDocument.ApplicationId == 361) { - task = { - serialNumber: folder.DispatchNumber, - taskStartDate: folder.DateDispatch, - isEvent: true, - workflowInstanceDataFields: { - FolderID: folder['FolderId'] || folder['FolderID'] || folder.folderId, - Subject: folder.Assunto, - SourceSecFsID: folder.ApplicationID || folder['ApplicationId'], - SourceType: 'FOLDER', - SourceID: folder.folderId, - DispatchNumber: folder.DispatchNumber - }, - } - } - else if (document.ApplicationID == 8 || document.ApplicationId == 8) - { - task = { - serialNumber: document.DocId, - taskStartDate: document.DocDate, - isEvent: true, - workflowInstanceDataFields: { - FolderID: null, - Subject: document.Assunto, - DispatchNumber: null, - SourceSecFsID: document.ApplicationID || document.ApplicationId, - SourceType: 'DOC', - SourceID: document.DocId, - } - } - } else { - console.log('unexpected ApplicationID') + let task = { + serialNumber: '', + taskStartDate: '', + isEvent: true, + workflowInstanceDataFields: { + FolderID: '', + Subject: file.Assunto, + SourceSecFsID: file.ApplicationId, + SourceType: 'DOC', + SourceID: file.DocId, + DispatchNumber: '' } + } + let doc = { + "Id": "", + "ParentId": "", + "Source": 1, + "ApplicationId": file.ApplicationId, + "CreateDate": "", + "Data": null, + "Description":"", + "Link": null, + "SourceId": file.DocId, + "SourceName": file.Assunto, + "Stakeholders": "", + } - const modal = await this.modalController.create({ - component: ViewDocumentPage, - componentProps: { - trustedUrl: '', - file: { - title: task.workflowInstanceDataFields.Subject, - url: '', - title_link: '', - }, - Document: this.LoadedDocument, - applicationId: document.ApplicationID || document.ApplicationId, - docId: document.ApplicationID || document.ApplicationId, - folderId: folder['FolderId'] || folder['FolderID'] || folder.folderId + const modal = await this.modalController.create({ + component: ViewDocumentPage, + componentProps: { + trustedUrl: '', + file: { + title: file.Assunto, + url: '', + title_link: '', }, - cssClass: 'modal modal-desktop' - }); - await modal.present(); + Document: doc, + applicationId: file.ApplicationId, + docId: file.DocId, + folderId: '', + task: task + }, + cssClass: 'modal modal-desktop' }); + await modal.present(); } getChatMembers() { diff --git a/src/app/services/functions/file.service.ts b/src/app/services/functions/file.service.ts index 4dbdcd120..00ca40481 100644 --- a/src/app/services/functions/file.service.ts +++ b/src/app/services/functions/file.service.ts @@ -305,6 +305,7 @@ export class FileService { "type": "application/webtrix", "ApplicationId": res.data.selected.ApplicationType, "DocId": res.data.selected.Id, + "Assunto": res.data.selected.Assunto, } } } diff --git a/src/app/services/processes.service.ts b/src/app/services/processes.service.ts index cfd6dc9c3..24404944e 100644 --- a/src/app/services/processes.service.ts +++ b/src/app/services/processes.service.ts @@ -27,7 +27,7 @@ export class ProcessesService { ) { this.loggeduser = this.user.ValidatedUser; - + this.setHeader() this.changeProfileService.registerCallback(()=>{ this.loggeduser = this.user.ValidatedUser; @@ -89,7 +89,7 @@ export class ProcessesService { }; return this.http.get(`${geturl}`, options); } - + SetTaskToPending(serialNumber:string): Observable{ const geturl = environment.apiURL + 'Tasks/SetTaskPending'; @@ -325,6 +325,23 @@ export class ProcessesService { return this.http.post(`${url}`,body, options); } + DocumentDetail(DocId:string, FsId:string){ + + const geturl = environment.apiURL + 'ecm/GetDocument'; + let params = new HttpParams(); + + params = params.set("docId", DocId); + params = params.set("applicationId", FsId); + params = params.set("externalAppId ", 101); + params = params.set("SourceLocation ", 17); + + let options = { + headers: this.headers, + params: params + }; + return this.http.get(`${geturl}`, options); + } + getFileBase64(DocId: string | number) { let url = environment.apiURL + 'ecm/document/file'; diff --git a/src/app/shared/chat/group-messages/group-messages.page.html b/src/app/shared/chat/group-messages/group-messages.page.html index 5afddf0db..643a633f1 100644 --- a/src/app/shared/chat/group-messages/group-messages.page.html +++ b/src/app/shared/chat/group-messages/group-messages.page.html @@ -59,7 +59,7 @@
-
+
diff --git a/src/app/shared/chat/group-messages/group-messages.page.ts b/src/app/shared/chat/group-messages/group-messages.page.ts index 0935d57f9..8dffd3b26 100644 --- a/src/app/shared/chat/group-messages/group-messages.page.ts +++ b/src/app/shared/chat/group-messages/group-messages.page.ts @@ -614,22 +614,58 @@ export class GroupMessagesPage implements OnInit, OnChanges, AfterViewInit, OnDe this.fileService.viewDocumentByUrl(fullUrl); } else{ - this.fileService.viewDocumentByUrl(file.title_link); - //this.openViewDocumentModal(file); + //this.fileService.viewDocumentByUrl(file.title_link); + this.openViewDocumentModal(file); } } async openViewDocumentModal(file:any){ + let task = { + serialNumber: '', + taskStartDate: '', + isEvent: true, + workflowInstanceDataFields: { + FolderID: '', + Subject: file.Assunto, + SourceSecFsID: file.ApplicationId, + SourceType: 'DOC', + SourceID: file.DocId, + DispatchNumber: '' + } + } + + let doc = { + "Id": "", + "ParentId": "", + "Source": 1, + "ApplicationId": file.ApplicationId, + "CreateDate": "", + "Data": null, + "Description":"", + "Link": null, + "SourceId": file.DocId, + "SourceName": file.Assunto, + "Stakeholders": "", + } + const modal = await this.modalController.create({ component: ViewDocumentPage, componentProps: { - file: file, + trustedUrl: '', + file: { + title: file.Assunto, + url: '', + title_link: '', + }, + Document: doc, + applicationId: file.ApplicationId, + docId: file.DocId, + folderId: '', + task: task }, - cssClass: 'modal modal-desktop', - backdropDismiss: false + cssClass: 'modal modal-desktop' }); await modal.present(); - modal.onDidDismiss(); } takePicture(){ diff --git a/src/app/shared/chat/messages/messages.page.html b/src/app/shared/chat/messages/messages.page.html index c582ee122..dc7c45171 100644 --- a/src/app/shared/chat/messages/messages.page.html +++ b/src/app/shared/chat/messages/messages.page.html @@ -51,7 +51,7 @@
-
+
diff --git a/src/app/shared/chat/messages/messages.page.ts b/src/app/shared/chat/messages/messages.page.ts index 3b20a5099..16dcb22ab 100644 --- a/src/app/shared/chat/messages/messages.page.ts +++ b/src/app/shared/chat/messages/messages.page.ts @@ -248,22 +248,58 @@ export class MessagesPage implements OnInit, OnChanges, AfterViewInit, OnDestroy this.fileService.viewDocumentByUrl(fullUrl); } else{ - this.fileService.viewDocumentByUrl(file.title_link); - //this.openViewDocumentModal(file); + //this.fileService.viewDocumentByUrl(file.title_link); + this.openViewDocumentModal(file); } } async openViewDocumentModal(file:any){ + let task = { + serialNumber: '', + taskStartDate: '', + isEvent: true, + workflowInstanceDataFields: { + FolderID: '', + Subject: file.Assunto, + SourceSecFsID: file.ApplicationId, + SourceType: 'DOC', + SourceID: file.DocId, + DispatchNumber: '' + } + } + + let doc = { + "Id": "", + "ParentId": "", + "Source": 1, + "ApplicationId": file.ApplicationId, + "CreateDate": "", + "Data": null, + "Description":"", + "Link": null, + "SourceId": file.DocId, + "SourceName": file.Assunto, + "Stakeholders": "", + } + const modal = await this.modalController.create({ component: ViewDocumentPage, componentProps: { - file: file, + trustedUrl: '', + file: { + title: file.Assunto, + url: '', + title_link: '', + }, + Document: doc, + applicationId: file.ApplicationId, + docId: file.DocId, + folderId: '', + task: task }, - cssClass: 'modal modal-desktop', - backdropDismiss: false + cssClass: 'modal modal-desktop' }); await modal.present(); - modal.onDidDismiss(); } getChatMembers() {