mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-19 04:57:52 +00:00
pull made
This commit is contained in:
@@ -92,11 +92,8 @@
|
|||||||
|
|
||||||
<mat-form-field floatLabel="never" appearance="none" class="d-md-block width-100">
|
<mat-form-field floatLabel="never" appearance="none" class="d-md-block width-100">
|
||||||
<mat-select placeholder="Selecione agenda" [(ngModel)]="postData.CalendarName" >
|
<mat-select placeholder="Selecione agenda" [(ngModel)]="postData.CalendarName" >
|
||||||
<mat-option value="Oficial">
|
<mat-option *ngFor="let calendars of CalendarNamesOptions" value="{{calendars}}">
|
||||||
Oficial
|
Agenda {{ calendars }}
|
||||||
</mat-option>
|
|
||||||
<mat-option value="Pessoal">
|
|
||||||
Pessoal
|
|
||||||
</mat-option>
|
</mat-option>
|
||||||
</mat-select>
|
</mat-select>
|
||||||
</mat-form-field>
|
</mat-form-field>
|
||||||
|
|||||||
@@ -139,6 +139,8 @@ export class DocumentSetUpMeetingPage implements OnInit {
|
|||||||
}]
|
}]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.changeAgenda()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-toolbar class="toolbar-search">
|
<ion-toolbar class="toolbar-search">
|
||||||
<div class="search">
|
<div class="search">
|
||||||
<ion-searchbar debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
<ion-searchbar search-icon="undefined" debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
||||||
</div>
|
</div>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-toolbar class="toolbar-search">
|
<ion-toolbar class="toolbar-search">
|
||||||
<div class="search">
|
<div class="search">
|
||||||
<ion-searchbar debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
<ion-searchbar search-icon="undefined" debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
||||||
</div>
|
</div>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-toolbar class="toolbar-search">
|
<ion-toolbar class="toolbar-search">
|
||||||
<div class="search">
|
<div class="search">
|
||||||
<ion-searchbar debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
<ion-searchbar search-icon="undefined" debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
||||||
</div>
|
</div>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-toolbar class="toolbar-search">
|
<ion-toolbar class="toolbar-search">
|
||||||
<div class="search">
|
<div class="search">
|
||||||
<ion-searchbar (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
<ion-searchbar search-icon="undefined" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
||||||
</div>
|
</div>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<ion-toolbar class="px-10">
|
<ion-toolbar class="px-10">
|
||||||
<ion-title class="pa-0">Adicionar intervenientes</ion-title>
|
<ion-title class="pa-0">Adicionar intervenientes</ion-title>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-searchbar class="attendee-search-bar" (ionChange)="onChange($event)" placeholder="Insira email para adicionar destinatário"></ion-searchbar><!-- [(ngModel)]="searchCountryString" -->
|
<ion-searchbar search-icon="undefined" class="attendee-search-bar" (ionChange)="onChange($event)" placeholder="Insira email para adicionar destinatário"></ion-searchbar><!-- [(ngModel)]="searchCountryString" -->
|
||||||
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|
||||||
|
|||||||
@@ -93,20 +93,21 @@
|
|||||||
<ion-list class="width-100 height-100" >
|
<ion-list class="width-100 height-100" >
|
||||||
<div class="overflow-y-auto height-100">
|
<div class="overflow-y-auto height-100">
|
||||||
<ion-item-sliding>
|
<ion-item-sliding>
|
||||||
<ion-item class="Rectangle cursor-pointer " lines="none"
|
<ion-item class="cursor-pointer " lines="none"
|
||||||
*ngFor="let event of eventoaprovacaostore.get(segment)" (click)="goToEventToApproveDetail(event.serialNumber)">
|
*ngFor="let event of list" (click)="goToEventToApproveDetail(event.serialNumber)">
|
||||||
|
<div *ngIf="TaskService.filter(event, filterName)" class="Rectangle ">
|
||||||
<div class="content-{{color}}-{{event.workflowInstanceDataFields.Agenda}} width-100 d-flex overflow-hidden">
|
<div class="fix-temp content-{{color}}-{{event.workflowInstanceDataFields.Agenda}} width-100 d-flex overflow-hidden">
|
||||||
<div class="approve-event-time">
|
<div class="approve-event-time">
|
||||||
<p>{{event.workflowInstanceDataFields.StartDate | date: 'HH:mm'}}</p>
|
<p>{{event.workflowInstanceDataFields.StartDate | date: 'HH:mm'}}</p>
|
||||||
<p>{{event.workflowInstanceDataFields.EndDate | date: 'HH:mm'}}</p>
|
<p>{{event.workflowInstanceDataFields.EndDate | date: 'HH:mm'}}</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="approve-event-detail">
|
<div class="approve-event-detail">
|
||||||
<p *ngIf="event.workflowInstanceDataFields.StartDate != event.workflowInstanceDataFields.EndDate">{{event.workflowInstanceDataFields.StartDate | date: 'd/M/yy' }} - {{ event.workflowInstanceDataFields.EndDate | date: 'dd/M/yy'}} | {{event.workflowInstanceDataFields.Location}}</p>
|
<p *ngIf="event.workflowInstanceDataFields.StartDate != event.workflowInstanceDataFields.EndDate">{{event.workflowInstanceDataFields.StartDate | date: 'd/M/yy' }} - {{ event.workflowInstanceDataFields.EndDate | date: 'dd/M/yy'}} | {{event.workflowInstanceDataFields.Location}}</p>
|
||||||
<p *ngIf="event.workflowInstanceDataFields.StartDate == event.workflowInstanceDataFields.EndDate">{{event.workflowInstanceDataFields.StartDate | date: 'd/M/yy' }} | {{event.workflowInstanceDataFields.Location}}</p>
|
<p *ngIf="event.workflowInstanceDataFields.StartDate == event.workflowInstanceDataFields.EndDate">{{event.workflowInstanceDataFields.StartDate | date: 'd/M/yy' }} | {{event.workflowInstanceDataFields.Location}}</p>
|
||||||
<h3>{{event.workflowInstanceDataFields.Subject}}</h3>
|
<h3>{{event.workflowInstanceDataFields.Subject}}</h3>
|
||||||
<div *ngIf="event.activityInstanceName">
|
<div *ngIf="event.activityInstanceName">
|
||||||
<div class="label-event-type font-13-rem"> {{ event.activityInstanceName }} </div>
|
<div class="label-event-type font-13-rem"> {{ event.activityInstanceName }} </div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -120,7 +121,7 @@
|
|||||||
<div class="height-100" >
|
<div class="height-100" >
|
||||||
<div class="d-flex height-100 align-center justify-content-center" >
|
<div class="d-flex height-100 align-center justify-content-center" >
|
||||||
<div
|
<div
|
||||||
*ngIf="!skeletonLoader && (eventoaprovacaostore.get(segment).length == 0)"
|
*ngIf="!skeletonLoader && (list.length == 0)"
|
||||||
class="empty-list d-flex height-100 align-center justify-content-center"
|
class="empty-list d-flex height-100 align-center justify-content-center"
|
||||||
>
|
>
|
||||||
<span>Lista vazia</span>
|
<span>Lista vazia</span>
|
||||||
|
|||||||
@@ -49,7 +49,9 @@ ion-item-sliding{
|
|||||||
padding: 10px;
|
padding: 10px;
|
||||||
margin-bottom: 10px;
|
margin-bottom: 10px;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.content-pr-Oficial{
|
.content-pr-Oficial{
|
||||||
background-color: var(--white);
|
background-color: var(--white);
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import { ModalController } from '@ionic/angular';
|
|||||||
import { ApproveEventModalPage } from './approve-event-modal/approve-event-modal.page';
|
import { ApproveEventModalPage } from './approve-event-modal/approve-event-modal.page';
|
||||||
import { NavigationStart, Router } from '@angular/router';
|
import { NavigationStart, Router } from '@angular/router';
|
||||||
import { EventoAprovacaoStore } from 'src/app/store/eventoaprovacao-store.service';
|
import { EventoAprovacaoStore } from 'src/app/store/eventoaprovacao-store.service';
|
||||||
|
import { TaskService } from 'src/app/services/task.service'
|
||||||
import { BackgroundService } from '../../../services/background.service';
|
import { BackgroundService } from '../../../services/background.service';
|
||||||
import { SortService } from 'src/app/services/functions/sort.service';
|
import { SortService } from 'src/app/services/functions/sort.service';
|
||||||
import { ThemeService } from 'src/app/services/theme.service'
|
import { ThemeService } from 'src/app/services/theme.service'
|
||||||
@@ -26,8 +26,6 @@ export class EventListPage implements OnInit {
|
|||||||
profile: string;
|
profile: string;
|
||||||
segment: any;
|
segment: any;
|
||||||
showLoader: boolean;
|
showLoader: boolean;
|
||||||
eventsPRList: any = [];
|
|
||||||
eventsMDGPRList: any = [];
|
|
||||||
eventPerson: EventPerson;
|
eventPerson: EventPerson;
|
||||||
eventBody: EventBody;
|
eventBody: EventBody;
|
||||||
categories: string[];
|
categories: string[];
|
||||||
@@ -35,7 +33,6 @@ export class EventListPage implements OnInit {
|
|||||||
|
|
||||||
skeletonLoader = true
|
skeletonLoader = true
|
||||||
eventoaprovacaostore = EventoAprovacaoStore;
|
eventoaprovacaostore = EventoAprovacaoStore;
|
||||||
eventsList: any = []
|
|
||||||
color: 'pr' | 'mdgpr'
|
color: 'pr' | 'mdgpr'
|
||||||
environment = environment
|
environment = environment
|
||||||
filterName: 'Para hoje' | 'Novos'| 'Lidos'| 'Não lidos'| 'OverdueTasks' | 'Todos' = 'Todos'
|
filterName: 'Para hoje' | 'Novos'| 'Lidos'| 'Não lidos'| 'OverdueTasks' | 'Todos' = 'Todos'
|
||||||
@@ -46,6 +43,10 @@ export class EventListPage implements OnInit {
|
|||||||
list = []
|
list = []
|
||||||
ordinance: string = 'old'
|
ordinance: string = 'old'
|
||||||
|
|
||||||
|
listSubscription : {
|
||||||
|
delete(): void;
|
||||||
|
}
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private processes: ProcessesService,
|
private processes: ProcessesService,
|
||||||
private modalController: ModalController,
|
private modalController: ModalController,
|
||||||
@@ -55,6 +56,7 @@ export class EventListPage implements OnInit {
|
|||||||
public ThemeService: ThemeService,
|
public ThemeService: ThemeService,
|
||||||
private RouteService: RouteService,
|
private RouteService: RouteService,
|
||||||
public eventService: EventsService,
|
public eventService: EventsService,
|
||||||
|
public TaskService: TaskService,
|
||||||
) { }
|
) { }
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
@@ -80,6 +82,15 @@ export class EventListPage implements OnInit {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
this.listSubscription = this.eventoaprovacaostore.registerCallback({
|
||||||
|
id: import.meta.url,
|
||||||
|
funx:() => {
|
||||||
|
|
||||||
|
this.dynamicSearch()
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
const location = window.location
|
const location = window.location
|
||||||
@@ -110,6 +121,12 @@ export class EventListPage implements OnInit {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
ngOnDestroy() {
|
||||||
|
this.listSubscription.delete()
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
ngAfterViewInit(): void {
|
ngAfterViewInit(): void {
|
||||||
|
|
||||||
|
|
||||||
@@ -119,7 +136,27 @@ export class EventListPage implements OnInit {
|
|||||||
|
|
||||||
this.ordinance = orderBy;
|
this.ordinance = orderBy;
|
||||||
|
|
||||||
// this.dynamicSearch();
|
this.dynamicSearch();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
async dynamicSearch() {
|
||||||
|
|
||||||
|
if(this.showSearch && this.searchSubject) {
|
||||||
|
|
||||||
|
const list = this.eventoaprovacaostore.get(this.segment).filter((task) => {
|
||||||
|
let subject = task.Folio || task.Subject || task.workflowInstanceDataFields.Subject
|
||||||
|
subject = subject.toLowerCase();
|
||||||
|
return subject.includes(this.searchSubject.toLowerCase())
|
||||||
|
})
|
||||||
|
|
||||||
|
this.list = this.TaskService.reorderList(this.ordinance, list)
|
||||||
|
} else {
|
||||||
|
const list = this.eventoaprovacaostore.get(this.segment)
|
||||||
|
|
||||||
|
this.list = this.TaskService.reorderList(this.ordinance, list)
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -141,30 +178,33 @@ export class EventListPage implements OnInit {
|
|||||||
this.color = 'mdgpr'
|
this.color = 'mdgpr'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let eventsList
|
||||||
let genericEvents = await this.processes.eventsToApprove(SessionStore.user.UserId,'mobile agenda').toPromise()
|
let genericEvents = await this.processes.eventsToApprove(SessionStore.user.UserId,'mobile agenda').toPromise()
|
||||||
try {
|
try {
|
||||||
this.eventsList = this.sortService.sortArrayByDate(genericEvents).reverse();
|
eventsList = this.sortService.sortArrayByDate(genericEvents).reverse();
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
this.skeletonLoader = false
|
this.skeletonLoader = false
|
||||||
this.eventsList = [];
|
eventsList = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
this.eventoaprovacaostore.save(segment, this.eventsList)
|
this.eventoaprovacaostore.save(segment, eventsList as any)
|
||||||
|
this.dynamicSearch()
|
||||||
|
|
||||||
} else if(segment) {
|
} else if(segment) {
|
||||||
|
|
||||||
this.color = 'pr'
|
this.color = 'pr'
|
||||||
|
let eventsList = []
|
||||||
let allEvents = await this.processes.eventsToApprove(segment,'mobile agenda').toPromise()
|
let allEvents = await this.processes.eventsToApprove(segment,'mobile agenda').toPromise()
|
||||||
try {
|
try {
|
||||||
this.eventsList = this.sortService.sortArrayByDate(allEvents).reverse();
|
eventsList = this.sortService.sortArrayByDate(allEvents).reverse();
|
||||||
} catch(error) {
|
} catch(error) {
|
||||||
this.skeletonLoader = false
|
this.skeletonLoader = false
|
||||||
this.eventsList = []
|
eventsList = []
|
||||||
}
|
}
|
||||||
|
|
||||||
this.eventsList = this.eventsList
|
|
||||||
this.showLoader = false;
|
this.showLoader = false;
|
||||||
this.eventoaprovacaostore.save(segment, this.eventsList)
|
this.eventoaprovacaostore.save(segment, eventsList)
|
||||||
|
this.dynamicSearch()
|
||||||
}
|
}
|
||||||
|
|
||||||
this.showLoader = false;
|
this.showLoader = false;
|
||||||
|
|||||||
+3
-1
@@ -161,6 +161,7 @@ export class BookMeetingModalPage implements OnInit {
|
|||||||
}]
|
}]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.changeAgenda();
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
@@ -319,11 +320,12 @@ export class BookMeetingModalPage implements OnInit {
|
|||||||
|
|
||||||
}
|
}
|
||||||
else if(this.task.FsId == '361') {
|
else if(this.task.FsId == '361') {
|
||||||
|
console.log('361')
|
||||||
const loader = this.toastService.loading()
|
const loader = this.toastService.loading()
|
||||||
try {
|
try {
|
||||||
|
|
||||||
const CalendarId = this.selectedCalendarId()
|
const CalendarId = this.selectedCalendarId()
|
||||||
|
console.log({CalendarId})
|
||||||
await this.calendarService.genericCreateTaskEvent(this.task.FolderID | this.task.FolderId, this.postData, "",this.task.SerialNumber, this.task.FsId, CalendarId).toPromise();
|
await this.calendarService.genericCreateTaskEvent(this.task.FolderID | this.task.FolderId, this.postData, "",this.task.SerialNumber, this.task.FsId, CalendarId).toPromise();
|
||||||
|
|
||||||
this.close();
|
this.close();
|
||||||
|
|||||||
@@ -112,6 +112,7 @@ export class GabineteDigitalPage implements OnInit {
|
|||||||
|
|
||||||
window.onresize = (event) => {
|
window.onresize = (event) => {
|
||||||
if (window.innerWidth < 701) {
|
if (window.innerWidth < 701) {
|
||||||
|
this.modalController.dismiss();
|
||||||
this.hideRefreshBtn = false;
|
this.hideRefreshBtn = false;
|
||||||
this.hideInMobile = false;
|
this.hideInMobile = false;
|
||||||
this.segmentVista = "listview";
|
this.segmentVista = "listview";
|
||||||
@@ -197,6 +198,14 @@ export class GabineteDigitalPage implements OnInit {
|
|||||||
|
|
||||||
this.hideRefreshButton();
|
this.hideRefreshButton();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngAfterViewInit(): void {
|
||||||
|
// We can access the TestComponent now that this portion of the view tree has been initiated.
|
||||||
|
const element = this.scroll.nativeElement
|
||||||
|
this.scroll.nativeElement.addEventListener("scroll", (e)=> {
|
||||||
|
this.changeTab()
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
@@ -236,15 +245,6 @@ export class GabineteDigitalPage implements OnInit {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
ngAfterViewInit(): void {
|
|
||||||
// We can access the TestComponent now that this portion of the view tree has been initiated.
|
|
||||||
this.scroll.nativeElement.addEventListener("scroll", (e)=> {
|
|
||||||
this.changeTab()
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,148 +0,0 @@
|
|||||||
import { Component, OnInit } from '@angular/core';
|
|
||||||
import { AnimationController, ModalController, NavParams } from '@ionic/angular';
|
|
||||||
import { Publication } from 'src/app/models/publication';
|
|
||||||
import { PublicationsService } from 'src/app/services/publications.service';
|
|
||||||
import { ToastService } from 'src/app/services/toast.service';
|
|
||||||
import { ImageModalPage } from '../gallery/image-modal/image-modal.page';
|
|
||||||
import { NewPublicationPage } from '../new-publication/new-publication.page';
|
|
||||||
import { SqliteService } from 'src/app/services/sqlite.service';
|
|
||||||
import { BackgroundService } from 'src/app/services/background.service';
|
|
||||||
import { ThemeService } from 'src/app/services/theme.service'
|
|
||||||
import { RouteService } from 'src/app/services/route.service';
|
|
||||||
import { PermissionService } from 'src/app/services/permission.service';
|
|
||||||
import { HttpErrorHandle } from 'src/app/services/http-error-handle.service';
|
|
||||||
|
|
||||||
@Component({
|
|
||||||
selector: 'app-publication-detail',
|
|
||||||
templateUrl: './publication-detail.page.html',
|
|
||||||
styleUrls: ['./publication-detail.page.scss'],
|
|
||||||
})
|
|
||||||
export class PublicationDetailPage implements OnInit {
|
|
||||||
showLoader: boolean;
|
|
||||||
publicationId: string;
|
|
||||||
folderId: string;
|
|
||||||
publication: Publication;
|
|
||||||
|
|
||||||
constructor(
|
|
||||||
private modalController: ModalController,
|
|
||||||
private navParams:NavParams,
|
|
||||||
private publications:PublicationsService,
|
|
||||||
private toastService: ToastService,
|
|
||||||
private RouteService: RouteService,
|
|
||||||
public ThemeService: ThemeService,
|
|
||||||
public p:PermissionService,
|
|
||||||
private httpErrorHandle: HttpErrorHandle ) {
|
|
||||||
|
|
||||||
this.publicationId = this.navParams.get('publicationId');
|
|
||||||
/* this.folderId = this.navParams.get('folderIdId'); */
|
|
||||||
this.publication = {
|
|
||||||
DateIndex: null,
|
|
||||||
DocumentId: null,
|
|
||||||
ProcessId:'',
|
|
||||||
Title:'',
|
|
||||||
Message: '',
|
|
||||||
/* image: null, */
|
|
||||||
DatePublication: null,
|
|
||||||
FileBase64: '',
|
|
||||||
OriginalFileName: '',
|
|
||||||
FileExtension: '',
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
ngOnInit() {
|
|
||||||
this.getPublicationDetail();
|
|
||||||
}
|
|
||||||
doRefresh(event) {
|
|
||||||
this.getPublicationDetail();
|
|
||||||
|
|
||||||
setTimeout(() => {
|
|
||||||
try {
|
|
||||||
event?.target?.complete();
|
|
||||||
} catch(error) {}
|
|
||||||
}, 2000);
|
|
||||||
}
|
|
||||||
|
|
||||||
getPublicationDetail() {
|
|
||||||
this.showLoader = true;
|
|
||||||
this.publications.GetPublicationById(this.publicationId).subscribe(res=>{
|
|
||||||
|
|
||||||
/* this.publication = res; */
|
|
||||||
this.publication = {
|
|
||||||
DateIndex: res.DateIndex,
|
|
||||||
DocumentId: res.DocumentId,
|
|
||||||
ProcessId:res.ProcessId,
|
|
||||||
Title:res.Title,
|
|
||||||
Message: res.Message,
|
|
||||||
DatePublication: res.DatePublication,
|
|
||||||
FileBase64: "data:image/jpg;base64," + res.FileBase64,
|
|
||||||
OriginalFileName: res.OriginalFileName,
|
|
||||||
FileExtension: 'jpeg',
|
|
||||||
}
|
|
||||||
this.showLoader = false;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
getFromDB() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
close() {
|
|
||||||
this.RouteService.goBack()
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
async deletePost() {
|
|
||||||
|
|
||||||
const loader = this.toastService.loading()
|
|
||||||
|
|
||||||
try {
|
|
||||||
await this.publications.DeletePublication(this.folderId, this.publicationId).toPromise();
|
|
||||||
this.httpErrorHandle.httpsSucessMessagge('Eliminar publicação')
|
|
||||||
if(window['app-view-publications-page-doRefresh']) {
|
|
||||||
window['app-view-publications-page-doRefresh']()
|
|
||||||
}
|
|
||||||
this.close();
|
|
||||||
} catch (error) {
|
|
||||||
this.httpErrorHandle.httpStatusHandle(error)
|
|
||||||
} finally {
|
|
||||||
loader.remove()
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
async editPost(publicationType:any) {
|
|
||||||
|
|
||||||
|
|
||||||
const modal = await this.modalController.create({
|
|
||||||
component: NewPublicationPage,
|
|
||||||
componentProps:{
|
|
||||||
publicationType: publicationType,
|
|
||||||
publication: this.publication,
|
|
||||||
},
|
|
||||||
cssClass: 'new-publication modal modal-desktop',
|
|
||||||
backdropDismiss: false
|
|
||||||
});
|
|
||||||
|
|
||||||
modal.onDidDismiss().then(()=>{
|
|
||||||
setTimeout(() => {
|
|
||||||
this.getPublicationDetail();
|
|
||||||
}, 5000);
|
|
||||||
});
|
|
||||||
|
|
||||||
await modal.present();
|
|
||||||
}
|
|
||||||
|
|
||||||
openPreview(imageUrl:string){
|
|
||||||
this.modalController.create({
|
|
||||||
component: ImageModalPage,
|
|
||||||
componentProps: {
|
|
||||||
imageUrl:imageUrl,
|
|
||||||
}
|
|
||||||
}).then(modal => modal.present());
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -1165,22 +1165,13 @@ export class EventsService {
|
|||||||
params = params.set("SerialNumber", serialNumber);
|
params = params.set("SerialNumber", serialNumber);
|
||||||
params = params.set("applicationID", applicationID);
|
params = params.set("applicationID", applicationID);
|
||||||
|
|
||||||
const headers = [
|
const calendar = this.DetectCalendars(CalendarId)
|
||||||
this.headerSharedOficial,
|
const header = this.makeHeader(calendar)
|
||||||
this.headerSharedPessoal,
|
|
||||||
this.headerOwnPessoal,
|
|
||||||
this.headerOwnOficial
|
|
||||||
]
|
|
||||||
|
|
||||||
const header = headers.find( (header) => {
|
|
||||||
return header?.get('CalendarId')?.includes(CalendarId)
|
|
||||||
})
|
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
headers: header,
|
headers: header,
|
||||||
params: params
|
params: params
|
||||||
};
|
}
|
||||||
|
|
||||||
return this.http.post<any>(`${geturl}`, body, options)
|
return this.http.post<any>(`${geturl}`, body, options)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1238,22 +1229,15 @@ export class EventsService {
|
|||||||
params = params.set("SerialNumber", serialNumber);
|
params = params.set("SerialNumber", serialNumber);
|
||||||
params = params.set("applicationID", applicationID);
|
params = params.set("applicationID", applicationID);
|
||||||
|
|
||||||
const headers = [
|
const calendar = this.DetectCalendars(CalendarId)
|
||||||
this.headerSharedOficial,
|
const header = this.makeHeader(calendar)
|
||||||
this.headerSharedPessoal,
|
|
||||||
this.headerOwnPessoal,
|
|
||||||
this.headerOwnOficial
|
|
||||||
]
|
|
||||||
|
|
||||||
const header = headers.find((header)=> {
|
|
||||||
return header?.get('CalendarId')?.includes(CalendarId)
|
|
||||||
})
|
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
headers: header,
|
headers: header,
|
||||||
params: params
|
params: params
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log('post')
|
||||||
return this.http.post<any>(`${geturl}`, body, options)
|
return this.http.post<any>(`${geturl}`, body, options)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<ion-toolbar class="px-10">
|
<ion-toolbar class="px-10">
|
||||||
<ion-title class="pa-0">Adicionar intervenientes</ion-title>
|
<ion-title class="pa-0">Adicionar intervenientes</ion-title>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-searchbar class="attendee-search-bar" (ionChange)="onChange($event)" placeholder="Insira email para adicionar destinatário"></ion-searchbar><!-- [(ngModel)]="searchCountryString" -->
|
<ion-searchbar search-icon="undefined" class="attendee-search-bar" (ionChange)="onChange($event)" placeholder="Insira email para adicionar destinatário"></ion-searchbar><!-- [(ngModel)]="searchCountryString" -->
|
||||||
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|
||||||
|
|||||||
@@ -155,7 +155,10 @@ export class TaskService {
|
|||||||
|
|
||||||
sortArrayISODate(myArray: any): any[] {
|
sortArrayISODate(myArray: any): any[] {
|
||||||
|
|
||||||
return myArray.sort((a,b) => Date.parse(b.CreateDate || b.taskStartDate || b.TaskStartDate || b.TaskReceiveDate || b.taskReceiveDate ) - Date.parse(a.CreateDate || b.taskStartDate || b.TaskStartDate || a.TaskReceiveDate || a.taskReceiveDate ))
|
return myArray.sort((a,b) =>
|
||||||
|
Date.parse(b.CreateDate || b.taskStartDate || b.TaskStartDate || b.TaskReceiveDate || b.taskReceiveDate )
|
||||||
|
-
|
||||||
|
Date.parse(a.CreateDate || b.taskStartDate || b.TaskStartDate || a.TaskReceiveDate || a.taskReceiveDate ))
|
||||||
}
|
}
|
||||||
|
|
||||||
reorderList(orderBy: string, list) {
|
reorderList(orderBy: string, list) {
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-toolbar class="toolbar-search">
|
<ion-toolbar class="toolbar-search">
|
||||||
<div class="search">
|
<div class="search">
|
||||||
<ion-searchbar debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
<ion-searchbar search-icon="undefined" debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
||||||
</div>
|
</div>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-toolbar class="toolbar-search">
|
<ion-toolbar class="toolbar-search">
|
||||||
<div class="search">
|
<div class="search">
|
||||||
<ion-searchbar debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
<ion-searchbar search-icon="undefined" debounce="500" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
||||||
</div>
|
</div>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-toolbar class="toolbar-search">
|
<ion-toolbar class="toolbar-search">
|
||||||
<div class="search">
|
<div class="search">
|
||||||
<ion-searchbar (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
<ion-searchbar search-icon="undefined" (ionChange)="onChange($event)" placeholder="Pesquisar por contacto" ></ion-searchbar>
|
||||||
</div>
|
</div>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<ion-toolbar class="px-10">
|
<ion-toolbar class="px-10">
|
||||||
<ion-title class="pa-0">Adicionar intervenientes</ion-title>
|
<ion-title class="pa-0">Adicionar intervenientes</ion-title>
|
||||||
</ion-toolbar>
|
</ion-toolbar>
|
||||||
<ion-searchbar #Searchbar class="attendee-search-bar" (ionChange)="onChange($event)" placeholder="Insira email para adicionar destinatário"></ion-searchbar><!-- [(ngModel)]="searchCountryString" -->
|
<ion-searchbar search-icon="undefined" #Searchbar class="attendee-search-bar" (ionChange)="onChange($event)" placeholder="Insira email para adicionar destinatário"></ion-searchbar><!-- [(ngModel)]="searchCountryString" -->
|
||||||
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
<ion-progress-bar type="indeterminate" *ngIf="showLoader"></ion-progress-bar>
|
||||||
</ion-header>
|
</ion-header>
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import { Component, OnInit } from '@angular/core';
|
import { Component, OnInit, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
|
||||||
import { NavigationEnd, Router } from '@angular/router';
|
import { NavigationEnd, Router } from '@angular/router';
|
||||||
import { LoginUserRespose } from 'src/app/models/user.model';
|
import { LoginUserRespose } from 'src/app/models/user.model';
|
||||||
import { ThemeService } from 'src/app/services/theme.service'
|
import { ThemeService } from 'src/app/services/theme.service'
|
||||||
@@ -8,6 +8,7 @@ import { TaskService } from 'src/app/services/task.service'
|
|||||||
selector: 'app-all-processes',
|
selector: 'app-all-processes',
|
||||||
templateUrl: './all-processes.page.html',
|
templateUrl: './all-processes.page.html',
|
||||||
styleUrls: ['./all-processes.page.scss'],
|
styleUrls: ['./all-processes.page.scss'],
|
||||||
|
changeDetection: ChangeDetectionStrategy.OnPush
|
||||||
})
|
})
|
||||||
export class AllProcessesPage implements OnInit {
|
export class AllProcessesPage implements OnInit {
|
||||||
|
|
||||||
@@ -42,6 +43,7 @@ export class AllProcessesPage implements OnInit {
|
|||||||
private router: Router,
|
private router: Router,
|
||||||
public ThemeService: ThemeService,
|
public ThemeService: ThemeService,
|
||||||
public TaskService: TaskService,
|
public TaskService: TaskService,
|
||||||
|
private cdr: ChangeDetectorRef
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
@@ -84,6 +86,7 @@ export class AllProcessesPage implements OnInit {
|
|||||||
async closeSearch() {
|
async closeSearch() {
|
||||||
this.searchSubject = ''
|
this.searchSubject = ''
|
||||||
this.dynamicSearch()
|
this.dynamicSearch()
|
||||||
|
this.cdr.markForCheck()
|
||||||
}
|
}
|
||||||
|
|
||||||
async basicSearch() {
|
async basicSearch() {
|
||||||
@@ -94,6 +97,7 @@ export class AllProcessesPage implements OnInit {
|
|||||||
reorderList(orderBy: string) {
|
reorderList(orderBy: string) {
|
||||||
|
|
||||||
this.ordinance = orderBy;
|
this.ordinance = orderBy;
|
||||||
|
this.cdr.markForCheck()
|
||||||
|
|
||||||
this.dynamicSearch();
|
this.dynamicSearch();
|
||||||
}
|
}
|
||||||
@@ -113,6 +117,8 @@ export class AllProcessesPage implements OnInit {
|
|||||||
const AllProcess = this.TaskService.AllProcess
|
const AllProcess = this.TaskService.AllProcess
|
||||||
this.AllProcess = this.TaskService.reorderList(this.ordinance, AllProcess)
|
this.AllProcess = this.TaskService.reorderList(this.ordinance, AllProcess)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.cdr.markForCheck()
|
||||||
}
|
}
|
||||||
|
|
||||||
checkFilter() {
|
checkFilter() {
|
||||||
@@ -125,6 +131,8 @@ export class AllProcessesPage implements OnInit {
|
|||||||
} else if (this.router.url.includes('unread')) {
|
} else if (this.router.url.includes('unread')) {
|
||||||
this.filterName = 'Não lidos'
|
this.filterName = 'Não lidos'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.cdr.markForCheck()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -167,6 +175,8 @@ export class AllProcessesPage implements OnInit {
|
|||||||
else {
|
else {
|
||||||
throw(`${workflowName} && ${activityName} no route`)
|
throw(`${workflowName} && ${activityName} no route`)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.cdr.markForCheck()
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -120,7 +120,7 @@ export class EventsToApprovePage implements OnInit {
|
|||||||
|
|
||||||
this.ordinance = orderBy;
|
this.ordinance = orderBy;
|
||||||
|
|
||||||
// this.dynamicSearch();
|
this.dynamicSearch();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -142,6 +142,8 @@ export class EventsToApprovePage implements OnInit {
|
|||||||
this.list = this.TaskService.reorderList(this.ordinance, list)
|
this.list = this.TaskService.reorderList(this.ordinance, list)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log(this.list)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -94,6 +94,7 @@ export class EventoaprovacaoStoreService {
|
|||||||
|
|
||||||
this._list[segment] = value
|
this._list[segment] = value
|
||||||
this._counts[segment] = value.length
|
this._counts[segment] = value.length
|
||||||
|
this.runCallback()
|
||||||
|
|
||||||
this.updateCount();
|
this.updateCount();
|
||||||
|
|
||||||
@@ -103,7 +104,6 @@ export class EventoaprovacaoStoreService {
|
|||||||
counts: this._counts
|
counts: this._counts
|
||||||
})
|
})
|
||||||
|
|
||||||
this.runCallback()
|
|
||||||
}, 10)
|
}, 10)
|
||||||
|
|
||||||
if(window['all-process-gabinete']) {
|
if(window['all-process-gabinete']) {
|
||||||
|
|||||||
@@ -35,6 +35,7 @@
|
|||||||
|
|
||||||
// convert px to rem
|
// convert px to rem
|
||||||
@function rem($size) {
|
@function rem($size) {
|
||||||
|
$size : $size+ "";
|
||||||
$remSize: math.div(to-number($size), 16);
|
$remSize: math.div(to-number($size), 16);
|
||||||
//Default font size on html is 16px;
|
//Default font size on html is 16px;
|
||||||
@return #{$remSize}rem;
|
@return #{$remSize}rem;
|
||||||
@@ -42,12 +43,14 @@
|
|||||||
|
|
||||||
// convert px to em
|
// convert px to em
|
||||||
@function em($size) {
|
@function em($size) {
|
||||||
|
$size : $size+ "";
|
||||||
$remSize: math.div(to-number($size), 16);
|
$remSize: math.div(to-number($size), 16);
|
||||||
@return #{$remSize}em;
|
@return #{$remSize}em;
|
||||||
}
|
}
|
||||||
|
|
||||||
// convert pt to rem
|
// convert pt to rem
|
||||||
@function pt-rem($size) {
|
@function pt-rem($size) {
|
||||||
|
$size : $size+ "";
|
||||||
$pxSize: to-number($size) * 1.328147;
|
$pxSize: to-number($size) * 1.328147;
|
||||||
$remSize: $pxSize / 16;
|
$remSize: $pxSize / 16;
|
||||||
@return #{$remSize}rem;
|
@return #{$remSize}rem;
|
||||||
@@ -55,6 +58,7 @@
|
|||||||
|
|
||||||
// convert pt to em
|
// convert pt to em
|
||||||
@function pt-em($size) {
|
@function pt-em($size) {
|
||||||
|
$size : $size+ "";
|
||||||
$pxSize: to-number($size) * 1.328147;
|
$pxSize: to-number($size) * 1.328147;
|
||||||
$remSize: $pxSize / 16;
|
$remSize: $pxSize / 16;
|
||||||
@return #{$remSize}em;
|
@return #{$remSize}em;
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
export let versionData = {
|
export let versionData = {
|
||||||
"shortSHA": "02725cd36",
|
"shortSHA": "2dc031c75",
|
||||||
"SHA": "02725cd368ca72aa27e9399dd85c0423502192e5",
|
"SHA": "2dc031c75fc851948b813f40bc78bc0ac18013cc",
|
||||||
"branch": "developer-catch-merge",
|
"branch": "developer-catch-merge",
|
||||||
"lastCommitAuthor": "'Peter Maquiran'",
|
"lastCommitAuthor": "'Eudes Inácio'",
|
||||||
"lastCommitTime": "'Sat Jul 15 11:41:06 2023 +0100'",
|
"lastCommitTime": "'Sun Jul 16 21:44:52 2023 +0100'",
|
||||||
"lastCommitMessage": "merge",
|
"lastCommitMessage": "added racunho balon and change adiconr text to gravar",
|
||||||
"lastCommitNumber": "5081",
|
"lastCommitNumber": "5083",
|
||||||
"change": "",
|
"change": "",
|
||||||
"changeStatus": "On branch developer-catch-merge\nYour branch is behind 'origin/developer-catch-merge' by 1 commit, and can be fast-forwarded.\n (use \"git pull\" to update your local branch)\n\nAll conflicts fixed but you are still merging.\n (use \"git commit\" to conclude merge)\n\nChanges to be committed:\n\tmodified: src/app/modals/document-set-up-meeting/document-set-up-meeting.page.html\n\tmodified: src/app/pages/gabinete-digital/despachos-pr/despacho-pr/despacho-pr.page.scss\n\tmodified: src/app/pages/gabinete-digital/despachos/despacho/despacho.page.scss\n\tmodified: src/app/pages/gabinete-digital/diplomas-assinar/diploma-assinar/diploma-assinar.page.html\n\tmodified: src/app/pages/gabinete-digital/diplomas-assinar/diploma-assinar/diploma-assinar.page.scss\n\tmodified: src/app/pages/gabinete-digital/diplomas/diploma/diploma.page.html\n\tmodified: src/app/pages/gabinete-digital/diplomas/diploma/diploma.page.scss",
|
"changeStatus": "On branch developer-catch-merge\nYour branch and 'origin/developer-catch-merge' have diverged,\nand have 2 and 1 different commits each, respectively.\n (use \"git pull\" to merge the remote branch into yours)\n\nAll conflicts fixed but you are still merging.\n (use \"git commit\" to conclude merge)\n\nChanges to be committed:\n\tmodified: src/app/modals/document-set-up-meeting/document-set-up-meeting.page.html\n\tmodified: src/app/modals/document-set-up-meeting/document-set-up-meeting.page.ts\n\tmodified: src/app/modals/set-room-owner/set-room-owner.page.html\n\tmodified: src/app/pages/chat/group-messages/group-contacts/group-contacts.page.html\n\tmodified: src/app/pages/chat/messages/contacts/contacts.page.html\n\tmodified: src/app/pages/chat/new-group/contacts/contacts.page.html\n\tmodified: src/app/pages/events/attendees/attendees.page.html\n\tmodified: src/app/pages/gabinete-digital/event-list/event-list.page.html\n\tmodified: src/app/pages/gabinete-digital/event-list/event-list.page.scss\n\tmodified: src/app/pages/gabinete-digital/event-list/event-list.page.ts\n\tmodified: src/app/pages/gabinete-digital/expediente/book-meeting-modal/book-meeting-modal.page.ts\n\tmodified: src/app/pages/gabinete-digital/gabinete-digital.page.ts\n\tdeleted: src/app/pages/publications/publication-detail/publication-detail.page.ts\n\tmodified: src/app/services/events.service.ts\n\tmodified: src/app/services/events/attendees/attendees.page.html\n\tmodified: src/app/services/task.service.ts\n\tmodified: src/app/shared/chat/group-messages/group-contacts/group-contacts.page.html\n\tmodified: src/app/shared/chat/messages/contacts/contacts.page.html\n\tmodified: src/app/shared/chat/new-group/contacts/contacts.page.html\n\tmodified: src/app/shared/event/attendee-modal/attendee-modal.page.html\n\tmodified: src/app/shared/gabinete-digital/all-processes/all-processes.page.ts\n\tmodified: src/app/shared/gabinete-digital/events-to-approve/events-to-approve.page.ts\n\tmodified: src/app/store/eventoaprovacao-store.service.ts\n\tmodified: src/function.scss",
|
||||||
"changeAuthor": "eudes.inacio"
|
"changeAuthor": "eudes.inacio"
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user