示例#1
0
        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));
        }
示例#2
0
        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));
        }