From e778039632213fc6501af775854fc1db2f8bec22 Mon Sep 17 00:00:00 2001 From: Peter Maquiran Date: Thu, 22 Feb 2024 15:42:04 +0100 Subject: [PATCH] add tiny to viewer --- src/app/models/draft.ts | 14 ++++ .../despachos/despacho/despacho.page.ts | 2 +- .../viewer-attachment.module.ts | 6 +- .../viewer-attachment.page.html | 34 ++++++++- .../viewer-attachment.page.scss | 14 ---- .../viewer-attachment.page.ts | 24 ++++++ .../task-details/task-details.module.ts | 14 +++- .../task-details/task-details.page.html | 44 ++++++----- .../generic/task-details/task-details.page.ts | 73 ++++++++++++++++++- 9 files changed, 185 insertions(+), 40 deletions(-) create mode 100644 src/app/models/draft.ts diff --git a/src/app/models/draft.ts b/src/app/models/draft.ts new file mode 100644 index 000000000..12ff41945 --- /dev/null +++ b/src/app/models/draft.ts @@ -0,0 +1,14 @@ +interface Document { + ApplicationId: string; + Assunto: string; + DocDate: string; + DocId: string; + DocNumber: string; + FolderId: string; + Sender: string; + SourceDocId: string; + content: string; + path: string; + ownerId: string; + status: string; +} diff --git a/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts b/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts index afd0b0aba..80c86a4b8 100644 --- a/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts +++ b/src/app/pages/gabinete-digital/despachos/despacho/despacho.page.ts @@ -217,7 +217,7 @@ export class DespachoPage implements OnInit { let object = { "ApplicationId": "", "Assunto": resd.data.description, - "DocDate": "", + "DocDate":resd?.createdAt, "DocId": resd.data.id, "DocNumber": "", "FolderId": "", diff --git a/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.module.ts b/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.module.ts index e589b38f1..0137e24b9 100644 --- a/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.module.ts +++ b/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.module.ts @@ -7,15 +7,17 @@ import { IonicModule } from '@ionic/angular'; import { ViewerAttachmentPageRoutingModule } from './viewer-attachment-routing.module'; import { ViewerAttachmentPage } from './viewer-attachment.page'; +import { EditorModule } from '@tinymce/tinymce-angular'; @NgModule({ imports: [ CommonModule, FormsModule, IonicModule, - ViewerAttachmentPageRoutingModule + ViewerAttachmentPageRoutingModule, + EditorModule ], - declarations: [ViewerAttachmentPage], + declarations: [ViewerAttachmentPage, ], exports: [ViewerAttachmentPage], schemas: [CUSTOM_ELEMENTS_SCHEMA] }) diff --git a/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.html b/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.html index fd89a6c21..8785650ca 100644 --- a/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.html +++ b/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.html @@ -1,10 +1,10 @@
-
+
+ [ngClass]="{'selected-card': i === selectedIndex}" >
@@ -20,9 +20,35 @@
-
- +
+ + +
diff --git a/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.scss b/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.scss index 441d2b124..4f9578617 100644 --- a/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.scss +++ b/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.scss @@ -31,17 +31,3 @@ iframe { .selected-attachment { border: 2px solid #3498db; /* You can customize the border style and color */ } - - - -@media screen and (orientation:portrait) { - .attachment-list { - - } -} - -@media screen and (orientation:landscape) { - .attachment-list { - display: none !important; - } -} diff --git a/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.ts b/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.ts index f12bc8cd1..f757ed1b2 100644 --- a/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.ts +++ b/src/app/pages/gabinete-digital/viewer-attachment/viewer-attachment.page.ts @@ -10,11 +10,15 @@ import { DeviceService } from "src/app/services/device.service" }) export class ViewerAttachmentPage implements OnInit { + @Input() showAttachmentList = true; @Input() selectedIndex = 0; swiperModules = [IonicSlides]; @Input() taskViewerAttachment: ViewerAttachment[]; viewer: {[key: string]: HTMLDivElement} = {} @ViewChild('iframeContainer') iframeContainer: ElementRef; + editorContent: ""; + content: "" + private saveTimeout: any; constructor( public middlewareRepositoryService: MiddlewareRepositoryService, @@ -87,4 +91,24 @@ export class ViewerAttachmentPage implements OnInit { this.clickDocument(task, this.selectedIndex) } + + somefunction() { + console.log('Saved tinymce') + } + + + onEditorContentChange() { + console.log('Autosave successful! Content saved to local storage1.'); + if (this.saveTimeout) { + clearTimeout(this.saveTimeout); + } + + this.saveTimeout = setTimeout(() => { + this.saveDraft(); + clearTimeout(this.saveTimeout); + }, 5000); + } + + + saveDraft() {} } diff --git a/src/app/shared/gabinete-digital/generic/task-details/task-details.module.ts b/src/app/shared/gabinete-digital/generic/task-details/task-details.module.ts index 26e700059..e152384e8 100644 --- a/src/app/shared/gabinete-digital/generic/task-details/task-details.module.ts +++ b/src/app/shared/gabinete-digital/generic/task-details/task-details.module.ts @@ -12,6 +12,14 @@ import { TaskDetailContentPageModule } from '../task-detail-content/task-detail- import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; import { ViewerAttachmentPageModule } from "../../../../pages/gabinete-digital/viewer-attachment/viewer-attachment.module"; + +import {MatMenuModule} from '@angular/material/menu'; +import {MatButtonModule} from '@angular/material/button'; + + +import {MatIconModule} from '@angular/material/icon'; + + @NgModule({ declarations: [TaskDetailsPage], exports: [TaskDetailsPage], @@ -24,7 +32,11 @@ import { ViewerAttachmentPageModule } from "../../../../pages/gabinete-digital/v TaskDetailHeaderPageModule, TaskDetailContentPageModule, FontAwesomeModule, - ViewerAttachmentPageModule + ViewerAttachmentPageModule, + + MatMenuModule, + MatButtonModule, + MatIconModule, ] }) export class TaskDetailsPageModule {} diff --git a/src/app/shared/gabinete-digital/generic/task-details/task-details.page.html b/src/app/shared/gabinete-digital/generic/task-details/task-details.page.html index 5e2b7c5ff..6a92d9bca 100644 --- a/src/app/shared/gabinete-digital/generic/task-details/task-details.page.html +++ b/src/app/shared/gabinete-digital/generic/task-details/task-details.page.html @@ -14,6 +14,9 @@
+ + + @@ -21,7 +24,7 @@
- +
@@ -84,12 +87,32 @@
-

{{ Document.Assunto || "Sem assunto" }} Rascunho

+

{{ Document.Assunto || "Sem assunto" }} Rascunho

{{ Document.Sender}}{{ Document.DocDate | date: 'dd-MM-yyyy HH:mm' }}

-
- + +
+ + + + + + + +
@@ -99,19 +122,6 @@
- - - - -
diff --git a/src/app/shared/gabinete-digital/generic/task-details/task-details.page.ts b/src/app/shared/gabinete-digital/generic/task-details/task-details.page.ts index 28f49d9fd..eae7557e9 100644 --- a/src/app/shared/gabinete-digital/generic/task-details/task-details.page.ts +++ b/src/app/shared/gabinete-digital/generic/task-details/task-details.page.ts @@ -1,8 +1,12 @@ import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; -import { customTask, fullTask } from 'src/app/models/dailyworktask.model'; +import { customTask } from 'src/app/models/dailyworktask.model'; import { ThemeService } from 'src/app/services/theme.service' import { DeviceService } from "src/app/services/device.service" import { DocumentViewerOptionService } from "src/app/services/document-viewer-option.service"; +import { PermissionService } from 'src/app/services/permission.service'; +import { ExpedientTaskModalPage } from 'src/app/pages/gabinete-digital/expediente/expedient-task-modal/expedient-task-modal.page'; +import { ModalController } from '@ionic/angular'; +import { DocumentSetUpMeetingPage } from 'src/app/modals/document-set-up-meeting/document-set-up-meeting.page'; @Component({ selector: 'app-task-details', @@ -29,6 +33,8 @@ export class TaskDetailsPage implements OnInit { public ThemeService: ThemeService, public DeviceService: DeviceService, private DocumentViewerOptionService: DocumentViewerOptionService, + public p: PermissionService, + private modalController: ModalController ) { this.DeviceService.isDesktop(); } @@ -52,4 +58,69 @@ export class TaskDetailsPage implements OnInit { this.DocumentViewerOptionService.openOptions(); } + + async openExpedientActionsModal( taskAction: any, Document) { + + let classs; + if( window.innerWidth < 701) { + classs = 'modal modal-desktop' + } else { + classs = 'modal modal-desktop showAsideOptions' + } + // check passing + //console.log('this.Document----------openExpedientActionsModal', this.Document) + const modal = await this.modalController.create({ + component: ExpedientTaskModalPage, + componentProps: { + taskAction: taskAction, // check + task: this.fulltask, // check + document: Document, // nope + aplicationId: Document.ApplicationId || Document.ApplicationID, // check + applicationId: Document.ApplicationId || Document.ApplicationID, + docId: Document.docId, + createProcessFromFile: true, + }, + cssClass: classs, + }); + + modal.onDidDismiss().then( + async(res)=>{} + , (error) => { + console.log(error) + } + ); + + await modal.present(); + + } + + async openBookMeetingModal(Document) { + //console.log('this.Document----------', this.Document) + let classs; + if( window.innerWidth < 701) { + classs = 'book-meeting-modal modal modal-desktop' + } else { + classs = 'modal modal-desktop showAsideOptions' + } + + // check passing + const modal = await this.modalController.create({ + component: DocumentSetUpMeetingPage, + componentProps: { + subject: this.task.Subject, // check + document: Document, // document + }, + cssClass: classs, + backdropDismiss: false + }); + + modal.onDidDismiss().then(res=>{ + //this.RouteService.goBack(); + }, (error) => { + console.log(error) + }); + + await modal.present(); + } + }