public async Task <PlanServiceModel> GetByIdAsync(string id) { Plan plan = await _planObjectService.GetByIdAsync <Plan>(id); if (plan == null) { return(null); } var planAreas = _planAreaObjectService.GetPlanAreas(plan.Id); return(await Task.FromResult(new PlanServiceModel { Id = plan.Id, Name = plan.Name, UserId = plan.UserId, IsTemplate = plan.IsTemplate, PlanAreas = planAreas.Select(x => new PlanAreaServiceModel { Id = x.Id, Name = x.Name, PlanId = x.PlanId, AreaTopics = _topicObjectService.GetTopicsByAreaId(x.Id).Select(areaTopic => new AreaTopicServiceModel { Id = areaTopic.Id, Name = areaTopic.Name, StartDate = areaTopic.StartDate?.ToString("yyyy-MM-dd"), EndDate = areaTopic.EndDate?.ToString("yyyy-MM-dd"), Source = areaTopic.Source, Description = areaTopic.Description }).OrderBy(topic => topic.StartDate).ToArray() }).ToArray() })); }
public List <AreaTopic> GetBy(PlanArea planArea) { return(_topicObjectService.GetTopicsByAreaId(planArea.Id)); }