public static Case MapToCase(this LibraryVolunteeringEnquiry model, int eventCode, string classification) { var description = new DescriptionBuilder() .Add("Selected Interests", model.InterestList, ", ") .Add("Selected Locations", model.PreferredLocationList, ", ") .Add("Hours", model.NumberOfHours.ToString()) .Add("Days can't work", model.NotAvailableList, ", "); if (!string.IsNullOrEmpty(model.AdditionalInfo)) { description.Add("Extra Information", model.AdditionalInfo); } return(new Case { EventCode = eventCode, Classification = classification, EventTitle = "Volunteering", Description = description.Build(), AssociatedWithBehaviour = AssociatedWithBehaviourEnum.Individual, Customer = new Customer { Forename = model.FirstName, Surname = model.LastName, Email = model.Email, Telephone = model.Phone, Address = new Address { AddressLine1 = model.CustomersAddress.AddressLine1, AddressLine2 = model.CustomersAddress.AddressLine2, AddressLine3 = model.CustomersAddress.Town, Postcode = model.CustomersAddress.Postcode, Reference = model.CustomersAddress.PlaceRef, UPRN = model.CustomersAddress.PlaceRef } } }); }
public static Case MapToCase(this ContactSTARTRequest request, int eventCode) { var description = new DescriptionBuilder(); if (request.RefererPerson != null && !request.IsAboutSelf) { description .Add("(Lagan) Referrer", new[] { request.RefererPerson.FirstName, request.RefererPerson.LastName }) .Add("Connection to the Referee", request.RefererPerson.ConnectionAbout) .Add("Contact number", request.RefererPerson.PhoneNumber) .Add(string.Empty); } description .Add("Client") .Add("Name", new[] { request.RefereePerson.FirstName, request.RefereePerson.LastName }) .Add("Date of Birth", request.RefereePerson.DateOfBirth.ToShortDateString()); if (!string.IsNullOrEmpty(request.RefereePerson.EmailAddress)) { description.Add("Email", request.RefereePerson.EmailAddress); } if (!string.IsNullOrEmpty(request.RefereePerson.PhoneNumber)) { description .Add("Tel", request.RefereePerson.PhoneNumber) .Add("Call Time", request.RefereePerson.TimeSlot); } if (request.RefereePerson.Address.IsAutomaticallyFound) { description.Add("Address", request.RefereePerson.Address.SelectedAddress); } else { description.Add("Address", new[] { request.RefereePerson.Address.AddressLine1, request.RefereePerson.Address.AddressLine2, request.RefereePerson.Address.Town, request.RefereePerson.Address.Postcode }, ", "); } description.Add("Primary concern", request.AreaOfConcern); if (!string.IsNullOrEmpty(request.MoreInfomation)) { description.Add("Details", request.MoreInfomation); } return(new Case { CaseTitle = request.AreaOfConcern.Trim(), Classification = $"Public Health > START > {request.AreaOfConcern.Trim()}", EventCode = eventCode, AssociatedWithBehaviour = AssociatedWithBehaviourEnum.Individual, RaisedByBehaviour = RaisedByBehaviourEnum.Individual, Customer = new Customer { Forename = request.RefereePerson.FirstName, Surname = request.RefereePerson.LastName, Email = request.RefereePerson.EmailAddress, Telephone = request.RefereePerson.PhoneNumber, DateOfBirth = request.RefereePerson.DateOfBirth, Address = new Address { AddressLine1 = request.RefereePerson.Address.AddressLine1, AddressLine2 = request.RefereePerson.Address.AddressLine2, AddressLine3 = request.RefereePerson.Address.Town, Postcode = request.RefereePerson.Address.Postcode, Reference = request.RefereePerson.Address.PlaceRef, UPRN = request.RefereePerson.Address.PlaceRef } }, Description = description.Build(), }); }