diff --git a/src/app/pages/gabinete-digital/pendentes/pendentes.page.html b/src/app/pages/gabinete-digital/pendentes/pendentes.page.html index f917efde2..cef57a2b4 100644 --- a/src/app/pages/gabinete-digital/pendentes/pendentes.page.html +++ b/src/app/pages/gabinete-digital/pendentes/pendentes.page.html @@ -26,12 +26,12 @@ refreshingText="A actualizar..."> - -
+ +
-
@@ -43,7 +43,7 @@
- +
@@ -53,7 +53,7 @@
- {{task.WorkflowName}} + {{task.activityInstanceName}}
{{ task.CreateDate | date: 'dd-MM-yy' }} @@ -62,10 +62,10 @@
- +
-
+
diff --git a/src/app/pages/gabinete-digital/pendentes/pendentes.page.ts b/src/app/pages/gabinete-digital/pendentes/pendentes.page.ts index 363602e0e..ba240c3bd 100644 --- a/src/app/pages/gabinete-digital/pendentes/pendentes.page.ts +++ b/src/app/pages/gabinete-digital/pendentes/pendentes.page.ts @@ -21,24 +21,25 @@ export class PendentesPage implements OnInit { serialNumber:string; totalDocs:any; showLoader: boolean; - + @Input() profile:string; segment:string; @Output() openExpedientDetail:EventEmitter = new EventEmitter(); - + constructor( private processes:ProcessesService, private alertService: AlertService, private router: Router, private activatedRoute: ActivatedRoute, - ) { + ) { + this.pendentesList = new Array(); this.profile = 'mdgpr'; } - + ngOnInit() { //Inicializar segment this.segment = "despachos"; - + const pathname = window.location.pathname this.router.events.forEach((event) => { if(event instanceof NavigationEnd && event.url == pathname) { @@ -46,7 +47,7 @@ export class PendentesPage implements OnInit { } }); } - + segmentChanged(ev: any) { this.refreshing(); } @@ -54,88 +55,65 @@ export class PendentesPage implements OnInit { goBack() { this.router.navigate(['/home/gabinete-digital']); } - + notImplemented(){ this.alertService.presentAlert('Funcionalidade em desenvolvimento'); } - + openExpedientDetailPage(data){ this.openExpedientDetail.emit(data); } - + async LoadList(){ this.showLoader = true; this.pendentesList = new Array(); + let pendentes = await this.processes.GetPendingTasks(false).toPromise(); - let despachos = await this.processes.GetTasksList("Despacho", false).toPromise(); - let pareceres = await this.processes.GetTasksList("Pedido de Parecer", false).toPromise(); - let deferimentos = await this.processes.GetTasksList("Pedido de Deferimento", false).toPromise(); - let expedientes = await this.processes.GetTasksList("Expediente", false).toPromise(); - let expedientes_pr = await this.processes.GetTasksList("Expediente do Presidente", false).toPromise(); - - let pendentes = despachos.concat(pareceres, deferimentos, expedientes, expedientes_pr).reverse().filter(data => data.workflowInstanceDataFields.Status == "Pending"); - console.log(pendentes); pendentes.forEach(element => { - let DocId = element.workflowInstanceDataFields.FolderID; - let ApplicationId = element.workflowInstanceDataFields.ApplicationId; - this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{ - this.totalDocs = res.DocumentsTotal; - console.log(res.DocumentsTotal); - let date = new Date(element.taskStartDate); - date.setMonth(date.getMonth() + 1); - let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds(); + let date = new Date(element.taskStartDate); + date.setMonth(date.getMonth() + 1); + let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds(); - let task = { - "SerialNumber": element.serialNumber, - "Folio": element.workflowInstanceDataFields.Subject, - "Senders": element.workflowInstanceDataFields.Sender, - "CreateDate": taskDate, - "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, - "Remetente": element.workflowInstanceDataFields.Remetente, - "DocumentsQty": 0, - "DocId": element.workflowInstanceDataFields.DocIdDiferimento, - "WorkflowName": element.workflowDisplayName, - "activityInstanceName": element.activityInstanceName, - "Status": element.workflowInstanceDataFields.Status, + let task = { + "SerialNumber": element.serialNumber, + "Folio": element.workflowInstanceDataFields.Subject, + "Senders": element.workflowInstanceDataFields.Sender, + "CreateDate": taskDate, + "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, + "Remetente": element.workflowInstanceDataFields.Remetente, + "DocumentsQty": 0, + "DocId": element.workflowInstanceDataFields.DocIdDiferimento, + "WorkflowName": element.workflowDisplayName, + "activityInstanceName": element.activityInstanceName, + "Status": element.workflowInstanceDataFields.Status, } this.pendentesList.push(task); this.pendentesList = removeDuplicate( this.pendentesList) - }, - (error)=>{ - let task = { - "SerialNumber": element.serialNumber, - "Folio": element.workflowInstanceDataFields.Subject, - "Senders": element.workflowInstanceDataFields.Sender, - "CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'), - "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, - "Remetente": element.workflowInstanceDataFields.Remetente, - "DocumentsQty": 0, - "DocId": element.workflowInstanceDataFields.DocId, - "WorkflowName": element.workflowDisplayName, - "activityInstanceName": element.activityInstanceName, - "Status": element.workflowInstanceDataFields.Status, - } - this.pendentesList.push(task); - this.pendentesList = removeDuplicate( this.pendentesList) - }); + this.pendentesList = this.sortArrayISODate(this.pendentesList); }); this.showLoader = false; } + sortArrayISODate(myArray: any){ + return myArray.sort(function(a, b) { + return (a.CreateDate < b.CreateDate) ? -1 : ((a.CreateDate > b.CreateDate) ? 1 : 0); + }); + } + async refreshing() { setTimeout(() => { this.LoadList(); }, 1500); } - + doRefresh(event) { this.LoadList(); - + setTimeout(() => { event.target.complete(); }, 2000); } - + async viewTaskDetails(serialNumber:string, workflowName:string) { if(workflowName == 'Despacho'){ this.router.navigate(['/home/gabinete-digital/despachos',serialNumber,'gabinete-digital']); @@ -146,9 +124,8 @@ export class PendentesPage implements OnInit { else if(workflowName == 'Expediente'){ this.router.navigate(['/home/gabinete-digital/expediente',serialNumber,'gabinete-digital']); } - + } - + } - \ No newline at end of file diff --git a/src/app/services/processes.service.ts b/src/app/services/processes.service.ts index 67863f0c8..0cbf7177d 100644 --- a/src/app/services/processes.service.ts +++ b/src/app/services/processes.service.ts @@ -15,7 +15,7 @@ export class ProcessesService { 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); @@ -28,10 +28,10 @@ export class ProcessesService { params = params.set("ProcessName", processname); params = params.set("OnlyCount", onlycount.toString()); - - let options = { - headers: this.headers, - params: params + + let options = { + headers: this.headers, + params: params }; return this.http.get(`${geturl}`, options); @@ -42,10 +42,10 @@ export class ProcessesService { let params = new HttpParams(); 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); } @@ -54,18 +54,32 @@ export class ProcessesService { let params = new HttpParams(); params = params.set("serialNumber", serialNumber); - - let options = { - headers: this.headers, - params: params + + let options = { + headers: this.headers, + params: params }; return this.http.post(`${geturl}`,'', options); } + GetPendingTasks(onlyCount: boolean){ + const geturl = environment.apiURL + 'Tasks/ListPending'; + let params = new HttpParams(); + + params = params.set("onlyCount", onlyCount.toString()); + + let options = { + headers: this.headers, + params: params + }; + + return this.http.get(`${geturl}`, options); + } + DelegateTask(body:any){ const geturl = environment.apiURL + 'Tasks/DelegateTask'; - - let options = { + + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options); @@ -76,10 +90,10 @@ export class ProcessesService { let params = new HttpParams(); params = params.set("folderId", folderId); - - let options = { - headers: this.headers, - params: params + + let options = { + headers: this.headers, + params: params }; return this.http.get(`${geturl}`, options); } @@ -90,10 +104,10 @@ export class ProcessesService { let params = new HttpParams(); 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); } @@ -102,7 +116,7 @@ export class ProcessesService { { const geturl = environment.apiURL + 'tasks/GetMDOficialTasks'; let options = { - headers: this.headers, + headers: this.headers, }; return this.http.get(`${geturl}`, options); } @@ -111,7 +125,7 @@ export class ProcessesService { { const geturl = environment.apiURL + 'tasks/GetMDPersonalTasks'; let options = { - headers: this.headers, + headers: this.headers, }; return this.http.get(`${geturl}`, options); } @@ -123,18 +137,18 @@ export class ProcessesService { params = params.set("categoryname", categoryname); params = params.set("onlyCount", count); - - let options = { - headers: this.headers, - params: params, + + let options = { + headers: this.headers, + params: params, }; return this.http.get(`${geturl}`, options); } PostTaskAction(body:any){ const geturl = environment.apiURL + 'Tasks/Complete'; - - let options = { + + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options) @@ -142,8 +156,8 @@ export class ProcessesService { CompleteTask(body:any){ const geturl = environment.apiURL + 'Tasks/CompleteTask'; - - let options = { + + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options) @@ -151,8 +165,8 @@ export class ProcessesService { CompleteParecerPrTask(body:any){ const geturl = environment.apiURL + 'Tasks/CompleteTaskParecerPr'; - - let options = { + + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options) @@ -163,10 +177,10 @@ export class ProcessesService { let params = new HttpParams(); params = params.set("FolderId", FolderId); - - let options = { - headers: this.headers, - params: params + + let options = { + headers: this.headers, + params: params }; return this.http.post(`${geturl}`,'', options); } @@ -177,17 +191,17 @@ export class ProcessesService { params = params.set("DocId", DocId); params = params.set("applicationid", FsId); - - let options = { - headers: this.headers, - params: params + + let options = { + headers: this.headers, + params: params }; return this.http.get(`${geturl}`, options); } - + postDespatcho(body:any) { const geturl = environment.apiURL + 'Processes/CreateDispatch'; - let options = { + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options) @@ -195,7 +209,7 @@ export class ProcessesService { postDespatchoPr(body:any) { const geturl = environment.apiURL + 'Processes/CreateDispatchPR'; - let options = { + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options) @@ -203,7 +217,7 @@ export class ProcessesService { postParecer(body:any){ const geturl = environment.apiURL + 'Processes/CreateParecer'; - let options = { + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options) @@ -211,7 +225,7 @@ export class ProcessesService { postParecerPr(body:any){ const geturl = environment.apiURL + 'Processes/CreateParecerPR'; - let options = { + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options) @@ -219,7 +233,7 @@ export class ProcessesService { postDeferimento(body:any){ const geturl = environment.apiURL + 'Processes/CreateDeferimento'; - let options = { + let options = { headers: this.headers, }; return this.http.post(`${geturl}`, body, options) @@ -228,32 +242,32 @@ export class ProcessesService { GetActionsList(){ const geturl = environment.apiURL + 'presidentialActions'; - let options = { - headers: this.headers, + let options = { + headers: this.headers, }; console.log(options); - + return this.http.get(`${geturl}`, options); } GetSubjectType(){ const geturl = environment.apiURL + 'ecm/SubjectType'; - let options = { - headers: this.headers, + let options = { + headers: this.headers, }; return this.http.get(`${geturl}`, options); } GetDocumentDetails(DocId:string, FsId:string){ - + const geturl = environment.apiURL + 'search/documents'; let params = new HttpParams(); params = params.set("docId", DocId); params = params.set("applicationId", FsId); - - let options = { - headers: this.headers, - params: params + + let options = { + headers: this.headers, + params: params }; return this.http.get(`${geturl}`, options); } diff --git a/src/app/shared/agenda/edit-event/edit-event.page.html b/src/app/shared/agenda/edit-event/edit-event.page.html index 451650dfe..e340757fc 100644 --- a/src/app/shared/agenda/edit-event/edit-event.page.html +++ b/src/app/shared/agenda/edit-event/edit-event.page.html @@ -127,7 +127,6 @@ [showSeconds]="showSeconds" [stepHour]="stepHour" [stepMinute]="stepMinute" [stepSecond]="stepSecond" - [min]="endMinDate" [touchUi]="touchUi"> @@ -198,7 +197,6 @@ diff --git a/src/app/shared/agenda/edit-event/edit-event.page.ts b/src/app/shared/agenda/edit-event/edit-event.page.ts index 16690c33f..d30cc8528 100644 --- a/src/app/shared/agenda/edit-event/edit-event.page.ts +++ b/src/app/shared/agenda/edit-event/edit-event.page.ts @@ -20,7 +20,7 @@ import * as moment from 'moment'; }) export class EditEventPage implements OnInit { - + stEvent: Event; isRecurring:string; isEventEdited: boolean; @@ -213,9 +213,9 @@ export class EditEventPage implements OnInit { dateEnd: new FormControl(this.dateEnd, [ Validators.required ]), - /* IsRecurring: new FormControl(this.postEvent.IsRecurring, [ + dateOccurrence: new FormControl(this.dateOccurrence, [ Validators.required - ]), */ + ]), participantes: new FormControl(this.taskParticipants, [ Validators.required ]), @@ -226,6 +226,28 @@ export class EditEventPage implements OnInit { }) } + openInicio() { + let input: any = document.querySelector('#new-inicio') + if(input) { + console.log(input) + input.click() + } + } + + openFim() { + let input: any = document.querySelector('#new-fim') + if(input) { + input.click() + } + } + + openLastOccurrence() { + let input: any = document.querySelector('#last-occurrence') + if(input) { + input.click() + } + } + async save() { diff --git a/src/app/shared/gabinete-digital/pendentes/pendentes.page.html b/src/app/shared/gabinete-digital/pendentes/pendentes.page.html index 9690dedd9..bcbb2202c 100644 --- a/src/app/shared/gabinete-digital/pendentes/pendentes.page.html +++ b/src/app/shared/gabinete-digital/pendentes/pendentes.page.html @@ -17,11 +17,11 @@ refreshingText="A actualizar..."> - +
- @@ -39,7 +39,7 @@
- +
@@ -50,7 +50,7 @@
- + diff --git a/src/app/shared/gabinete-digital/pendentes/pendentes.page.ts b/src/app/shared/gabinete-digital/pendentes/pendentes.page.ts index e43b725c5..53b35c705 100644 --- a/src/app/shared/gabinete-digital/pendentes/pendentes.page.ts +++ b/src/app/shared/gabinete-digital/pendentes/pendentes.page.ts @@ -1,16 +1,12 @@ import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; -import { NavigationEnd, NavigationExtras, Router } from '@angular/router'; +import { NavigationEnd, Router } from '@angular/router'; import { CalendarComponent } from 'ionic2-calendar'; - +import { removeDuplicate } from 'src/plugin/removeDuplicate.js' import { DailyWorkTask } from '../../../models/dailyworktask.model'; import { ProcessesService } from 'src/app/services/processes.service'; -import { formatDate } from '@angular/common'; -import { ModalController, NavParams } from '@ionic/angular'; +import { ModalController } from '@ionic/angular'; import { AlertService } from 'src/app/services/alert.service'; -import { DespachoPage } from 'src/app/pages/gabinete-digital/despachos/despacho/despacho.page'; import { AuthService } from 'src/app/services/auth.service'; -import { PedidoPage } from 'src/app/pages/gabinete-digital/pedidos/pedido/pedido.page'; -import { ExpedienteDetailPage } from 'src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page'; @Component({ @@ -26,96 +22,72 @@ export class PendentesPage implements OnInit { serialNumber:string; totalDocs:any; showLoader: boolean; - + @Input() profile:string; segment:string; @Output() openExpedientDetail:EventEmitter = new EventEmitter(); - + constructor( private processes:ProcessesService, private modalController: ModalController, private alertService: AlertService, private authService: AuthService, private router: Router, - ) { + ) { + this.pendentesList = new Array(); this.profile = 'mdgpr'; } - + ngOnInit() { //Inicializar segment this.segment = "despachos"; this.LoadList(); const pathname = window.location.pathname - + this.router.events.forEach((event) => { if(event instanceof NavigationEnd && event.url == pathname) { this.LoadList(); } }); } - + segmentChanged(ev: any) { this.LoadList(); } - + openExpedientDetailPage(data){ console.log(data); this.openExpedientDetail.emit(data); } - + async LoadList(){ this.showLoader = true; - this.pendentesList = []; - - let despachos = await this.processes.GetTasksList("Despacho", false).toPromise(); - let pareceres = await this.processes.GetTasksList("Pedido de Parecer", false).toPromise(); - let deferimentos = await this.processes.GetTasksList("Pedido de Deferimento", false).toPromise(); - let expedientes = await this.processes.GetTasksList("Expediente", false).toPromise(); - let expedientes_pr = await this.processes.GetTasksList("Expediente do Presidente", false).toPromise(); + this.pendentesList = new Array(); + let pendentes = await this.processes.GetPendingTasks(false).toPromise(); - let pendentes = despachos.concat(pareceres, deferimentos, expedientes, expedientes_pr).filter(data => data.workflowInstanceDataFields.Status == "Pending"); - pendentes.forEach(element => { - let DocId = element.workflowInstanceDataFields.FolderID; - let ApplicationId = element.workflowInstanceDataFields.ApplicationId; - this.processes.GetDocumentDetails(DocId, '361').subscribe(res=>{ - this.totalDocs = res.DocumentsTotal; - let date = new Date(element.taskStartDate); - date.setMonth(date.getMonth() + 1); - let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds(); + let date = new Date(element.taskStartDate); + date.setMonth(date.getMonth() + 1); + let taskDate = date.getFullYear()+"-"+ date.getMonth()+"-"+date.getDate()+" "+date.getHours()+":"+date.getMinutes()+ ":"+date.getSeconds(); - let task = { - "SerialNumber": element.serialNumber, - "Folio": element.workflowInstanceDataFields.Subject, - "Senders": element.workflowInstanceDataFields.Sender, - "CreateDate": new Date(element.taskStartDate), - "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, - "Remetente": element.workflowInstanceDataFields.Sender, - "DocumentsQty": 0, - "DocId": element.workflowInstanceDataFields.DocIdDiferimento, - "WorkflowName": element.workflowDisplayName, - "activityInstanceName": element.activityInstanceName, + let task = { + "SerialNumber": element.serialNumber, + "Folio": element.workflowInstanceDataFields.Subject, + "Senders": element.workflowInstanceDataFields.Sender, + "CreateDate": taskDate, + "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, + "Remetente": element.workflowInstanceDataFields.Remetente, + "DocumentsQty": 0, + "DocId": element.workflowInstanceDataFields.DocIdDiferimento, + "WorkflowName": element.workflowDisplayName, + "activityInstanceName": element.activityInstanceName, + "Status": element.workflowInstanceDataFields.Status, } this.pendentesList.push(task); - }, - (error)=>{ - let task = { - "SerialNumber": element.serialNumber, - "Folio": element.workflowInstanceDataFields.Subject, - "Senders": element.workflowInstanceDataFields.Sender, - "CreateDate": new Date(element.taskStartDate), - "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, - "Remetente": element.workflowInstanceDataFields.Remetente, - "DocumentsQty": 0, - "DocId": element.workflowInstanceDataFields.DocId, - "WorkflowName": element.workflowDisplayName, - "activityInstanceName": element.activityInstanceName, - } - this.pendentesList.push(task); - }); + this.pendentesList = removeDuplicate( this.pendentesList) + this.pendentesList = this.sortArrayISODate(this.pendentesList); }); - this.pendentesList = this.sortArrayISODate(this.pendentesList).reverse(); this.showLoader = false; } @@ -125,11 +97,11 @@ export class PendentesPage implements OnInit { }); } - + doRefresh() { this.LoadList(); } - + async viewTaskDetails(serialNumber:string, workflowName:string) { console.log(this.profile); if(workflowName == 'Despacho'){ @@ -142,6 +114,5 @@ export class PendentesPage implements OnInit { this.router.navigate(['/home/gabinete-digital/expediente',serialNumber,'gabinete-digital']); } } - + } - \ No newline at end of file