private void CreatePledge(SaveTripParticipantsDto dto, TripApplicant applicant) { int donorId; var addPledge = true; if (applicant.DonorId != null) { donorId = (int) applicant.DonorId; addPledge = !_mpPledgeService.DonorHasPledge(dto.Campaign.PledgeCampaignId, donorId); } else { donorId = _mpDonorService.CreateDonorRecord(applicant.ContactId, null, DateTime.Now); } if (addPledge) { _mpPledgeService.CreatePledge(donorId, dto.Campaign.PledgeCampaignId, dto.Campaign.FundraisingGoal); } }
public List<int> SaveParticipants(SaveTripParticipantsDto dto) { var groupParticipants = new List<int>(); var groupStartDate = DateTime.Now; const int groupRoleId = 16; // wondering if eventually this will become user input? var events = _groupService.getAllEventsForGroup(dto.GroupId); foreach (var applicant in dto.Applicants) { if (_groupService.ParticipantGroupMember(dto.GroupId, applicant.ParticipantId)) { continue; } var groupParticipantId = AddGroupParticipant(dto.GroupId, groupRoleId, groupStartDate, events, applicant); if (groupParticipantId != 0) { groupParticipants.Add(groupParticipantId); } CreatePledge(dto, applicant); EventRegistration(events, applicant, dto.Campaign.DestinationId); SendTripParticipantSuccess(applicant.ContactId, events); } return groupParticipants; }