public async Task <ActionResult <EducatorDTO> > GetById(int id) { Educator educator = await _educatorRepository.GetById(id); EducatorDTO educatorDTO = educator.ToDTO(); IEnumerable <EducatorRate> rates = await _educatorRepository.GetAllEducatorRates(educatorDTO.ID); educatorDTO.Rates = rates.ToDTOList(); educatorDTO.AvgRate = rates.Count() > 0 ? rates.Average(x => x.Rate) : 0.0; return(Ok(educatorDTO)); }
public async Task <ActionResult <IEnumerable <NotificationDTO> > > GetAllNotifications() { IEnumerable <Notification> notifications = await _notificationRepository.GetAllNotifications(); IEnumerable <NotificationDTO> notificationDTOs = notifications.ToDTOList(); foreach (var item in notificationDTOs) { if (item.AdministratorId != null) { int admId = Convert.ToInt32(item.AdministratorId); Administrator adm = await _administratorRepository.GetById(admId); if (adm != null) { AdministratorDTO admDTO = adm.ToDTO(); item.AvatarUrl = admDTO.AvatarUrl; } } else { int edcId = Convert.ToInt32(item.EducatorId); Educator edc = await _educatorRepository.GetById(edcId); if (edc != null) { EducatorDTO educatorDTO = edc.ToDTO(); item.AvatarUrl = educatorDTO.AvatarUrl; } } } return(Ok(notificationDTOs)); }