mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-20 05:16:07 +00:00
Fix conflit
This commit is contained in:
+149
-144
@@ -1,133 +1,134 @@
|
|||||||
import { NgModule } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import { PreloadAllModules, RouterModule, Routes } from '@angular/router';
|
import { PreloadAllModules, RouterModule, Routes } from '@angular/router';
|
||||||
import { ChatPage } from './pages/chat/chat.page';
|
import { ChatPage } from './pages/chat/chat.page';
|
||||||
import { MessagesPage } from './pages/chat/messages/messages.page';
|
import { MessagesPage } from './pages/chat/messages/messages.page';
|
||||||
|
|
||||||
const routes: Routes = [
|
const routes: Routes = [
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
loadChildren: () => import('./index/index.module').then(m => m.IndexPageModule)
|
loadChildren: () => import('./index/index.module').then(m => m.IndexPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '',
|
path: '',
|
||||||
loadChildren: () => import('./home/home.module').then( m => m.HomePageModule)
|
loadChildren: () => import('./home/home.module').then( m => m.HomePageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'empty-chat',
|
path: 'empty-chat',
|
||||||
loadChildren: () => import('./shared/chat/empty-chat/empty-chat.module').then( m => m.EmptyChatPageModule)
|
loadChildren: () => import('./shared/chat/empty-chat/empty-chat.module').then( m => m.EmptyChatPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'empty-container',
|
path: 'empty-container',
|
||||||
loadChildren: () => import('./shared/empty-container/empty-container.module').then( m => m.EmptyContainerPageModule)
|
loadChildren: () => import('./shared/empty-container/empty-container.module').then( m => m.EmptyContainerPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'events-to-approve',
|
path: 'events-to-approve',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/events-to-approve/events-to-approve.module').then( m => m.EventsToApprovePageModule)
|
loadChildren: () => import('./shared/gabinete-digital/events-to-approve/events-to-approve.module').then( m => m.EventsToApprovePageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'expedients',
|
path: 'expedients',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/expedients/expedients.module').then( m => m.ExpedientsPageModule)
|
loadChildren: () => import('./shared/gabinete-digital/expedients/expedients.module').then( m => m.ExpedientsPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'document-detail',
|
path: 'document-detail',
|
||||||
loadChildren: () => import('./modals/document-detail/document-detail.module').then( m => m.DocumentDetailPageModule)
|
loadChildren: () => import('./modals/document-detail/document-detail.module').then( m => m.DocumentDetailPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'edit-group',
|
path: 'edit-group',
|
||||||
loadChildren: () => import('./shared/chat/edit-group/edit-group.module').then( m => m.EditGroupPageModule)
|
loadChildren: () => import('./shared/chat/edit-group/edit-group.module').then( m => m.EditGroupPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'pedidos',
|
path: 'pedidos',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/pedidos/pedidos.module').then( m => m.PedidosPageModule)
|
loadChildren: () => import('./shared/gabinete-digital/pedidos/pedidos.module').then( m => m.PedidosPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'event-list',
|
path: 'event-list',
|
||||||
loadChildren: () => import('./pages/gabinete-digital/event-list/event-list.module').then(m =>m.EventListPageModule)
|
loadChildren: () => import('./pages/gabinete-digital/event-list/event-list.module').then(m =>m.EventListPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'despachos',
|
path: 'despachos',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/despachos/despachos.module').then( m => m.DespachosPageModule)
|
loadChildren: () => import('./shared/gabinete-digital/despachos/despachos.module').then( m => m.DespachosPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'create-process',
|
path: 'create-process',
|
||||||
loadChildren: () => import('./modals/create-process/create-process.module').then( m => m.CreateProcessPageModule)
|
loadChildren: () => import('./modals/create-process/create-process.module').then( m => m.CreateProcessPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'pendentes',
|
path: 'pendentes',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/pendentes/pendentes.module').then( m => m.PendentesPageModule)
|
loadChildren: () => import('./shared/gabinete-digital/pendentes/pendentes.module').then( m => m.PendentesPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'delegar',
|
path: 'delegar',
|
||||||
loadChildren: () => import('./modals/delegar/delegar.module').then( m => m.DelegarPageModule)
|
loadChildren: () => import('./modals/delegar/delegar.module').then( m => m.DelegarPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'add-note',
|
path: 'add-note',
|
||||||
loadChildren: () => import('./modals/add-note/add-note.module').then( m => m.AddNotePageModule)
|
loadChildren: () => import('./modals/add-note/add-note.module').then( m => m.AddNotePageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'dar-parecer',
|
path: 'dar-parecer',
|
||||||
loadChildren: () => import('./modals/dar-parecer/dar-parecer.module').then( m => m.DarParecerPageModule)
|
loadChildren: () => import('./modals/dar-parecer/dar-parecer.module').then( m => m.DarParecerPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'opts-expediente',
|
path: 'opts-expediente',
|
||||||
loadChildren: () => import('./shared/popover/opts-expediente/opts-expediente.module').then( m => m.OptsExpedientePageModule)
|
loadChildren: () => import('./shared/popover/opts-expediente/opts-expediente.module').then( m => m.OptsExpedientePageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'despachos-pr',
|
path: 'despachos-pr',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/despachos-pr/despachos-pr.module').then( m => m.DespachosPrPageModule)
|
loadChildren: () => import('./shared/gabinete-digital/despachos-pr/despachos-pr.module').then( m => m.DespachosPrPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'diplomas',
|
path: 'diplomas',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/diplomas/diplomas.module').then( m => m.DiplomasPageModule)
|
loadChildren: () => import('./shared/gabinete-digital/diplomas/diplomas.module').then( m => m.DiplomasPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'expedientes-pr',
|
path: 'expedientes-pr',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/expedientes-pr/expedientes-pr.module').then( m => m.ExpedientesPrPageModule)
|
loadChildren: () => import('./shared/gabinete-digital/expedientes-pr/expedientes-pr.module').then( m => m.ExpedientesPrPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'diplomas-assinar',
|
path: 'diplomas-assinar',
|
||||||
loadChildren: () => import('./shared/gabinete-digital/diplomas-assinar/diplomas-assinar.module').then( m => m.DiplomasAssinarPageModule)
|
loadChildren: () => import('./shared/gabinete-digital/diplomas-assinar/diplomas-assinar.module').then( m => m.DiplomasAssinarPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'opts-expediente-pr',
|
path: 'opts-expediente-pr',
|
||||||
loadChildren: () => import('./shared/popover/opts-expediente-pr/opts-expediente-pr.module').then( m => m.OptsExpedientePrPageModule)
|
loadChildren: () => import('./shared/popover/opts-expediente-pr/opts-expediente-pr.module').then( m => m.OptsExpedientePrPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'despachos-options',
|
path: 'despachos-options',
|
||||||
loadChildren: () => import('./shared/popover/despachos-options/despachos-options.module').then( m => m.DespachosOptionsPageModule)
|
loadChildren: () => import('./shared/popover/despachos-options/despachos-options.module').then( m => m.DespachosOptionsPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'despachos-pr-options',
|
path: 'despachos-pr-options',
|
||||||
loadChildren: () => import('./shared/popover/despachos-pr-options/despachos-pr-options.module').then( m => m.DespachosPrOptionsPageModule)
|
loadChildren: () => import('./shared/popover/despachos-pr-options/despachos-pr-options.module').then( m => m.DespachosPrOptionsPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'deploma-options',
|
path: 'deploma-options',
|
||||||
loadChildren: () => import('./shared/popover/deploma-options/deploma-options.module').then( m => m.DeplomaOptionsPageModule)
|
loadChildren: () => import('./shared/popover/deploma-options/deploma-options.module').then( m => m.DeplomaOptionsPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'pin',
|
path: 'pin',
|
||||||
loadChildren: () => import('./shared/pin/pin.module').then( m => m.PinPageModule)
|
loadChildren: () => import('./shared/pin/pin.module').then( m => m.PinPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'fingerprint',
|
path: 'fingerprint',
|
||||||
loadChildren: () => import('./shared/fingerprint/fingerprint.module').then( m => m.FingerprintPageModule)
|
loadChildren: () => import('./shared/fingerprint/fingerprint.module').then( m => m.FingerprintPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'new-event',
|
path: 'new-event',
|
||||||
loadChildren: () => import('./shared/agenda/new-event/new-event.module').then( m => m.NewEventPageModule)
|
loadChildren: () => import('./shared/agenda/new-event/new-event.module').then( m => m.NewEventPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'edit-event',
|
path: 'edit-event',
|
||||||
loadChildren: () => import('./shared/agenda/edit-event/edit-event.module').then( m => m.EditEventPageModule)
|
loadChildren: () => import('./shared/agenda/edit-event/edit-event.module').then( m => m.EditEventPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'event-list',
|
path: 'event-list',
|
||||||
loadChildren: () => import('./shared/agenda/event-list/event-list.module').then( m => m.EventListPageModule)
|
loadChildren: () => import('./shared/agenda/event-list/event-list.module').then( m => m.EventListPageModule)
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: 'approve-event',
|
path: 'approve-event',
|
||||||
loadChildren: () => import('./shared/agenda/approve-event/approve-event.module').then( m => m.ApproveEventPageModule)
|
loadChildren: () => import('./shared/agenda/approve-event/approve-event.module').then( m => m.ApproveEventPageModule)
|
||||||
},
|
},
|
||||||
|
{
|
||||||
path: 'bad-request',
|
path: 'bad-request',
|
||||||
loadChildren: () => import('./shared/popover/bad-request/bad-request.module').then( m => m.BadRequestPageModule)
|
loadChildren: () => import('./shared/popover/bad-request/bad-request.module').then( m => m.BadRequestPageModule)
|
||||||
},
|
},
|
||||||
@@ -135,18 +136,22 @@ const routes: Routes = [
|
|||||||
path: 'success-message',
|
path: 'success-message',
|
||||||
loadChildren: () => import('./shared/popover/success-message/success-message.module').then( m => m.SuccessMessagePageModule)
|
loadChildren: () => import('./shared/popover/success-message/success-message.module').then( m => m.SuccessMessagePageModule)
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
path: 'forward',
|
||||||
|
loadChildren: () => import('./modals/forward/forward.module').then( m => m.ForwardPageModule)
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
/* {
|
||||||
/* {
|
path: 'chat',
|
||||||
path: 'chat',
|
component: ChatPage
|
||||||
component: ChatPage
|
} */
|
||||||
} */
|
|
||||||
|
];
|
||||||
];
|
@NgModule({
|
||||||
@NgModule({
|
imports: [
|
||||||
imports: [
|
RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules })
|
||||||
RouterModule.forRoot(routes, { preloadingStrategy: PreloadAllModules })
|
],
|
||||||
],
|
exports: [RouterModule]
|
||||||
exports: [RouterModule]
|
})
|
||||||
})
|
export class AppRoutingModule {}
|
||||||
|
|||||||
@@ -63,8 +63,6 @@ export class DelegarPage implements OnInit {
|
|||||||
/* Set + 30minutes to seleted datetime */
|
/* Set + 30minutes to seleted datetime */
|
||||||
let selectedEndDate = new Date();
|
let selectedEndDate = new Date();
|
||||||
/* this.postData.EndDate = new Date(selectedEndDate.setMinutes(new Date().getMinutes() + 30)); */
|
/* this.postData.EndDate = new Date(selectedEndDate.setMinutes(new Date().getMinutes() + 30)); */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -85,7 +83,7 @@ export class DelegarPage implements OnInit {
|
|||||||
|
|
||||||
async saveTask() {
|
async saveTask() {
|
||||||
if(this.taskParticipants.length > 1){
|
if(this.taskParticipants.length > 1){
|
||||||
this.alertService.presentErrorMessage("Selecione apenas um destinatário");
|
this.toastService.badRequest("Selecione apenas um destinatário");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
let body = {
|
let body = {
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { Routes, RouterModule } from '@angular/router';
|
||||||
|
|
||||||
|
import { ForwardPage } from './forward.page';
|
||||||
|
|
||||||
|
const routes: Routes = [
|
||||||
|
{
|
||||||
|
path: '',
|
||||||
|
component: ForwardPage
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [RouterModule.forChild(routes)],
|
||||||
|
exports: [RouterModule],
|
||||||
|
})
|
||||||
|
export class ForwardPageRoutingModule {}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
import { NgModule } from '@angular/core';
|
||||||
|
import { CommonModule } from '@angular/common';
|
||||||
|
import { FormsModule } from '@angular/forms';
|
||||||
|
|
||||||
|
import { IonicModule } from '@ionic/angular';
|
||||||
|
|
||||||
|
import { ForwardPageRoutingModule } from './forward-routing.module';
|
||||||
|
|
||||||
|
import { ForwardPage } from './forward.page';
|
||||||
|
import { AttendeeModalPageModule } from 'src/app/shared/event/attendee-modal/attendee-modal.module';
|
||||||
|
|
||||||
|
@NgModule({
|
||||||
|
imports: [
|
||||||
|
CommonModule,
|
||||||
|
FormsModule,
|
||||||
|
IonicModule,
|
||||||
|
ForwardPageRoutingModule,
|
||||||
|
AttendeeModalPageModule
|
||||||
|
],
|
||||||
|
declarations: [ForwardPage]
|
||||||
|
})
|
||||||
|
export class ForwardPageModule {}
|
||||||
@@ -0,0 +1,91 @@
|
|||||||
|
<ion-content>
|
||||||
|
<div class="main-content d-flex height-100">
|
||||||
|
|
||||||
|
<div class="content d-flex flex-column width-100">
|
||||||
|
<div class="header-content pb-20">
|
||||||
|
<div class="header-title">
|
||||||
|
<label>Delegar</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="overflow-y-auto">
|
||||||
|
|
||||||
|
<div class="container-div">
|
||||||
|
<div class="ion-item-class-2">
|
||||||
|
<div class="ion-icon-class">
|
||||||
|
<ion-icon slot="start" src="assets/images/icons-person.svg"></ion-icon>
|
||||||
|
</div>
|
||||||
|
<div class="ion-input-class-no-height">
|
||||||
|
<div class="list-people">
|
||||||
|
<ion-item lines="none">
|
||||||
|
<ion-list>
|
||||||
|
<ion-label *ngIf="taskParticipants.length == 0" class="list-people-title">Adicionar intervenientes</ion-label>
|
||||||
|
<ion-label *ngFor="let participant of taskParticipants">{{participant.Name}}</ion-label>
|
||||||
|
</ion-list>
|
||||||
|
</ion-item>
|
||||||
|
</div>
|
||||||
|
<div class="add-people" (click)="addParticipants()">
|
||||||
|
<ion-icon slot="start" src="assets/images/icons-arrow-forward.svg"></ion-icon>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="container-div">
|
||||||
|
<div class="ion-item-class-2 d-flex">
|
||||||
|
<div class="ion-icon-class">
|
||||||
|
<ion-icon slot="start" src="assets/images/icons-description.svg"></ion-icon>
|
||||||
|
</div>
|
||||||
|
<div class="ion-input-class-no-height width-100">
|
||||||
|
<ion-textarea [(ngModel)]="note" placeholder="Detalhes" rows="6" cols="20"></ion-textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div hidden class="ion-item-container-no-border">
|
||||||
|
<ion-label>
|
||||||
|
<div class="attach-icon">
|
||||||
|
<ion-icon src="assets/images/icons-attach-doc.svg"></ion-icon>
|
||||||
|
</div>
|
||||||
|
<div class="attach-document">
|
||||||
|
<ion-label>Anexar Documentos</ion-label>
|
||||||
|
</div>
|
||||||
|
</ion-label>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div *ngIf="loadedAttachments">
|
||||||
|
<ion-item>
|
||||||
|
<ion-label>Documentos Anexados</ion-label>
|
||||||
|
</ion-item>
|
||||||
|
<ion-list>
|
||||||
|
<ion-item *ngFor="let attachment of loadedAttachments">
|
||||||
|
<ion-label>
|
||||||
|
<h4 class="attach-title-item">{{attachment.Description}}</h4>
|
||||||
|
<p><span class="span-left">{{attachment.Stakeholders}}</span><span class="span-right"> {{ attachment.CreateDate | date: 'dd/MM/yyyy' }}</span></p>
|
||||||
|
</ion-label>
|
||||||
|
</ion-item>
|
||||||
|
</ion-list>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="aside-righ flex-grow-1">
|
||||||
|
<app-attendee-modal class=" d-flex flex-column height-100"
|
||||||
|
[footer]="false"
|
||||||
|
*ngIf="showAttendees"
|
||||||
|
[taskParticipants]="taskParticipants"
|
||||||
|
[taskParticipantsCc]="taskParticipantsCc"
|
||||||
|
[adding]="adding"
|
||||||
|
(dynamicSetIntervenient)="dynamicSetIntervenient($event)"
|
||||||
|
>
|
||||||
|
</app-attendee-modal>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</ion-content>
|
||||||
|
<ion-footer>
|
||||||
|
<div class="buttons">
|
||||||
|
<button class="btn-cancel" shape="round" (click)="cancelTask()">Cancelar</button>
|
||||||
|
<button class="btn-ok" shape="round" (click)="saveTask()">Gravar</button>
|
||||||
|
</div>
|
||||||
|
</ion-footer>
|
||||||
|
|
||||||
@@ -0,0 +1,150 @@
|
|||||||
|
.content{
|
||||||
|
padding: 30px 20px 0 20px !important;
|
||||||
|
margin: 0;
|
||||||
|
float: left;
|
||||||
|
|
||||||
|
.header-content{
|
||||||
|
margin-bottom: 20px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header-title{
|
||||||
|
font-family: Roboto;
|
||||||
|
font-size: 25px;
|
||||||
|
padding: 0;
|
||||||
|
color:#000;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ion-item-container{
|
||||||
|
margin: 15px auto;
|
||||||
|
border: 1px solid #ebebeb;
|
||||||
|
border-radius: 5px;
|
||||||
|
padding-left: 10px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.ion-item-container-no-border{
|
||||||
|
margin: 0px auto;
|
||||||
|
padding: 0 !important;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
.container-div{
|
||||||
|
margin-bottom: 15px;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.ion-item-class-2{
|
||||||
|
margin: 0px auto;
|
||||||
|
}
|
||||||
|
.ion-icon-class{
|
||||||
|
width: 45px;
|
||||||
|
height: 45px;
|
||||||
|
float: left;
|
||||||
|
padding: 10px;
|
||||||
|
font-size: 25px;
|
||||||
|
}
|
||||||
|
ion-select{
|
||||||
|
padding-left: 5px;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
.ion-input-class{
|
||||||
|
width: calc(100% - 45px);
|
||||||
|
height: 45px;
|
||||||
|
border: 1px solid #ebebeb;
|
||||||
|
border-radius: 5px;
|
||||||
|
padding-left: 5px;
|
||||||
|
padding-right: 10px;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.ion-input-class-no-height{
|
||||||
|
border: 1px solid #ebebeb;
|
||||||
|
border-radius: 5px;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
.list-people{
|
||||||
|
width: 256px;
|
||||||
|
float: left;
|
||||||
|
|
||||||
|
}
|
||||||
|
.add-people{
|
||||||
|
width: 45px;
|
||||||
|
float: right;
|
||||||
|
overflow: auto;
|
||||||
|
font-size: 25px;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
.list-people-title{
|
||||||
|
/* font-size: 13px; */
|
||||||
|
color: #797979;
|
||||||
|
}
|
||||||
|
.attach-document{
|
||||||
|
font-size: 15px;
|
||||||
|
color: #0d89d1;
|
||||||
|
margin: 5px 5px 5px 10px;
|
||||||
|
padding: 5px;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.attach-icon{
|
||||||
|
width: 37px;
|
||||||
|
font-size: 35px;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.attach-title-item{
|
||||||
|
width: 100%;
|
||||||
|
font-size: 15px;
|
||||||
|
color:#0d89d1;
|
||||||
|
}
|
||||||
|
/* SPAN */
|
||||||
|
.span-left{
|
||||||
|
float: left;
|
||||||
|
font-size: 15x;
|
||||||
|
}
|
||||||
|
.span-right{
|
||||||
|
text-align: right;
|
||||||
|
float: right;
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.container-footer{
|
||||||
|
margin:0 auto;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
.button-cancel {
|
||||||
|
width: 170px;
|
||||||
|
height: 44px;
|
||||||
|
border-radius: 22.5px;
|
||||||
|
--background: #e0e9ee;
|
||||||
|
--color: #061b52;
|
||||||
|
margin:10px;
|
||||||
|
}
|
||||||
|
.button-save {
|
||||||
|
width: 170px;
|
||||||
|
height: 44px;
|
||||||
|
border-radius: 22.5px;
|
||||||
|
--background: #42b9fe;
|
||||||
|
--color:#ffffff;
|
||||||
|
margin:10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.text-input{
|
||||||
|
width: 100%;
|
||||||
|
border: 1px solid #ebebeb;
|
||||||
|
margin: 0px 15px 15px 0px;
|
||||||
|
padding: 0 !important;
|
||||||
|
border-radius: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Error Messages */
|
||||||
|
.error{
|
||||||
|
color:red;
|
||||||
|
font-size: 12px;
|
||||||
|
font-weight: bold;
|
||||||
|
padding-bottom: 20px;
|
||||||
|
}
|
||||||
|
.span-color{
|
||||||
|
color:red;
|
||||||
|
}
|
||||||
|
.buttons{
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
padding: 20px;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
import { ComponentFixture, TestBed, waitForAsync } from '@angular/core/testing';
|
||||||
|
import { IonicModule } from '@ionic/angular';
|
||||||
|
|
||||||
|
import { ForwardPage } from './forward.page';
|
||||||
|
|
||||||
|
describe('ForwardPage', () => {
|
||||||
|
let component: ForwardPage;
|
||||||
|
let fixture: ComponentFixture<ForwardPage>;
|
||||||
|
|
||||||
|
beforeEach(waitForAsync(() => {
|
||||||
|
TestBed.configureTestingModule({
|
||||||
|
declarations: [ ForwardPage ],
|
||||||
|
imports: [IonicModule.forRoot()]
|
||||||
|
}).compileComponents();
|
||||||
|
|
||||||
|
fixture = TestBed.createComponent(ForwardPage);
|
||||||
|
component = fixture.componentInstance;
|
||||||
|
fixture.detectChanges();
|
||||||
|
}));
|
||||||
|
|
||||||
|
it('should create', () => {
|
||||||
|
expect(component).toBeTruthy();
|
||||||
|
});
|
||||||
|
});
|
||||||
@@ -0,0 +1,224 @@
|
|||||||
|
import { Component, OnInit } from '@angular/core';
|
||||||
|
import { NavigationExtras, Router } from '@angular/router';
|
||||||
|
import { AlertController, AnimationController, ModalController, NavParams } from '@ionic/angular';
|
||||||
|
import { Event } from 'src/app/models/event.model'
|
||||||
|
import { EventBody } from 'src/app/models/eventbody.model';
|
||||||
|
import { ProcessesService } from 'src/app/services/processes.service';
|
||||||
|
import { EventPerson } from 'src/app/models/eventperson.model';
|
||||||
|
import { EventsService } from 'src/app/services/events.service';
|
||||||
|
import { AttachmentsService } from 'src/app/services/attachments.service';
|
||||||
|
import { AddParticipantsModalPage } from 'src/app/pages/gabinete-digital/expediente/add-participants-modal/add-participants-modal.page';
|
||||||
|
import { AddParticipantsCcModalPage } from 'src/app/pages/gabinete-digital/expediente/add-participants-cc-modal/add-participants-cc-modal.page';
|
||||||
|
import { DiscartExpedientModalPage } from 'src/app/pages/gabinete-digital/discart-expedient-modal/discart-expedient-modal.page';
|
||||||
|
import { AlertService } from 'src/app/services/alert.service';
|
||||||
|
import { BadRequestPage } from 'src/app/shared/popover/bad-request/bad-request.page';
|
||||||
|
import { SuccessMessagePage } from 'src/app/shared/popover/success-message/success-message.page';
|
||||||
|
import { ToastService } from 'src/app/services/toast.service';
|
||||||
|
import { SearchDocument } from 'src/app/models/search-document';
|
||||||
|
import { SearchPage } from 'src/app/pages/search/search.page';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-forward',
|
||||||
|
templateUrl: './forward.page.html',
|
||||||
|
styleUrls: ['./forward.page.scss'],
|
||||||
|
})
|
||||||
|
export class ForwardPage implements OnInit {
|
||||||
|
task: any;
|
||||||
|
note:string;
|
||||||
|
|
||||||
|
taskParticipants: EventPerson[] = [];
|
||||||
|
taskParticipantsCc: EventPerson[] = [];
|
||||||
|
|
||||||
|
taskDocId:string;
|
||||||
|
loadedAttachments:any;
|
||||||
|
|
||||||
|
adding: "intervenient" | "CC" = "intervenient";
|
||||||
|
|
||||||
|
postData: Event;
|
||||||
|
eventBody: EventBody;
|
||||||
|
eventAttendees: EventPerson;
|
||||||
|
|
||||||
|
formLocationSatus: boolean = false;
|
||||||
|
showAttendees= false;
|
||||||
|
|
||||||
|
documents:SearchDocument[] = [];
|
||||||
|
|
||||||
|
constructor(
|
||||||
|
private modalController: ModalController,
|
||||||
|
private router:Router,
|
||||||
|
private navParams: NavParams,
|
||||||
|
private processes:ProcessesService,
|
||||||
|
private attachmentsService: AttachmentsService,
|
||||||
|
private calendarService: EventsService,
|
||||||
|
public alertController: AlertController,
|
||||||
|
private alertService: AlertService,
|
||||||
|
private animationController: AnimationController,
|
||||||
|
private toastService: ToastService,
|
||||||
|
) {
|
||||||
|
this.task = this.navParams.get('task');
|
||||||
|
this.postData = new Event();
|
||||||
|
this.eventBody = { BodyType : "1", Text : ""};
|
||||||
|
this.postData.Body = this.eventBody;
|
||||||
|
this.postData.Subject = this.task.Folio;
|
||||||
|
this.postData.CalendarName = "Oficial";
|
||||||
|
let selectedEndDate = new Date();
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
this.adding = "intervenient";
|
||||||
|
console.log(this.task);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
close() {
|
||||||
|
this.router.navigate(['/home/gabinete-digital/expediente']);
|
||||||
|
this.modalController.dismiss(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
cancelTask() {
|
||||||
|
this.modalController.dismiss(null);
|
||||||
|
}
|
||||||
|
goBack() {
|
||||||
|
this.modalController.dismiss(null);
|
||||||
|
if (window.innerWidth <= 800) {
|
||||||
|
this.router.navigate(['/home/gabinete-digital/pedidos']);
|
||||||
|
} else {
|
||||||
|
let navigationExtras: NavigationExtras = {
|
||||||
|
queryParams: {
|
||||||
|
"pedidos": true,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.router.navigate(['/home/gabinete-digital'], navigationExtras);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async assignar(note:string, documents:any) {
|
||||||
|
let body = {
|
||||||
|
"serialNumber": this.task.SerialNumber,
|
||||||
|
"action": "Reencaminhar",
|
||||||
|
"ActionTypeId": 98,
|
||||||
|
"dataFields": {
|
||||||
|
"ReviewUserComment": note,
|
||||||
|
},
|
||||||
|
"AttachmentList" :documents,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
notImplemented(){
|
||||||
|
this.alertService.presentAlert('Funcionalidade em desenvolvimento');
|
||||||
|
}
|
||||||
|
|
||||||
|
async saveTask() {
|
||||||
|
|
||||||
|
const DocumentToSave = this.documents.map((e) => {
|
||||||
|
return {
|
||||||
|
ApplicationId: e.ApplicationType,
|
||||||
|
SourceId: e.Id,
|
||||||
|
}
|
||||||
|
});
|
||||||
|
let docs = {
|
||||||
|
ProcessInstanceID: "",
|
||||||
|
Attachments: DocumentToSave,
|
||||||
|
}
|
||||||
|
|
||||||
|
if(this.taskParticipants.length > 1){
|
||||||
|
this.toastService.badRequest("Selecione apenas um destinatário");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
|
||||||
|
let attendees: any = this.taskParticipants.concat(this.taskParticipantsCc);
|
||||||
|
attendees = attendees.map(function(val) {
|
||||||
|
return {
|
||||||
|
UserEmail: val.EmailAddress,
|
||||||
|
UserType: val.IsRequired?"I": "CC"
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
let body = {
|
||||||
|
"usersSelected": attendees,
|
||||||
|
"serialNumber": this.task.SerialNumber,
|
||||||
|
"action": "Reencaminhar",
|
||||||
|
"actionTypeId": 98,
|
||||||
|
"dataFields": {
|
||||||
|
"ReviewUserComment": this.note,
|
||||||
|
},
|
||||||
|
"FolderId": this.task.FolderId,
|
||||||
|
"AttachmentList" :docs,
|
||||||
|
}
|
||||||
|
console.log(body);
|
||||||
|
this.processes.CompleteParecerPrTask(body).subscribe(res=>{
|
||||||
|
console.log(res);
|
||||||
|
this.toastService.successMessage('Processo delegado');
|
||||||
|
this.goBack();
|
||||||
|
},
|
||||||
|
(error)=>{
|
||||||
|
this.toastService.badRequest("Processo não delegado")
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async addParticipants(){
|
||||||
|
console.log('HERE');
|
||||||
|
|
||||||
|
this.adding = "intervenient";
|
||||||
|
if(window.innerWidth <= 800){
|
||||||
|
const modal = await this.modalController.create({
|
||||||
|
component: AddParticipantsModalPage,
|
||||||
|
componentProps: {
|
||||||
|
eventPersons: this.eventAttendees
|
||||||
|
},
|
||||||
|
cssClass: 'book-meeting-modal',
|
||||||
|
backdropDismiss: false
|
||||||
|
});
|
||||||
|
|
||||||
|
await modal.present();
|
||||||
|
|
||||||
|
modal.onDidDismiss().then((res) => {
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
this.showAttendees = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
validateFormInputs(){
|
||||||
|
let formLocation = this.postData.Location.trim();
|
||||||
|
if(!this.postData.Location && formLocation.length <= 0){
|
||||||
|
this.formLocationSatus=true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
dynamicSetIntervenient({taskParticipants}){
|
||||||
|
this.taskParticipants = taskParticipants;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
removeAttachment(index: number){
|
||||||
|
|
||||||
|
this.documents = this.documents.filter( (e, i) => index != i);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@@ -9,6 +9,6 @@
|
|||||||
<button class="btn-ok" shape="round" (click)="approveTask()">Aprovar</button>
|
<button class="btn-ok" shape="round" (click)="approveTask()">Aprovar</button>
|
||||||
<div class="solid"></div>
|
<div class="solid"></div>
|
||||||
<button class="btn-cancel" shape="round" (click)="editTask()">Editar</button>
|
<button class="btn-cancel" shape="round" (click)="editTask()">Editar</button>
|
||||||
<button class="btn-delete" shape="round" (click)="deleteTask()">Rejeitar</button>
|
<button class="btn-delete" shape="round" (click)="rejeitar()">Rejeitar</button>
|
||||||
</div>
|
</div>
|
||||||
</ion-content>
|
</ion-content>
|
||||||
|
|||||||
@@ -35,44 +35,53 @@ export class EventActionsPopoverPage implements OnInit {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
goBack(){
|
||||||
|
this.closePopover();
|
||||||
|
this.router.navigate(['/home/gabinete-digital/event-list']);
|
||||||
|
}
|
||||||
|
|
||||||
closePopover(){
|
closePopover(){
|
||||||
this.popoverController.dismiss();
|
this.popoverController.dismiss();
|
||||||
}
|
}
|
||||||
|
|
||||||
approveTask() {
|
approveTask() {
|
||||||
let body = { "serialNumber": this.serialNumber, "action": "Aprovar" }
|
let body = { "serialNumber": this.serialNumber, "action": "Aprovar" }
|
||||||
console.log(body);
|
console.log(body);
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
this.processes.PostTaskAction(body).toPromise()
|
this.processes.PostTaskAction(body).toPromise()
|
||||||
this.router.navigate(['/home/gabinete-digital/event-list']);
|
this.toastService.successMessage();
|
||||||
this.modalController.dismiss(null);
|
this.goBack();
|
||||||
this.toastService.successMessage()
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.toastService.badRequest()
|
this.toastService.badRequest()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
emendarTask() {
|
emendarTask() {
|
||||||
|
|
||||||
let body = { "serialNumber": this.serialNumber, "action": "Rejeitar" }
|
let body = { "serialNumber": this.serialNumber, "action": "Rejeitar" }
|
||||||
console.log(body);
|
console.log(body);
|
||||||
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
this.processes.PostTaskAction(body).toPromise()
|
this.processes.PostTaskAction(body).toPromise();
|
||||||
this.router.navigate(['/home/gabinete-digital/event-list']);
|
this.toastService.successMessage();
|
||||||
this.modalController.dismiss(null);
|
this.goBack();
|
||||||
this.toastService.successMessage()
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.toastService.badRequest()
|
this.toastService.badRequest()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
deleteTask(){
|
|
||||||
|
|
||||||
|
async rejeitar(){
|
||||||
|
let body = { "serialNumber": this.serialNumber, "action": "Rejeitar" }
|
||||||
|
console.log(body);
|
||||||
|
try {
|
||||||
|
this.processes.PostTaskAction(body).toPromise();
|
||||||
|
await this.toastService.successMessage('Processo rejeitado');
|
||||||
|
this.goBack();
|
||||||
|
} catch (error) {
|
||||||
|
this.toastService.badRequest()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
async editTask() {
|
async editTask() {
|
||||||
console.log(this.serialNumber);
|
console.log(this.serialNumber);
|
||||||
console.log(this.instanceId);
|
console.log(this.instanceId);
|
||||||
|
|||||||
@@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
<ion-content>
|
<ion-content>
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
<input type="text" ngbDatepicker #d="ngbDatepicker"/>
|
<!-- <input type="text" ngbDatepicker #d="ngbDatepicker"/> -->
|
||||||
|
|
||||||
<div class="ion-item-container">
|
<div class="ion-item-container">
|
||||||
<ion-input placeholder="Assunto" [(ngModel)]="postEvent.Subject"></ion-input>
|
<ion-input placeholder="Assunto" [(ngModel)]="postEvent.Subject"></ion-input>
|
||||||
|
|||||||
@@ -76,7 +76,6 @@ export class ApproveEventPage implements OnInit {
|
|||||||
this.router.navigate(['/home/gabinete-digital'], navigationExtras);
|
this.router.navigate(['/home/gabinete-digital'], navigationExtras);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async getTask() {
|
async getTask() {
|
||||||
@@ -97,10 +96,8 @@ export class ApproveEventPage implements OnInit {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
await this.processes.PostTaskAction(body).toPromise()
|
await this.processes.PostTaskAction(body).toPromise()
|
||||||
this.toastService.successMessage()
|
this.toastService.successMessage();
|
||||||
this.toastService.successMessage('Evento aprovado', ()=>{
|
this.goBack();
|
||||||
this.goBack();
|
|
||||||
});
|
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.toastService.badRequest()
|
this.toastService.badRequest()
|
||||||
@@ -126,18 +123,13 @@ export class ApproveEventPage implements OnInit {
|
|||||||
async rejeitar(serialNumber:string){
|
async rejeitar(serialNumber:string){
|
||||||
let body = { "serialNumber": serialNumber, "action": "Rejeitar" }
|
let body = { "serialNumber": serialNumber, "action": "Rejeitar" }
|
||||||
console.log(body);
|
console.log(body);
|
||||||
this.toastService.successMessage('Process');
|
|
||||||
try {
|
try {
|
||||||
this.processes.PostTaskAction(body).toPromise();
|
this.processes.PostTaskAction(body).toPromise();
|
||||||
await this.toastService.successMessage('Processo rejeitado');
|
await this.toastService.successMessage('Processo rejeitado');
|
||||||
await this.toastService.successMessage('Processo rejeitado', ()=>{
|
this.goBack();
|
||||||
this.goBack();
|
|
||||||
});
|
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.toastService.badRequest()
|
this.toastService.badRequest()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async getAttachments(instanceId:string){
|
async getAttachments(instanceId:string){
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ export class EventListPage implements OnInit {
|
|||||||
|
|
||||||
this.router.events.forEach((event) => {
|
this.router.events.forEach((event) => {
|
||||||
if(event instanceof NavigationEnd && event.url == this.router.url) {
|
if(event instanceof NavigationEnd && event.url == this.router.url) {
|
||||||
this.doRefresh();
|
this.LoadToApproveEvents();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -35,14 +35,14 @@
|
|||||||
|
|
||||||
<div class="overflow-y-auto">
|
<div class="overflow-y-auto">
|
||||||
<div class="middle-content">
|
<div class="middle-content">
|
||||||
<h5 *ngIf="intervenientes">Intervenientes</h5>
|
<!-- <h5 *ngIf="intervenientes">Intervenientes</h5>
|
||||||
<ion-item class="ion-no-margin ion-no-padding">
|
<ion-item class="ion-no-margin ion-no-padding">
|
||||||
<ion-label>
|
<ion-label>
|
||||||
<div *ngFor="let interveniente of intervenientes">
|
<div *ngFor="let interveniente of intervenientes">
|
||||||
<p>{{interveniente.Name}}</p>
|
<p>{{interveniente.Name}}</p>
|
||||||
</div>
|
</div>
|
||||||
</ion-label>
|
</ion-label>
|
||||||
</ion-item>
|
</ion-item> -->
|
||||||
<div *ngIf="cc.length > 0">
|
<div *ngIf="cc.length > 0">
|
||||||
<h5>Com conhecimento</h5>
|
<h5>Com conhecimento</h5>
|
||||||
<ion-item class="ion-no-margin ion-no-padding">
|
<ion-item class="ion-no-margin ion-no-padding">
|
||||||
|
|||||||
@@ -82,28 +82,16 @@ export class ExpedientePage implements OnInit {
|
|||||||
|
|
||||||
doRefresh() {
|
doRefresh() {
|
||||||
this.LoadList();
|
this.LoadList();
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
}, 2000);
|
}, 2000);
|
||||||
}
|
}
|
||||||
|
|
||||||
goBack() {
|
goBack() {
|
||||||
|
|
||||||
this.router.navigate(['/home/gabinete-digital']);
|
this.router.navigate(['/home/gabinete-digital']);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
goToExpediente(serialNumber:any) {
|
goToExpediente(serialNumber:any){
|
||||||
|
|
||||||
let navigationExtras: NavigationExtras = {
|
|
||||||
queryParams: {
|
|
||||||
"serialNumber": serialNumber,
|
|
||||||
"caller": "gabinete"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.router.navigate(['/home/gabinete-digital/expediente',serialNumber,'gabinete-digital']);
|
this.router.navigate(['/home/gabinete-digital/expediente',serialNumber,'gabinete-digital']);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,18 +3,19 @@
|
|||||||
</ion-header>
|
</ion-header>
|
||||||
|
|
||||||
<ion-content class="height-100">
|
<ion-content class="height-100">
|
||||||
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh()">
|
<ion-refresher slot="fixed" (ionRefresh)="doRefresh($event)">
|
||||||
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
||||||
<ion-refresher-content>
|
<ion-refresher-content>
|
||||||
</ion-refresher-content>
|
</ion-refresher-content>
|
||||||
</ion-refresher>
|
</ion-refresher>
|
||||||
|
|
||||||
<div class="main-content d-flex height-100">
|
<div class="main-content d-flex height-100">
|
||||||
|
|
||||||
<!-- Aside left -->
|
<!-- Aside left -->
|
||||||
<div class="aside-wrapper d-flex flex-column justify-center width-md-40 flex-grow-1 ">
|
<div class="aside-wrapper d-flex flex-column justify-center width-md-40 flex-grow-1 ">
|
||||||
<div class="title-container">
|
<div class="title-container">
|
||||||
<ion-label class="title">Gabinete Digital</ion-label>
|
<ion-label class="title">Gabinete Digital</ion-label>
|
||||||
<button class="btn-no-color btn-refresh" (click)="doRefresh()">
|
<button class="btn-no-color btn-refresh" (click)="doRefresh($event)">
|
||||||
<ion-icon class="title-icon" name="reload-circle"></ion-icon>
|
<ion-icon class="title-icon" name="reload-circle"></ion-icon>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -260,7 +260,7 @@ export class GabineteDigitalPage implements OnInit {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
doRefresh() {
|
doRefresh(event) {
|
||||||
this.closeAllDesktopComponents();
|
this.closeAllDesktopComponents();
|
||||||
switch(this.loggeduser.Profile){
|
switch(this.loggeduser.Profile){
|
||||||
case 'MDGPR':
|
case 'MDGPR':
|
||||||
@@ -276,8 +276,7 @@ export class GabineteDigitalPage implements OnInit {
|
|||||||
this.LoadCounts();
|
this.LoadCounts();
|
||||||
//this.refreshExpedientes();
|
//this.refreshExpedientes();
|
||||||
|
|
||||||
setTimeout(() => {
|
event.target.complete();
|
||||||
}, 2000);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
notImplemented(){
|
notImplemented(){
|
||||||
|
|||||||
@@ -107,6 +107,7 @@
|
|||||||
<div class="buttons" *ngIf="task.activityInstanceName == 'Tarefa de Parecer'">
|
<div class="buttons" *ngIf="task.activityInstanceName == 'Tarefa de Parecer'">
|
||||||
<button (click)="openDarParecer(task)" class="btn-cancel" shape="round" >Dar o meu Parecer</button>
|
<button (click)="openDarParecer(task)" class="btn-cancel" shape="round" >Dar o meu Parecer</button>
|
||||||
<button (click)="openBookMeetingModal(task)" class="btn-cancel" shape="round" >Marcar Reunião</button>
|
<button (click)="openBookMeetingModal(task)" class="btn-cancel" shape="round" >Marcar Reunião</button>
|
||||||
|
<button *ngIf="task.WorkflowName == 'Pedido de Parecer do Presidente'" (click)="openForwardModal(task)" class="btn-cancel" shape="round" >Reencaminhar</button>
|
||||||
<button (click)="sendExpedienteToPending()" class="btn-cancel" shape="round" >Enviar para Pendentes</button>
|
<button (click)="sendExpedienteToPending()" class="btn-cancel" shape="round" >Enviar para Pendentes</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="buttons" *ngIf="task.activityInstanceName == 'Concluir Parecer'">
|
<div class="buttons" *ngIf="task.activityInstanceName == 'Concluir Parecer'">
|
||||||
|
|||||||
@@ -3,7 +3,6 @@ import { ProcessesService } from 'src/app/services/processes.service';
|
|||||||
import { AttachmentsService } from 'src/app/services/attachments.service';
|
import { AttachmentsService } from 'src/app/services/attachments.service';
|
||||||
import { EventsService } from 'src/app/services/events.service';
|
import { EventsService } from 'src/app/services/events.service';
|
||||||
import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
|
import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
|
||||||
import { DailyWorkTask } from '../../../../models/dailyworktask.model';
|
|
||||||
import { ActivatedRoute, NavigationExtras, Router } from '@angular/router';
|
import { ActivatedRoute, NavigationExtras, Router } from '@angular/router';
|
||||||
import { formatDate } from '@angular/common';
|
import { formatDate } from '@angular/common';
|
||||||
import { Event } from '../../../../models/event.model';
|
import { Event } from '../../../../models/event.model';
|
||||||
@@ -12,19 +11,17 @@ import { AlertService } from 'src/app/services/alert.service';
|
|||||||
import { ViewEventPage } from 'src/app/pages/agenda/view-event/view-event.page';
|
import { ViewEventPage } from 'src/app/pages/agenda/view-event/view-event.page';
|
||||||
import { momentG } from 'src/plugin/momentG'
|
import { momentG } from 'src/plugin/momentG'
|
||||||
import { DiscartExpedientModalPage } from '../../discart-expedient-modal/discart-expedient-modal.page';
|
import { DiscartExpedientModalPage } from '../../discart-expedient-modal/discart-expedient-modal.page';
|
||||||
import { ExpedientTaskModalPage } from '../../expediente/expedient-task-modal/expedient-task-modal.page';
|
|
||||||
import { BookMeetingModalPage } from '../../expediente/book-meeting-modal/book-meeting-modal.page';
|
import { BookMeetingModalPage } from '../../expediente/book-meeting-modal/book-meeting-modal.page';
|
||||||
import { CreateProcessPage } from 'src/app/modals/create-process/create-process.page';
|
import { CreateProcessPage } from 'src/app/modals/create-process/create-process.page';
|
||||||
import { DelegarPage } from 'src/app/modals/delegar/delegar.page';
|
import { DelegarPage } from 'src/app/modals/delegar/delegar.page';
|
||||||
import { DarParecerPage } from 'src/app/modals/dar-parecer/dar-parecer.page';
|
import { DarParecerPage } from 'src/app/modals/dar-parecer/dar-parecer.page';
|
||||||
import { AddNotePage } from 'src/app/modals/add-note/add-note.page';
|
import { AddNotePage } from 'src/app/modals/add-note/add-note.page';
|
||||||
import { OptsExpedientePage } from 'src/app/shared/popover/opts-expediente/opts-expediente.page';
|
|
||||||
import { RequestOptionsPage } from 'src/app/shared/popover/request-options/request-options.page';
|
import { RequestOptionsPage } from 'src/app/shared/popover/request-options/request-options.page';
|
||||||
import { AuthService } from 'src/app/services/auth.service';
|
import { AuthService } from 'src/app/services/auth.service';
|
||||||
import { User } from 'src/app/models/user.model';
|
import { User } from 'src/app/models/user.model';
|
||||||
import { BadRequestPage } from 'src/app/shared/popover/bad-request/bad-request.page';
|
import { BadRequestPage } from 'src/app/shared/popover/bad-request/bad-request.page';
|
||||||
import { SuccessMessagePage } from 'src/app/shared/popover/success-message/success-message.page';
|
|
||||||
import { ToastService } from 'src/app/services/toast.service';
|
import { ToastService } from 'src/app/services/toast.service';
|
||||||
|
import { ForwardPage } from 'src/app/modals/forward/forward.page';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-pedido',
|
selector: 'app-pedido',
|
||||||
@@ -204,7 +201,6 @@ export class PedidoPage implements OnInit {
|
|||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.toastService.badRequest()
|
this.toastService.badRequest()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async arquivar(note:string, documents:any) {
|
async arquivar(note:string, documents:any) {
|
||||||
@@ -225,7 +221,26 @@ export class PedidoPage implements OnInit {
|
|||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.toastService.badRequest()
|
this.toastService.badRequest()
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async assignar(note:string, documents:any) {
|
||||||
|
let body = {
|
||||||
|
"serialNumber": this.serialnumber,
|
||||||
|
"action": "Reencaminhar",
|
||||||
|
"ActionTypeId": 98,
|
||||||
|
"dataFields": {
|
||||||
|
"ReviewUserComment": note,
|
||||||
|
},
|
||||||
|
"AttachmentList" :documents,
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
await this.processes.CompleteTask(body).toPromise()
|
||||||
|
this.toastService.successMessage('Processo arquivado')
|
||||||
|
this.close();
|
||||||
|
} catch (error) {
|
||||||
|
this.toastService.badRequest()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sendExpedienteToPending(){
|
sendExpedienteToPending(){
|
||||||
@@ -339,6 +354,27 @@ export class PedidoPage implements OnInit {
|
|||||||
modal.onDidDismiss();
|
modal.onDidDismiss();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async openForwardModal(task: any) {
|
||||||
|
console.log(task);
|
||||||
|
|
||||||
|
let classs;
|
||||||
|
if( window.innerWidth <= 800){
|
||||||
|
classs = 'book-meeting-modal modal modal-desktop'
|
||||||
|
} else {
|
||||||
|
classs = 'modal modal-desktop showAsideOptions'
|
||||||
|
}
|
||||||
|
const modal = await this.modalController.create({
|
||||||
|
component: ForwardPage,
|
||||||
|
componentProps: {
|
||||||
|
task: this.task,
|
||||||
|
},
|
||||||
|
cssClass: classs,
|
||||||
|
backdropDismiss: false
|
||||||
|
});
|
||||||
|
await modal.present();
|
||||||
|
modal.onDidDismiss();
|
||||||
|
}
|
||||||
|
|
||||||
async openDarParecer(task: any) {
|
async openDarParecer(task: any) {
|
||||||
console.log(task);
|
console.log(task);
|
||||||
|
|
||||||
@@ -399,19 +435,24 @@ export class PedidoPage implements OnInit {
|
|||||||
else if(actionName == 'Arquivar'){
|
else if(actionName == 'Arquivar'){
|
||||||
this.arquivar(res.data.note, docs);
|
this.arquivar(res.data.note, docs);
|
||||||
}
|
}
|
||||||
|
else if(actionName == 'Assignar'){
|
||||||
|
this.assignar(res.data.note, docs);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
goBack() {
|
goBack() {
|
||||||
|
if (window.innerWidth <= 800) {
|
||||||
let navigationExtras: NavigationExtras = {
|
this.router.navigate(['/home/gabinete-digital/pedidos']);
|
||||||
queryParams: {
|
} else {
|
||||||
"pedidos": true,
|
let navigationExtras: NavigationExtras = {
|
||||||
|
queryParams: {
|
||||||
|
"pedidos": true,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
this.router.navigate(['/home/gabinete-digital'], navigationExtras);
|
||||||
}
|
}
|
||||||
|
|
||||||
this.router.navigate(['/home/gabinete-digital'], navigationExtras);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
</ion-header>
|
</ion-header>
|
||||||
|
|
||||||
<ion-content>
|
<ion-content>
|
||||||
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh()">
|
<ion-refresher name="refresher" slot="fixed" (ionRefresh)="doRefresh($event)">
|
||||||
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
||||||
<ion-refresher-content>
|
<ion-refresher-content>
|
||||||
</ion-refresher-content>
|
</ion-refresher-content>
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
<button class="btn-no-color" (click)="AddPublicationFolder()">
|
<button class="btn-no-color" (click)="AddPublicationFolder()">
|
||||||
<ion-icon slot="icon-only" src='assets/images/icons-add.svg'></ion-icon>
|
<ion-icon slot="icon-only" src='assets/images/icons-add.svg'></ion-icon>
|
||||||
</button>
|
</button>
|
||||||
<button class="btn-no-color" (click)="doRefresh()">
|
<button class="btn-no-color" (click)="doRefresh($event)">
|
||||||
<ion-icon slot="icon-only" class="title-icon" name="reload-circle" title="Actualizar"></ion-icon>
|
<ion-icon slot="icon-only" class="title-icon" name="reload-circle" title="Actualizar"></ion-icon>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ ion-toolbar{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.item{
|
.item{
|
||||||
padding: 0 0px 0 0px;
|
padding: 0 0px 0 0px !important;
|
||||||
margin: 0px auto;
|
margin: 0px auto;
|
||||||
border-bottom: 1px solid #ebebeb;
|
border-bottom: 1px solid #ebebeb;
|
||||||
}
|
}
|
||||||
@@ -116,14 +116,20 @@ ion-toolbar{
|
|||||||
.item-content-date{
|
.item-content-date{
|
||||||
color: #797979;
|
color: #797979;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
|
margin: 0 !important;
|
||||||
|
padding: 0 !important;
|
||||||
}
|
}
|
||||||
.item-content-title{
|
.item-content-title{
|
||||||
color: #0d89d1;
|
color: #0d89d1;
|
||||||
font-size: 15px;
|
font-size: 15px;
|
||||||
|
margin: 0 !important;
|
||||||
|
padding: 0 !important;
|
||||||
}
|
}
|
||||||
.item-content-detail{
|
.item-content-detail{
|
||||||
color: #000000;
|
color: #000000;
|
||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
|
margin: 0 !important;
|
||||||
|
padding: 0 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -68,13 +68,12 @@ export class PublicationsPage implements OnInit {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
doRefresh() {
|
doRefresh(event) {
|
||||||
/* this.getActions(); */
|
this.getActions();
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.getActions();
|
event.target.complete();
|
||||||
/* event.target.complete(); */
|
}, 250);
|
||||||
}, 2000);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
get windowInnerWidth(): number {
|
get windowInnerWidth(): number {
|
||||||
@@ -125,7 +124,7 @@ export class PublicationsPage implements OnInit {
|
|||||||
});
|
});
|
||||||
await modal.present();
|
await modal.present();
|
||||||
modal.onDidDismiss().then(()=>{
|
modal.onDidDismiss().then(()=>{
|
||||||
this.doRefresh();
|
this.getActions();
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
this.desktopComponent.showAddActions = true;
|
this.desktopComponent.showAddActions = true;
|
||||||
|
|||||||
@@ -139,6 +139,7 @@ export class ProcessesService {
|
|||||||
};
|
};
|
||||||
return this.http.post<any>(`${geturl}`, body, options)
|
return this.http.post<any>(`${geturl}`, body, options)
|
||||||
}
|
}
|
||||||
|
|
||||||
CompleteTask(body:any){
|
CompleteTask(body:any){
|
||||||
const geturl = environment.apiURL + 'Tasks/CompleteTask';
|
const geturl = environment.apiURL + 'Tasks/CompleteTask';
|
||||||
|
|
||||||
@@ -148,6 +149,15 @@ export class ProcessesService {
|
|||||||
return this.http.post<any>(`${geturl}`, body, options)
|
return this.http.post<any>(`${geturl}`, body, options)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CompleteParecerPrTask(body:any){
|
||||||
|
const geturl = environment.apiURL + 'Tasks/CompleteTaskParecerPr';
|
||||||
|
|
||||||
|
let options = {
|
||||||
|
headers: this.headers,
|
||||||
|
};
|
||||||
|
return this.http.post<any>(`${geturl}`, body, options)
|
||||||
|
}
|
||||||
|
|
||||||
UpdateTaskStatus(FolderId:string): Observable<any>{
|
UpdateTaskStatus(FolderId:string): Observable<any>{
|
||||||
const geturl = environment.apiURL + 'Tasks/UpdateTaskStatus';
|
const geturl = environment.apiURL + 'Tasks/UpdateTaskStatus';
|
||||||
let params = new HttpParams();
|
let params = new HttpParams();
|
||||||
|
|||||||
@@ -127,10 +127,9 @@ export class ApproveEventPage implements OnInit {
|
|||||||
try {
|
try {
|
||||||
await this.processes.PostTaskAction(body).toPromise()
|
await this.processes.PostTaskAction(body).toPromise()
|
||||||
this.router.navigate(['/home/gabinete-digital/event-list']);
|
this.router.navigate(['/home/gabinete-digital/event-list']);
|
||||||
this.modalController.dismiss(null);
|
|
||||||
this.toastService.successMessage('Evento rejeitado')
|
this.toastService.successMessage('Evento rejeitado')
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.toastService.badRequest('Evento não rejeitado')
|
this.toastService.badRequest('Processo não efectuado')
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,22 +13,20 @@
|
|||||||
<ion-content>
|
<ion-content>
|
||||||
<div class="main-content">
|
<div class="main-content">
|
||||||
|
|
||||||
|
<!-- <form class="form-inline">
|
||||||
|
<div class="form-group">
|
||||||
|
<div class="input-group">
|
||||||
|
<input class="form-control" placeholder="yyyy-mm-dd"
|
||||||
|
name="dp" ngbDatepicker #d="ngbDatepicker">
|
||||||
|
<div class="input-group-append">
|
||||||
|
<button class="btn btn-outline-secondary calendar" (click)="d.toggle()" type="button"></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form> -->
|
||||||
|
|
||||||
<!-- <mat-form-field appearance="fill">
|
<!-- 2. datepicker in the popup -->
|
||||||
<mat-label>Choose a date</mat-label>
|
<!-- <input type="text" ngbDatepicker #d="ngbDatepicker"/> -->
|
||||||
<input matInput [matDatepicker]="picker2">
|
|
||||||
<mat-datepicker-toggle matSuffix [for]="picker2"></mat-datepicker-toggle>
|
|
||||||
<mat-datepicker #picker2></mat-datepicker>
|
|
||||||
</mat-form-field> -->
|
|
||||||
|
|
||||||
|
|
||||||
<!-- <mat-form-field appearance="fill">
|
|
||||||
<mat-label>Angular forms</mat-label>
|
|
||||||
<input matInput [matDatepicker]="picker1" [formControl]="date">
|
|
||||||
<mat-datepicker-toggle matSuffix [for]="picker1"></mat-datepicker-toggle>
|
|
||||||
<mat-datepicker #picker1></mat-datepicker>
|
|
||||||
</mat-form-field> -->
|
|
||||||
|
|
||||||
|
|
||||||
<div class="ion-item-container">
|
<div class="ion-item-container">
|
||||||
<ion-input type="text" placeholder="Assunto" [(ngModel)]="postEvent.Subject"></ion-input>
|
<ion-input type="text" placeholder="Assunto" [(ngModel)]="postEvent.Subject"></ion-input>
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
<ion-header class="ion-no-border px-20">
|
<ion-header class="ion-no-border px-20">
|
||||||
<ion-toolbar class="px-10">
|
<ion-toolbar class="px-10">
|
||||||
<ion-title class="pa-0">Adicionar intervenientes</ion-title>
|
<ion-title class="pa-0">Adicionar intervenientes</ion-title>
|
||||||
<ion-title>Agenda Desktop</ion-title>
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-searchbar class="attendee-search-bar" (ionChange)="onChange($event)" placeholder="Insira email para adicionar destinatário"></ion-searchbar><!-- [(ngModel)]="searchCountryString" -->
|
<ion-searchbar class="attendee-search-bar" (ionChange)="onChange($event)" placeholder="Insira email para adicionar destinatário"></ion-searchbar><!-- [(ngModel)]="searchCountryString" -->
|
||||||
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
||||||
|
|||||||
@@ -251,7 +251,7 @@ export class EditEventToApproveComponent implements OnInit {
|
|||||||
Message: this.eventProcess.workflowInstanceDataFields.Message,
|
Message: this.eventProcess.workflowInstanceDataFields.Message,
|
||||||
ParticipantsList: this.eventProcess.workflowInstanceDataFields.ParticipantsList,
|
ParticipantsList: this.eventProcess.workflowInstanceDataFields.ParticipantsList,
|
||||||
Private: false,
|
Private: false,
|
||||||
ReviewerComments: ''
|
ReviewUserComments: ''
|
||||||
}
|
}
|
||||||
|
|
||||||
this.eventsService.postEventToApproveEdit(event).subscribe(()=>{
|
this.eventsService.postEventToApproveEdit(event).subscribe(()=>{
|
||||||
|
|||||||
@@ -862,4 +862,8 @@ background: rgb(92, 92, 92);
|
|||||||
tr:nth-child(n+6) {
|
tr:nth-child(n+6) {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal {
|
||||||
|
display: flex !important;
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user