public static async Task <ParticipantDto> GetParticipant(int participantId) { Participant entity = await ParticipantRead.GetParticipant(participantId, a => a.EnrolledMeetings); ParticipantDto result = Convert(entity); return(result); }
public static async Task <List <MeetingDto> > GetMeetingsForParticipant(int participantId) { List <MeetingDto> result = (await ParticipantRead.GetMeetingsForParticipant(participantId)) .Select(ent => MeetingService.Convert(ent)) .ToList(); return(result); }
public static async Task AddPersonToMeeting(int participantId, int meetingId) { Task <Participant> participantTask = ParticipantRead.GetParticipant(participantId); Task <Meeting> meetingTask = MeetingRead.GetMeeting(meetingId, m => m.Participants); await Task.WhenAll(meetingTask, participantTask); if (meetingTask.Result.Participants.Any(p => p.Id == participantId)) { throw new Exception("Participant is already enrolled in this meeting"); } await MeetingWrite.AddParticipantToMeeting(participantTask.Result, meetingTask.Result); }