Files
doneit-web/src/app/shared/agenda/event-list/event-list.page.ts
T

128 lines
3.6 KiB
TypeScript
Raw Normal View History

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';
2021-09-03 15:50:13 +01:00
import { ModalController } from '@ionic/angular';
2021-02-24 11:10:51 +01:00
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 modalController: ModalController,
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-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-10-18 15:19:01 +01:00
//this.LoadToApproveEvents();
}
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;
console.log(this.segment);
if(this.segment == 'MDGPR'){
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);
if(allEvents.length > 0){
this.eventsMDGPRList = this.sortService.sortArrayByDate(allEvents).reverse();
}
this.showLoader = false;
2021-02-24 11:10:51 +01:00
}
2021-07-17 22:17:50 +01:00
else if(this.segment == 'PR'){
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);
console.log(allEvents);
if(allEvents.length > 0){
this.eventsPRList = this.sortService.sortArrayByDate(allEvents).reverse();
}
2021-02-24 11:10:51 +01:00
}
2021-07-17 22:17:50 +01:00
this.showLoader = false;
}
async openApproveModal(eventSerialNumber, data) {
let a =this.eventsMDGPRList.filter((elem)=>{
2021-10-18 15:44:22 +01:00
//console.log(eventSerialNumber," ",elem.serialNumber)
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();
console.log('refresh');
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() {
2021-07-17 22:17:50 +01:00
console.log('close')
this.cloneAllmobileComponent.emit();
}
2021-02-24 11:10:51 +01:00
2021-06-03 14:10:16 +01:00
}