diff --git a/src/app/home/home-routing.module.ts b/src/app/home/home-routing.module.ts index 6d0906757..0351ccf1c 100644 --- a/src/app/home/home-routing.module.ts +++ b/src/app/home/home-routing.module.ts @@ -50,6 +50,15 @@ const routes: Routes = [ } ] }, + { + path: 'view-event', + children: [ + { + path:'', + loadChildren: ()=> import('../pages/view-event/view-event.module').then(m => m.ViewEventPageModule) + } + ] + }, /* PROVISORIO */ /* { path: 'view-event', diff --git a/src/app/models/event.model.ts b/src/app/models/event.model.ts index bc36d0540..6a4e16585 100644 --- a/src/app/models/event.model.ts +++ b/src/app/models/event.model.ts @@ -1,6 +1,7 @@ import { EventBody } from './eventbody.model'; import { EventPerson } from './eventperson.model'; import { EventAttachment } from './eventattachment.model'; +import { EventOrganizer } from './organizer.model'; export interface Event{ diff --git a/src/app/models/eventattachment.model.ts b/src/app/models/eventattachment.model.ts index 9bd411533..7cee66df2 100644 --- a/src/app/models/eventattachment.model.ts +++ b/src/app/models/eventattachment.model.ts @@ -1,8 +1,8 @@ export interface EventAttachment{ - name: string; - ownerId: string; - subject: string; - location: string; - externalEntities: string; - createdIn: string; + Name: string; + OwnerId: string; + Subject: string; + Location: string; + ExternalEntities: string; + CreatedIn: string; } \ No newline at end of file diff --git a/src/app/models/eventbody.model.ts b/src/app/models/eventbody.model.ts index 39e4a7030..f4a552f8e 100644 --- a/src/app/models/eventbody.model.ts +++ b/src/app/models/eventbody.model.ts @@ -1,4 +1,4 @@ export interface EventBody{ bodyType: string; - text: string; + Text: string; } \ No newline at end of file diff --git a/src/app/models/eventperson.model.ts b/src/app/models/eventperson.model.ts index 2bd499dfa..6ef8e0ac5 100644 --- a/src/app/models/eventperson.model.ts +++ b/src/app/models/eventperson.model.ts @@ -1,4 +1,4 @@ export interface EventPerson{ - emailAddress: string; - text: string; + EmailAddress: string; + Name: string; } \ No newline at end of file diff --git a/src/app/models/organizer.model.ts b/src/app/models/organizer.model.ts new file mode 100644 index 000000000..999bce33b --- /dev/null +++ b/src/app/models/organizer.model.ts @@ -0,0 +1,4 @@ +export interface EventOrganizer{ + EmailAddress: string; + Text: string; +} \ No newline at end of file diff --git a/src/app/pages/events/event-detail/event-detail.page.html b/src/app/pages/events/event-detail/event-detail.page.html index 16f15c8e0..2717db023 100644 --- a/src/app/pages/events/event-detail/event-detail.page.html +++ b/src/app/pages/events/event-detail/event-detail.page.html @@ -3,13 +3,59 @@ - Event detail + Visualizar Evento - - - {{loadedEvent.Subject}} - - + + + + Assunto + + + + Descrição + + + + Localização + + + + Intervenientes + + + + + + + + Carácter + + + + Tipo do evento + + + + Data Início: + + + + Data Fim + + + + Anexos + + + Lei do orçamento geral do Estado + + + +
+ Recusar + Aprovar +
+ diff --git a/src/app/pages/events/event-detail/event-detail.page.scss b/src/app/pages/events/event-detail/event-detail.page.scss index e69de29bb..1e03c67d9 100644 --- a/src/app/pages/events/event-detail/event-detail.page.scss +++ b/src/app/pages/events/event-detail/event-detail.page.scss @@ -0,0 +1,14 @@ +.event-detail-buttons{ + width: 80%; + margin: 10px auto; +} +.event-detail-buttons ion-button{ + width: 40%; +} +.ion-button-left{ + float: left; + background: none; +} +.ion-button-right{ + float: right; +} \ No newline at end of file diff --git a/src/app/pages/events/event-detail/event-detail.page.ts b/src/app/pages/events/event-detail/event-detail.page.ts index e0e439c69..798a6fcf1 100644 --- a/src/app/pages/events/event-detail/event-detail.page.ts +++ b/src/app/pages/events/event-detail/event-detail.page.ts @@ -3,6 +3,7 @@ import { ActivatedRoute } from '@angular/router'; import { EventsService } from 'src/app/services/events.service'; import { Event } from '../../../models/event.model'; +import { Observable } from 'rxjs'; @Component({ selector: 'app-event-detail', @@ -12,6 +13,7 @@ import { Event } from '../../../models/event.model'; export class EventDetailPage implements OnInit { loadedEvent: Event; + eventItem: Observable; constructor(private activatedRoute: ActivatedRoute, private eventsService: EventsService) { } @@ -24,7 +26,8 @@ export class EventDetailPage implements OnInit { } const eventId = paramMap.get('eventId'); /* Load my event detail */ - this.loadedEvent = this.eventsService.getEvent(eventId); + /* this.loadedEvent = this.eventsService.getEvent(eventId); */ + this.eventItem = this.eventsService.getEvent(eventId); }); } diff --git a/src/app/pages/events/events.page.html b/src/app/pages/events/events.page.html index c70509c28..66be491cf 100644 --- a/src/app/pages/events/events.page.html +++ b/src/app/pages/events/events.page.html @@ -40,16 +40,13 @@
- + - - + -
diff --git a/src/app/pages/events/events.page.ts b/src/app/pages/events/events.page.ts index 5e10e9e55..b17be7331 100644 --- a/src/app/pages/events/events.page.ts +++ b/src/app/pages/events/events.page.ts @@ -4,6 +4,7 @@ import { Event } from '../../models/event.model'; import { EventsService } from 'src/app/services/events.service'; import { Router } from '@angular/router'; import { ActivatedRoute } from '@angular/router'; +import { Observable } from 'rxjs'; @Component({ @@ -28,6 +29,7 @@ timeDate = this.today.getHours() + ":" + this.today.getMinutes(); segment:string; events: Event[]; + eventsList: Observable; constructor(private eventService: EventsService, private router: Router, public activatedRoute: ActivatedRoute) { } @@ -37,6 +39,7 @@ timeDate = this.today.getHours() + ":" + this.today.getMinutes(); this.showGreeting(); /* Call Get events method */ this.events = this.eventService.getAllEvents(); + this.eventsList = this.eventService.allEvents();/* .subscribe(prods=>console.log(prods)); */ } showGreeting(){ diff --git a/src/app/services/auth.service.ts b/src/app/services/auth.service.ts index e4ede12bd..8e41344eb 100644 --- a/src/app/services/auth.service.ts +++ b/src/app/services/auth.service.ts @@ -54,6 +54,7 @@ export class AuthService { return false; } } + /* logout(){ this.storageService.removeStorageItem(AuthConnstants.AUTH).then(res =>{ diff --git a/src/app/services/events.service.ts b/src/app/services/events.service.ts index 9b99330a0..0dfaa0fcf 100644 --- a/src/app/services/events.service.ts +++ b/src/app/services/events.service.ts @@ -2,6 +2,8 @@ import { Injectable } from '@angular/core'; import { Event } from '../models/event.model'; import axios from 'axios' +import { HttpClient } from '@angular/common/http'; +import { Observable } from 'rxjs'; @Injectable({ @@ -9,27 +11,8 @@ import axios from 'axios' }) export class EventsService { /* Set events */ - private eventos: Event = { - EventId: '1', - Subject: 'Reunião do Conselho de Ministros', - Body: null, - Location: 'Luanda, Palácio presidencial', - CalendarId: '', - CalendarName: 'poo', - StartDate: '10:30', - EndDate: '11:00', - EventType: '', - RequiredAttendees: null, - OptionalAttendees: null, - HasAttachments: false, - IsMeeting: false, - IsRecurring: false, - AppointmentState: 0, - TimeZone: '', - Organizer: '', - Categories: null, - Attachments: null, -}; + private eventos: Event[]; + private events: Event[] = [ { EventId: '1', @@ -37,7 +20,7 @@ export class EventsService { Body: null, Location: 'Luanda, Palácio presidencial', CalendarId: '', - CalendarName: 'poo', + CalendarName: 'pessoal', StartDate: '10:30', EndDate: '11:00', EventType: '', @@ -58,7 +41,7 @@ export class EventsService { Body: null, Location: 'Luanda, Palácio presidencial', CalendarId: '', - CalendarName: 'poo', + CalendarName: 'pessoal', StartDate: '10:30', EndDate: '11:00', EventType: '', @@ -75,54 +58,41 @@ export class EventsService { } ]; - constructor() { } + url = 'http://gpr-dev-01.gabinetedigital.local/GabineteDigital.Services/api/calendar/GetEvents?StartDate=2020-08-14 00:00:00&EndDate=2020-08-19 23:59:00&CalendarName=Pessoal'; + options = { headers: {'Authorization': 'Basic cGF1bG8ucGludG86dGFidGVzdGVAMDA2'}}; - getAllEvents(){ - /* Return a copy of the events in my array */ - console.log("All eventes loaded"); + constructor(private http: HttpClient) { } - const options = { - headers: {'Authorization': 'Basic cGF1bG8ucGludG86dGFidGVzdGVAMDA2'} - }; - const url = 'http://gpr-dev-01.gabinetedigital.local/GabineteDigital.Services/api/calendar/GetEvents?StartDate=2020-08-14 00:00:00&EndDate=2020-08-19 23:59:00&CalendarName=Pessoal'; - - - axios.get(url, options) - .then((response) => { - console.log(response.data[0].EventId); - /* console.log(response.data[0].Subject); - console.log(response.status); - console.log(response.statusText); - console.log(response.headers); */ - console.log(response.data[0]); - console.log(this.eventos); - this.eventos = response.data[0]; - console.log(this.events[0].CalendarName); - console.log(this.events[0].CalendarName); - console.log("THEN"); - - console.log([this.eventos.CalendarName]) - /* return [this.events[0]]; */ - console.log(response.data); - console.log(this.eventos); - console.log(this.events[0].CalendarName); - - this.events = response.data; - - /* return [...this.events]; */ - }); - - return [...this.events]; - /* return [...this.events]; */ + allEvents(): Observable{ + return this.http.get(`${this.url}`, this.options) + } + getEvent(ev: string): Observable{ + const url = 'http://gpr-dev-01.gabinetedigital.local/GabineteDigital.Services/api/calendar/GetEvent?EventId='; + return this.http.get(`${url + ev}`, this.options) } - getEvent(eventId: string){ + getAllEvents(){ + //Return a copy of the events in my array + console.log("All eventes loaded"); + const options = { headers: {'Authorization': 'Basic cGF1bG8ucGludG86dGFidGVzdGVAMDA2'}}; + axios.get(this.url, options) + .then((response) => { + console.log(this.eventos); + this.eventos = response.data; + console.log(this.eventos); + return this.events; + }); + return this.eventos; + //return [...this.events]; + } + + getStaticEvent(eventId: string){ return { - /* The find() function looks for an event in a array and return true if found */ + // The find() function looks for an event in a array and return true if found ...this.events.find(event => { - /* Compare if the event found is the same as the event passed in as parameter */ + //Compare if the event found is the same as the event passed in as parameter return event.EventId === eventId; - }) - }; + }) + }; } }