public IActionResult Index() { if (User.IsInRole("1")) { return(RedirectToAction("Index", "Admin")); } ViewData["Categories"] = _categoryLogic.GetAllCategories().Select(category => category.Name).ToList(); var model = new HomeViewModel() { OfferedServices = new List <OfferedServiceViewModel>() }; IEnumerable <IOfferedService> offeredServices; if (!User.Identity.IsAuthenticated) { offeredServices = _offeredServiceLogic.GetAllOfferedServices().Where(offeredService => offeredService.Status == 0 && !offeredService.Name.Contains("TEST")); } else { var currentUser = _userLogic.GetUserByEmail(User.Identity.Name); if (!currentUser.FullName.Contains("TEST")) { offeredServices = _offeredServiceLogic.GetAllOfferedServices().Where(offeredService => offeredService.Status == 0 && offeredService.ProviderId != currentUser.Id && !offeredService.Name.Contains("TEST")); } else { offeredServices = _offeredServiceLogic.GetAllOfferedServices().Where(offeredService => offeredService.Status == 0 && offeredService.ProviderId != currentUser.Id && offeredService.Name.Contains("TEST")); } } foreach (var offeredService in offeredServices.OrderByDescending(offeredService => offeredService.DateOfPost)) { var provider = new UserViewModel(_userLogic.GetUserById(offeredService.ProviderId)); var images = _imageLogic.GetImagesByOfferedServiceId(offeredService.Id) .Select(image => image.ToString()).ToList(); model.OfferedServices.Add(new OfferedServiceViewModel(offeredService, provider, images)); } return(View(model)); }
public IActionResult Index() { var user = _userLogic.GetUserByEmail(User.Identity.Name); var model = new ProfileViewModel() { FirstName = user.FirstName, LastName = user.LastName, Email = user.Email, Description = user.Description, OfferedServiceViewModels = new List <OfferedServiceViewModel>(), UsedServiceViewModels = new List <UsedServiceViewModel>() }; foreach (var offeredService in _offeredServiceLogic.GetOfferedServicesByUserId(user.Id)) { var provider = new UserViewModel(_userLogic.GetUserById(offeredService.ProviderId)); var images = _imageLogic.GetImagesByOfferedServiceId(offeredService.Id) .Select(image => image.ToString()).ToList(); var offeredServiceViewModel = new OfferedServiceViewModel(offeredService, provider, images); model.OfferedServiceViewModels.Add(offeredServiceViewModel); } foreach (var usedService in _usedServiceLogic.GetUsedServicesByConsumerId(user.Id)) { var reviewViewModel = _reviewLogic.GetReviewsByWriterId(user.Id) .Where(review => review.UsedServiceId == usedService.Id) .Select(review => new ReviewViewModel(review)).FirstOrDefault(); var offeredService = new OfferedServiceViewModel( _offeredServiceLogic.GetOfferedServiceById(usedService.OfferedServiceId)); var usedServiceViewModel = new UsedServiceViewModel(usedService, offeredService, reviewViewModel); var consumedOfferedService = _offeredServiceLogic.GetOfferedServiceById(usedService.OfferedServiceId); var provider = new UserViewModel(_userLogic.GetUserById(consumedOfferedService.ProviderId)); var images = _imageLogic.GetImagesByOfferedServiceId(consumedOfferedService.Id) .Select(image => image.ToString()).ToList(); usedServiceViewModel.OfferedService = new OfferedServiceViewModel(consumedOfferedService, provider, images); model.UsedServiceViewModels.Add(usedServiceViewModel); } return(View(model)); }
private WriteReviewViewModel GetOfferedServiceViewModel(int offeredServiceId) { var offeredService = _offeredServiceLogic.GetOfferedServiceById(offeredServiceId); var images = _imageLogic.GetImagesByOfferedServiceId(offeredServiceId).Select(image => image.ImageAsString) .ToList(); var provider = new UserViewModel(_userLogic.GetUserById(offeredService.ProviderId)); var model = new WriteReviewViewModel() { OfferedService = new OfferedServiceViewModel(offeredService, provider, images) }; return(model); }
public IActionResult ViewOfferedService(int offeredServiceId) { var offeredService = _offeredServiceLogic.GetOfferedServiceById(offeredServiceId); var provider = new UserViewModel(_userLogic.GetUserById(offeredService.ProviderId)); var images = _imageLogic.GetImagesByOfferedServiceId(offeredService.Id).Select(image => image.ToString()) .ToList(); var amountSold = _usedServiceLogic.GetUsedServicesByOfferdServiceId(offeredServiceId).Count(); var usedServices = (from review in _reviewLogic.GetReviewsByOfferedServiceId(offeredServiceId) let usedServiceDateOfPurchase = _usedServiceLogic.GetUsedServiceById(review.UsedServiceId).DateOfPurchase let reviewViewModel = new ReviewViewModel(review) select new UsedServiceViewModel(usedServiceDateOfPurchase, reviewViewModel)).ToList(); var model = new AdminOfferedServiceViewModel(offeredService, provider, images, usedServices, amountSold); return(View(model)); }