mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-18 20:47:54 +00:00
lot of changes
This commit is contained in:
Generated
+42627
-575
File diff suppressed because it is too large
Load Diff
@@ -57,7 +57,6 @@
|
|||||||
"@capacitor/haptics": "^4.1.0",
|
"@capacitor/haptics": "^4.1.0",
|
||||||
"@capacitor/ios": "^5.4.2",
|
"@capacitor/ios": "^5.4.2",
|
||||||
"@capacitor/keyboard": "^4.1.0",
|
"@capacitor/keyboard": "^4.1.0",
|
||||||
"@capacitor/local-notifications": "^4.1.4",
|
|
||||||
"@capacitor/network": "^4.1.0",
|
"@capacitor/network": "^4.1.0",
|
||||||
"@capacitor/push-notifications": "^5.1.0",
|
"@capacitor/push-notifications": "^5.1.0",
|
||||||
"@capacitor/share": "^4.1.0",
|
"@capacitor/share": "^4.1.0",
|
||||||
|
|||||||
@@ -14,7 +14,8 @@
|
|||||||
</ion-content>
|
</ion-content>
|
||||||
<ion-footer>
|
<ion-footer>
|
||||||
<div class="buttons width-100">
|
<div class="buttons width-100">
|
||||||
<button class="btn-ok-medium" shape="round" (click)="close()">Não</button>
|
|
||||||
<button class="btn-delete-medium" shape="round" (click)="save()">Sim</button>
|
<button class="btn-delete-medium" shape="round" (click)="save()">Sim</button>
|
||||||
|
<button class="btn-ok-medium" shape="round" (click)="close()">Não</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -170,6 +170,7 @@
|
|||||||
<app-attendee-modal
|
<app-attendee-modal
|
||||||
*ngIf="showAttendees"
|
*ngIf="showAttendees"
|
||||||
[footer]="false"
|
[footer]="false"
|
||||||
|
[taskType]="taskType"
|
||||||
class="d-flex flex-column height-100"
|
class="d-flex flex-column height-100"
|
||||||
[adding]="adding"
|
[adding]="adding"
|
||||||
[taskParticipants]="taskParticipants"
|
[taskParticipants]="taskParticipants"
|
||||||
@@ -186,9 +187,10 @@
|
|||||||
</ion-content>
|
</ion-content>
|
||||||
<ion-footer>
|
<ion-footer>
|
||||||
<div class="buttons">
|
<div class="buttons">
|
||||||
<button class="btn-cancel" shape="round" (click)="cancelTask()">Cancelar</button>
|
|
||||||
<button *ngIf="taskType == '0'" class="btn-ok" shape="round" (click)="saveTask()">Concluir</button>
|
<button *ngIf="taskType == '0'" class="btn-ok" shape="round" (click)="saveTask()">Concluir</button>
|
||||||
<button *ngIf="taskType == '1'" class="btn-ok" shape="round" (click)="saveTask()">Solicitar</button>
|
<button *ngIf="taskType == '1'" class="btn-ok" shape="round" (click)="saveTask()">Solicitar</button>
|
||||||
<button *ngIf="taskType == '2'" class="btn-ok" shape="round" (click)="saveTask()">Solicitar</button>
|
<button *ngIf="taskType == '2'" class="btn-ok" shape="round" (click)="saveTask()">Solicitar</button>
|
||||||
|
<button class="btn-cancel" shape="round" (click)="cancelTask()">Cancelar</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -120,6 +120,7 @@ export class CreateProcessPage implements OnInit {
|
|||||||
|
|
||||||
|
|
||||||
this.taskType = this.navParams.get('taskAction');
|
this.taskType = this.navParams.get('taskAction');
|
||||||
|
console.log('this.taskType ',this.taskType )
|
||||||
|
|
||||||
this.postData = new Despacho();
|
this.postData = new Despacho();
|
||||||
this.participants = this.participants = new Array();
|
this.participants = this.participants = new Array();
|
||||||
@@ -598,7 +599,8 @@ export class CreateProcessPage implements OnInit {
|
|||||||
componentProps: {
|
componentProps: {
|
||||||
adding: this.adding,
|
adding: this.adding,
|
||||||
taskParticipants: this.taskParticipants,
|
taskParticipants: this.taskParticipants,
|
||||||
taskParticipantsCc: this.taskParticipantsCc
|
taskParticipantsCc: this.taskParticipantsCc,
|
||||||
|
taskType: this.taskType
|
||||||
},
|
},
|
||||||
cssClass: 'modal attendee modal-desktop',
|
cssClass: 'modal attendee modal-desktop',
|
||||||
backdropDismiss: false
|
backdropDismiss: false
|
||||||
|
|||||||
@@ -351,8 +351,9 @@
|
|||||||
</ion-content>
|
</ion-content>
|
||||||
<ion-footer>
|
<ion-footer>
|
||||||
<div class="buttons">
|
<div class="buttons">
|
||||||
<button class="btn-cancel" shape="round" (click)="close()">Cancelar</button>
|
|
||||||
<button class="btn-ok" shape="round" (click)="saveTask()">Gravar</button>
|
<button class="btn-ok" shape="round" (click)="saveTask()">Gravar</button>
|
||||||
|
<button class="btn-cancel" shape="round" (click)="close()">Cancelar</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|
||||||
|
|||||||
@@ -163,16 +163,17 @@
|
|||||||
|
|
||||||
<div class="d-flex justify-space-between">
|
<div class="d-flex justify-space-between">
|
||||||
|
|
||||||
<ion-buttons slot="start" (click)="close()">
|
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end" (click)="close()">
|
<ion-buttons slot="end" (click)="close()">
|
||||||
<button class="btn-ok" fill="clear" color="#fff">
|
<button class="btn-ok" fill="clear" color="#fff">
|
||||||
<ion-label>Enviar</ion-label>
|
<ion-label>Enviar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="start" (click)="close()">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
@@ -3,4 +3,5 @@ export class EventPerson{
|
|||||||
Name: string;
|
Name: string;
|
||||||
IsRequired: boolean;
|
IsRequired: boolean;
|
||||||
UserType: string;
|
UserType: string;
|
||||||
|
IsPR: boolean
|
||||||
}
|
}
|
||||||
@@ -361,15 +361,16 @@
|
|||||||
|
|
||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar px-20">
|
<ion-toolbar class="footer-toolbar px-20">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -315,15 +315,16 @@
|
|||||||
</ion-content>
|
</ion-content>
|
||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar px-20">
|
<ion-toolbar class="footer-toolbar px-20">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -247,17 +247,17 @@ export class ViewEventPage implements OnInit {
|
|||||||
header: 'Eliminar evento?',
|
header: 'Eliminar evento?',
|
||||||
message: '',
|
message: '',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
|
||||||
text: 'Não',
|
|
||||||
handler: () => {
|
|
||||||
// sconsole.log('Let me think');
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
text: 'Sim',
|
text: 'Sim',
|
||||||
handler: () => {
|
handler: () => {
|
||||||
this.deleteEvent();
|
this.deleteEvent();
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Não',
|
||||||
|
handler: () => {
|
||||||
|
// sconsole.log('Let me think');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
|
|||||||
@@ -84,14 +84,15 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="d-flex">
|
<ion-toolbar class="d-flex">
|
||||||
<ion-buttons class="flex-grow-1" slot="start">
|
<ion-buttons class="flex-grow-1" slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons class="flex-grow-1" slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons class="flex-grow-1" slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import { ContactsService } from 'src/app/services/contacts.service';
|
|||||||
import { ThemeService } from 'src/app/services/theme.service'
|
import { ThemeService } from 'src/app/services/theme.service'
|
||||||
import { LoginUserRespose } from 'src/app/models/user.model';
|
import { LoginUserRespose } from 'src/app/models/user.model';
|
||||||
import { SessionStore } from 'src/app/store/session.service';
|
import { SessionStore } from 'src/app/store/session.service';
|
||||||
|
import { Router } from '@angular/router';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-attendees',
|
selector: 'app-attendees',
|
||||||
@@ -25,6 +26,7 @@ export class AttendeesPageModal implements OnInit {
|
|||||||
taskParticipantsCc:EventPerson[] = [];
|
taskParticipantsCc:EventPerson[] = [];
|
||||||
loggeduser: LoginUserRespose;
|
loggeduser: LoginUserRespose;
|
||||||
@Input() loggedAttendSon: boolean;
|
@Input() loggedAttendSon: boolean;
|
||||||
|
taskType: any;
|
||||||
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -32,16 +34,20 @@ export class AttendeesPageModal implements OnInit {
|
|||||||
private contactsService: ContactsService,
|
private contactsService: ContactsService,
|
||||||
private navParams: NavParams,
|
private navParams: NavParams,
|
||||||
private modalController: ModalController,
|
private modalController: ModalController,
|
||||||
public ThemeService: ThemeService) {
|
public ThemeService: ThemeService,
|
||||||
|
private router: Router,) {
|
||||||
|
|
||||||
this.adding = this.navParams.get('adding');
|
this.adding = this.navParams.get('adding');
|
||||||
this.taskParticipants = this.navParams.get('taskParticipants');
|
this.taskParticipants = this.navParams.get('taskParticipants');
|
||||||
this.taskParticipantsCc = this.navParams.get('taskParticipantsCc');
|
this.taskParticipantsCc = this.navParams.get('taskParticipantsCc');
|
||||||
|
this.taskType = this.navParams.get('taskType');
|
||||||
|
|
||||||
this.loggeduser = SessionStore.user;
|
this.loggeduser = SessionStore.user;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
console.log('Pesquisa de contactos current path1',this.router.url)
|
||||||
this.fetchContacts("");
|
this.fetchContacts("");
|
||||||
|
|
||||||
if(this.taskParticipants == null || this.taskParticipants == undefined){
|
if(this.taskParticipants == null || this.taskParticipants == undefined){
|
||||||
@@ -149,8 +155,12 @@ export class AttendeesPageModal implements OnInit {
|
|||||||
this.contacts = result;
|
this.contacts = result;
|
||||||
console.log('Attendes Email',this.loggeduser.Email)
|
console.log('Attendes Email',this.loggeduser.Email)
|
||||||
let filterLoggedUserEmail = this.contacts.filter(item => item.EmailAddress.toLocaleLowerCase() != this.loggeduser.Email.toLocaleLowerCase())
|
let filterLoggedUserEmail = this.contacts.filter(item => item.EmailAddress.toLocaleLowerCase() != this.loggeduser.Email.toLocaleLowerCase())
|
||||||
|
if(this.taskType == 0 || this.taskType == 1){
|
||||||
|
filterLoggedUserEmail = this.contacts.filter(item => item.IsPR == false)
|
||||||
|
}
|
||||||
console.log('Attendes Email', filterLoggedUserEmail)
|
console.log('Attendes Email', filterLoggedUserEmail)
|
||||||
let filterEmptyEmail = filterLoggedUserEmail.filter(item => item.EmailAddress.toLocaleLowerCase() != "")
|
let filterEmptyEmail = filterLoggedUserEmail.filter(item => item.EmailAddress.toLocaleLowerCase() != "")
|
||||||
|
|
||||||
this.contacts = filterEmptyEmail;
|
this.contacts = filterEmptyEmail;
|
||||||
console.log('Attendes Email', this.contacts)
|
console.log('Attendes Email', this.contacts)
|
||||||
this.showLoader = false;
|
this.showLoader = false;
|
||||||
|
|||||||
+90
-65
@@ -1,7 +1,7 @@
|
|||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit } from '@angular/core';
|
||||||
import { ModalController, PopoverController, ToastController } from '@ionic/angular';
|
import { ModalController, PopoverController, ToastController } from '@ionic/angular';
|
||||||
import { ProcessesService } from 'src/app/services/processes.service';
|
import { ProcessesService } from 'src/app/services/processes.service';
|
||||||
import { momentG } from 'src/plugin/momentG';
|
import { momentG } from 'src/plugin/momentG';
|
||||||
|
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
import { DiplomaOptionsPage } from 'src/app/shared/popover/deploma-options/deploma-options.page';
|
import { DiplomaOptionsPage } from 'src/app/shared/popover/deploma-options/deploma-options.page';
|
||||||
@@ -9,7 +9,7 @@ import { ToastService } from 'src/app/services/toast.service';
|
|||||||
import { ViewDocumentPage } from 'src/app/modals/view-document/view-document.page';
|
import { ViewDocumentPage } from 'src/app/modals/view-document/view-document.page';
|
||||||
import { ThemeService } from 'src/app/services/theme.service'
|
import { ThemeService } from 'src/app/services/theme.service'
|
||||||
import { RouteService } from 'src/app/services/route.service';
|
import { RouteService } from 'src/app/services/route.service';
|
||||||
import {HttpErrorHandle } from 'src/app/services/http-error-handle.service';
|
import { HttpErrorHandle } from 'src/app/services/http-error-handle.service';
|
||||||
import { AddNotePage } from 'src/app/modals/add-note/add-note.page';
|
import { AddNotePage } from 'src/app/modals/add-note/add-note.page';
|
||||||
import { DespachoService } from 'src/app/Rules/despacho.service'
|
import { DespachoService } from 'src/app/Rules/despacho.service'
|
||||||
import { AttachmentList } from 'src/app/models/Excludetask';
|
import { AttachmentList } from 'src/app/models/Excludetask';
|
||||||
@@ -35,12 +35,13 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
fulltask: any
|
fulltask: any
|
||||||
intervenientes: any = []
|
intervenientes: any = []
|
||||||
cc: any = [];
|
cc: any = [];
|
||||||
attachments:any;
|
attachments: any;
|
||||||
customDate: any;
|
customDate: any;
|
||||||
caller:string;
|
caller: string;
|
||||||
mergedArray: any = [];
|
mergedArray: any = [];
|
||||||
DraftIds = ""
|
DraftIds = ""
|
||||||
DraftNames = ""
|
DraftNames = ""
|
||||||
|
asDraft = true;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private processes: ProcessesService,
|
private processes: ProcessesService,
|
||||||
@@ -57,10 +58,10 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
public p: PermissionService,
|
public p: PermissionService,
|
||||||
) {
|
) {
|
||||||
this.activatedRoute.paramMap.subscribe(params => {
|
this.activatedRoute.paramMap.subscribe(params => {
|
||||||
if(params["params"].SerialNumber) {
|
if (params["params"].SerialNumber) {
|
||||||
this.serialnumber = params["params"].SerialNumber;
|
this.serialnumber = params["params"].SerialNumber;
|
||||||
}
|
}
|
||||||
if(params["params"].caller) {
|
if (params["params"].caller) {
|
||||||
this.caller = params["params"].caller;
|
this.caller = params["params"].caller;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -91,7 +92,8 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
showEnviarPendentes: false,
|
showEnviarPendentes: false,
|
||||||
fulltask: this.fulltask,
|
fulltask: this.fulltask,
|
||||||
DraftNames: this.DraftNames,
|
DraftNames: this.DraftNames,
|
||||||
DraftIds: this.DraftIds
|
DraftIds: this.DraftIds,
|
||||||
|
asDraft: this.asDraft
|
||||||
|
|
||||||
},
|
},
|
||||||
translucent: true
|
translucent: true
|
||||||
@@ -112,7 +114,7 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
"SerialNumber": res.serialNumber,
|
"SerialNumber": res.serialNumber,
|
||||||
"Folio": res.workflowInstanceDataFields.Subject,
|
"Folio": res.workflowInstanceDataFields.Subject,
|
||||||
"Senders": res.originator.email,
|
"Senders": res.originator.email,
|
||||||
"CreateDate": momentG(new Date(res.taskStartDate),'yyyy-MM-dd HH:mm:ss'),
|
"CreateDate": momentG(new Date(res.taskStartDate), 'yyyy-MM-dd HH:mm:ss'),
|
||||||
"DocumentURL": res.workflowInstanceDataFields.ViewerRequest,
|
"DocumentURL": res.workflowInstanceDataFields.ViewerRequest,
|
||||||
"Remetente": res.workflowInstanceDataFields.Sender,
|
"Remetente": res.workflowInstanceDataFields.Sender,
|
||||||
"Note": res.workflowInstanceDataFields.TaskMessage || res.workflowInstanceDataFields.Note,
|
"Note": res.workflowInstanceDataFields.TaskMessage || res.workflowInstanceDataFields.Note,
|
||||||
@@ -144,13 +146,13 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
this.getDocumentPdf(this.fulltask.Documents)
|
this.getDocumentPdf(this.fulltask.Documents)
|
||||||
|
|
||||||
let thedate = new Date(this.task.CreateDate);
|
let thedate = new Date(this.task.CreateDate);
|
||||||
this.customDate = this.days[thedate.getDay()]+ ", " + thedate.getDate() +" de " + ( this.months[thedate.getMonth()]);
|
this.customDate = this.days[thedate.getDay()] + ", " + thedate.getDate() + " de " + (this.months[thedate.getMonth()]);
|
||||||
|
|
||||||
this.processes.GetTaskParticipants(this.task.FolderId).subscribe(users=>{
|
this.processes.GetTaskParticipants(this.task.FolderId).subscribe(users => {
|
||||||
this.intervenientes = users.filter(user=>{
|
this.intervenientes = users.filter(user => {
|
||||||
return user.Type == 'I';
|
return user.Type == 'I';
|
||||||
});
|
});
|
||||||
this.cc = users.filter(user=>{
|
this.cc = users.filter(user => {
|
||||||
return user.Type == 'CC';
|
return user.Type == 'CC';
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -158,20 +160,20 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
});
|
});
|
||||||
this.getDocumentDetails(this.task.FolderId, '361');
|
this.getDocumentDetails(this.task.FolderId, '361');
|
||||||
|
|
||||||
}, (error)=>{
|
}, (error) => {
|
||||||
try {
|
try {
|
||||||
this.httpErroHandle.httpStatusHandle(error)
|
this.httpErroHandle.httpStatusHandle(error)
|
||||||
this.goBack()
|
this.goBack()
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
window.history.back();
|
window.history.back();
|
||||||
} finally {
|
} finally {
|
||||||
this.httpErroHandle.httpStatusHandle(error)
|
this.httpErroHandle.httpStatusHandle(error)
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async viewDocument({Document, content}) {
|
async viewDocument({ Document, content }) {
|
||||||
|
|
||||||
if (Document.content == "") {
|
if (Document.content == "") {
|
||||||
const modal = await this.modalController.create({
|
const modal = await this.modalController.create({
|
||||||
@@ -197,7 +199,12 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
component: TinyMCEPage,
|
component: TinyMCEPage,
|
||||||
componentProps: {
|
componentProps: {
|
||||||
Document,
|
Document,
|
||||||
content
|
content,
|
||||||
|
InstanceID: this.task.InstanceID,
|
||||||
|
FolderId: this.task.FolderID,
|
||||||
|
DraftIds: this.DraftIds,
|
||||||
|
OriginalFileName: this.DraftNames,
|
||||||
|
Serialnumber:this.serialnumber
|
||||||
},
|
},
|
||||||
cssClass: 'modal modal-desktop'
|
cssClass: 'modal modal-desktop'
|
||||||
});
|
});
|
||||||
@@ -208,8 +215,8 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
getDocumentDetails(forlderId:string, applicationId:string) {
|
getDocumentDetails(forlderId: string, applicationId: string) {
|
||||||
this.processes.GetDocumentDetails(forlderId,applicationId).subscribe(res=>{
|
this.processes.GetDocumentDetails(forlderId, applicationId).subscribe(res => {
|
||||||
this.attachments = res.Documents;
|
this.attachments = res.Documents;
|
||||||
|
|
||||||
|
|
||||||
@@ -239,28 +246,28 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
await this.processes.CompleteTask(body).toPromise()
|
await this.processes.CompleteTask(body).toPromise()
|
||||||
this.httpErroHandle.httpsSucessMessagge('Assinado')
|
this.httpErroHandle.httpsSucessMessagge('Assinado')
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.httpErroHandle.httpStatusHandle(error)
|
this.httpErroHandle.httpStatusHandle(error)
|
||||||
}
|
}
|
||||||
finally {}
|
finally { }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async AssinarDraft() {
|
async AssinarDraft() {
|
||||||
|
|
||||||
|
if (this.asDraft) {
|
||||||
|
const modal = await this.modalController.create({
|
||||||
|
component: PopupQuestionPage,
|
||||||
|
componentProps: {
|
||||||
|
title: 'Deseja assinar este Diploma?',
|
||||||
|
/* message: 'Nota: Ao Efetuar esta operação, o tratamento deste diploma não poderá ser realizado a partir da caixa de correspondência' */
|
||||||
|
},
|
||||||
|
cssClass: "popup-question discart-expedient-modal",
|
||||||
|
backdropDismiss: true
|
||||||
|
});
|
||||||
|
|
||||||
const modal = await this.modalController.create({
|
modal.onDidDismiss().then(async (res) => {
|
||||||
component: PopupQuestionPage,
|
const data = res.data
|
||||||
componentProps: {
|
if (data == "Yes") {
|
||||||
title: 'Deseja assinar este Diploma?',
|
|
||||||
/* message: 'Nota: Ao Efetuar esta operação, o tratamento deste diploma não poderá ser realizado a partir da caixa de correspondência' */
|
|
||||||
},
|
|
||||||
cssClass: "popup-question discart-expedient-modal",
|
|
||||||
backdropDismiss: true
|
|
||||||
});
|
|
||||||
|
|
||||||
modal.onDidDismiss().then(async (res) => {
|
|
||||||
const data = res.data
|
|
||||||
if(data == "Yes") {
|
|
||||||
let body = {
|
let body = {
|
||||||
"InstanceId": this.task.InstanceID,
|
"InstanceId": this.task.InstanceID,
|
||||||
"FolderId": this.task.FolderID,
|
"FolderId": this.task.FolderID,
|
||||||
@@ -278,18 +285,22 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
this.TaskService.loadDiplomas();
|
this.TaskService.loadDiplomas();
|
||||||
this.goBack();
|
this.goBack();
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.httpErroHandle.httpStatusHandle(error)
|
this.httpErroHandle.httpStatusHandle(error)
|
||||||
}
|
}
|
||||||
finally {
|
finally {
|
||||||
loader.remove()
|
loader.remove()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}, (error) => {
|
}, (error) => {
|
||||||
console.log(error)
|
console.log(error)
|
||||||
});
|
});
|
||||||
|
|
||||||
|
await modal.present();
|
||||||
|
} else {
|
||||||
|
this.httpErroHandle.validationMessagge("diplomaAsDraft");
|
||||||
|
}
|
||||||
|
|
||||||
await modal.present();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async openAddNoteModal(actionName: string) {
|
async openAddNoteModal(actionName: string) {
|
||||||
@@ -338,7 +349,7 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
else if (actionName == 'Reexecução') {
|
else if (actionName == 'Reexecução') {
|
||||||
/* await this.reexecute(res.data.note, docs);
|
/* await this.reexecute(res.data.note, docs);
|
||||||
this.goBack(); */
|
this.goBack(); */
|
||||||
} else if(actionName == 'Gerar Diploma') {
|
} else if (actionName == 'Gerar Diploma') {
|
||||||
/* await this.generateDiploma(res.data.note, docs);
|
/* await this.generateDiploma(res.data.note, docs);
|
||||||
this.goBack(); */
|
this.goBack(); */
|
||||||
}
|
}
|
||||||
@@ -382,7 +393,8 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
taskAction: taskAction,
|
taskAction: taskAction,
|
||||||
task: task,
|
task: task,
|
||||||
profile: this.profile,
|
profile: this.profile,
|
||||||
fulltask: this.fulltask
|
fulltask: this.fulltask,
|
||||||
|
asDrat: this.asDraft
|
||||||
},
|
},
|
||||||
cssClass: classs,
|
cssClass: classs,
|
||||||
});
|
});
|
||||||
@@ -458,34 +470,47 @@ export class DiplomaAssinarPage implements OnInit {
|
|||||||
|
|
||||||
|
|
||||||
async getDraft(split_stringDraft: string[]) {
|
async getDraft(split_stringDraft: string[]) {
|
||||||
this.DraftNames = ""
|
this.DraftNames = "";
|
||||||
|
this.DraftIds = "";
|
||||||
|
|
||||||
for(const strg of split_stringDraft) {
|
const draftPromises = split_stringDraft.map(async (strg) => {
|
||||||
console.log('List of ids', strg)
|
console.log('List of ids', strg);
|
||||||
const resd = await this.processes.GetDraftByID(strg).toPromise()
|
try {
|
||||||
|
const resd = await this.processes.GetDraftByID(strg).toPromise();
|
||||||
|
|
||||||
let object = {
|
let object = {
|
||||||
"ApplicationId": "",
|
"ApplicationId": "",
|
||||||
"Assunto": resd.data.description,
|
"Assunto": resd.data.description,
|
||||||
"DocDate": "",
|
"DocDate": "",
|
||||||
"DocId": resd.data.id,
|
"DocId": resd.data.id,
|
||||||
"DocNumber": "",
|
"DocNumber": "",
|
||||||
"FolderId": "",
|
"FolderId": "",
|
||||||
"Sender": "",
|
"Sender": "",
|
||||||
"SourceDocId": "",
|
"SourceDocId": "",
|
||||||
"content": resd.data.content,
|
"content": resd.data.content,
|
||||||
"path": resd.data.path,
|
"path": resd.data.path,
|
||||||
"ownerId": resd.data.ownerId,
|
"ownerId": resd.data.ownerId,
|
||||||
"status": resd.data.status,
|
"status": resd.data.status,
|
||||||
|
};
|
||||||
|
this.mergedArray.push(object);
|
||||||
|
this.DraftNames += resd.data.description + ";";
|
||||||
|
this.DraftIds += resd.data.id + ";";
|
||||||
|
console.log('List of draft', resd);
|
||||||
|
} catch (error) {
|
||||||
|
console.log('Error getting draft', error);
|
||||||
}
|
}
|
||||||
this.mergedArray.push(object)
|
});
|
||||||
this.DraftNames = this.DraftNames + resd.data.description+";"
|
|
||||||
console.log('List of draff', resd)
|
await Promise.all(draftPromises);
|
||||||
|
|
||||||
|
if (this.DraftNames) {
|
||||||
|
this.DraftNames = this.DraftNames.slice(0, -1);
|
||||||
|
this.DraftIds = this.DraftIds.slice(0, -1);
|
||||||
|
} else {
|
||||||
|
console.log('No draft found.');
|
||||||
|
this.asDraft = false
|
||||||
}
|
}
|
||||||
|
|
||||||
this.DraftNames = this.DraftNames.slice(0, -1);
|
|
||||||
this.DraftIds = this.DraftIds.slice(0, -1);
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -314,8 +314,8 @@
|
|||||||
</ion-content>
|
</ion-content>
|
||||||
<ion-footer>
|
<ion-footer>
|
||||||
<div class="buttons">
|
<div class="buttons">
|
||||||
<button class="btn-cancel" shape="round" (click)="close()">Cancelar</button>
|
|
||||||
<button class="btn-ok" shape="round" (click)="saveTask()">Gravar</button>
|
<button class="btn-ok" shape="round" (click)="saveTask()">Gravar</button>
|
||||||
|
<button class="btn-cancel" shape="round" (click)="close()">Cancelar</button>
|
||||||
</div>
|
</div>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|
||||||
|
|||||||
+2
-1
@@ -221,6 +221,7 @@
|
|||||||
class="d-flex flex-column height-100 hide-footer"
|
class="d-flex flex-column height-100 hide-footer"
|
||||||
[adding]="adding"
|
[adding]="adding"
|
||||||
[footer]="false"
|
[footer]="false"
|
||||||
|
[taskType]="taskType"
|
||||||
[taskParticipants]="taskParticipants"
|
[taskParticipants]="taskParticipants"
|
||||||
[taskParticipantsCc]="taskParticipantsCc"
|
[taskParticipantsCc]="taskParticipantsCc"
|
||||||
(closeComponent)="closeComponent()"
|
(closeComponent)="closeComponent()"
|
||||||
@@ -235,7 +236,7 @@
|
|||||||
</ion-content>
|
</ion-content>
|
||||||
<ion-footer>
|
<ion-footer>
|
||||||
<div class="buttons">
|
<div class="buttons">
|
||||||
<button class="btn-cancel" shape="round" (click)="cancelTask()">Cancelar</button>
|
|
||||||
<button class="btn-ok" shape="round" (click)="saveTask()">Concluir</button>
|
<button class="btn-ok" shape="round" (click)="saveTask()">Concluir</button>
|
||||||
|
<button class="btn-cancel" shape="round" (click)="cancelTask()">Cancelar</button>
|
||||||
</div>
|
</div>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
+2
-1
@@ -533,7 +533,8 @@ export class ExpedientTaskModalPage implements OnInit {
|
|||||||
componentProps: {
|
componentProps: {
|
||||||
adding: this.adding,
|
adding: this.adding,
|
||||||
taskParticipants: this.taskParticipants,
|
taskParticipants: this.taskParticipants,
|
||||||
taskParticipantsCc: this.taskParticipantsCc
|
taskParticipantsCc: this.taskParticipantsCc,
|
||||||
|
taskType: this.taskType
|
||||||
},
|
},
|
||||||
cssClass: 'attendee modal modal-desktop',
|
cssClass: 'attendee modal modal-desktop',
|
||||||
backdropDismiss: false
|
backdropDismiss: false
|
||||||
|
|||||||
@@ -88,15 +88,16 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar width-100 justify-space-between d-flex px-20">
|
<ion-toolbar class="footer-toolbar width-100 justify-space-between d-flex px-20">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|
||||||
|
|||||||
@@ -100,14 +100,15 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar width-100">
|
<ion-toolbar class="footer-toolbar width-100">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Criar</ion-label>
|
<ion-label>Criar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -94,14 +94,15 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar">
|
<ion-toolbar class="footer-toolbar">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -1,9 +1,10 @@
|
|||||||
|
|
||||||
<!-- HEADER-->
|
<!-- HEADER-->
|
||||||
<ion-header class="ion-no-border header-main d-md-flex">
|
<ion-header class="ion-no-border header-main d-md-flex">
|
||||||
<div *ngIf="select" class="btn-close d-none d-lg-flex cursor-pointer font-35-rem" (click)="close()">
|
<div *ngIf="select" class="btn-close d-none d-lg-flex cursor-pointer font-35-rem" (click)="close()">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' "class="icon" src="assets/images/icons-search-close.svg"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " class="icon"
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="icon" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
src="assets/images/icons-search-close.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="icon"
|
||||||
|
src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="d-md-flex flex-md-row-reverse flex-grow-1">
|
<div class="d-md-flex flex-md-row-reverse flex-grow-1">
|
||||||
@@ -12,14 +13,15 @@
|
|||||||
|
|
||||||
<div class="top-box d-flex ion-justify-content-between pb-10">
|
<div class="top-box d-flex ion-justify-content-between pb-10">
|
||||||
<!-- search -->
|
<!-- search -->
|
||||||
<div *ngIf="!showAdvanceSearch" class="icon-z icon-most-searched-word-open cursor-pointer" (click)="showHideAdvanceSearch(true)">
|
|
||||||
|
<!-- <div *ngIf="!showAdvanceSearch" class="icon-z icon-most-searched-word-open cursor-pointer" (click)="showHideAdvanceSearch(true)">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' && type!='Agenda'" src="assets/images/theme/blue/icons-most-searched-words-open.svg" class="icon" slot="end"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' && type!='Agenda'" src="assets/images/theme/blue/icons-most-searched-words-open.svg" class="icon" slot="end"></ion-icon>
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme != 'default'&& type!='Agenda' " src="assets/images/icons-most-searched-words-open.svg" class="icon" slot="end"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme != 'default'&& type!='Agenda' " src="assets/images/icons-most-searched-words-open.svg" class="icon" slot="end"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="showAdvanceSearch " class="icon-z icon-most-searched-word-open align-md-baseline pl-10 cursor-pointer" (click)="showHideAdvanceSearch(false)" >
|
<div *ngIf="showAdvanceSearch " class="icon-z icon-most-searched-word-open align-md-baseline pl-10 cursor-pointer" (click)="showHideAdvanceSearch(false)" >
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' && type!='Agenda' "src="assets/images/advance-search-show-modal.svg" class="icon" slot="end"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' && type!='Agenda' "src="assets/images/advance-search-show-modal.svg" class="icon" slot="end"></ion-icon>
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' && type!='Agenda'" src="assets/images/theme/gov/advance-search-show-modal.svg" class="icon" slot="end"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' && type!='Agenda'" src="assets/images/theme/gov/advance-search-show-modal.svg" class="icon" slot="end"></ion-icon>
|
||||||
</div>
|
</div> -->
|
||||||
|
|
||||||
<div class="profile">
|
<div class="profile">
|
||||||
<ion-icon class="icon" src="assets/images/icons-profile.svg"></ion-icon>
|
<ion-icon class="icon" src="assets/images/icons-profile.svg"></ion-icon>
|
||||||
@@ -30,37 +32,54 @@
|
|||||||
margin: 0px;
|
margin: 0px;
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
background: transparent;
|
background: transparent;
|
||||||
|
color: white;
|
||||||
">
|
">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' "class="icon font-40-rem" src="assets/images/icons-search-close.svg"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " class="icon font-40-rem"
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="icon font-40-rem" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
src="assets/images/icons-search-close.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="icon font-40-rem"
|
||||||
|
src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Search drop down -->
|
<!-- Search drop down -->
|
||||||
<div class="advance-search pa-0 pt-10 pr-10 flex-md-grow-1" >
|
<div class="advance-search pa-0 pt-10 pr-10 flex-md-grow-1">
|
||||||
<ion-form [class.d-none]="!showSearchInput">
|
<ion-form >
|
||||||
<div class="d-flex search-input-container ion-justify-content-between" >
|
<div class="searchParent">
|
||||||
<!-- <div class="icon">
|
|
||||||
<button class="btn-no-color" (click)="basicSearch()">
|
|
||||||
<ion-icon class="icon-z" slot="end" src="assets/images/theme/gov/search.svg"></ion-icon>
|
|
||||||
</button>
|
|
||||||
</div> -->
|
|
||||||
<div class="input-text d-flex ion-align-items-center pm-10">
|
|
||||||
<ion-input (keyup.enter)="basicSearch()" [(ngModel)]='searchSubject' class="search-input" type="search" placeholder="Pesquisar assunto"></ion-input>
|
|
||||||
</div>
|
|
||||||
<!-- <div (click)="clearSearchInput()" class="d-flex align-center icon">
|
|
||||||
|
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " class="font-25" name="restaurant-outline" src="assets/images/icons-search-close.svg"></ion-icon>
|
<div class="d-flex search-input-container ion-justify-content-between searchChild">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="font-25" name="restaurant-outline" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
<!-- <div class="icon">
|
||||||
|
<button class="btn-no-color" (click)="basicSearch()">
|
||||||
|
<ion-icon class="icon-z" slot="end" src="assets/images/theme/gov/search.svg"></ion-icon>
|
||||||
|
</button>
|
||||||
|
</div> -->
|
||||||
|
<div class="input-text d-flex ion-align-items-center pm-10 pl-10">
|
||||||
|
<ion-input (keyup.enter)="basicSearch()" [(ngModel)]='searchSubject' class="search-input" type="search"
|
||||||
|
placeholder="Assunto"></ion-input>
|
||||||
|
</div>
|
||||||
|
<!-- <div (click)="clearSearchInput()" class="d-flex align-center icon">
|
||||||
|
|
||||||
</div> -->
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " class="font-25" name="restaurant-outline" src="assets/images/icons-search-close.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " class="font-25" name="restaurant-outline" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
||||||
|
|
||||||
<div (click)="basicSearch()" class="d-flex align-center icon">
|
</div> -->
|
||||||
|
|
||||||
<ion-icon class="icon-z" slot="end" src="assets/images/theme/gov/search.svg"></ion-icon>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
<div (click)="basicSearch()" class="d-flex align-center searchChild pl-10">
|
||||||
|
|
||||||
|
<ion-icon class="icon-z" slot="end" src="assets/images/theme/gov/icons-search.svg"></ion-icon>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div *ngIf="!showAdvanceSearch" class="icon-z icon-most-searched-word-open pl-10 cursor-pointer" (click)="showHideAdvanceSearch(true)">
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' && type!='Agenda'" src="assets/images/theme/gov/filter_icon_grey.svg" class="icon" slot="end"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme != 'default'&& type!='Agenda' " src="assets/images/theme/gov/filter_icon_grey.svg" class="icon" slot="end"></ion-icon>
|
||||||
|
</div>
|
||||||
|
<div *ngIf="showAdvanceSearch " class="icon-z icon-most-searched-word-open align-md-baseline pl-10 cursor-pointer" (click)="showHideAdvanceSearch(false)" >
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' && type!='Agenda' "src="assets/images/theme/gov/filter_icon.svg" class="icon" slot="end"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' && type!='Agenda'" src="assets/images/theme/gov/filter_icon.svg" class="icon" slot="end"></ion-icon>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</ion-form>
|
</ion-form>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
@@ -74,25 +93,50 @@
|
|||||||
margin-top: -11px;
|
margin-top: -11px;
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
">
|
">
|
||||||
<input matInput [ngxMatDatetimePicker]="picker1"
|
<input matInput [ngxMatDatetimePicker]="picker1" placeholder="{{datePickerPlaceholder}}"
|
||||||
placeholder="Data Inicio*"
|
[(ngModel)]="searchDocumentDate">
|
||||||
[(ngModel)]="searchDocumentDate"
|
<mat-datepicker-toggle id="new-inicio" matSuffix [for]="picker1"
|
||||||
>
|
(click)="clickDate()"></mat-datepicker-toggle>
|
||||||
<mat-datepicker-toggle id="new-inicio" matSuffix [for]="picker1" (click)="clickDate()" ></mat-datepicker-toggle>
|
<ngx-mat-datetime-picker #picker1 (click)="clickDate()" [showSpinners]="showSpinners"
|
||||||
<ngx-mat-datetime-picker #picker1 (click)="clickDate()"
|
[showSeconds]="showSeconds" [stepHour]="stepHour" [stepMinute]="stepMinute" [stepSecond]="stepSecond"
|
||||||
[showSpinners]="showSpinners"
|
[touchUi]="touchUi" [hideTime]="true">
|
||||||
[showSeconds]="showSeconds"
|
|
||||||
[stepHour]="stepHour" [stepMinute]="stepMinute"
|
|
||||||
[stepSecond]="stepSecond"
|
|
||||||
[touchUi]="touchUi"
|
|
||||||
[hideTime]="true"
|
|
||||||
>
|
|
||||||
</ngx-mat-datetime-picker>
|
</ngx-mat-datetime-picker>
|
||||||
</mat-form-field>
|
</mat-form-field>
|
||||||
|
|
||||||
<div class="icon cursor-pointer" (click)="clearInputDocumentDate()">
|
<div class="icon cursor-pointer" (click)="clearInputDocumentDate()">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' "name="restaurant-outline" src="assets/images/icons-search-close.svg"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " name="restaurant-outline"
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
src="assets/images/icons-search-close.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline"
|
||||||
|
src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
<li *ngIf="showAdvanceSearch" class="d-flex date-container ion-justify-content-between">
|
||||||
|
<div *ngIf="checkDateEnd" class="icon-mer icon">
|
||||||
|
<ion-icon name="restaurant-outline" src="assets/images/icons-advance-search-document.svg"></ion-icon>
|
||||||
|
</div>
|
||||||
|
<div *ngIf="checkDateEnd" class="input-container d-flex flex-grow-1 justify-center align-center materia-top">
|
||||||
|
|
||||||
|
<mat-form-field appearance="none" class="date-hour-picker" (click)="clickDate()" style="
|
||||||
|
margin-top: -11px;
|
||||||
|
margin-left: 10px;
|
||||||
|
">
|
||||||
|
<input matInput [ngxMatDatetimePicker]="picker2" placeholder="Data Fim*"
|
||||||
|
[(ngModel)]="searchDocumentDateEnd">
|
||||||
|
<mat-datepicker-toggle id="new-inicio" matSuffix [for]="picker2"
|
||||||
|
(click)="clickDate()"></mat-datepicker-toggle>
|
||||||
|
<ngx-mat-datetime-picker #picker2 (click)="clickDate()" [showSpinners]="showSpinners"
|
||||||
|
[showSeconds]="showSeconds" [stepHour]="stepHour" [stepMinute]="stepMinute" [stepSecond]="stepSecond"
|
||||||
|
[touchUi]="touchUi" [hideTime]="true">
|
||||||
|
</ngx-mat-datetime-picker>
|
||||||
|
</mat-form-field>
|
||||||
|
|
||||||
|
<div class="icon cursor-pointer" (click)="clearInputDocumentDate()">
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " name="restaurant-outline"
|
||||||
|
src="assets/images/icons-search-close.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline"
|
||||||
|
src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -103,10 +147,13 @@
|
|||||||
<ion-icon name="restaurant-outline" src="assets/images/icons-advance-search-sender.svg"></ion-icon>
|
<ion-icon name="restaurant-outline" src="assets/images/icons-advance-search-sender.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="checkRoutPublication" class="input-container d-flex ion-align-items-center">
|
<div *ngIf="checkRoutPublication" class="input-container d-flex ion-align-items-center">
|
||||||
<ion-input [(ngModel)]='searchSenderdescription' class="search-input cursor-pointer" (click)="openAdvanceSearchSelection()" type="search" placeholder="Remetentes"></ion-input>
|
<ion-input [(ngModel)]='searchSenderdescription' class="search-input cursor-pointer"
|
||||||
<div class="icon cursor-pointer" (click)="clearInputRemetente()" >
|
(click)="openAdvanceSearchSelection()" type="search" placeholder="Remetentes"></ion-input>
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' "name="restaurant-outline" src="assets/images/icons-search-close.svg"></ion-icon>
|
<div class="icon cursor-pointer" (click)="clearInputRemetente()">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " name="restaurant-outline"
|
||||||
|
src="assets/images/icons-search-close.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline"
|
||||||
|
src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
@@ -116,30 +163,34 @@
|
|||||||
<ion-icon name="restaurant-outline" src="assets/images/icons-arrow-arrow-down-25-copy.svg"></ion-icon>
|
<ion-icon name="restaurant-outline" src="assets/images/icons-arrow-arrow-down-25-copy.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="checkRoutPublication" class="input-container d-flex ion-align-items-center">
|
<div *ngIf="checkRoutPublication" class="input-container d-flex ion-align-items-center">
|
||||||
<ion-input [(ngModel)]='searchOrganicEntiryDescription' class="search-input custom-checkbox" type="search" placeholder="Entidade Orgânica" (click)="openOrganicEntitySelection()"></ion-input>
|
<ion-input [(ngModel)]='searchOrganicEntiryDescription' class="search-input custom-checkbox" type="search"
|
||||||
<div class="icon cursor-pointer" (click)="clearInputOrganicEntity()" >
|
placeholder="Entidade Orgânica" (click)="openOrganicEntitySelection()"></ion-input>
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " name="restaurant-outline" src="assets/images/icons-search-close.svg"></ion-icon>
|
<div class="icon cursor-pointer" (click)="clearInputOrganicEntity()">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " name="restaurant-outline"
|
||||||
|
src="assets/images/icons-search-close.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline"
|
||||||
|
src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- search result categories-->
|
<!-- search result categories-->
|
||||||
<div class="options flex-md-grow-1 " *ngIf="showDocuments"
|
<div class="options flex-md-grow-1 " *ngIf="showDocuments" style="border-bottom: 1px solid #f3f3f3;width: unset">
|
||||||
style="border-bottom: 1px solid #f3f3f3;width: unset"
|
|
||||||
>
|
|
||||||
<div class="container ">
|
<div class="container ">
|
||||||
<div class="d-flex overflow-x-auto">
|
<div class="d-flex overflow-x-auto">
|
||||||
<!-- SLIDE -->
|
<!-- SLIDE -->
|
||||||
|
|
||||||
<div class="d-flex py-10" style="width:0px" [ngClass]="{'active-category': TodosCategory}" class="button cursor-pointer" (click)="noFilter()">
|
<div class="d-flex py-10" style="width:0px" [ngClass]="{'active-category': TodosCategory}"
|
||||||
|
class="button cursor-pointer" (click)="noFilter()">
|
||||||
|
|
||||||
<span>Todos</span>
|
<span>Todos</span>
|
||||||
<ion-label class="label">{{ searchDocuments.length }}</ion-label>
|
<ion-label class="label">{{ searchDocuments.length }}</ion-label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngFor="let category of searchCategories; index as i;" class="d-flex py-10" style="width:0px" [ngClass]="{'active-category': category.Active}" class="button cursor-pointer" (click)="activeCategoty(i); filterDocList(category.Name)">
|
<div *ngFor="let category of searchCategories; index as i;" class="d-flex py-10" style="width:0px"
|
||||||
|
[ngClass]="{'active-category': category.Active}" class="button cursor-pointer"
|
||||||
|
(click)="activeCategoty(i); filterDocList(category.Name)">
|
||||||
|
|
||||||
<span>{{ category.Name }}</span>
|
<span>{{ category.Name }}</span>
|
||||||
<ion-label class="label">{{ category.Qtd }}</ion-label>
|
<ion-label class="label">{{ category.Qtd }}</ion-label>
|
||||||
@@ -148,10 +199,12 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="pl-10" >
|
<div class="pl-10">
|
||||||
<button class="icon-z icon-most-searched-word-open cursor-pointer" ion-button icon-only >
|
<button class="icon-z icon-most-searched-word-open cursor-pointer" ion-button icon-only>
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " src="assets/images/theme/blue/icons-most-searched-words-open.svg" class="icon" slot="end"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' "
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme != 'default' " src="assets/images/icons-most-searched-words-open.svg" class="icon" slot="end"></ion-icon>
|
src="assets/images/theme/blue/icons-most-searched-words-open.svg" class="icon" slot="end"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme != 'default' "
|
||||||
|
src="assets/images/icons-most-searched-words-open.svg" class="icon" slot="end"></ion-icon>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -169,7 +222,7 @@
|
|||||||
<div class="height-100">
|
<div class="height-100">
|
||||||
<div class="d-flex seach-wrapper height-100 flex-row justify-space-between">
|
<div class="d-flex seach-wrapper height-100 flex-row justify-space-between">
|
||||||
|
|
||||||
<div class="d-flex height-100 overflow-y-auto flex-1" *ngIf="!showDocuments || windowWidth >= 1024"
|
<div class="d-flex height-100 overflow-y-auto flex-1" *ngIf="!showDocuments || windowWidth >= 1024"
|
||||||
style="border-right: 1px solid #ddd7d7;">
|
style="border-right: 1px solid #ddd7d7;">
|
||||||
|
|
||||||
<!-- most searched word-->
|
<!-- most searched word-->
|
||||||
@@ -180,11 +233,11 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class=" height-100 overflow-y-auto flex-1" *ngIf="showDocuments">
|
<div class=" height-100 overflow-y-auto flex-1" *ngIf="showDocuments">
|
||||||
<div>
|
<div>
|
||||||
|
|
||||||
<!-- search result document-->
|
<!-- search result document-->
|
||||||
<div class="search-result" >
|
<div class="search-result">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<div class="d-flex ion-justify-content-between ion-align-items-center">
|
<div class="d-flex ion-justify-content-between ion-align-items-center">
|
||||||
<div class="d-flex sort-by ion-justify-content-center">
|
<div class="d-flex sort-by ion-justify-content-center">
|
||||||
@@ -195,36 +248,54 @@
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<div *ngIf="ordinance == 'old'" (click)="reorderList('recent')">
|
<div *ngIf="ordinance == 'old'" (click)="reorderList('recent')">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " src="assets/images/icons-arrow-arrow-up.svg"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' "
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " src="assets/images/theme/gov/icons-arrow-arrow-up.svg"></ion-icon>
|
src="assets/images/icons-arrow-arrow-up.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' "
|
||||||
|
src="assets/images/theme/gov/icons-arrow-arrow-up.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div *ngIf="ordinance == 'recent'" (click)="reorderList('old')">
|
<div *ngIf="ordinance == 'recent'" (click)="reorderList('old')">
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' " src="assets/images/icons-arrow-arrow-down-25.svg"></ion-icon>
|
<ion-icon *ngIf="ThemeService.currentTheme == 'default' "
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' " src="assets/images/theme/gov/icons-arrow-arrow-down.svg"></ion-icon>
|
src="assets/images/icons-arrow-arrow-down-25.svg"></ion-icon>
|
||||||
|
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' "
|
||||||
|
src="assets/images/theme/gov/icons-arrow-arrow-down.svg"></ion-icon>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<ul>
|
<ul>
|
||||||
<li *ngFor="let searchDocument of showSearchDocuments" (click)="viewDetail( searchDocument); selectItem(searchDocument)" class="d-flex cursor-pointer">
|
<li *ngFor="let searchDocument of showSearchDocuments"
|
||||||
|
(click)="viewDetail( searchDocument); selectItem(searchDocument)" class="d-flex cursor-pointer">
|
||||||
<div class="icon">
|
<div class="icon">
|
||||||
<ion-icon *ngIf="itemIcons() == 'AccoesPresidenciais & ArquivoDespachoElect' && ThemeService.currentTheme == 'default' " src="assets/images/icons-search-document.svg"></ion-icon>
|
<ion-icon
|
||||||
<ion-icon *ngIf="itemIcons() == 'AccoesPresidenciais & ArquivoDespachoElect' && ThemeService.currentTheme == 'gov'" src="assets/images/theme/gov/icons-search-document.svg"></ion-icon>
|
*ngIf="itemIcons() == 'AccoesPresidenciais & ArquivoDespachoElect' && ThemeService.currentTheme == 'default' "
|
||||||
|
src="assets/images/icons-search-document.svg"></ion-icon>
|
||||||
|
<ion-icon
|
||||||
|
*ngIf="itemIcons() == 'AccoesPresidenciais & ArquivoDespachoElect' && ThemeService.currentTheme == 'gov'"
|
||||||
|
src="assets/images/theme/gov/icons-search-document.svg"></ion-icon>
|
||||||
<ion-icon *ngIf="itemIcons() == 'Agenda' " src="assets/images/icons-default-agenda.svg"></ion-icon>
|
<ion-icon *ngIf="itemIcons() == 'Agenda' " src="assets/images/icons-default-agenda.svg"></ion-icon>
|
||||||
<ion-icon *ngIf="itemIcons() == 'AccoesPresidenciais' && searchDocument.DocTypeDesc == 'Publicações'" src="assets/images/icons-viagem.svg"></ion-icon>
|
<ion-icon *ngIf="itemIcons() == 'AccoesPresidenciais' && searchDocument.DocTypeDesc == 'Publicações'"
|
||||||
|
src="assets/images/icons-viagem.svg"></ion-icon>
|
||||||
|
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'gov' && itemIcons() == 'AccoesPresidenciais' && searchDocument.DocTypeDesc == 'Acções' " slot="end" src='assets/images/theme/gov/icons-nav-actions.svg'></ion-icon>
|
<ion-icon
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'doneIt' && itemIcons() == 'AccoesPresidenciais' && searchDocument.DocTypeDesc == 'Acções' " slot="end" src='assets/images/theme/{{ThemeService.currentTheme}}/icons-nav-actions.svg'></ion-icon>
|
*ngIf="ThemeService.currentTheme == 'gov' && itemIcons() == 'AccoesPresidenciais' && searchDocument.DocTypeDesc == 'Acções' "
|
||||||
<ion-icon *ngIf="ThemeService.currentTheme == 'default' && itemIcons() == 'AccoesPresidenciais' && searchDocument.DocTypeDesc == 'Acções' " slot="end" src='assets/images/icons-nav-actions.svg'></ion-icon>
|
slot="end" src='assets/images/theme/gov/icons-nav-actions.svg'></ion-icon>
|
||||||
|
<ion-icon
|
||||||
|
*ngIf="ThemeService.currentTheme == 'doneIt' && itemIcons() == 'AccoesPresidenciais' && searchDocument.DocTypeDesc == 'Acções' "
|
||||||
|
slot="end" src='assets/images/theme/{{ThemeService.currentTheme}}/icons-nav-actions.svg'></ion-icon>
|
||||||
|
<ion-icon
|
||||||
|
*ngIf="ThemeService.currentTheme == 'default' && itemIcons() == 'AccoesPresidenciais' && searchDocument.DocTypeDesc == 'Acções' "
|
||||||
|
slot="end" src='assets/images/icons-nav-actions.svg'></ion-icon>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="content ion-align-items-center">
|
<div class="content ion-align-items-center">
|
||||||
|
|
||||||
<div class="d-flex ion-justify-content-between ">
|
<div class="d-flex ion-justify-content-between ">
|
||||||
<span class="result-name">{{ searchDocument.Assunto}}</span>
|
<span class="result-name">{{ searchDocument.Assunto}}</span>
|
||||||
<span class="app-name" *ngIf="itemIcons() == 'AccoesPresidenciais & ArquivoDespachoElect' || itemIcons() == 'Correspondencia' ">{{ searchDocument.appName}}</span>
|
<span class="app-name"
|
||||||
|
*ngIf="itemIcons() == 'AccoesPresidenciais & ArquivoDespachoElect' || itemIcons() == 'Correspondencia' ">{{
|
||||||
|
searchDocument.appName}}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="d-flex ion-justify-content-between ">
|
<div class="d-flex ion-justify-content-between ">
|
||||||
<span class="organic-entity">{{ searchDocument.EntidadeOrganicaNome }}</span>
|
<span class="organic-entity">{{ searchDocument.EntidadeOrganicaNome }}</span>
|
||||||
|
|||||||
@@ -1,20 +1,21 @@
|
|||||||
@import '~src/function.scss';
|
@import "~src/function.scss";
|
||||||
|
|
||||||
.top-box{
|
.top-box {
|
||||||
display: flex;
|
display: flex;
|
||||||
align-content: center;
|
align-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
|
flex-direction: row-reverse;
|
||||||
}
|
}
|
||||||
.header-main{
|
.header-main {
|
||||||
padding: 5px 18px;
|
padding: 5px 18px;
|
||||||
padding-bottom: 2px;
|
padding-bottom: 2px;
|
||||||
padding-top: 25px;
|
padding-top: 25px;
|
||||||
ion-form{
|
ion-form {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
padding-right: 10px;
|
padding-right: 10px;
|
||||||
}
|
}
|
||||||
.btn-modal-dismiss{
|
.btn-modal-dismiss {
|
||||||
display: flex;
|
display: flex;
|
||||||
width: 50px !important;
|
width: 50px !important;
|
||||||
height: fit-content;
|
height: fit-content;
|
||||||
@@ -24,16 +25,16 @@
|
|||||||
margin-top: 5px !important;
|
margin-top: 5px !important;
|
||||||
align-content: center;
|
align-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
}
|
}
|
||||||
.ion-align-content-center{
|
.ion-align-content-center {
|
||||||
align-content: center;
|
align-content: center;
|
||||||
}
|
}
|
||||||
.search-input-container{
|
.search-input-container {
|
||||||
|
width: 100%;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border-radius: 27.5px;
|
border-radius: 27.5px;
|
||||||
border: solid 1px #ebebeb;
|
border: solid 1px #ebebeb;
|
||||||
.icon{
|
.icon {
|
||||||
color: #797979;
|
color: #797979;
|
||||||
width: rem(45);
|
width: rem(45);
|
||||||
height: rem(45);
|
height: rem(45);
|
||||||
@@ -42,38 +43,45 @@
|
|||||||
font-size: rem(25);
|
font-size: rem(25);
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
.input-text{
|
.input-text {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
.icon-z{
|
.icon-z {
|
||||||
width: 20px;
|
width: 20px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.icon-z{
|
.icon-z {
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
font-size: rem(45);
|
font-size: rem(45);
|
||||||
}
|
}
|
||||||
.profile{
|
.profile {
|
||||||
display: none;
|
display: none;
|
||||||
font-size: rem(45);
|
font-size: rem(45);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-slide{
|
.searchParent {
|
||||||
padding-top: 5px
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
}
|
||||||
|
.searchChild {
|
||||||
|
display: inline !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
ion-slide {
|
||||||
|
padding-top: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
// search result type
|
// search result type
|
||||||
.options{
|
.options {
|
||||||
max-width: 900px;
|
max-width: 900px;
|
||||||
margin-top: rem(10);
|
margin-top: rem(10);
|
||||||
.container{
|
.container {
|
||||||
.d-flex{
|
.d-flex {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
.button{
|
.button {
|
||||||
min-width: 116px;
|
min-width: 116px;
|
||||||
border: solid 1px #e9e9e9;
|
border: solid 1px #e9e9e9;
|
||||||
margin: 0px rem(5);
|
margin: 0px rem(5);
|
||||||
@@ -84,15 +92,15 @@ ion-slide{
|
|||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
span{
|
span {
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
margin: 0px;
|
margin: 0px;
|
||||||
font-family: Roboto;
|
font-family: Roboto;
|
||||||
color: var(--title-text-color);;
|
color: var(--title-text-color);
|
||||||
font-size: rem(15);
|
font-size: rem(15);
|
||||||
text-align: center;
|
text-align: center;
|
||||||
}
|
}
|
||||||
.label{
|
.label {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-family: Roboto;
|
font-family: Roboto;
|
||||||
font-size: rem(13);
|
font-size: rem(13);
|
||||||
@@ -103,83 +111,79 @@ ion-slide{
|
|||||||
border-radius: 15px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.active-category{
|
.active-category {
|
||||||
background-color: #42b9fe;
|
background-color: #42b9fe;
|
||||||
color: white;
|
color: white;
|
||||||
span{
|
span {
|
||||||
color: white;
|
color: white;
|
||||||
}
|
}
|
||||||
.label{
|
.label {
|
||||||
color: white;
|
color: white;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.icon{
|
.icon {
|
||||||
display: none;
|
display: none;
|
||||||
width: rem(45);
|
width: rem(45);
|
||||||
height: rem(45);
|
height: rem(45);
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
ion-icon{
|
ion-icon {
|
||||||
width: rem(25);
|
width: rem(25);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.d-flex {
|
||||||
.d-flex{
|
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// search result
|
// search result
|
||||||
.search-result{
|
.search-result {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
border-bottom: unset;
|
border-bottom: unset;
|
||||||
padding: 0px 20px;
|
padding: 0px 20px;
|
||||||
|
|
||||||
.header{
|
.header {
|
||||||
/* border-top: 1px solid #ebebeb; */
|
/* border-top: 1px solid #ebebeb; */
|
||||||
.sort-by{
|
.sort-by {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
.order{
|
.order {
|
||||||
font-family: Roboto;
|
font-family: Roboto;
|
||||||
font-size: rem(13);
|
font-size: rem(13);
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
color:#797979
|
color: #797979;
|
||||||
}
|
}
|
||||||
.order-labal{
|
.order-labal {
|
||||||
font-family: Roboto;
|
font-family: Roboto;
|
||||||
font-size: rem(15);
|
font-size: rem(15);
|
||||||
color: var(--title-text-color);
|
color: var(--title-text-color);
|
||||||
margin-left: 20px;
|
margin-left: 20px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ion-icon{
|
ion-icon {
|
||||||
font-size: rem(25);
|
font-size: rem(25);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ul{
|
ul {
|
||||||
padding: 0px;
|
padding: 0px;
|
||||||
margin: 0px;
|
margin: 0px;
|
||||||
li{
|
li {
|
||||||
padding-top: 8px;
|
padding-top: 8px;
|
||||||
padding-bottom: 8px;
|
padding-bottom: 8px;
|
||||||
border-top: 1px solid #ebebeb;
|
border-top: 1px solid #ebebeb;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
.icon{
|
.icon {
|
||||||
font-size: rem(35);
|
font-size: rem(35);
|
||||||
align-items: center;
|
align-items: center;
|
||||||
display: flex;
|
display: flex;
|
||||||
}
|
}
|
||||||
.content{
|
.content {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
.result-name{
|
.result-name {
|
||||||
margin: 0px;
|
margin: 0px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-family: Roboto;
|
font-family: Roboto;
|
||||||
@@ -187,13 +191,13 @@ ion-slide{
|
|||||||
color: var(--title-text-color);
|
color: var(--title-text-color);
|
||||||
line-height: 1.67;
|
line-height: 1.67;
|
||||||
}
|
}
|
||||||
span{
|
span {
|
||||||
font-family: Roboto;
|
font-family: Roboto;
|
||||||
font-size: rem(13);
|
font-size: rem(13);
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
color: #797979;
|
color: #797979;
|
||||||
}
|
}
|
||||||
.app-name{
|
.app-name {
|
||||||
background: var(--font-awesome);
|
background: var(--font-awesome);
|
||||||
border-radius: 18px;
|
border-radius: 18px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@@ -209,10 +213,9 @@ ion-slide{
|
|||||||
-ms-border-radius: 18px;
|
-ms-border-radius: 18px;
|
||||||
-o-border-radius: 18px;
|
-o-border-radius: 18px;
|
||||||
}
|
}
|
||||||
span.documente-date{
|
span.documente-date {
|
||||||
|
|
||||||
}
|
}
|
||||||
span.organic-entity{
|
span.organic-entity {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -220,10 +223,10 @@ ion-slide{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// most searched word
|
// most searched word
|
||||||
.most-searched-words{
|
.most-searched-words {
|
||||||
width: 100% !important;
|
width: 100% !important;
|
||||||
//min-width: 441px;
|
//min-width: 441px;
|
||||||
p.title{
|
p.title {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 24px;
|
height: 24px;
|
||||||
font-family: Roboto;
|
font-family: Roboto;
|
||||||
@@ -233,26 +236,23 @@ ion-slide{
|
|||||||
margin-bottom: 25px;
|
margin-bottom: 25px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.most-searched-word-container{
|
.most-searched-word-container {
|
||||||
height: 400px;
|
height: 400px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@media only screen and (min-width: 1024px) {
|
@media only screen and (min-width: 1024px) {
|
||||||
.advance-search{
|
.advance-search {
|
||||||
max-width: 47%;
|
max-width: 47%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* Advance search */
|
/* Advance search */
|
||||||
.advance-search{
|
.advance-search {
|
||||||
padding: 20px 20px;
|
padding: 20px 20px;
|
||||||
padding-top: 14px;
|
padding-top: 14px;
|
||||||
|
|
||||||
.icon{
|
.icon {
|
||||||
color: #797979;
|
color: #797979;
|
||||||
width: rem(45);
|
width: rem(45);
|
||||||
height: rem(45);
|
height: rem(45);
|
||||||
@@ -261,35 +261,32 @@ ion-slide{
|
|||||||
font-size: rem(25);
|
font-size: rem(25);
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
.input-container{
|
.input-container {
|
||||||
margin-bottom: 15px;
|
margin-bottom: 15px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
border: solid 1px #ebebeb;
|
border: solid 1px #ebebeb;
|
||||||
}
|
}
|
||||||
.date-container{
|
.date-container {
|
||||||
.icon-mer{
|
.icon-mer {
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ion-datetime{
|
ion-datetime {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.subject-container{
|
.subject-container {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.loader {
|
||||||
.loader{
|
|
||||||
position: absolute;
|
position: absolute;
|
||||||
margin-top: -14px;
|
margin-top: -14px;
|
||||||
width: calc(100% - 39px);
|
width: calc(100% - 39px);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.swiper-container {
|
||||||
.swiper-container{
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
@@ -52,6 +52,7 @@ export class SearchPage implements OnInit {
|
|||||||
// https params
|
// https params
|
||||||
searchSubject: string;
|
searchSubject: string;
|
||||||
searchDocumentDate: string;
|
searchDocumentDate: string;
|
||||||
|
searchDocumentDateEnd: string;
|
||||||
searchSenderdescription: string;
|
searchSenderdescription: string;
|
||||||
searchSenderId: number;
|
searchSenderId: number;
|
||||||
searchOrganicEntiryDescription: string;
|
searchOrganicEntiryDescription: string;
|
||||||
@@ -90,9 +91,12 @@ export class SearchPage implements OnInit {
|
|||||||
|
|
||||||
showSearchInput = false
|
showSearchInput = false
|
||||||
checkRoutPublication: boolean;
|
checkRoutPublication: boolean;
|
||||||
|
checkDateEnd: boolean;
|
||||||
|
datePickerPlaceholder: string;
|
||||||
|
|
||||||
|
|
||||||
@ViewChild('picker1') picker1: any;
|
@ViewChild('picker1') picker1: any;
|
||||||
|
checkAgenda: boolean;
|
||||||
|
|
||||||
constructor(private modalController: ModalController,
|
constructor(private modalController: ModalController,
|
||||||
private search: SearchService,
|
private search: SearchService,
|
||||||
@@ -199,9 +203,13 @@ export class SearchPage implements OnInit {
|
|||||||
|
|
||||||
if(this.currentPath.includes('/home/publications')) {
|
if(this.currentPath.includes('/home/publications')) {
|
||||||
this.checkRoutPublication = false;
|
this.checkRoutPublication = false;
|
||||||
|
this.checkDateEnd = true;
|
||||||
|
this.datePickerPlaceholder = 'Data Inicio*'
|
||||||
console.log(this.checkRoutPublication)
|
console.log(this.checkRoutPublication)
|
||||||
} else {
|
} else {
|
||||||
this.checkRoutPublication = true;
|
this.checkRoutPublication = true;
|
||||||
|
this.checkDateEnd = false;
|
||||||
|
this.datePickerPlaceholder = 'Data*'
|
||||||
console.log(this.checkRoutPublication)
|
console.log(this.checkRoutPublication)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -346,10 +354,14 @@ export class SearchPage implements OnInit {
|
|||||||
basicSearch() {
|
basicSearch() {
|
||||||
|
|
||||||
let searchDocumentDate
|
let searchDocumentDate
|
||||||
|
let searchDocumentDateEnd;
|
||||||
|
|
||||||
if (this.searchDocumentDate) {
|
if (this.searchDocumentDate) {
|
||||||
searchDocumentDate = momentG(new Date(this.searchDocumentDate), 'yyyy-MM-dd')
|
searchDocumentDate = momentG(new Date(this.searchDocumentDate), 'yyyy-MM-dd')
|
||||||
}
|
}
|
||||||
|
if (this.searchDocumentDateEnd) {
|
||||||
|
searchDocumentDateEnd = momentG(new Date(this.searchDocumentDate), 'yyyy-MM-dd')
|
||||||
|
}
|
||||||
|
|
||||||
searchDocumentDate;
|
searchDocumentDate;
|
||||||
|
|
||||||
@@ -361,13 +373,13 @@ export class SearchPage implements OnInit {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (this.searchSubject.trim() == "" && searchDocumentDate == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
if (this.searchSubject.trim() == "" && searchDocumentDate == null && searchDocumentDateEnd == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
||||||
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
||||||
console.log('enter text');
|
console.log('enter text');
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
this.showLoader = true;
|
this.showLoader = true;
|
||||||
this.search.basicSearch(this.searchSubject, searchDocumentDate, this.searchSenderId
|
this.search.basicSearch(this.searchSubject, searchDocumentDate,searchDocumentDateEnd, this.searchSenderId
|
||||||
, this.searchOrganicEntiryCode, this.searchDocTypeId, '0').subscribe(res => {
|
, this.searchOrganicEntiryCode, this.searchDocTypeId, '0').subscribe(res => {
|
||||||
|
|
||||||
if (!res.Categories.length) {
|
if (!res.Categories.length) {
|
||||||
@@ -412,7 +424,7 @@ export class SearchPage implements OnInit {
|
|||||||
if (this.select) {
|
if (this.select) {
|
||||||
|
|
||||||
let counter = 0;
|
let counter = 0;
|
||||||
if (this.searchSubject.trim() == "" && searchDocumentDate == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
if (this.searchSubject.trim() == "" && searchDocumentDate == null && searchDocumentDateEnd == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
||||||
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
||||||
console.log('enter text');
|
console.log('enter text');
|
||||||
|
|
||||||
@@ -462,7 +474,7 @@ export class SearchPage implements OnInit {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.searchSubject.trim() == "" && searchDocumentDate == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
if (this.searchSubject.trim() == "" && searchDocumentDate == null && searchDocumentDateEnd == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
||||||
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
||||||
console.log('enter text');
|
console.log('enter text');
|
||||||
|
|
||||||
@@ -515,13 +527,13 @@ export class SearchPage implements OnInit {
|
|||||||
} else {
|
} else {
|
||||||
let counter = 0;
|
let counter = 0;
|
||||||
|
|
||||||
if (this.searchSubject.trim() == "" && searchDocumentDate == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
if (this.searchSubject.trim() == "" && searchDocumentDate == null && searchDocumentDateEnd == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
||||||
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
||||||
console.log('enter text');
|
console.log('enter text');
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
this.showLoader = true;
|
this.showLoader = true;
|
||||||
this.search.basicSearch(this.searchSubject, searchDocumentDate, this.searchSenderId
|
this.search.basicSearch(this.searchSubject, searchDocumentDate,searchDocumentDateEnd, this.searchSenderId
|
||||||
, this.searchOrganicEntiryCode, this.searchDocTypeId, '8').subscribe(res => {
|
, this.searchOrganicEntiryCode, this.searchDocTypeId, '8').subscribe(res => {
|
||||||
if (!res.Categories.length) {
|
if (!res.Categories.length) {
|
||||||
this.searchResult = "Não encontramos o que procura";
|
this.searchResult = "Não encontramos o que procura";
|
||||||
@@ -564,7 +576,7 @@ export class SearchPage implements OnInit {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
if (this.searchSubject.trim() == "" && searchDocumentDate == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
if (this.searchSubject.trim() == "" && searchDocumentDate == null&& searchDocumentDateEnd == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
||||||
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
||||||
console.log('enter text');
|
console.log('enter text');
|
||||||
|
|
||||||
@@ -626,7 +638,7 @@ export class SearchPage implements OnInit {
|
|||||||
if (this.select) {
|
if (this.select) {
|
||||||
|
|
||||||
let counter = 0;
|
let counter = 0;
|
||||||
if (this.searchSubject.trim() == "" && searchDocumentDate == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
if (this.searchSubject.trim() == "" && searchDocumentDate == null && searchDocumentDateEnd == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
||||||
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
||||||
console.log('enter text');
|
console.log('enter text');
|
||||||
|
|
||||||
@@ -673,13 +685,13 @@ export class SearchPage implements OnInit {
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
let counter = 0;
|
let counter = 0;
|
||||||
if (this.searchSubject.trim() == "" && searchDocumentDate == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
if (this.searchSubject.trim() == "" && searchDocumentDate == null && searchDocumentDateEnd == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
||||||
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
||||||
console.log('enter text');
|
console.log('enter text');
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
this.showLoader = true;
|
this.showLoader = true;
|
||||||
this.search.basicSearch(this.searchSubject, searchDocumentDate, this.searchSenderId
|
this.search.basicSearch(this.searchSubject, searchDocumentDate, searchDocumentDateEnd, this.searchSenderId
|
||||||
, this.searchOrganicEntiryCode, this.searchDocTypeId, '8').subscribe(res => {
|
, this.searchOrganicEntiryCode, this.searchDocTypeId, '8').subscribe(res => {
|
||||||
if (!res.Categories.length) {
|
if (!res.Categories.length) {
|
||||||
this.searchResult = "Não encontramos o que procura";
|
this.searchResult = "Não encontramos o que procura";
|
||||||
@@ -778,13 +790,13 @@ export class SearchPage implements OnInit {
|
|||||||
// });
|
// });
|
||||||
|
|
||||||
|
|
||||||
if (this.searchSubject.trim() == "" && searchDocumentDate == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
if (this.searchSubject.trim() == "" && searchDocumentDate == null && searchDocumentDateEnd == null && this.searchSenderId == null && this.searchOrganicEntiryCode == null && this.searchDocTypeId == null) {
|
||||||
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
this.searchResult = "Campo de pesquisa esta vazio, entre com assunto que deseja pesquisa";
|
||||||
console.log('enter text');
|
console.log('enter text');
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
this.showLoader = true;
|
this.showLoader = true;
|
||||||
this.search.basicSearchPublication(this.searchSubject, searchDocumentDate, this.searchSenderId
|
this.search.basicSearchPublication(this.searchSubject, searchDocumentDate,searchDocumentDateEnd, this.searchSenderId
|
||||||
, this.searchOrganicEntiryCode, this.searchDocTypeId, '386').subscribe(res => {
|
, this.searchOrganicEntiryCode, this.searchDocTypeId, '386').subscribe(res => {
|
||||||
if (!res.Categories.length) {
|
if (!res.Categories.length) {
|
||||||
this.searchResult = "Não encontramos o que procura";
|
this.searchResult = "Não encontramos o que procura";
|
||||||
|
|||||||
@@ -98,7 +98,7 @@ export class AuthService {
|
|||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.errorHandler.handleError(error);
|
this.errorHandler.handleError(error);
|
||||||
this.httpErroHandle.httpStatusHandle(error)
|
this.httpErroHandle.loginHttpStatusHandle(error)
|
||||||
captureException(error);
|
captureException(error);
|
||||||
} finally {
|
} finally {
|
||||||
return response
|
return response
|
||||||
|
|||||||
@@ -78,16 +78,17 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="d-flex">
|
<ion-toolbar class="d-flex">
|
||||||
<ion-buttons class="flex-grow-1" slot="start">
|
<ion-buttons class="flex-grow-1" slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
<ion-icon name="close" slot="start"></ion-icon>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons class="flex-grow-1" slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
<ion-icon name="checkmark" slot="start"></ion-icon>
|
<ion-icon name="checkmark" slot="start"></ion-icon>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons class="flex-grow-1" slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
<ion-icon name="close" slot="start"></ion-icon>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import { ContactsService } from 'src/app/services/contacts.service';
|
|||||||
import { ThemeService } from 'src/app/services/theme.service'
|
import { ThemeService } from 'src/app/services/theme.service'
|
||||||
import { LoginUserRespose } from 'src/app/models/user.model';
|
import { LoginUserRespose } from 'src/app/models/user.model';
|
||||||
import { SessionStore } from 'src/app/store/session.service';
|
import { SessionStore } from 'src/app/store/session.service';
|
||||||
|
import { Router } from '@angular/router';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-attendees',
|
selector: 'app-attendees',
|
||||||
@@ -25,22 +26,27 @@ export class AttendeesPageModal implements OnInit {
|
|||||||
taskParticipantsCc:EventPerson[] = [];
|
taskParticipantsCc:EventPerson[] = [];
|
||||||
loggeduser: LoginUserRespose;
|
loggeduser: LoginUserRespose;
|
||||||
@Input() loggedAttendSon: boolean;
|
@Input() loggedAttendSon: boolean;
|
||||||
|
taskType: any;
|
||||||
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private modalCtrl: ModalController,
|
private modalCtrl: ModalController,
|
||||||
private contactsService: ContactsService,
|
private contactsService: ContactsService,
|
||||||
private navParams: NavParams,
|
private navParams: NavParams,
|
||||||
private modalController: ModalController,
|
private modalController: ModalController,
|
||||||
public ThemeService: ThemeService) {
|
public ThemeService: ThemeService,
|
||||||
|
private router: Router,) {
|
||||||
|
|
||||||
this.adding = this.navParams.get('adding');
|
this.adding = this.navParams.get('adding');
|
||||||
this.taskParticipants = this.navParams.get('taskParticipants');
|
this.taskParticipants = this.navParams.get('taskParticipants');
|
||||||
this.taskParticipantsCc = this.navParams.get('taskParticipantsCc');
|
this.taskParticipantsCc = this.navParams.get('taskParticipantsCc');
|
||||||
|
this.taskType = this.navParams.get('taskType');
|
||||||
this.loggeduser = SessionStore.user;
|
this.loggeduser = SessionStore.user;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
console.log('Pesquisa de contactos current path2',this.router.url)
|
||||||
this.fetchContacts("");
|
this.fetchContacts("");
|
||||||
|
|
||||||
if(this.taskParticipants == null || this.taskParticipants == undefined){
|
if(this.taskParticipants == null || this.taskParticipants == undefined){
|
||||||
|
|||||||
@@ -13,6 +13,44 @@ export class HttpErrorHandle {
|
|||||||
) { }
|
) { }
|
||||||
|
|
||||||
async httpStatusHandle(error) {
|
async httpStatusHandle(error) {
|
||||||
|
switch (error.status
|
||||||
|
) {
|
||||||
|
case 0:
|
||||||
|
const result = await this.backgroundService.offline()
|
||||||
|
if(result) {
|
||||||
|
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
||||||
|
} else {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case 400:
|
||||||
|
this.toastService._badRequest('Lamentamos, mas houve um problema com sua solicitação. Por favor, tente novamente')
|
||||||
|
break;
|
||||||
|
case 401:
|
||||||
|
this.toastService._badRequest('Lamento, parece que não tem acesso a essas informações. Entre em contacto com o administrador.');
|
||||||
|
break;
|
||||||
|
case 403:
|
||||||
|
this.toastService._badRequest('Lamentamos, você não tem permissão para acessar este serviço.')
|
||||||
|
break;
|
||||||
|
case 404:
|
||||||
|
this.toastService._badRequest('Lamentamos, não encontramos o que procura.')
|
||||||
|
break;
|
||||||
|
case 500:
|
||||||
|
this.toastService._badRequest('Lamentamos, mas houve um erro interno do servidor. Por favor, tente novamente mais tarde.')
|
||||||
|
break;
|
||||||
|
case 502:
|
||||||
|
this.toastService._badRequest('Lamentamos, houve um problema com o servidor. Por favor, tente novamente mais tarde.')
|
||||||
|
break;
|
||||||
|
case 503:
|
||||||
|
this.toastService._badRequest('Lamentamos, o serviço está indisponível no momento. Por favor, tente novamente mais tarde.')
|
||||||
|
break
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async loginHttpStatusHandle(error) {
|
||||||
switch (error.status
|
switch (error.status
|
||||||
) {
|
) {
|
||||||
case 0:
|
case 0:
|
||||||
@@ -50,6 +88,18 @@ export class HttpErrorHandle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
validationMessagge(service: string, callback?: any) {
|
||||||
|
switch (service) {
|
||||||
|
case 'diplomaAsDraft':
|
||||||
|
this.toastService._badRequest('Este diploma não contem um draft para ser assinado!')
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
this.toastService._badRequest('')
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
httpsSucessMessagge(service: string, callback?: any) {
|
httpsSucessMessagge(service: string, callback?: any) {
|
||||||
switch (service) {
|
switch (service) {
|
||||||
case 'new event':
|
case 'new event':
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { Platform } from '@ionic/angular';
|
import { Platform } from '@ionic/angular';
|
||||||
import { CapacitorConfig } from '@capacitor/cli';
|
import { CapacitorConfig } from '@capacitor/cli';
|
||||||
import { LocalNotifications, LocalNotificationSchema } from '@capacitor/local-notifications';
|
/* import { LocalNotifications, LocalNotificationSchema } from '@capacitor/local-notifications'; */
|
||||||
|
|
||||||
|
|
||||||
@Injectable({
|
@Injectable({
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ export class SearchService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
basicSearch(subject:string, date:string = null, sender:number = null, organicEntity:number = null, docTypeId:string = null, applicationType:string): Observable<EventSearch>{
|
basicSearch(subject:string, date:string = null, dateend:string = null, sender:number = null, organicEntity:number = null, docTypeId:string = null, applicationType:string): Observable<EventSearch>{
|
||||||
// Endpoint
|
// Endpoint
|
||||||
const geturl = environment.apiURL + 'search';
|
const geturl = environment.apiURL + 'search';
|
||||||
// store params
|
// store params
|
||||||
@@ -51,7 +51,8 @@ export class SearchService {
|
|||||||
|
|
||||||
|
|
||||||
params = params.set("assunto", subject);
|
params = params.set("assunto", subject);
|
||||||
params = params.set("data", date);
|
params = params.set("StartDate", date);
|
||||||
|
params = params.set("EndDate", dateend);
|
||||||
params = params.set("remetente", sender);
|
params = params.set("remetente", sender);
|
||||||
params = params.set("entidadeOrganica", organicEntity);
|
params = params.set("entidadeOrganica", organicEntity);
|
||||||
params = params.set("docTypeId", docTypeId);
|
params = params.set("docTypeId", docTypeId);
|
||||||
@@ -67,7 +68,7 @@ export class SearchService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
basicSearchPublication(subject:string, date:string = null, sender:number = null, organicEntity:number = null, docTypeId:string = null, applicationType:string): Observable<EventSearch>{
|
basicSearchPublication(subject:string, date:string = null, dateEnd:string = null, sender:number = null, organicEntity:number = null, docTypeId:string = null, applicationType:string): Observable<EventSearch>{
|
||||||
// Endpoint
|
// Endpoint
|
||||||
const geturl = environment.apiURL + 'search';
|
const geturl = environment.apiURL + 'search';
|
||||||
// store params
|
// store params
|
||||||
@@ -76,7 +77,8 @@ export class SearchService {
|
|||||||
|
|
||||||
|
|
||||||
params = params.set("assunto", subject);
|
params = params.set("assunto", subject);
|
||||||
params = params.set("data", date);
|
params = params.set("StartDate", date);
|
||||||
|
params = params.set("EndDate", dateEnd);
|
||||||
params = params.set("remetente", sender);
|
params = params.set("remetente", sender);
|
||||||
params = params.set("entidadeOrganica", organicEntity);
|
params = params.set("entidadeOrganica", organicEntity);
|
||||||
params = params.set("docTypeId", docTypeId);
|
params = params.set("docTypeId", docTypeId);
|
||||||
|
|||||||
@@ -371,7 +371,7 @@
|
|||||||
|
|
||||||
<ion-footer class="background-whit">
|
<ion-footer class="background-whit">
|
||||||
<div class="buttons">
|
<div class="buttons">
|
||||||
<button class="btn-cancel cursor-pointer" shape="round" (click)="close()">Cancelar</button>
|
|
||||||
<button class="btn-ok cursor-pointer" shape="round" (click)="gravasAction()">Gravar</button>
|
<button class="btn-ok cursor-pointer" shape="round" (click)="gravasAction()">Gravar</button>
|
||||||
|
<button class="btn-cancel cursor-pointer" shape="round" (click)="close()">Cancelar</button>
|
||||||
</div>
|
</div>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -316,15 +316,15 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="width-100 d-flex justify-space-between px-20">
|
<ion-toolbar class="width-100 d-flex justify-space-between px-20">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-title></ion-title>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-title></ion-title>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
@@ -343,17 +343,19 @@
|
|||||||
</ion-content>
|
</ion-content>
|
||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar">
|
<ion-toolbar class="footer-toolbar">
|
||||||
|
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-title></ion-title>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-title></ion-title>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
|
|
||||||
<!-- <app-new-event
|
<!-- <app-new-event
|
||||||
[loggedAttend]="loggedAttend"
|
[loggedAttend]="loggedAttend"
|
||||||
|
|||||||
@@ -171,16 +171,16 @@ export class ViewEventPage implements OnInit {
|
|||||||
header: 'Eliminar evento?',
|
header: 'Eliminar evento?',
|
||||||
message: '',
|
message: '',
|
||||||
buttons: [
|
buttons: [
|
||||||
{
|
|
||||||
text: 'Não',
|
|
||||||
handler: () => {
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
text: 'Sim',
|
text: 'Sim',
|
||||||
handler: () => {
|
handler: () => {
|
||||||
this.deleteEvent();
|
this.deleteEvent();
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: 'Não',
|
||||||
|
handler: () => {
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
|
|||||||
@@ -81,14 +81,14 @@
|
|||||||
<ion-footer class="ion-no-border" *ngIf="footer" >
|
<ion-footer class="ion-no-border" *ngIf="footer" >
|
||||||
<ion-toolbar class="width-100 d-flex justify-space-between px-20">
|
<ion-toolbar class="width-100 d-flex justify-space-between px-20">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import { ViewChild } from '@angular/core';
|
|||||||
import { Searchbar } from 'ionic-angular';
|
import { Searchbar } from 'ionic-angular';
|
||||||
import { LoginUserRespose } from 'src/app/models/user.model';
|
import { LoginUserRespose } from 'src/app/models/user.model';
|
||||||
import { SessionStore } from 'src/app/store/session.service';
|
import { SessionStore } from 'src/app/store/session.service';
|
||||||
|
import { Router } from '@angular/router';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-attendee-modal',
|
selector: 'app-attendee-modal',
|
||||||
@@ -31,8 +32,8 @@ export class AttendeePage implements OnInit {
|
|||||||
@Output() dynamicSetIntervenient = new EventEmitter<any>();
|
@Output() dynamicSetIntervenient = new EventEmitter<any>();
|
||||||
|
|
||||||
|
|
||||||
@Input() taskParticipants:EventPerson[] = [];
|
@Input() taskParticipants: EventPerson[] = [];
|
||||||
@Input() taskParticipantsCc:EventPerson[] = [];
|
@Input() taskParticipantsCc: EventPerson[] = [];
|
||||||
@Input() loggedAttendSon: boolean;
|
@Input() loggedAttendSon: boolean;
|
||||||
|
|
||||||
@Input() footer: boolean;
|
@Input() footer: boolean;
|
||||||
@@ -40,49 +41,67 @@ export class AttendeePage implements OnInit {
|
|||||||
@Input() selectLogUser: boolean = true;
|
@Input() selectLogUser: boolean = true;
|
||||||
|
|
||||||
@ViewChild('Searchbar') searchbar: Searchbar;
|
@ViewChild('Searchbar') searchbar: Searchbar;
|
||||||
|
@Input() taskType: any;
|
||||||
|
|
||||||
LtaskParticipants: EventPerson[] = [];
|
LtaskParticipants: EventPerson[] = [];
|
||||||
LtaskParticipantsCc: EventPerson[] = [];
|
LtaskParticipantsCc: EventPerson[] = [];
|
||||||
loggeduser: LoginUserRespose;
|
loggeduser: LoginUserRespose;
|
||||||
|
listOfNotAllowdRoute = ['/home/gabinete-digital/despachos/', ]
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private modalCtrl: ModalController,
|
private modalCtrl: ModalController,
|
||||||
private contactsService: ContactsService,
|
private contactsService: ContactsService,
|
||||||
public ThemeService: ThemeService ) {
|
public ThemeService: ThemeService,
|
||||||
|
private router: Router,) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
this.LtaskParticipants = removeDuplicate(this.taskParticipants);
|
this.LtaskParticipants = removeDuplicate(this.taskParticipants);
|
||||||
this.LtaskParticipantsCc = removeDuplicate(this.taskParticipantsCc);
|
this.LtaskParticipantsCc = removeDuplicate(this.taskParticipantsCc);
|
||||||
this.loggeduser = SessionStore.user;
|
this.loggeduser = SessionStore.user;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnChanges() {
|
ngOnChanges() {
|
||||||
this.LtaskParticipants = removeDuplicate(this.taskParticipants);
|
this.LtaskParticipants = removeDuplicate(this.taskParticipants);
|
||||||
this.LtaskParticipantsCc = removeDuplicate(this.taskParticipantsCc);
|
this.LtaskParticipantsCc = removeDuplicate(this.taskParticipantsCc);
|
||||||
console.log('PARTE PARTE',this.loggedAttendSon)
|
console.log('PARTE PARTE', this.loggedAttendSon)
|
||||||
}
|
}
|
||||||
|
|
||||||
currentPath = window.location.pathname;
|
currentPath = window.location.pathname;
|
||||||
@Input() adding: "intervenient" | "CC";
|
@Input() adding: "intervenient" | "CC";
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
console.log('TASK TYPE',this.taskType);
|
||||||
|
console.log('Pesquisa de contactos current path3', this.router.url)
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
console.log('PARTE PARTE',this.loggedAttendSon)
|
console.log('PARTE PARTE', this.loggedAttendSon)
|
||||||
});
|
});
|
||||||
|
|
||||||
this.fetchContacts("");
|
this.fetchContacts("");
|
||||||
|
|
||||||
if(this.LtaskParticipants == null || this.LtaskParticipants == undefined) {
|
if (this.LtaskParticipants == null || this.LtaskParticipants == undefined) {
|
||||||
this.LtaskParticipants = [];
|
this.LtaskParticipants = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
if(this.LtaskParticipantsCc == null || this.LtaskParticipantsCc == undefined) {
|
if (this.LtaskParticipantsCc == null || this.LtaskParticipantsCc == undefined) {
|
||||||
this.LtaskParticipantsCc = [];
|
this.LtaskParticipantsCc = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
removeIdfromRoute(route: string) {
|
||||||
|
let lastIndex: number = route.lastIndexOf('/');
|
||||||
|
if (lastIndex !== -1) {
|
||||||
|
let modifiedString: string = route.slice(0, lastIndex + 1);
|
||||||
|
console.log(modifiedString);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
console.log("No '/' found in the string.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
save() {
|
save() {
|
||||||
|
|
||||||
this.setIntervenient.emit(removeDuplicate(this.LtaskParticipants));
|
this.setIntervenient.emit(removeDuplicate(this.LtaskParticipants));
|
||||||
@@ -94,7 +113,7 @@ export class AttendeePage implements OnInit {
|
|||||||
|
|
||||||
setContactWithClose() {
|
setContactWithClose() {
|
||||||
|
|
||||||
if(this.currentPath == '/home/gabinete-digital') {
|
if (this.currentPath == '/home/gabinete-digital') {
|
||||||
this.setIntervenient.emit(this.LtaskParticipants);
|
this.setIntervenient.emit(this.LtaskParticipants);
|
||||||
this.setIntervenientCC.emit(this.LtaskParticipantsCc);
|
this.setIntervenientCC.emit(this.LtaskParticipantsCc);
|
||||||
}
|
}
|
||||||
@@ -108,7 +127,7 @@ export class AttendeePage implements OnInit {
|
|||||||
|
|
||||||
async selectContact(itm: EventPerson) {
|
async selectContact(itm: EventPerson) {
|
||||||
|
|
||||||
if(this.adding == "intervenient") {
|
if (this.adding == "intervenient") {
|
||||||
|
|
||||||
itm.IsRequired = true;
|
itm.IsRequired = true;
|
||||||
this.LtaskParticipants.push(itm);
|
this.LtaskParticipants.push(itm);
|
||||||
@@ -136,30 +155,30 @@ export class AttendeePage implements OnInit {
|
|||||||
|
|
||||||
filterSearchList(itm: EventPerson): boolean {
|
filterSearchList(itm: EventPerson): boolean {
|
||||||
|
|
||||||
const result = this.LtaskParticipants.concat(this.LtaskParticipantsCc).find((contact, index)=>{
|
const result = this.LtaskParticipants.concat(this.LtaskParticipantsCc).find((contact, index) => {
|
||||||
|
|
||||||
if(this.checkStringNull(contact.Name) == this.checkStringNull(itm.Name) && this.checkStringNull(contact.EmailAddress) == this.checkStringNull(itm.EmailAddress)){
|
if (this.checkStringNull(contact.Name) == this.checkStringNull(itm.Name) && this.checkStringNull(contact.EmailAddress) == this.checkStringNull(itm.EmailAddress)) {
|
||||||
index = index;
|
index = index;
|
||||||
return contact;
|
return contact;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// if to show
|
// if to show
|
||||||
if(undefined != result){
|
if (undefined != result) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const result2 = this.LtaskParticipantsCc.find((contact, index)=>{
|
const result2 = this.LtaskParticipantsCc.find((contact, index) => {
|
||||||
|
|
||||||
if(this.checkStringNull(contact.Name) == itm.Name && this.checkStringNull(contact.EmailAddress) == this.checkStringNull(itm.EmailAddress)){
|
if (this.checkStringNull(contact.Name) == itm.Name && this.checkStringNull(contact.EmailAddress) == this.checkStringNull(itm.EmailAddress)) {
|
||||||
index = index;
|
index = index;
|
||||||
return contact;
|
return contact;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// if to show
|
// if to show
|
||||||
if(undefined != result2) {
|
if (undefined != result2) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,11 +189,11 @@ export class AttendeePage implements OnInit {
|
|||||||
|
|
||||||
remove(itm: EventPerson) {
|
remove(itm: EventPerson) {
|
||||||
|
|
||||||
if(this.adding == "intervenient"){
|
if (this.adding == "intervenient") {
|
||||||
|
|
||||||
this.LtaskParticipants = this.LtaskParticipants.filter((contact, index) =>{
|
this.LtaskParticipants = this.LtaskParticipants.filter((contact, index) => {
|
||||||
|
|
||||||
if(contact.Name.toLocaleLowerCase() != itm.Name.toLocaleLowerCase() && contact.EmailAddress.toLocaleLowerCase() != itm.EmailAddress.toLocaleLowerCase()){
|
if (contact.Name.toLocaleLowerCase() != itm.Name.toLocaleLowerCase() && contact.EmailAddress.toLocaleLowerCase() != itm.EmailAddress.toLocaleLowerCase()) {
|
||||||
return contact;
|
return contact;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@@ -183,9 +202,9 @@ export class AttendeePage implements OnInit {
|
|||||||
|
|
||||||
} else if (this.adding == "CC") {
|
} else if (this.adding == "CC") {
|
||||||
|
|
||||||
this.LtaskParticipantsCc = this.LtaskParticipantsCc.filter((contact, index) =>{
|
this.LtaskParticipantsCc = this.LtaskParticipantsCc.filter((contact, index) => {
|
||||||
|
|
||||||
if(contact.Name.toLocaleLowerCase() != itm.Name.toLocaleLowerCase() && contact.EmailAddress.toLocaleLowerCase() != itm.EmailAddress.toLocaleLowerCase()){
|
if (contact.Name.toLocaleLowerCase() != itm.Name.toLocaleLowerCase() && contact.EmailAddress.toLocaleLowerCase() != itm.EmailAddress.toLocaleLowerCase()) {
|
||||||
return contact;
|
return contact;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
@@ -200,51 +219,52 @@ export class AttendeePage implements OnInit {
|
|||||||
sort(data: []) {
|
sort(data: []) {
|
||||||
return data.sort(function (a: any, b: any) {
|
return data.sort(function (a: any, b: any) {
|
||||||
if (a.Name > b.Name) {
|
if (a.Name > b.Name) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
if (b.Name > a.Name) {
|
if (b.Name > a.Name) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}).reverse()
|
}).reverse()
|
||||||
}
|
}
|
||||||
|
|
||||||
async fetchContacts(filter: string) {
|
async fetchContacts(filter: string) {
|
||||||
this.showLoader = true;
|
this.showLoader = true;
|
||||||
|
|
||||||
this.contactsService.getContacts(filter).subscribe(result =>
|
this.contactsService.getContacts(filter).subscribe(result => {
|
||||||
{
|
if (this.eventPersons != null) {
|
||||||
if (this.eventPersons != null)
|
this.eventPersons.forEach(attendee => {
|
||||||
{
|
const index: number = result.findIndex((cont) => {
|
||||||
this.eventPersons.forEach(attendee => {
|
return this.checkStringNull(cont.EmailAddress) == this.checkStringNull(attendee.EmailAddress)
|
||||||
const index: number = result.findIndex((cont) => {
|
|
||||||
return this.checkStringNull(cont.EmailAddress) == this.checkStringNull(attendee.EmailAddress)
|
|
||||||
});
|
|
||||||
|
|
||||||
result.splice(index, 1);
|
|
||||||
});
|
});
|
||||||
}
|
|
||||||
|
|
||||||
if(this.loggedAttendSon) {
|
result.splice(index, 1);
|
||||||
this.contacts = this.sort(result as any);
|
});
|
||||||
this.showLoader = false;
|
}
|
||||||
} else {
|
|
||||||
this.contacts = this.sort(result as any);
|
if (this.loggedAttendSon) {
|
||||||
console.log('Attendes Email',this.loggeduser.Email)
|
this.contacts = this.sort(result as any);
|
||||||
|
this.showLoader = false;
|
||||||
|
} else {
|
||||||
|
this.contacts = this.sort(result as any);
|
||||||
|
console.log('Attendes Email', this.loggeduser.Email)
|
||||||
let filterLoggedUserEmail = this.contacts.filter(item => item.EmailAddress.toLocaleLowerCase() != this.loggeduser.Email.toLocaleLowerCase())
|
let filterLoggedUserEmail = this.contacts.filter(item => item.EmailAddress.toLocaleLowerCase() != this.loggeduser.Email.toLocaleLowerCase())
|
||||||
|
if(this.taskType == 0 || this.taskType == 1){
|
||||||
|
filterLoggedUserEmail = this.contacts.filter(item => item.IsPR == false)
|
||||||
|
}
|
||||||
console.log('Attendes Email', filterLoggedUserEmail)
|
console.log('Attendes Email', filterLoggedUserEmail)
|
||||||
let filterEmptyEmail = filterLoggedUserEmail.filter(item => item.EmailAddress.toLocaleLowerCase() != "")
|
let filterEmptyEmail = filterLoggedUserEmail.filter(item => item.EmailAddress.toLocaleLowerCase() != "")
|
||||||
this.contacts = filterEmptyEmail;
|
this.contacts = filterEmptyEmail;
|
||||||
console.log('Attendes Email', this.contacts)
|
console.log('Attendes Email', this.contacts)
|
||||||
this.showLoader = false;
|
this.showLoader = false;
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
checkStringNull(value: string) {
|
checkStringNull(value: string) {
|
||||||
if(value) {
|
if (value) {
|
||||||
return value.toLowerCase();
|
return value.toLowerCase();
|
||||||
} else {
|
} else {
|
||||||
return value
|
return value
|
||||||
|
|||||||
@@ -323,7 +323,8 @@
|
|||||||
|
|
||||||
<ion-footer class="background-whit">
|
<ion-footer class="background-whit">
|
||||||
<div class="buttons">
|
<div class="buttons">
|
||||||
<button class="btn-cancel cursor-pointer" shape="round" (click)="close()">Cancelar</button>
|
|
||||||
<button class="btn-ok cursor-pointer" shape="round" (click)="save()">Gravar</button>
|
<button class="btn-ok cursor-pointer" shape="round" (click)="save()">Gravar</button>
|
||||||
|
<button class="btn-cancel cursor-pointer" shape="round" (click)="close()">Cancelar</button>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -187,21 +187,21 @@
|
|||||||
<!-- <div class="icon" (click)="basicSearch()">
|
<!-- <div class="icon" (click)="basicSearch()">
|
||||||
<ion-icon class="icon-z" slot="end" name="search"></ion-icon>
|
<ion-icon class="icon-z" slot="end" name="search"></ion-icon>
|
||||||
</div> -->
|
</div> -->
|
||||||
<div class="input-text d-flex ion-align-items-center">
|
<!-- <div class="input-text d-flex ion-align-items-center">
|
||||||
<ion-input (keyup.enter)="basicSearch()" [(ngModel)]='searchSubject' (ngModelChange)="dynamicSearch()"
|
<ion-input (keyup.enter)="basicSearch()" [(ngModel)]='searchSubject' (ngModelChange)="dynamicSearch()"
|
||||||
class="search-input text-black" type="search" placeholder="Pesquisar assunto"></ion-input>
|
class="search-input text-black" type="search" placeholder="Pesquisar assunto"></ion-input>
|
||||||
</div>
|
</div> -->
|
||||||
|
|
||||||
<!-- <div class="icon" (click)="clearSearchInput()">
|
<!-- <div class="icon" (click)="clearSearchInput()">
|
||||||
<ion-icon title="Limpar" *ngIf="ThemeService.currentTheme == 'default' "name="restaurant-outline" src="assets/images/icons-search-close.svg"></ion-icon>
|
<ion-icon title="Limpar" *ngIf="ThemeService.currentTheme == 'default' "name="restaurant-outline" src="assets/images/icons-search-close.svg"></ion-icon>
|
||||||
<ion-icon title="Limpar" *ngIf="ThemeService.currentTheme == 'doneIt' "name="restaurant-outline" src="assets/images/theme/doneIt/icons-search.svg"></ion-icon>
|
<ion-icon title="Limpar" *ngIf="ThemeService.currentTheme == 'doneIt' "name="restaurant-outline" src="assets/images/theme/doneIt/icons-search.svg"></ion-icon>
|
||||||
<ion-icon title="Limpar" *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
<ion-icon title="Limpar" *ngIf="ThemeService.currentTheme == 'gov' " name="restaurant-outline" src="assets/images/theme/gov/icons-search-close.svg"></ion-icon>
|
||||||
</div> -->
|
</div> -->
|
||||||
<div (click)="basicSearch()" class="d-flex align-center icon">
|
<!-- <div (click)="basicSearch()" class="d-flex align-center icon">
|
||||||
|
|
||||||
<ion-icon class="icon-z" slot="end" src="assets/images/theme/gov/search.svg"></ion-icon>
|
<ion-icon class="icon-z" slot="end" src="assets/images/theme/gov/search.svg"></ion-icon>
|
||||||
|
|
||||||
</div>
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -27,7 +27,8 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
task: any
|
task: any
|
||||||
fulltask: any
|
fulltask: any
|
||||||
DraftIds = ""
|
DraftIds = ""
|
||||||
DraftNames= ""
|
DraftNames = ""
|
||||||
|
asDrat: boolean;
|
||||||
|
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
@@ -41,42 +42,43 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
private despachoService: DespachoService,
|
private despachoService: DespachoService,
|
||||||
private httpErroHandle: HttpErrorHandle,
|
private httpErroHandle: HttpErrorHandle,
|
||||||
public TaskService: TaskService) {
|
public TaskService: TaskService) {
|
||||||
this.serialNumber = this.navParams.get('serialNumber');
|
this.serialNumber = this.navParams.get('serialNumber');
|
||||||
this.task = this.navParams.get('task');
|
this.task = this.navParams.get('task');
|
||||||
this.fulltask = this.navParams.get('fulltask');
|
this.fulltask = this.navParams.get('fulltask');
|
||||||
|
|
||||||
this.DraftIds = this.navParams.get("DraftIds");
|
this.DraftIds = this.navParams.get("DraftIds");
|
||||||
this.DraftNames = this.navParams.get("DraftNames");
|
this.DraftNames = this.navParams.get("DraftNames");
|
||||||
|
this.asDrat = this.navParams.get('asDrat');
|
||||||
|
|
||||||
|
|
||||||
console.log('this.task', this.task)
|
console.log('this.task', this.task)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
console.log(this.task.activityInstanceName)
|
console.log(this.task.activityInstanceName)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async openAddNoteModal(actionName:string) {
|
async openAddNoteModal(actionName: string) {
|
||||||
// this.popoverController.dismiss();
|
// this.popoverController.dismiss();
|
||||||
let classs;
|
let classs;
|
||||||
if( window.innerWidth <= 800) {
|
if (window.innerWidth <= 800) {
|
||||||
classs = 'modal modal-desktop'
|
classs = 'modal modal-desktop'
|
||||||
} else {
|
} else {
|
||||||
classs = 'modal modal-desktop'
|
classs = 'modal modal-desktop'
|
||||||
}
|
}
|
||||||
const modal = await this.modalController.create({
|
const modal = await this.modalController.create({
|
||||||
component: AddNotePage,
|
component: AddNotePage,
|
||||||
componentProps:{
|
componentProps: {
|
||||||
actionName:actionName
|
actionName: actionName
|
||||||
},
|
},
|
||||||
cssClass: classs,
|
cssClass: classs,
|
||||||
backdropDismiss: true
|
backdropDismiss: true
|
||||||
});
|
});
|
||||||
|
|
||||||
modal.onDidDismiss().then(async (res) => {
|
modal.onDidDismiss().then(async (res) => {
|
||||||
if(res.data) {
|
if (res.data) {
|
||||||
|
|
||||||
|
|
||||||
const DocumentToSave = res.data.documents.map((e) => {
|
const DocumentToSave = res.data.documents.map((e) => {
|
||||||
@@ -91,22 +93,22 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
Attachments: DocumentToSave,
|
Attachments: DocumentToSave,
|
||||||
}
|
}
|
||||||
|
|
||||||
if(actionName == 'Solicitar assinatura') {
|
if (actionName == 'Solicitar assinatura') {
|
||||||
await this.askSignature(res.data.note, docs);
|
await this.askSignature(res.data.note, docs);
|
||||||
this.goBack();
|
this.goBack();
|
||||||
} else if(actionName == 'Solicitar alteração') {
|
} else if (actionName == 'Solicitar alteração') {
|
||||||
await this.askToChange(res.data.note, docs);
|
await this.askToChange(res.data.note, docs);
|
||||||
this.goBack();
|
this.goBack();
|
||||||
} else if (actionName == 'Assinar Diploma') {
|
} else if (actionName == 'Assinar Diploma') {
|
||||||
await this.sign(res.data.note, docs);
|
await this.sign(res.data.note, docs);
|
||||||
this.goBack();
|
this.goBack();
|
||||||
} else if(actionName == 'Concluir diploma'){
|
} else if (actionName == 'Concluir diploma') {
|
||||||
await this.finish(res.data.note, docs);
|
await this.finish(res.data.note, docs);
|
||||||
this.goBack();
|
this.goBack();
|
||||||
} else if (actionName == 'Arquivo') {
|
} else if (actionName == 'Arquivo') {
|
||||||
await this.arquivar(res.data.note, docs);
|
await this.arquivar(res.data.note, docs);
|
||||||
this.goBack();
|
this.goBack();
|
||||||
} else if (actionName =='AssinarNew') {
|
} else if (actionName == 'AssinarNew') {
|
||||||
await this.AssinarNew(res.data.note, docs)
|
await this.AssinarNew(res.data.note, docs)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -117,7 +119,7 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
await modal.present();
|
await modal.present();
|
||||||
}
|
}
|
||||||
|
|
||||||
async askToChange(note:string, documents:any){
|
async askToChange(note: string, documents: any) {
|
||||||
let body = {
|
let body = {
|
||||||
"serialNumber": this.serialNumber,
|
"serialNumber": this.serialNumber,
|
||||||
"action": "Retificar",
|
"action": "Retificar",
|
||||||
@@ -125,7 +127,7 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
"dataFields": {
|
"dataFields": {
|
||||||
"ReviewUserComment": note,
|
"ReviewUserComment": note,
|
||||||
},
|
},
|
||||||
"AttachmentList" :documents,
|
"AttachmentList": documents,
|
||||||
}
|
}
|
||||||
|
|
||||||
const loader = this.toastService.loading()
|
const loader = this.toastService.loading()
|
||||||
@@ -135,13 +137,13 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
this.close();
|
this.close();
|
||||||
this.toastService._successMessage()
|
this.toastService._successMessage()
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if(error.status == 0) {
|
if (error.status == 0) {
|
||||||
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
this.toastService._badRequest()
|
this.toastService._badRequest()
|
||||||
}
|
}
|
||||||
} finally {
|
} finally {
|
||||||
loader.remove()
|
loader.remove()
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -151,23 +153,23 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
async openBookMeetingModal(task: any) {
|
async openBookMeetingModal(task: any) {
|
||||||
this.popoverController.dismiss();
|
this.popoverController.dismiss();
|
||||||
let classs;
|
let classs;
|
||||||
if( window.innerWidth <= 800){
|
if (window.innerWidth <= 800) {
|
||||||
classs = 'book-meeting-modal modal modal-desktop'
|
classs = 'book-meeting-modal modal modal-desktop'
|
||||||
} else {
|
} else {
|
||||||
classs = 'modal modal-desktop showAsideOptions'
|
classs = 'modal modal-desktop showAsideOptions'
|
||||||
}
|
}
|
||||||
const modal = await this.modalController.create({
|
const modal = await this.modalController.create({
|
||||||
component: BookMeetingModalPage,
|
component: BookMeetingModalPage,
|
||||||
componentProps: {
|
componentProps: {
|
||||||
task: this.task,
|
task: this.task,
|
||||||
fulltask:this.fulltask
|
fulltask: this.fulltask
|
||||||
},
|
},
|
||||||
cssClass: classs,
|
cssClass: classs,
|
||||||
backdropDismiss: false
|
backdropDismiss: false
|
||||||
});
|
});
|
||||||
await modal.present();
|
await modal.present();
|
||||||
modal.onDidDismiss().then(
|
modal.onDidDismiss().then(
|
||||||
()=> {},
|
() => { },
|
||||||
(error) => {
|
(error) => {
|
||||||
console.log(error)
|
console.log(error)
|
||||||
}
|
}
|
||||||
@@ -175,7 +177,7 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
async askSignature(note:string, documents:any) {
|
async askSignature(note: string, documents: any) {
|
||||||
let body = {
|
let body = {
|
||||||
"serialNumber": this.serialNumber,
|
"serialNumber": this.serialNumber,
|
||||||
"action": "Aprovar",
|
"action": "Aprovar",
|
||||||
@@ -183,7 +185,7 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
"dataFields": {
|
"dataFields": {
|
||||||
"ReviewUserComment": note,
|
"ReviewUserComment": note,
|
||||||
},
|
},
|
||||||
"AttachmentList" :documents,
|
"AttachmentList": documents,
|
||||||
}
|
}
|
||||||
|
|
||||||
const loader = this.toastService.loading()
|
const loader = this.toastService.loading()
|
||||||
@@ -193,20 +195,20 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
this.close();
|
this.close();
|
||||||
this.toastService._successMessage()
|
this.toastService._successMessage()
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if(error.status == 0) {
|
if (error.status == 0) {
|
||||||
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
this.toastService._badRequest()
|
this.toastService._badRequest()
|
||||||
}
|
}
|
||||||
} finally {
|
} finally {
|
||||||
loader.remove()
|
loader.remove()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
async sign(note?:string, documents?:any) {
|
async sign(note?: string, documents?: any) {
|
||||||
let body = {
|
let body = {
|
||||||
"serialNumber": this.serialNumber,
|
"serialNumber": this.serialNumber,
|
||||||
"action": "Assinado",
|
"action": "Assinado",
|
||||||
@@ -217,7 +219,7 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
"InstanceIDNew": this.task.InstanceID,
|
"InstanceIDNew": this.task.InstanceID,
|
||||||
"DraftIds": "",
|
"DraftIds": "",
|
||||||
},
|
},
|
||||||
"AttachmentList" : {
|
"AttachmentList": {
|
||||||
"ProcessInstanceID": this.task.InstanceID,
|
"ProcessInstanceID": this.task.InstanceID,
|
||||||
"DraftIds": null,
|
"DraftIds": null,
|
||||||
"Attachments": []
|
"Attachments": []
|
||||||
@@ -229,61 +231,65 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
await this.processes.CompleteTask(body).toPromise()
|
await this.processes.CompleteTask(body).toPromise()
|
||||||
this.httpErroHandle.httpsSucessMessagge('Assinado')
|
this.httpErroHandle.httpsSucessMessagge('Assinado')
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if(error.status == 0) {
|
if (error.status == 0) {
|
||||||
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
||||||
} else {
|
} else {
|
||||||
this.toastService._badRequest()
|
this.toastService._badRequest()
|
||||||
}
|
}
|
||||||
} finally {}
|
} finally { }
|
||||||
}
|
}
|
||||||
|
|
||||||
async AssinarNew(note?, doc?) {
|
async AssinarNew(note?, doc?) {
|
||||||
|
|
||||||
const modal = await this.modalController.create({
|
if (this.asDrat) {
|
||||||
component: PopupQuestionPage,
|
const modal = await this.modalController.create({
|
||||||
componentProps: {
|
component: PopupQuestionPage,
|
||||||
title: 'Deseja assinar este Diploma?',
|
componentProps: {
|
||||||
/* message: 'Nota: Ao Efetuar esta operação, o tratamento deste diploma não poderá ser realizado a partir da caixa de correspondência' */
|
title: 'Deseja assinar este Diploma?',
|
||||||
|
/* message: 'Nota: Ao Efetuar esta operação, o tratamento deste diploma não poderá ser realizado a partir da caixa de correspondência' */
|
||||||
|
|
||||||
},
|
},
|
||||||
cssClass: "popup-question discart-expedient-modal",
|
cssClass: "popup-question discart-expedient-modal",
|
||||||
backdropDismiss: true
|
backdropDismiss: true
|
||||||
});
|
});
|
||||||
|
|
||||||
modal.onDidDismiss().then(async (res) => {
|
modal.onDidDismiss().then(async (res) => {
|
||||||
const data = res.data
|
const data = res.data
|
||||||
if(data == "Yes") {
|
if (data == "Yes") {
|
||||||
let body = {
|
let body = {
|
||||||
"InstanceId": this.task.InstanceID,
|
"InstanceId": this.task.InstanceID,
|
||||||
"FolderId": this.task.FolderID,
|
"FolderId": this.task.FolderID,
|
||||||
"DraftIds": this.DraftIds,
|
"DraftIds": this.DraftIds,
|
||||||
"OriginalFileName": this.DraftNames
|
"OriginalFileName": this.DraftNames
|
||||||
|
}
|
||||||
|
const loader = this.toastService.loading()
|
||||||
|
|
||||||
|
try {
|
||||||
|
await this.processes.presidentialActionsSignature(body).toPromise()
|
||||||
|
await this.sign()
|
||||||
|
this.TaskService.loadDiplomas()
|
||||||
|
this.goBack();
|
||||||
|
} catch (error) {
|
||||||
|
this.httpErroHandle.httpStatusHandle(error)
|
||||||
|
}
|
||||||
|
finally {
|
||||||
|
loader.remove()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
const loader = this.toastService.loading()
|
|
||||||
|
|
||||||
try {
|
}, (error) => {
|
||||||
await this.processes.presidentialActionsSignature(body).toPromise()
|
console.log(error)
|
||||||
await this.sign()
|
});
|
||||||
this.TaskService.loadDiplomas()
|
|
||||||
this.goBack();
|
|
||||||
} catch (error) {
|
|
||||||
this.httpErroHandle.httpStatusHandle(error)
|
|
||||||
}
|
|
||||||
finally {
|
|
||||||
loader.remove()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}, (error) => {
|
await modal.present();
|
||||||
console.log(error)
|
} else {
|
||||||
});
|
this.httpErroHandle.validationMessagge("diplomaAsDraft");
|
||||||
|
}
|
||||||
await modal.present();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
async finish(note:string, documents:any){
|
async finish(note: string, documents: any) {
|
||||||
|
|
||||||
let body = {
|
let body = {
|
||||||
"serialNumber": this.serialNumber,
|
"serialNumber": this.serialNumber,
|
||||||
@@ -292,7 +298,7 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
"dataFields": {
|
"dataFields": {
|
||||||
"ReviewUserComment": note,
|
"ReviewUserComment": note,
|
||||||
},
|
},
|
||||||
"AttachmentList" :documents,
|
"AttachmentList": documents,
|
||||||
}
|
}
|
||||||
|
|
||||||
const loader = this.toastService.loading()
|
const loader = this.toastService.loading()
|
||||||
@@ -301,11 +307,11 @@ export class DiplomaOptionsPage implements OnInit {
|
|||||||
await this.processes.CompleteTask(body).toPromise();
|
await this.processes.CompleteTask(body).toPromise();
|
||||||
this.toastService._successMessage('Processo concluído')
|
this.toastService._successMessage('Processo concluído')
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if(error.status == 0) {
|
if (error.status == 0) {
|
||||||
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
this.toastService._badRequest('Sem acesso à internet. Por favor verifique sua conexão')
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
this.toastService._badRequest()
|
this.toastService._badRequest()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
finally {
|
finally {
|
||||||
|
|||||||
+1
-1
@@ -9,7 +9,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<div *ngIf="content != ''" class="buttons header-fix">
|
<div *ngIf="content != ''" class="buttons header-fix">
|
||||||
<!-- <button (click)="save(Document, content)" class="btn-cancel" shape="round" >Salvar</button> -->
|
<!-- <button (click)="save(Document, content)" class="btn-cancel" shape="round" >Salvar</button> -->
|
||||||
<button (click)="saveDraft(Document, content)" class="btn-cancel" shape="round" >Salvar Rascunho</button>
|
<button (click)="AssinarDraft()" class="btn-cancel" shape="round" >Assinar</button>
|
||||||
<button class="btn-cancel" shape="round" (click)="close()">Cancelar</button>
|
<button class="btn-cancel" shape="round" (click)="close()">Cancelar</button>
|
||||||
</div>
|
</div>
|
||||||
</ion-content>
|
</ion-content>
|
||||||
|
|||||||
+100
-2
@@ -3,6 +3,10 @@ import { ModalController, NavParams } from '@ionic/angular';
|
|||||||
import { PermissionService } from 'src/app/services/permission.service';
|
import { PermissionService } from 'src/app/services/permission.service';
|
||||||
import { ProcessesService} from 'src/app/services/processes.service';
|
import { ProcessesService} from 'src/app/services/processes.service';
|
||||||
import { HttpErrorHandle } from 'src/app/services/http-error-handle.service';
|
import { HttpErrorHandle } from 'src/app/services/http-error-handle.service';
|
||||||
|
import { ToastService } from 'src/app/services/toast.service';
|
||||||
|
import { TaskService } from 'src/app/services/task.service';
|
||||||
|
import { RouteService } from 'src/app/services/route.service';
|
||||||
|
import { PopupQuestionPage } from 'src/app/modals/popup-question/popup-question.page';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-event-details-documents-options',
|
selector: 'app-event-details-documents-options',
|
||||||
@@ -13,20 +17,35 @@ export class EventDetailsDocumentsOptionsPage implements OnInit {
|
|||||||
|
|
||||||
Document: any
|
Document: any
|
||||||
content: any = "";
|
content: any = "";
|
||||||
|
InstanceID:any
|
||||||
|
FolderID:any
|
||||||
|
DraftIds:any
|
||||||
|
DraftNames:any
|
||||||
|
serialnumber: any
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
public p: PermissionService,
|
public p: PermissionService,
|
||||||
private modalController: ModalController,
|
private modalController: ModalController,
|
||||||
private navParams: NavParams,
|
private navParams: NavParams,
|
||||||
private processService: ProcessesService,
|
private processService: ProcessesService,
|
||||||
private erroHandler: HttpErrorHandle
|
private erroHandler: HttpErrorHandle,
|
||||||
|
|
||||||
|
private processes: ProcessesService,
|
||||||
|
private toastService: ToastService,
|
||||||
|
public TaskService: TaskService,
|
||||||
|
private RouteService: RouteService,
|
||||||
) {
|
) {
|
||||||
this.Document = this.navParams.get('Document')
|
this.Document = this.navParams.get('Document')
|
||||||
this.content = this.navParams.get('content')
|
this.content = this.navParams.get('content')
|
||||||
|
this.InstanceID = this.navParams.get('InstanceId')
|
||||||
|
this.FolderID = this.navParams.get('FolderId')
|
||||||
|
this.DraftIds = this.navParams.get('DraftIds')
|
||||||
|
this.DraftNames = this.navParams.get('OriginalFileName')
|
||||||
|
this.serialnumber = this.navParams.get('Serialnumber');
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
console.log(this.content)
|
console.log(this.serialnumber)
|
||||||
}
|
}
|
||||||
|
|
||||||
close() {
|
close() {
|
||||||
@@ -86,4 +105,83 @@ export class EventDetailsDocumentsOptionsPage implements OnInit {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async Assinar() {
|
||||||
|
let body = {
|
||||||
|
"serialNumber": this.serialnumber,
|
||||||
|
"action": "Assinado",
|
||||||
|
"ActionTypeId": 99999842,
|
||||||
|
"FolderId": this.FolderID,
|
||||||
|
"dataFields": {
|
||||||
|
"ReviewUserComment": '',
|
||||||
|
"InstanceIDNew": this.InstanceID,
|
||||||
|
"DraftIds": "",
|
||||||
|
},
|
||||||
|
"AttachmentList": {
|
||||||
|
"ProcessInstanceID": this.InstanceID,
|
||||||
|
"DraftIds": null,
|
||||||
|
"Attachments": []
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
try {
|
||||||
|
await this.processes.CompleteTask(body).toPromise()
|
||||||
|
this.erroHandler.httpsSucessMessagge('Assinado')
|
||||||
|
} catch (error) {
|
||||||
|
this.erroHandler.httpStatusHandle(error)
|
||||||
|
}
|
||||||
|
finally { }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
async AssinarDraft() {
|
||||||
|
const modal = await this.modalController.create({
|
||||||
|
component: PopupQuestionPage,
|
||||||
|
componentProps: {
|
||||||
|
title: 'Deseja assinar este Diploma?',
|
||||||
|
/* message: 'Nota: Ao Efetuar esta operação, o tratamento deste diploma não poderá ser realizado a partir da caixa de correspondência' */
|
||||||
|
},
|
||||||
|
cssClass: "popup-question discart-expedient-modal",
|
||||||
|
backdropDismiss: true
|
||||||
|
});
|
||||||
|
|
||||||
|
modal.onDidDismiss().then(async (res) => {
|
||||||
|
const data = res.data
|
||||||
|
if(data == "Yes") {
|
||||||
|
let body = {
|
||||||
|
"InstanceId": this.InstanceID,
|
||||||
|
"FolderId": this.FolderID,
|
||||||
|
"DraftIds": this.DraftIds,
|
||||||
|
"OriginalFileName": this.DraftNames
|
||||||
|
}
|
||||||
|
|
||||||
|
const loader = this.toastService.loading()
|
||||||
|
|
||||||
|
|
||||||
|
try {
|
||||||
|
await this.processes.presidentialActionsSignature(body).toPromise()
|
||||||
|
|
||||||
|
await this.Assinar();
|
||||||
|
this.TaskService.loadDiplomas();
|
||||||
|
this.goBackRoute();
|
||||||
|
} catch (error) {
|
||||||
|
this.erroHandler.httpStatusHandle(error)
|
||||||
|
}
|
||||||
|
finally {
|
||||||
|
loader.remove()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}, (error) => {
|
||||||
|
console.log(error)
|
||||||
|
});
|
||||||
|
|
||||||
|
await modal.present();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
goBackRoute() {
|
||||||
|
this.RouteService.goBack();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -113,14 +113,15 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar width-100 justify-space-between d-flex px-20">
|
<ion-toolbar class="footer-toolbar width-100 justify-space-between d-flex px-20">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -118,14 +118,15 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar width-100 justify-space-between d-flex">
|
<ion-toolbar class="footer-toolbar width-100 justify-space-between d-flex">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Criar</ion-label>
|
<ion-label>Criar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -107,14 +107,15 @@
|
|||||||
<ion-footer class="ion-no-border">
|
<ion-footer class="ion-no-border">
|
||||||
<ion-toolbar class="footer-toolbar width-100 px-20">
|
<ion-toolbar class="footer-toolbar width-100 px-20">
|
||||||
<ion-buttons slot="start">
|
<ion-buttons slot="start">
|
||||||
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
|
||||||
<ion-label>Cancelar</ion-label>
|
|
||||||
</button>
|
|
||||||
</ion-buttons>
|
|
||||||
<ion-buttons slot="end">
|
|
||||||
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
<button class="btn-ok" fill="clear" color="#fff" (click)="save()">
|
||||||
<ion-label>Gravar</ion-label>
|
<ion-label>Gravar</ion-label>
|
||||||
</button>
|
</button>
|
||||||
</ion-buttons>
|
</ion-buttons>
|
||||||
|
<ion-buttons slot="end">
|
||||||
|
<button class="btn-cancel" fill="clear" color="#061b52" (click)="close()">
|
||||||
|
<ion-label>Cancelar</ion-label>
|
||||||
|
</button>
|
||||||
|
</ion-buttons>
|
||||||
|
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-footer>
|
</ion-footer>
|
||||||
|
|||||||
@@ -259,7 +259,7 @@ export class ViewPublicationsPage implements OnInit {
|
|||||||
backdropDismiss: true,
|
backdropDismiss: true,
|
||||||
componentProps: {
|
componentProps: {
|
||||||
title: 'Deseja arquivar este acção?',
|
title: 'Deseja arquivar este acção?',
|
||||||
description: 'Nota: Ao Efetuar esta operação, o tratamento deste acção não poderá ser realizado a partir da lista de acções'
|
/* description: 'Nota: Ao Efetuar esta operação, o tratamento deste acção não poderá ser realizado a partir da lista de acções' */
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -9,9 +9,9 @@
|
|||||||
{{Document.Assunto}}
|
{{Document.Assunto}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- <div class="right cursor-pointer" (click)="openOptions()">
|
<div class="right cursor-pointer" (click)="openOptions()">
|
||||||
<fa-icon icon="ellipsis-v" class="menu-icon font-awesome-1"></fa-icon>
|
<fa-icon icon="ellipsis-v" class="menu-icon font-awesome-1"></fa-icon>
|
||||||
</div> -->
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
|
|||||||
@@ -4,6 +4,11 @@ import { EventDetailsDocumentsOptionsPage } from '../shared/popover/event-detail
|
|||||||
import { AlertController, ModalController } from '@ionic/angular';
|
import { AlertController, ModalController } from '@ionic/angular';
|
||||||
import { ProcessesService } from '../services/processes.service';
|
import { ProcessesService } from '../services/processes.service';
|
||||||
import { HttpErrorHandle } from '../services/http-error-handle.service';
|
import { HttpErrorHandle } from '../services/http-error-handle.service';
|
||||||
|
import { timeout } from 'rxjs-compat/operator/timeout';
|
||||||
|
import { PopupQuestionPage } from '../modals/popup-question/popup-question.page';
|
||||||
|
import { ToastService } from '../services/toast.service';
|
||||||
|
import { TaskService } from 'src/app/services/task.service';
|
||||||
|
import { RouteService } from 'src/app/services/route.service';
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-tiny-mce',
|
selector: 'app-tiny-mce',
|
||||||
templateUrl: './tiny-mce.page.html',
|
templateUrl: './tiny-mce.page.html',
|
||||||
@@ -22,6 +27,12 @@ export class TinyMCEPage implements OnDestroy {
|
|||||||
private intervalTime: number = 3000;
|
private intervalTime: number = 3000;
|
||||||
|
|
||||||
loadingTiny = true
|
loadingTiny = true
|
||||||
|
InstanceID: any
|
||||||
|
FolderID: any
|
||||||
|
DraftIds: any
|
||||||
|
DraftNames: any
|
||||||
|
serialnumber: any
|
||||||
|
private saveTimeout: any;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -29,11 +40,20 @@ export class TinyMCEPage implements OnDestroy {
|
|||||||
private navParams: NavParams,
|
private navParams: NavParams,
|
||||||
private modalController: ModalController,
|
private modalController: ModalController,
|
||||||
private processService: ProcessesService,
|
private processService: ProcessesService,
|
||||||
private erroHandler: HttpErrorHandle
|
private erroHandler: HttpErrorHandle,
|
||||||
|
private processes: ProcessesService,
|
||||||
|
private toastService: ToastService,
|
||||||
|
public TaskService: TaskService,
|
||||||
|
private RouteService: RouteService,
|
||||||
|
|
||||||
) {
|
) {
|
||||||
this.Document = this.navParams.get('Document')
|
this.Document = this.navParams.get('Document')
|
||||||
this.content = this.navParams.get('content')
|
this.content = this.navParams.get('content')
|
||||||
|
this.InstanceID = this.navParams.get('InstanceId')
|
||||||
|
this.FolderID = this.navParams.get('FolderId')
|
||||||
|
this.DraftIds = this.navParams.get('DraftIds')
|
||||||
|
this.DraftNames = this.navParams.get('OriginalFileName')
|
||||||
|
this.serialnumber = this.navParams.get('Serialnumber');
|
||||||
|
|
||||||
|
|
||||||
this.waitForTiny();
|
this.waitForTiny();
|
||||||
@@ -57,6 +77,10 @@ export class TinyMCEPage implements OnDestroy {
|
|||||||
this.loadingTiny = true
|
this.loadingTiny = true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ngOnInit() {
|
||||||
|
console.log('this.InstanceID',this.serialnumber)
|
||||||
|
}
|
||||||
|
|
||||||
ngOnDestroy() {
|
ngOnDestroy() {
|
||||||
// Certifique-se de limpar o intervalo quando o componente é destruído
|
// Certifique-se de limpar o intervalo quando o componente é destruído
|
||||||
window['tinyupdate']()
|
window['tinyupdate']()
|
||||||
@@ -68,26 +92,35 @@ export class TinyMCEPage implements OnDestroy {
|
|||||||
|
|
||||||
onEditorContentChange() {
|
onEditorContentChange() {
|
||||||
console.log('Autosave successful! Content saved to local storage1.');
|
console.log('Autosave successful! Content saved to local storage1.');
|
||||||
this.saveDraft()
|
if (this.saveTimeout) {
|
||||||
|
clearTimeout(this.saveTimeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.saveTimeout = setTimeout(() => {
|
||||||
|
this.saveDraft();
|
||||||
|
clearTimeout(this.saveTimeout);
|
||||||
|
}, 5000);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
saveDraft() {
|
saveDraft() {
|
||||||
// Lógica que deseja executar em intervalos regulares
|
// Lógica que deseja executar em intervalos regulares
|
||||||
console.log('Intervalo de 3 segundos...');
|
console.log('Intervalo de 3 segundos...');
|
||||||
console.log(document)
|
console.log(document)
|
||||||
let objectDraft = {
|
let objectDraft = {
|
||||||
"status": false,
|
"status": false,
|
||||||
"description": this.Document.Assunto,
|
"description": this.Document.Assunto,
|
||||||
"content": this.content,
|
"content": this.content,
|
||||||
"path": this.Document.path,
|
"path": this.Document.path,
|
||||||
"ownerId": this.Document.ownerId
|
"ownerId": this.Document.ownerId
|
||||||
}
|
}
|
||||||
this.processService.SaveDraftByID(this.Document.DocId, objectDraft).subscribe((res) => {
|
this.processService.SaveDraftByID(this.Document.DocId, objectDraft).subscribe((res) => {
|
||||||
console.log('Saved tinymce')
|
console.log('Saved tinymce')
|
||||||
|
|
||||||
}, (error) => {
|
}, (error) => {
|
||||||
this.erroHandler.httpStatusHandle(error)
|
this.erroHandler.httpStatusHandle(error)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
somefunction() {
|
somefunction() {
|
||||||
@@ -100,7 +133,12 @@ export class TinyMCEPage implements OnDestroy {
|
|||||||
cssClass: 'model aside-modal search-submodal',
|
cssClass: 'model aside-modal search-submodal',
|
||||||
componentProps: {
|
componentProps: {
|
||||||
Document: this.Document,
|
Document: this.Document,
|
||||||
content: this.content
|
content: this.content,
|
||||||
|
InstanceId: this.InstanceID,
|
||||||
|
FolderId: this.FolderID,
|
||||||
|
DraftIds: this.DraftIds,
|
||||||
|
OriginalFileName: this.DraftNames,
|
||||||
|
Serialnumber: this.serialnumber
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -110,4 +148,6 @@ export class TinyMCEPage implements OnDestroy {
|
|||||||
await modal.present();
|
await modal.present();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,12 @@
|
|||||||
|
<svg width="188" height="188" viewBox="0 0 188 188" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0_1_2)">
|
||||||
|
<path d="M0.5 112.5C0.5 99.4791 -1.30249 102.15 -0.999998 89C-0.23463 88.0603 1.82412 72.8684 2 72C5.03043 57.0375 12.9616 45.1665 22.8489 33.8259C36.4266 18.2525 51.8149 6.16003 72.5 2C73.0575 1.88789 92.5525 -0.341161 93 -1C106.021 -1 93.3496 -0.302488 106.5 5.24521e-06C107.44 0.765371 116.632 1.82412 117.5 2C132.462 5.03051 144.834 12.9616 156.174 22.8489C171.747 36.4267 182.932 52.9585 187.092 73.6436C187.205 74.2011 188.341 74.5525 189 75C189 88.0209 189 101.042 188.698 114.192C187.932 115.132 187.219 115.892 187.044 116.76C184.013 131.722 177.038 144.834 167.151 156.174C153.573 171.747 137.042 182.932 116.356 187.092C115.799 187.205 115.448 188.341 115 189C101.979 189 88.9582 189 75.8079 188.698C74.8681 187.932 74.1085 187.219 73.2401 187.044C58.2777 184.013 45.1665 177.038 33.8259 167.151C18.2525 153.573 6.16003 137.685 2 117C1.09247 117.644 1.15884 112.948 0.5 112.5ZM108.079 88.4509C118.399 78.0627 128.785 67.7391 138.959 57.2102C140.342 55.779 141.86 52.5699 141.197 51.5113C140.166 49.8654 137.323 48.5124 135.237 48.4972C108.442 48.3029 81.6443 48.304 54.8491 48.4935C52.7472 48.5083 49.5346 49.8312 48.8873 51.3945C48.274 52.8756 49.8505 55.9619 51.3362 57.4996C60.5863 67.0736 70.1693 76.3261 79.4075 85.911C80.9173 87.4774 81.953 90.1405 82.0282 92.3371C82.3244 100.982 81.9482 109.65 82.2809 118.292C82.3724 120.669 83.5335 123.449 85.1157 125.238C89.4083 130.091 94.0398 134.678 98.862 139.009C100.473 140.455 103.604 141.995 105.065 141.335C106.614 140.634 107.745 137.38 107.779 135.222C108.016 119.913 107.924 104.599 108.079 88.4509Z" fill="#FFB81C"/>
|
||||||
|
<path d="M108.008 88.8691C107.924 104.599 108.016 119.913 107.779 135.222C107.745 137.38 106.614 140.634 105.065 141.335C103.604 141.995 100.473 140.455 98.862 139.009C94.0398 134.678 89.4083 130.091 85.1157 125.238C83.5335 123.449 82.3724 120.669 82.2809 118.292C81.9482 109.65 82.3244 100.982 82.0282 92.3371C81.953 90.1405 80.9173 87.4774 79.4075 85.911C70.1693 76.3261 60.5863 67.0736 51.3362 57.4996C49.8505 55.9619 48.274 52.8756 48.8873 51.3945C49.5346 49.8311 52.7472 48.5083 54.8491 48.4935C81.6443 48.304 108.442 48.3029 135.237 48.4972C137.323 48.5123 140.166 49.8654 141.197 51.5113C141.86 52.5699 140.342 55.779 138.959 57.2102C128.785 67.7391 118.399 78.0627 108.008 88.8691Z" fill="#050401"/>
|
||||||
|
<path d="M103.794 84.6474C103.736 97.4828 103.958 112.392 103.794 124.883C103.771 126.645 102.988 129.3 101.918 129.871C100.909 130.41 98.7446 129.154 97.6313 127.973C94.2987 124.44 91.0979 120.697 88.1313 116.737C87.0378 115.278 86.2354 113.009 86.1722 111.069C85.9423 104.018 86.4597 122.811 86.4597 113.054C86.4597 113.054 86.6896 86.6025 85.6462 85.3243C79.2616 77.5033 71.1791 69.2767 64.7864 61.4646C63.7596 60.2099 62.6701 57.6916 63.0939 56.483C63.5413 55.2074 65.7615 54.128 67.2141 54.1159C85.7322 53.9613 104.252 53.9604 122.77 54.119C124.211 54.1313 126.176 55.2353 126.889 56.5784C127.347 57.4421 126.298 60.0607 125.342 61.2285C118.311 69.8197 110.975 75.8297 103.794 84.6474Z" fill="#FFB81C"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_1_2">
|
||||||
|
<rect width="188" height="188" rx="94" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 3.2 KiB |
@@ -0,0 +1,12 @@
|
|||||||
|
<svg width="188" height="188" viewBox="0 0 188 188" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<g clip-path="url(#clip0_1_2)">
|
||||||
|
<path d="M0.5 112.5C0.5 99.4791 -1.30249 102.15 -0.999998 89C-0.23463 88.0603 1.82412 72.8684 2 72C5.03043 57.0375 12.9616 45.1665 22.8489 33.8259C36.4266 18.2525 51.8149 6.16003 72.5 2C73.0575 1.88789 92.5525 -0.341161 93 -1C106.021 -1 93.3496 -0.302488 106.5 5.24521e-06C107.44 0.765371 116.632 1.82412 117.5 2C132.462 5.03051 144.834 12.9616 156.174 22.8489C171.747 36.4267 182.932 52.9585 187.092 73.6436C187.205 74.2011 188.341 74.5525 189 75C189 88.0209 189 101.042 188.698 114.192C187.932 115.132 187.219 115.892 187.044 116.76C184.013 131.722 177.038 144.834 167.151 156.174C153.573 171.747 137.042 182.932 116.356 187.092C115.799 187.205 115.448 188.341 115 189C101.979 189 88.9582 189 75.8079 188.698C74.8681 187.932 74.1085 187.219 73.2401 187.044C58.2777 184.013 45.1665 177.038 33.8259 167.151C18.2525 153.573 6.16003 137.685 2 117C1.09247 117.644 1.15884 112.948 0.5 112.5ZM108.079 88.4509C118.399 78.0627 128.785 67.7391 138.959 57.2102C140.342 55.779 141.86 52.5699 141.197 51.5113C140.166 49.8654 137.323 48.5124 135.237 48.4972C108.442 48.3029 81.6443 48.304 54.8491 48.4935C52.7472 48.5083 49.5346 49.8312 48.8873 51.3945C48.274 52.8756 49.8505 55.9619 51.3362 57.4996C60.5863 67.0736 70.1693 76.3261 79.4075 85.911C80.9173 87.4774 81.953 90.1405 82.0282 92.3371C82.3244 100.982 81.9482 109.65 82.2809 118.292C82.3724 120.669 83.5335 123.449 85.1157 125.238C89.4083 130.091 94.0398 134.678 98.862 139.009C100.473 140.455 103.604 141.995 105.065 141.335C106.614 140.634 107.745 137.38 107.779 135.222C108.016 119.913 107.924 104.599 108.079 88.4509Z" fill="#E0E9EE"/>
|
||||||
|
<path d="M108.008 88.8691C107.924 104.599 108.016 119.913 107.779 135.222C107.745 137.38 106.614 140.634 105.065 141.335C103.604 141.995 100.473 140.455 98.862 139.009C94.0398 134.678 89.4083 130.091 85.1157 125.238C83.5335 123.449 82.3724 120.669 82.2809 118.292C81.9482 109.65 82.3244 100.982 82.0282 92.3371C81.953 90.1405 80.9173 87.4774 79.4075 85.911C70.1693 76.3261 60.5863 67.0736 51.3362 57.4996C49.8505 55.9619 48.274 52.8756 48.8873 51.3945C49.5346 49.8311 52.7472 48.5083 54.8491 48.4935C81.6443 48.304 108.442 48.3029 135.237 48.4972C137.323 48.5123 140.166 49.8654 141.197 51.5113C141.86 52.5699 140.342 55.779 138.959 57.2102C128.785 67.7391 118.399 78.0627 108.008 88.8691Z" fill="#050401"/>
|
||||||
|
<path d="M103.794 84.6474C103.736 97.4828 103.958 112.392 103.794 124.883C103.771 126.645 102.988 129.3 101.918 129.871C100.909 130.41 98.7446 129.154 97.6313 127.973C94.2987 124.44 91.0979 120.697 88.1313 116.737C87.0378 115.278 86.2354 113.009 86.1722 111.069C85.9423 104.018 86.4597 122.811 86.4597 113.054C86.4597 113.054 86.6896 86.6025 85.6462 85.3243C79.2616 77.5033 71.1791 69.2767 64.7864 61.4646C63.7596 60.2099 62.6701 57.6916 63.0939 56.483C63.5413 55.2074 65.7615 54.128 67.2141 54.1159C85.7322 53.9613 104.252 53.9604 122.77 54.119C124.211 54.1313 126.176 55.2353 126.889 56.5784C127.347 57.4421 126.298 60.0607 125.342 61.2285C118.311 69.8197 110.975 75.8297 103.794 84.6474Z" fill="#E0E9EE"/>
|
||||||
|
</g>
|
||||||
|
<defs>
|
||||||
|
<clipPath id="clip0_1_2">
|
||||||
|
<rect width="188" height="188" rx="94" fill="white"/>
|
||||||
|
</clipPath>
|
||||||
|
</defs>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 3.2 KiB |
@@ -4,4 +4,4 @@ import { doneITProd } from './suport/doneIt'
|
|||||||
import { DevDev } from './suport/dev'
|
import { DevDev } from './suport/dev'
|
||||||
|
|
||||||
|
|
||||||
export const environment: Environment = DevDev;
|
export const environment: Environment = oaprProd;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import { Environment } from './../../app/models/envarioment'
|
|||||||
|
|
||||||
export const DevProd: Environment = {
|
export const DevProd: Environment = {
|
||||||
id:'3',
|
id:'3',
|
||||||
apiURL: 'https://gdapi-dev.dyndns.info/api/',
|
apiURL: 'https://bpmdev.gdapi-dev.dyndns.info/api/',
|
||||||
apiChatUrl: 'https://gdchat-dev.dyndns.info/api/v1/',
|
apiChatUrl: 'https://gdchat-dev.dyndns.info/api/v1/',
|
||||||
apiWsChatUrl: 'wss://gdchat-dev.dyndns.info/websocket',
|
apiWsChatUrl: 'wss://gdchat-dev.dyndns.info/websocket',
|
||||||
apiPCURL: 'https://gdcmapi-dev.dyndns.info/api/',
|
apiPCURL: 'https://gdcmapi-dev.dyndns.info/api/',
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ import { Environment } from './../../app/models/envarioment'
|
|||||||
|
|
||||||
export const oaprProd: Environment = {
|
export const oaprProd: Environment = {
|
||||||
id: '0',
|
id: '0',
|
||||||
apiURL: 'https://gd-api.oapr.gov.ao/api/',
|
apiURL: 'https://gdqas-api.oapr.gov.ao/api/',
|
||||||
apiChatUrl: 'https://gd-chat.oapr.gov.ao/api/v1/',
|
apiChatUrl: 'https://gdqas-chat.oapr.gov.ao/api/v1/',
|
||||||
apiWsChatUrl: 'wss://gd-chat.oapr.gov.ao/websocket',
|
apiWsChatUrl: 'wss://gdqas-chat.oapr.gov.ao/websocket',
|
||||||
apiPCURL: 'http://192.168.0.21:9099/api/',
|
apiPCURL: 'http://gdqas-cmapi.oapr.gov.ao/api/',
|
||||||
logoLabel: 'Presidente da República',
|
logoLabel: 'Presidente da República',
|
||||||
despachoLabel: 'Presidenciais',
|
despachoLabel: 'Presidenciais',
|
||||||
despachoLabel2: 'Despachos Presidênciais',
|
despachoLabel2: 'Despachos Presidênciais',
|
||||||
@@ -29,10 +29,10 @@ export const oaprProd: Environment = {
|
|||||||
|
|
||||||
export const oaprDev: Environment = {
|
export const oaprDev: Environment = {
|
||||||
id: '0',
|
id: '0',
|
||||||
apiURL: 'https://gd-api.oapr.gov.ao/api/',
|
apiURL: 'https://gdqas-api.oapr.gov.ao/api/',
|
||||||
apiChatUrl: 'https://gd-chat.oapr.gov.ao/api/v1/',
|
apiChatUrl: 'https://gdqas-chat.oapr.gov.ao/api/v1/',
|
||||||
apiWsChatUrl: 'wss://gd-chat.oapr.gov.ao/websocket',
|
apiWsChatUrl: 'wss://gdqas-chat.oapr.gov.ao/websocket',
|
||||||
apiPCURL: 'http://192.168.0.21:9099/api/',
|
apiPCURL: 'http://gdqas-cmapi.oapr.gov.ao/api/',
|
||||||
logoLabel: 'Presidente da República',
|
logoLabel: 'Presidente da República',
|
||||||
despachoLabel: 'Presidencial',
|
despachoLabel: 'Presidencial',
|
||||||
despachoLabel2: 'Despachos Presidênciais',
|
despachoLabel2: 'Despachos Presidênciais',
|
||||||
|
|||||||
Reference in New Issue
Block a user