This commit is contained in:
Peter Maquiran
2024-05-29 16:06:48 +01:00
12 changed files with 334 additions and 98 deletions
@@ -3,6 +3,10 @@ import { AgendaDataService } from './agenda-data.service';
import { map } from 'rxjs/operators';
import { ListEventMapper } from './mapper/EventListMapper';
import { EventMapper } from './mapper/EventDetailsMapper';
import { Utils } from './utils';
import { EventInputDTO } from './agendaDataModels';
import { Event } from 'src/app/models/event.model';
import { SessionStore } from 'src/app/store/session.service';
@Injectable({
providedIn: 'root'
@@ -10,12 +14,9 @@ import { EventMapper } from './mapper/EventDetailsMapper';
export class AgendaDataRepositoryService {
constructor(
private agendaDataService: AgendaDataService
) {}
createEvent(eventData: any) {
return this.agendaDataService.createEvent(eventData).pipe(map(EventMapper.toDomain))
}
private agendaDataService: AgendaDataService,
private utils: Utils
) { }
getEventById(id: string) {
return this.agendaDataService.getEvent(id).pipe(
@@ -41,4 +42,71 @@ export class AgendaDataRepositoryService {
))
}
createEvent(eventData: Event,CalendarName,documents) {
console.log(eventData)
let eventInput = {
userId: this.utils.selectedCalendarUserId(CalendarName,eventData) as any,
ownerType: this.utils.selectedCalendarOwner(CalendarName),
subject: eventData.Subject,
body: eventData.Body.Text,
location: eventData.Location,
startDate: eventData.StartDate.toISOString(),
endDate: eventData.EndDate.toISOString(),
type: this.utils.calendarTypeSeleted(eventData.Category),
category: this.utils.calendarCategorySeleted(eventData.CalendarName),
attendees: this.utils.attendeesAdded(eventData.Attendees),
attachments: this.utils.documentAdded(documents),
recurrence: {
frequency: 0,
occurrences: 0,
},
organizerId: SessionStore.user.UserId,
isAllDayEvent: eventData.IsAllDayEvent,
}
this.agendaDataService.createEvent(eventInput).subscribe((value) => {
console.log(value)
},((error) => {
console.log('create event',error)
}));
}
updateEvent(eventId,eventData: Event,CalendarName,documents) {
console.log(this.utils.editeEventCalendarUserId(CalendarName,eventData));
let eventInput = {
userId: this.utils.selectedCalendarUserId(CalendarName,eventData),
ownerType: this.utils.selectedCalendarOwner(CalendarName),
subject: eventData.Subject,
body: eventData.Body.Text,
location: eventData.Location,
startDate: JSON.stringify(eventData.StartDate),
endDate: JSON.stringify(eventData.EndDate),
type: this.utils.calendarTypeSeleted(eventData.Category),
category: this.utils.calendarCategorySeleted(eventData.CalendarName),
attendees: this.utils.attendeesAdded(eventData.Attendees),
attachments: this.utils.documentAdded(documents),
recurrence: {
frequency: 0,
occurrences: 0,
},
organizerId: SessionStore.user.UserId,
isAllDayEvent: eventData.IsAllDayEvent,
}
this.agendaDataService.updateEvent(eventId, eventInput).subscribe((value) => {
console.log(value)
},((error) => {
console.log(error)
}));
}
deleteEvent(eventId) {
this.agendaDataService.deleteEvent(eventId,false).subscribe(() => {
console.log()
},((error) => {
console.log(error)
}))
}
}