public async Task <IActionResult> GetHealthInitiatives() { var items = await _repo.GetHealthInitativesAsync(); var dtos = items.Select(x => { var participants = x.HealthParticipants.Select(y => { return(new HealthParticipantDto { HealthInitiativeId = y.HealthInitiativeId, Name = y.Name, IndividualWeightLossGoal = y.IndividualWeightLossGoal, StartingWeight = y.StartingWeight, Id = y.Id }); }); var dto = new HealthInitiativeDto { Id = x.Id, Participants = participants.ToList(), StartDateTime = x.StartDateTime, EndDateTime = x.EndDateTime, Name = x.Name, TotalWeightLossGoal = x.TotalWeightLossGoal }; return(dto); }); return(Ok(dtos)); }
public async Task <IActionResult> CreateInitiative(HealthInitiativeDto model) { var dbEntity = new HealthInitiative { Id = model.Id, Name = model.Name, TotalWeightLossGoal = model.TotalWeightLossGoal, HealthParticipants = model.Participants?.Select(x => new HealthParticipant { IndividualWeightLossGoal = x.IndividualWeightLossGoal, Name = x.Name, StartingWeight = x.StartingWeight }).ToList(), StartDateTime = model.StartDateTime, EndDateTime = model.EndDateTime }; await _repo.InsertHealthInitiativeAsync(dbEntity); return(Ok(dbEntity.Id)); }