From 5b8a9a24a10f8f15a1aee6e94ab1497816b0a23f Mon Sep 17 00:00:00 2001 From: "tiago.kayaya" Date: Tue, 3 Aug 2021 12:24:34 +0100 Subject: [PATCH] save --- src/app/models/attachment.model.ts | 4 +- .../expediente-pr/expediente-pr.page.html | 24 ++++-- .../expediente-pr/expediente-pr.page.ts | 71 +++++++++++++++-- src/app/services/attachments.service.ts | 40 +++++----- .../opts-expediente-pr.page.html | 1 + .../opts-expediente-pr.page.ts | 78 +++++++++++++++---- 6 files changed, 167 insertions(+), 51 deletions(-) diff --git a/src/app/models/attachment.model.ts b/src/app/models/attachment.model.ts index f3d459083..e944f6be8 100644 --- a/src/app/models/attachment.model.ts +++ b/src/app/models/attachment.model.ts @@ -26,7 +26,7 @@ export enum Sources export class EventAttachment { Id?: string; // id do evento - ParentId: string; + ParentId?: string; Source: string; SourceId: string; Link?: string; @@ -34,4 +34,4 @@ export class EventAttachment { ApplicationId: string; SourceTitle: string; -} \ No newline at end of file +} diff --git a/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.html b/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.html index dd56f0a64..1e3ffd910 100644 --- a/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.html +++ b/src/app/pages/gabinete-digital/expedientes-pr/expediente-pr/expediente-pr.page.html @@ -61,29 +61,35 @@
+
Documentos Anexados
+ -
Documentos Anexados
- + -

{{ task.Folio }}

-

{{task.Remetente}}{{ task.CreateDate | date: 'dd/MM/yy' }}

+

{{attachment.Description}}

+

+ {{attachment.Stakeholders}} + Rementente indefinido + {{ attachment.CreateDate | date: 'dd/MM/yy' }} +

- +

Eventos Associados

- - +

{{event.StartDate | date: 'HH:mm'}}

@@ -100,6 +106,7 @@
+
@@ -112,6 +119,7 @@ +
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 a090b7b78..b5f1243fb 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 @@ -22,6 +22,9 @@ import { BadRequestPage } from 'src/app/shared/popover/bad-request/bad-request.p import { SuccessMessagePage } from 'src/app/shared/popover/success-message/success-message.page'; import { OptsExpedientePrPage } from 'src/app/shared/popover/opts-expediente-pr/opts-expediente-pr.page'; import { ToastService } from 'src/app/services/toast.service'; +import { SearchPage } from 'src/app/pages/search/search.page'; +import { Attachment } from 'src/app/models/attachment.model'; +import { SearchDocument } from 'src/app/models/search-document'; @Component({ selector: 'app-expediente-pr', @@ -44,11 +47,12 @@ export class ExpedientePrPage implements OnInit { cc: any = []; loggeduser: User; + documents:SearchDocument[] = []; + attachments:any; constructor( private processes: ProcessesService, private iab: InAppBrowser, - private attachments: AttachmentsService, private events: EventsService, private menu: MenuController, private router: Router, @@ -58,6 +62,7 @@ export class ExpedientePrPage implements OnInit { private userAuth: AuthService, private animationController: AnimationController, private toastService: ToastService, + private attachmentsService: AttachmentsService, ) { this.loggeduser = userAuth.ValidatedUser; @@ -81,10 +86,14 @@ export class ExpedientePrPage implements OnInit { } /* this.serialnumber = paramMap.get('SerialNumber'); */ this.LoadTaskDetail(this.serialnumber); - this.LoadRelatedEvents(this.serialnumber); + //this.LoadRelatedEvents(this.serialnumber); + //this.getAttachments(this.serialnumber); }); this.LoadTaskDetail(this.serialnumber); - this.LoadRelatedEvents(this.serialnumber); + this.getAttachments(this.serialnumber); + //this.LoadRelatedEvents(this.serialnumber); + + } toDateString(e) { @@ -168,10 +177,7 @@ export class ExpedientePrPage implements OnInit { "Status": res.workflowInstanceDataFields.Status, } - console.log('task', this.task); - this.fulltask = res; - console.log('GetTask', res); let thedate = new Date(this.task.CreateDate); this.customDate = this.days[thedate.getDay()]+ ", " + thedate.getDate() +" de " + ( this.months[thedate.getMonth()]); @@ -203,9 +209,18 @@ export class ExpedientePrPage implements OnInit { }); } + getAttachments(serialNumber){ + console.log(serialNumber); + + this.attachmentsService.getAttachmentsBySerial(serialNumber).subscribe(res=>{ + this.attachments = res; + console.log('res', res); + }); + } + async LoadRelatedEvents(serial: string) { if (this.eventsList == null) { - this.attachments.getAttachmentsBySerial(serial).subscribe(res => { + this.attachmentsService.getAttachmentsBySerial(serial).subscribe(res => { console.log(res); res.forEach(att => { if (this.eventsList == null) { @@ -230,6 +245,48 @@ export class ExpedientePrPage implements OnInit { }); } + attachDocument(){ + this.getDoc(); + } + + async getDoc() { + const modal = await this.modalController.create({ + component: SearchPage, + cssClass: 'modal-width-100-width-background modal', + componentProps: { + type: 'AccoesPresidenciais & ArquivoDespachoElect', + showSearchInput: true, + select: true + } + }); + await modal.present(); + modal.onDidDismiss().then((res)=>{ + if(res){ + const data = res.data; + this.documents.push(data.selected); + console.log( this.documents); + this.documents.forEach(element =>{ + let body = { + "Source": "1", + "SourceId": element.Id, + "SourceTitle": element.Assunto, + "SerialNumber": this.task.SerialNumber, + "ApplicationId": element.ApplicationType + } + this.attachmentsService.setEventAttachmentById(body).subscribe((res)=>{ + this.getAttachments(this.task.SerialNumber); + }); + }) + + } + }); + + } + + removeAttachment(index: number){ + this.documents = this.documents.filter( (e, i) => index != i); + } + openMenu() { this.menu.open(); this.modalController.dismiss(); diff --git a/src/app/services/attachments.service.ts b/src/app/services/attachments.service.ts index 1d0992d31..094688a27 100644 --- a/src/app/services/attachments.service.ts +++ b/src/app/services/attachments.service.ts @@ -14,7 +14,7 @@ export class AttachmentsService { loggeduser: User; headers: HttpHeaders; - constructor(private http: HttpClient, user: AuthService) { + constructor(private http: HttpClient, user: AuthService) { this.loggeduser = user.ValidatedUser; this.headers = new HttpHeaders(); this.headers = this.headers.set('Authorization', this.loggeduser.BasicAuthKey); @@ -26,9 +26,9 @@ export class AttachmentsService { params = params.set("SerialNumber", serialNumber); - let options = { - headers: this.headers, - params: params + let options = { + headers: this.headers, + params: params }; return this.http.get(`${geturl}`, options); } @@ -39,10 +39,10 @@ export class AttachmentsService { params = params.set("Source", source.toString()); /* params = params.set("SourceId", sourceid); */ - - let options = { - headers: this.headers, - params: params + + let options = { + headers: this.headers, + params: params }; return this.http.get(`${geturl}`, options); @@ -54,37 +54,35 @@ export class AttachmentsService { params = params.set("ParentId", eventId); /* params = params.set("SourceId", sourceid); */ - + let options = { - headers: this.headers, - params: params + headers: this.headers, + params: params }; return this.http.get(`${geturl}`, options); } - setEventAttachmentById(body: EventAttachment) { + setEventAttachmentById(body: any) { let geturl = environment.apiURL + 'Attachments/Create'; - - let options = { - headers: this.headers, + let options = { + headers: this.headers, } - return this.http.post(`${geturl}`, body, options); } - deleteEventAttachmentById(attachmentId) { - + deleteEventAttachmentById(attachmentId) { + let geturl = environment.apiURL + `Attachments/Delete?attachmentId=${attachmentId}`; let params = new HttpParams(); params = params.set("attachmentId", attachmentId); - let options = { - headers: this.headers, - params: params + let options = { + headers: this.headers, + params: params } return this.http.delete(`${geturl}`, options); 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 4a6f9d045..0549bfd06 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 @@ -14,6 +14,7 @@ +
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 3cb8d26e3..9824230f1 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 @@ -2,10 +2,12 @@ import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, NavigationExtras, Router } from '@angular/router'; import { AnimationController, MenuController, ModalController, NavParams, PopoverController } from '@ionic/angular'; import { AddNotePage } from 'src/app/modals/add-note/add-note.page'; +import { SearchDocument } from 'src/app/models/search-document'; import { User } from 'src/app/models/user.model'; import { DiscartExpedientModalPage } from 'src/app/pages/gabinete-digital/discart-expedient-modal/discart-expedient-modal.page'; import { BookMeetingModalPage } from 'src/app/pages/gabinete-digital/expediente/book-meeting-modal/book-meeting-modal.page'; import { ExpedientTaskModalPage } from 'src/app/pages/gabinete-digital/expediente/expedient-task-modal/expedient-task-modal.page'; +import { SearchPage } from 'src/app/pages/search/search.page'; import { AlertService } from 'src/app/services/alert.service'; import { AttachmentsService } from 'src/app/services/attachments.service'; import { AuthService } from 'src/app/services/auth.service'; @@ -33,6 +35,9 @@ export class OptsExpedientePrPage implements OnInit { serialnumber: string; profile: string; + documents:SearchDocument[] = []; + attachments:any; + showEnviarPendentes = false; loggeduser: User; @@ -41,14 +46,14 @@ export class OptsExpedientePrPage implements OnInit { private popoverController: PopoverController, private modalController: ModalController, private processes: ProcessesService, - private attachments: AttachmentsService, + private attachmentsService: AttachmentsService, private activatedRoute: ActivatedRoute, private userAuth: AuthService, private navParams: NavParams, private animationController: AnimationController, private router: Router, private toastService: ToastService - + ) { this.task = this.navParams.get('task'); @@ -87,9 +92,9 @@ export class OptsExpedientePrPage implements OnInit { cssClass: classs, backdropDismiss: true }); - + await modal.present(); - + modal.onDidDismiss().then(async (res) => { console.log(res); if(res.data){ @@ -99,7 +104,7 @@ export class OptsExpedientePrPage implements OnInit { SourceId: e.Id, } }); - + let docs = { ProcessInstanceID: "", Attachments: DocumentToSave, @@ -118,8 +123,8 @@ export class OptsExpedientePrPage implements OnInit { async approve(note:string, documents:any){ this.popoverController.dismiss(); - let body = { - "serialNumber": this.task.SerialNumber, + let body = { + "serialNumber": this.task.SerialNumber, "action": "Aprovar", "ActionTypeId": 100000004 , "dataFields": { @@ -150,7 +155,7 @@ export class OptsExpedientePrPage implements OnInit { cssClass: 'discart-expedient-modal', backdropDismiss: false }); - + await modal.present(); modal.onDidDismiss().then( async (res)=>{ console.log(res['data']); @@ -168,7 +173,7 @@ export class OptsExpedientePrPage implements OnInit { const loader = this.toastService.loading() - try { + try { await this.processes.CompleteTask(otherbody).toPromise() this.toastService.successMessage('Processo descartado'); this.goBack(); @@ -187,7 +192,7 @@ export class OptsExpedientePrPage implements OnInit { if(res['data']== 'Yes'){ const loader = this.toastService.loading() - try { + try { await this.processes.CompleteTask(body).toPromise(); this.toastService.successMessage('Processo descartado'); this.goBack(); @@ -218,8 +223,8 @@ export class OptsExpedientePrPage implements OnInit { async sendToReview(note:string, documents:any){ - let body = { - "serialNumber": this.task.SerialNumber, + let body = { + "serialNumber": this.task.SerialNumber, "action": "Retificar", "ActionTypeId": 99999877, "dataFields": { @@ -277,7 +282,7 @@ export class OptsExpedientePrPage implements OnInit { // alert('close '+ res['data']) if(res['data']){ console.log('open discart'); - + this.distartExpedientModal(body); } @@ -320,4 +325,51 @@ export class OptsExpedientePrPage implements OnInit { this.router.navigate(['/home/gabinete-digital'], navigationExtras); } } + + getAttachments(serialNumber){ + this.attachmentsService.getAttachmentsBySerial(serialNumber).subscribe(res=>{ + this.attachments = res; + }); + } + + attachDocument(){ + this.getDoc(); + } + + async getDoc() { + const modal = await this.modalController.create({ + component: SearchPage, + cssClass: 'modal-width-100-width-background modal', + componentProps: { + type: 'AccoesPresidenciais & ArquivoDespachoElect', + showSearchInput: true, + select: true + } + }); + await modal.present(); + modal.onDidDismiss().then((res)=>{ + if(res){ + const data = res.data; + this.documents.push(data.selected); + console.log( this.documents); + this.documents.forEach(element =>{ + let body = { + "Source": "1", + "SourceId": element.Id, + "SourceTitle": element.Assunto, + "SerialNumber": this.task.SerialNumber, + "ApplicationId": element.ApplicationType + } + this.attachmentsService.setEventAttachmentById(body).subscribe((res)=>{ + this.getAttachments(this.task.SerialNumber); + }); + }) + + } + }); + + } + + + }