diff --git a/src/app/app-routing.module.ts b/src/app/app-routing.module.ts index bb68a511f..9a6bf1379 100644 --- a/src/app/app-routing.module.ts +++ b/src/app/app-routing.module.ts @@ -47,6 +47,10 @@ const routes: Routes = [ path: 'pedidos', loadChildren: () => import('./shared/gabinete-digital/pedidos/pedidos.module').then( m => m.PedidosPageModule) }, + { + path: 'despachos', + loadChildren: () => import('./shared/gabinete-digital/despachos/despachos.module').then( m => m.DespachosPageModule) + }, /* { path: 'chat', diff --git a/src/app/pages/gabinete-digital/gabinete-digital.module.ts b/src/app/pages/gabinete-digital/gabinete-digital.module.ts index 795060ec6..78f640dfd 100644 --- a/src/app/pages/gabinete-digital/gabinete-digital.module.ts +++ b/src/app/pages/gabinete-digital/gabinete-digital.module.ts @@ -15,6 +15,7 @@ import { EventsToApprovePage } from 'src/app/shared/gabinete-digital/events-to-a import { ExpedientePage } from 'src/app/shared/gabinete-digital/expediente/expediente.page'; import { ExpedientsPage } from 'src/app/shared/gabinete-digital/expedients/expedients.page'; import { PedidosPage } from 'src/app/shared/gabinete-digital/pedidos/pedidos.page'; +import { DespachosPage } from 'src/app/shared/gabinete-digital/despachos/despachos.page'; /* import { ComponentsModule } from 'src/app/components/components.module'; */ @@ -34,6 +35,7 @@ import { PedidosPage } from 'src/app/shared/gabinete-digital/pedidos/pedidos.pag ExpedientePage, ExpedientsPage, PedidosPage, + DespachosPage, ], entryComponents: [ EmptyContainerPage, @@ -41,6 +43,7 @@ import { PedidosPage } from 'src/app/shared/gabinete-digital/pedidos/pedidos.pag ExpedientePage, ExpedientsPage, PedidosPage, + DespachosPage, ], schemas: [CUSTOM_ELEMENTS_SCHEMA] }) diff --git a/src/app/pages/gabinete-digital/gabinete-digital.page.html b/src/app/pages/gabinete-digital/gabinete-digital.page.html index 2e862a2f5..a976a6879 100644 --- a/src/app/pages/gabinete-digital/gabinete-digital.page.html +++ b/src/app/pages/gabinete-digital/gabinete-digital.page.html @@ -45,12 +45,20 @@

- Documentos

+
+
+ +
+

Despachos

+

{{count_desp_dailywork}}Documentos

+
+

Pedidos de Parecer

-

- Documentos

+

{{count_par_dailywork}} Documentos

@@ -58,15 +66,7 @@

Pedidos de Deferimento

-

- Documentos

- - -
-
- -
-

Diplomas por Validar

-

- Documentos

+

{{count_def_dailywork}} Documentos

@@ -109,6 +109,14 @@
+
+
+ +
+

Diplomas por Validar

+

- Documentos

+
+
@@ -131,6 +139,7 @@ +
diff --git a/src/app/pages/gabinete-digital/gabinete-digital.page.ts b/src/app/pages/gabinete-digital/gabinete-digital.page.ts index 8480865d4..e0d3efae8 100644 --- a/src/app/pages/gabinete-digital/gabinete-digital.page.ts +++ b/src/app/pages/gabinete-digital/gabinete-digital.page.ts @@ -18,7 +18,10 @@ export class GabineteDigitalPage implements OnInit { showLoader: boolean; public profile:string; - count_exp_dailywork=0; + count_exp_dailywork=0; + count_desp_dailywork=0; + count_par_dailywork=0; + count_def_dailywork=0; count_exp_pp : string; count_exp_pd : string; count_dip_apr : string; @@ -38,6 +41,7 @@ export class GabineteDigitalPage implements OnInit { showEmptyContainer = false; showExpedients = true; showPedidos = false; + showDespachos = false; showExpedientDetail = false; emptyTextDescription = 'Sem opção selecionada'; @@ -113,6 +117,7 @@ export class GabineteDigitalPage implements OnInit { this.showExpedients = false; this.showExpedients = false; this.showPedidos = false; + this.showDespachos = false; this.showExpedientDetail = false; } @@ -122,6 +127,18 @@ export class GabineteDigitalPage implements OnInit { this.showLoader = false; this.count_exp_dailywork = res; }); + this.processesbackend.GetTasksList("Despacho", true).subscribe(res =>{ + this.showLoader = false; + this.count_desp_dailywork = res; + }); + this.processesbackend.GetTasksList("Pedido de Parecer", true).subscribe(res =>{ + this.showLoader = false; + this.count_par_dailywork = res; + }); + this.processesbackend.GetTasksList("Pedido de Deferimento", true).subscribe(res =>{ + this.showLoader = false; + this.count_def_dailywork = res; + }); this.processesbackend.GetToApprovedEvents('PR','true').subscribe(res=>{ this.count_ev_pr = res; }); @@ -217,6 +234,16 @@ export class GabineteDigitalPage implements OnInit { } } + openDespachosPage(segment:string){ + this.closeAllDesktopComponents(); + if( window.innerWidth <= 1024){ + this.openExpedientList(); + } + else{ + this.showDespachos = true; + } + } + async openExpedientList(){ this.closeAllDesktopComponent(); diff --git a/src/app/shared/gabinete-digital/despachos/despachos-routing.module.ts b/src/app/shared/gabinete-digital/despachos/despachos-routing.module.ts new file mode 100644 index 000000000..9d8da06a2 --- /dev/null +++ b/src/app/shared/gabinete-digital/despachos/despachos-routing.module.ts @@ -0,0 +1,17 @@ +import { NgModule } from '@angular/core'; +import { Routes, RouterModule } from '@angular/router'; + +import { DespachosPage } from './despachos.page'; + +const routes: Routes = [ + { + path: '', + component: DespachosPage + } +]; + +@NgModule({ + imports: [RouterModule.forChild(routes)], + exports: [RouterModule], +}) +export class DespachosPageRoutingModule {} diff --git a/src/app/shared/gabinete-digital/despachos/despachos.module.ts b/src/app/shared/gabinete-digital/despachos/despachos.module.ts new file mode 100644 index 000000000..848f0659a --- /dev/null +++ b/src/app/shared/gabinete-digital/despachos/despachos.module.ts @@ -0,0 +1,20 @@ +import { NgModule } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { FormsModule } from '@angular/forms'; + +import { IonicModule } from '@ionic/angular'; + +import { DespachosPageRoutingModule } from './despachos-routing.module'; + +import { DespachosPage } from './despachos.page'; + +@NgModule({ + imports: [ + CommonModule, + FormsModule, + IonicModule, + DespachosPageRoutingModule + ], + declarations: [DespachosPage] +}) +export class DespachosPageModule {} diff --git a/src/app/shared/gabinete-digital/despachos/despachos.page.html b/src/app/shared/gabinete-digital/despachos/despachos.page.html new file mode 100644 index 000000000..c7ec589fd --- /dev/null +++ b/src/app/shared/gabinete-digital/despachos/despachos.page.html @@ -0,0 +1,85 @@ + +
+
Despacho
+
+ +
+
+ + + + Lista de despachos + + + +
+ + + + + + +
+
+ + + + +
+
+
+ {{ task.CreateDate | date: 'dd-MM-yy' }} +
+
+ {{task.Remetente}} +
+
+ + +
+
+
+ {{ task.Folio }} +
+
+
+
+ +
+
+
+ + + + + + + +

+

+

+
+
+ + + + + +

+

+

+
+
+
+
+
+ diff --git a/src/app/shared/gabinete-digital/despachos/despachos.page.scss b/src/app/shared/gabinete-digital/despachos/despachos.page.scss new file mode 100644 index 000000000..e624d0744 --- /dev/null +++ b/src/app/shared/gabinete-digital/despachos/despachos.page.scss @@ -0,0 +1,177 @@ +@import '~src/function.scss'; +/* CONTENT */ +:host{ + padding: 30px 20px 0 20px !important; + margin: 0; +} +.title{ + font-family: Roboto; + font-size: 25px; + color:#000; + overflow: auto; + + .thetitle{ + width: fit-content; + float: left; + } + .theicon{ + width: fit-content; + float: right; + } + } +.item-list-small{ + font-size: 11px; + overflow: hidden; + } + .ion-item-class{ + padding: 0; + + } + .label-text{ + width: 100%; + padding: 0; + margin: 0; + } +//DIV +ion-item{ + --background: none; +} +.item { + //border-radius: 15px; + //box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.07); + //Sborder: solid 1px #e9e9e9; + background-color: var(--white); + margin: 0 auto; + //padding: 10px; + margin-bottom: 10px; + overflow: hidden; + } +.div-content-expediente{ + width: 100%; + float: left; + border-left: 3px solid #dae3f3; + padding:5px 5px 15px 5px; + margin: 10px 0 10px 0; + background: #dae3f3; + border-radius: 20px; +} +.div-content-pendentes{ + width: 100%; + float: left; + border-left: 3px solid #d9d9d9; + padding: 5px; +} + .div-content-expediente h3, .div-content-pendentes h3{ + margin: 0; + padding: 0; + font-size: 14pt; + width: 100%; + } + .div-icon{ + width: 10%; + font-size: 20px; + float: left; + color: #808080; + } + .div-icon ion-icon{ + display: block; + margin: 0 auto; + + } + .div-content-expediente p, .div-content-pendentes p{ + font-size: 14pt; + color: rgb(94, 92, 92); + padding: 0; + margin: 0; + } + .span-left{ + /* border: 1px solid red; */ + float: left; + font-size: 12px; + padding-left: 18px; + } + .span-right{ + /* border: 1px solid blue; */ + text-align: right; + float: right; + font-size: 12px; + padding-right: 18px; +} + +/* New CSS */ +.expediente{ + padding-top: 10px; +} +.exp-list-item{ + //width: 368px; + overflow: auto; + /* border-bottom: 1px solid gray; */ + margin: 10px auto; +} +.exp-top-detail{ + width: 100%; + overflow: auto; +} +.exp-date{ + width: auto; + font-family: Roboto; + font-size: 13px; + font-weight: normal; + font-stretch: normal; + font-style: normal; + line-height: normal; + letter-spacing: normal; + color: #797979; + float: left; +} +.exp-remetente{ + //width: 200px; + font-family: Roboto; + font-size: 13px; + font-weight: normal; + color: #000000; + float: left; + margin-left: 16px; + +} +.exp-icon{ + width: 45px; + float: right; + font-size: 13px; +} +.exp-icon ion-icon{ + font-size: 25px; + color: #42b9fe; +} +.exp-bottom-detail{ + float: left; + font-family: Roboto; + font-size: 16px; + font-weight: 700; + color: #0d89d1; +} +.div-top-header{ + width: 400px; + margin: 6px auto; + background-color: #0782c9; + overflow: auto; +} +.div-search{ + font-size: 45px; + float: left; + margin: 0 0 0 10px +} +.div-logo{ + background: transparent; + width: 150px; + margin: 2.5px 0 2.5px 71px; + float: left; +} +.div-logo img{ + width: 100%; +} +.div-profile{ + font-size: 45px; + float: right; + margin-right: 10px; +} \ No newline at end of file diff --git a/src/app/shared/gabinete-digital/despachos/despachos.page.spec.ts b/src/app/shared/gabinete-digital/despachos/despachos.page.spec.ts new file mode 100644 index 000000000..efae597ec --- /dev/null +++ b/src/app/shared/gabinete-digital/despachos/despachos.page.spec.ts @@ -0,0 +1,24 @@ +import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing'; +import { IonicModule } from '@ionic/angular'; + +import { DespachosPage } from './despachos.page'; + +describe('DespachosPage', () => { + let component: DespachosPage; + let fixture: ComponentFixture; + + beforeEach(waitForAsync(() => { + TestBed.configureTestingModule({ + declarations: [ DespachosPage ], + imports: [IonicModule.forRoot()] + }).compileComponents(); + + fixture = TestBed.createComponent(DespachosPage); + component = fixture.componentInstance; + fixture.detectChanges(); + })); + + it('should create', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/shared/gabinete-digital/despachos/despachos.page.ts b/src/app/shared/gabinete-digital/despachos/despachos.page.ts new file mode 100644 index 000000000..b12d320c1 --- /dev/null +++ b/src/app/shared/gabinete-digital/despachos/despachos.page.ts @@ -0,0 +1,115 @@ +import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; +import { Router } from '@angular/router'; +import { CalendarComponent } from 'ionic2-calendar'; + +import { DailyWorkTask } from '../../../models/dailyworktask.model'; +import { ProcessesService } from 'src/app/services/processes.service'; +import { formatDate } from '@angular/common'; +import { LoadingService } from 'src/app/services/loading.service'; +import { ModalController, NavParams } from '@ionic/angular'; +import { ExpedienteDetailPage } from 'src/app/pages/gabinete-digital/expediente/expediente-detail/expediente-detail.page'; +import { AlertService } from 'src/app/services/alert.service'; + +@Component({ + selector: 'app-despachos', + templateUrl: './despachos.page.html', + styleUrls: ['./despachos.page.scss'], +}) +export class DespachosPage implements OnInit { + //profile:string; + + @ViewChild(CalendarComponent) myCal: CalendarComponent; + + taskslist:DailyWorkTask[]; + despachoList:DailyWorkTask[]; + deferimentoList:DailyWorkTask[]; + taskType: string; + serialNumber:string; + + @Input() profile:string; + segment:string; + @Output() openExpedientDetail:EventEmitter = new EventEmitter(); + + constructor( + private processes:ProcessesService, + private modalController: ModalController, + private alertService: AlertService, + ) { + this.profile = 'mdgpr'; + } + + ngOnInit() { + //Inicializar segment + this.segment = "despachos"; + this.LoadList(); + } + segmentChanged(ev: any) { + this.LoadList(); + } + + notImplemented(){ + this.alertService.presentAlert('Funcionalidade em desenvolvimento'); + } + + openExpedientDetailPage(data){ + console.log(data); + this.openExpedientDetail.emit(data); + } + + LoadList(){ + this.processes.GetTasksList("Despacho", false).subscribe(result => { + console.log(result); + + this.despachoList = new Array(); + let res = result.reverse(); + res.forEach(element => { + let task: DailyWorkTask = { + "SerialNumber": element.serialNumber, + "Folio": element.workflowInstanceFolio, + "Senders": element.originator.email, + "CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'), + "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, + "Remetente": element.workflowInstanceDataFields.Remetente + } + this.despachoList.push(task); + }); + console.log(this.despachoList); + }); + } + + doRefresh(event) { + this.LoadList(); + + setTimeout(() => { + event.target.complete(); + }, 2000); + } + + async viewExpedientDetail(serialNumber:any) { + console.log(this.profile); + + let classs; + if( window.innerWidth <= 800){ + classs = 'modal' + } else { + classs = 'modal modal-desktop' + } + + const modal = await this.modalController.create({ + component: ExpedienteDetailPage, + componentProps:{ + enterAnimation: "", + serialNumber: serialNumber, + profile: this.profile, + }, + cssClass: classs, + }); + await modal.present(); + modal.onDidDismiss().then((res)=>{ + console.log('refresh list'); + this.LoadList(); + }); + } + +} + \ No newline at end of file diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos.page.html b/src/app/shared/gabinete-digital/pedidos/pedidos.page.html index 61159c3b3..09539eae4 100644 --- a/src/app/shared/gabinete-digital/pedidos/pedidos.page.html +++ b/src/app/shared/gabinete-digital/pedidos/pedidos.page.html @@ -8,11 +8,11 @@
- + Pedidos de Parecer - + Pedidos de Defereimento @@ -28,41 +28,66 @@ -
- - - -
-
-
- {{ task.CreateDate | date: 'dd-MM-yy' }} +
+
+ + + + +
+
+
+ {{ task.CreateDate | date: 'dd-MM-yy' }} +
+
+ {{task.Remetente}} +
+
+ + +
-
- {{task.Remetente}} -
-
- - +
+ {{ task.Folio }}
-
- {{ task.Folio }} + + + +
+
+ + + + +
+
+
+ {{ task.CreateDate | date: 'dd-MM-yy' }} +
+
+ {{task.Remetente}} +
+
+ + +
+
+
+ {{ task.Folio }} +
-
- - - - - - - - + + +
-
+
diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos.page.scss b/src/app/shared/gabinete-digital/pedidos/pedidos.page.scss index cbf52c39c..e624d0744 100644 --- a/src/app/shared/gabinete-digital/pedidos/pedidos.page.scss +++ b/src/app/shared/gabinete-digital/pedidos/pedidos.page.scss @@ -21,7 +21,7 @@ } .item-list-small{ font-size: 11px; - overflow: auto; + overflow: hidden; } .ion-item-class{ padding: 0; @@ -44,7 +44,7 @@ ion-item{ margin: 0 auto; //padding: 10px; margin-bottom: 10px; - overflow: auto; + overflow: hidden; } .div-content-expediente{ width: 100%; diff --git a/src/app/shared/gabinete-digital/pedidos/pedidos.page.ts b/src/app/shared/gabinete-digital/pedidos/pedidos.page.ts index a35d45180..52a0c313e 100644 --- a/src/app/shared/gabinete-digital/pedidos/pedidos.page.ts +++ b/src/app/shared/gabinete-digital/pedidos/pedidos.page.ts @@ -22,6 +22,9 @@ export class PedidosPage implements OnInit { @ViewChild(CalendarComponent) myCal: CalendarComponent; taskslist:DailyWorkTask[]; + parecerList:DailyWorkTask[]; + deferimentoList:DailyWorkTask[]; + taskType: string; serialNumber:string; @Input() profile:string; @@ -40,6 +43,9 @@ export class PedidosPage implements OnInit { //Inicializar segment this.LoadList(); } + segmentChanged(ev: any) { + this.LoadList(); + } notImplemented(){ this.alertService.presentAlert('Funcionalidade em desenvolvimento'); @@ -51,25 +57,53 @@ export class PedidosPage implements OnInit { } LoadList(){ - this.processes.GetTasksList("Pedido de Deferimento", false).subscribe(result => { - console.log(result); - - this.taskslist = new Array(); - let res = result.reverse(); - res.forEach(element => { - let task: DailyWorkTask = { - "SerialNumber": element.serialNumber, - "Folio": element.workflowInstanceDataFields.Subject, - "Senders": element.originator.email, - "CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'), - "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, - "Remetente": element.workflowInstanceDataFields.Remetente - } - this.taskslist.push(task); + if(this.segment == 'parecer'){ + this.taskType = "Pedido de Parecer"; + this.processes.GetTasksList("Pedido de Parecer", false).subscribe(result => { + console.log(result); + + this.parecerList = new Array(); + let res = result.reverse(); + res.forEach(element => { + let task: DailyWorkTask = { + "SerialNumber": element.serialNumber, + "Folio": element.workflowInstanceFolio, + "Senders": element.originator.email, + "CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'), + "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, + "Remetente": element.workflowInstanceDataFields.Remetente + } + this.parecerList.push(task); + }); + console.log(this.parecerList); + }); - console.log(this.taskslist); - - }); + } + else if(this.segment == 'deferimento'){ + this.taskType = "Pedido de Deferimento"; + this.processes.GetTasksList("Pedido de Deferimento", false).subscribe(result => { + console.log(result); + + this.deferimentoList = new Array(); + let res = result.reverse(); + res.forEach(element => { + let task: DailyWorkTask = { + "SerialNumber": element.serialNumber, + "Folio": element.workflowInstanceFolio, + "Senders": element.originator.email, + "CreateDate": formatDate(new Date(element.taskStartDate), 'yyyy-MM-dd HH:mm', 'pt'), + "DocumentURL": element.workflowInstanceDataFields.ViewerRequest, + "Remetente": element.workflowInstanceDataFields.Remetente + } + this.deferimentoList.push(task); + }); + console.log(this.deferimentoList); + + }); + } + console.log(this.taskType); + + } doRefresh(event) {