2021-02-24 11:10:51 +01:00
|
|
|
import { Component, OnInit, Input, EventEmitter, Output } from '@angular/core';
|
|
|
|
|
import { EventBody } from 'src/app/models/eventbody.model';
|
|
|
|
|
import { EventPerson } from 'src/app/models/eventperson.model';
|
|
|
|
|
import { ProcessesService } from 'src/app/services/processes.service';
|
|
|
|
|
import { NavigationEnd, Router } from '@angular/router';
|
2021-07-15 16:38:09 +01:00
|
|
|
import { AuthService } from 'src/app/services/auth.service';
|
2021-08-27 15:21:15 +01:00
|
|
|
import { LoginUserRespose } from 'src/app/models/user.model';
|
2021-10-18 15:19:01 +01:00
|
|
|
import { SortService } from 'src/app/services/functions/sort.service';
|
2021-02-24 11:10:51 +01:00
|
|
|
|
|
|
|
|
@Component({
|
|
|
|
|
selector: 'app-event-list',
|
2021-06-03 14:10:16 +01:00
|
|
|
templateUrl: './event-list.page.html',
|
|
|
|
|
styleUrls: ['./event-list.page.scss'],
|
2021-02-24 11:10:51 +01:00
|
|
|
})
|
2021-06-03 14:10:16 +01:00
|
|
|
export class EventListPage implements OnInit {
|
2021-06-30 11:59:57 +01:00
|
|
|
// [desktop] event list to approve
|
2021-02-24 11:10:51 +01:00
|
|
|
|
|
|
|
|
showLoader: boolean;
|
2021-06-30 09:45:56 +01:00
|
|
|
eventsPRList: any = []
|
|
|
|
|
eventsMDGPRList: any = []
|
2021-02-24 11:10:51 +01:00
|
|
|
eventPerson: EventPerson;
|
|
|
|
|
eventBody: EventBody;
|
|
|
|
|
categories: string[];
|
|
|
|
|
serialnumber:string;
|
2021-08-27 15:21:15 +01:00
|
|
|
loggeduser: LoginUserRespose;
|
2021-07-15 16:38:09 +01:00
|
|
|
segment:string;
|
2021-02-24 11:10:51 +01:00
|
|
|
|
2021-03-29 17:01:11 +01:00
|
|
|
@Input() profile:string;
|
2021-07-26 15:19:03 +01:00
|
|
|
@Input() showComponent:string;
|
2021-02-24 11:10:51 +01:00
|
|
|
@Output() cloneAllmobileComponent = new EventEmitter<any>();
|
2021-02-26 15:29:05 +01:00
|
|
|
@Output() approveEventDismiss = new EventEmitter<any>();
|
|
|
|
|
|
2021-02-24 11:10:51 +01:00
|
|
|
|
|
|
|
|
constructor(
|
|
|
|
|
private processes:ProcessesService,
|
|
|
|
|
private router: Router,
|
2021-07-15 16:38:09 +01:00
|
|
|
private userAuth: AuthService,
|
2021-10-18 15:19:01 +01:00
|
|
|
private sortService: SortService,
|
2021-07-15 16:38:09 +01:00
|
|
|
) {
|
|
|
|
|
this.loggeduser = userAuth.ValidatedUser;
|
2021-07-17 22:17:50 +01:00
|
|
|
}
|
2021-04-01 11:28:39 +01:00
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
ngOnInit() {
|
2021-07-15 16:38:09 +01:00
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
this.segment = this.loggeduser.Profile;
|
2021-07-15 16:38:09 +01:00
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
const pathname = window.location.pathname
|
2021-07-15 16:38:09 +01:00
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
this.router.events.forEach((event) => {
|
|
|
|
|
if(event instanceof NavigationEnd && event.url == pathname) {
|
|
|
|
|
this.LoadToApproveEvents();
|
2021-07-15 16:38:09 +01:00
|
|
|
}
|
2021-07-17 22:17:50 +01:00
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2021-07-26 15:19:03 +01:00
|
|
|
ngOnChanges() {
|
2021-11-03 16:11:57 +01:00
|
|
|
this.LoadToApproveEvents();
|
2021-10-18 15:19:01 +01:00
|
|
|
}
|
2021-07-26 15:19:03 +01:00
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
segmentChanged(ev: any) {
|
|
|
|
|
this.LoadToApproveEvents();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
toDateString(e) {
|
|
|
|
|
return new Date(e).toDateString()
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
async LoadToApproveEvents() {
|
|
|
|
|
this.showLoader = true;
|
2022-04-28 09:32:27 +01:00
|
|
|
|
2022-02-24 13:35:54 +01:00
|
|
|
if(this.segment == 'MDGPR') {
|
2021-07-17 22:17:50 +01:00
|
|
|
let mdEventsOficial = await this.processes.GetTasksList('Agenda Oficial MDGPR', false).toPromise();
|
|
|
|
|
let mdEventsPessoal = await this.processes.GetTasksList('Agenda Pessoal MDGPR', false).toPromise();
|
2021-10-18 15:19:01 +01:00
|
|
|
|
|
|
|
|
let allEvents = mdEventsOficial.concat(mdEventsPessoal);
|
2022-06-03 16:53:50 +01:00
|
|
|
if(allEvents.length > 0) {
|
2021-10-18 15:19:01 +01:00
|
|
|
this.eventsMDGPRList = this.sortService.sortArrayByDate(allEvents).reverse();
|
|
|
|
|
}
|
|
|
|
|
this.showLoader = false;
|
2021-02-24 11:10:51 +01:00
|
|
|
}
|
2022-02-24 13:35:54 +01:00
|
|
|
else if(this.segment == 'PR') {
|
2021-07-17 22:17:50 +01:00
|
|
|
let prEventsOficial = await this.processes.GetTasksList('Agenda Oficial PR', false).toPromise();
|
|
|
|
|
let prEventsPessoal = await this.processes.GetTasksList('Agenda Pessoal PR', false).toPromise();
|
2021-10-18 15:19:01 +01:00
|
|
|
let allEvents = prEventsOficial.concat(prEventsPessoal);
|
2022-04-28 09:32:27 +01:00
|
|
|
|
2022-06-03 16:53:50 +01:00
|
|
|
if(allEvents.length > 0) {
|
2021-10-18 15:19:01 +01:00
|
|
|
this.eventsPRList = this.sortService.sortArrayByDate(allEvents).reverse();
|
|
|
|
|
}
|
2021-12-10 16:08:36 +01:00
|
|
|
this.showLoader = false;
|
2021-02-24 11:10:51 +01:00
|
|
|
}
|
2021-12-10 16:08:36 +01:00
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
async openApproveModal(eventSerialNumber, data) {
|
|
|
|
|
|
2022-06-03 16:53:50 +01:00
|
|
|
let a = this.eventsMDGPRList.filter((elem) => {
|
2022-04-28 09:32:27 +01:00
|
|
|
//
|
2021-07-17 22:17:50 +01:00
|
|
|
return eventSerialNumber == elem.serialNumber
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
this.approveEventDismiss.emit({
|
|
|
|
|
"serialNumber": eventSerialNumber,
|
|
|
|
|
"action": "Aprovar",
|
|
|
|
|
"saveData": data
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2021-10-18 15:19:01 +01:00
|
|
|
refreshing() {
|
|
|
|
|
this.LoadToApproveEvents();
|
|
|
|
|
}
|
|
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
doRefresh(event) {
|
|
|
|
|
this.LoadToApproveEvents();
|
2022-04-28 09:32:27 +01:00
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
setTimeout(() => {
|
2021-07-26 22:46:33 +01:00
|
|
|
event.target.complete();
|
|
|
|
|
}, 2000);
|
2021-07-17 22:17:50 +01:00
|
|
|
}
|
2021-07-26 22:46:33 +01:00
|
|
|
|
|
|
|
|
close() {
|
2022-04-28 09:32:27 +01:00
|
|
|
|
2021-07-17 22:17:50 +01:00
|
|
|
this.cloneAllmobileComponent.emit();
|
|
|
|
|
}
|
2021-02-24 11:10:51 +01:00
|
|
|
|
2021-06-03 14:10:16 +01:00
|
|
|
|
|
|
|
|
}
|