private static Person MapParent(CheckInsUpdate guest) { var names = guest.EmergencyContactName?.Split(separator: " "); var firstName = string.Empty; var lastName = string.Empty; if (names?.Length == 2) { firstName = names[0]; lastName = names[1]; } else if (guest.EmergencyContactName?.Length > 0) { firstName = guest.EmergencyContactName; } var adult = new Adult { PhoneNumber = guest.EmergencyContactNumber, IsPrimaryContact = false }; return(new() { FirstName = firstName, LastName = lastName, UpdateDate = DateTime.UtcNow, Adult = adult }); }
private static Attendance MapToAttendance(CheckInsUpdate checkInsUpdate, IImmutableList <Person> people) { var person = people.Single(predicate: p => p.PeopleId == checkInsUpdate.PeopleId); return(new() { CheckInsId = checkInsUpdate.CheckInsId, LocationId = checkInsUpdate.LocationId, SecurityCode = checkInsUpdate.SecurityCode, InsertDate = checkInsUpdate.CreationDate, Person = person, AttendanceTypeId = MapAttendeeType(attendeeType: checkInsUpdate.AttendeeType) }); }
private static Attendance MapGuestAttendance(CheckInsUpdate guest) { var person = MapPerson(peopleUpdate: guest.Kid); var parent = MapParent(guest: guest); var family = new Family { Name = "Guest", UpdateDate = DateTime.UtcNow, People = new List <Person> { parent } }; person.Family = family; return(MapToAttendance(checkInsUpdate: guest, people: ImmutableList.Create(item: person))); }