public IEnumerable <AppointmentAdminViewModel> GetAllNonConfirmedAdminView() { List <AppointmentViewModel> appointmentRequests = _appointmentsService.GetAllNonConfirmed().ToList(); HashSet <int> offerIds = appointmentRequests.Select(a => a.offerId).ToHashSet(); List <AppointmentAdminViewModel> result = new List <AppointmentAdminViewModel>(); if (appointmentRequests.Count > 0) { Dictionary <int, OfferViewModel> offers = _offersService.GetManyByIds(offerIds.ToArray(), true); appointmentRequests.ForEach(a => a.offer = offers[a.offerId]); foreach (var request in appointmentRequests) { AppointmentAdminViewModel viewModel = _mapper.Map <AppointmentViewModel, AppointmentAdminViewModel>(request); viewModel.UserInfo = _userService.GetUserPersonalInfo(request.customerId); result.Add(viewModel); } } return(result); }
public void OnGet() { var userClaims = HttpContext.User.Claims; UserName = userClaims.FirstOrDefault(c => c.Type.Equals("preferred_username")).Value; FullName = userClaims.FirstOrDefault(c => c.Type.Equals("name")).Value; Email = userClaims.FirstOrDefault(c => c.Type.Equals("email")).Value; var currentUserId = HttpContext.User.Claims .FirstOrDefault(cl => cl.Type.Equals("sub")) ?.Value; Appointments = _appointmentsService.GetConfirmedByCustomerId(currentUserId).ToList(); if (Appointments.Count != 0) { HashSet <int> offerIds = Appointments.Select(a => a.offerId).ToHashSet(); Dictionary <int, OfferViewModel> offers = _offersService.GetManyByIds(offerIds.ToArray(), true); Appointments.ForEach(a => a.offer = offers[a.offerId]); } Console.WriteLine(); }