public IActionResult SearchCourse([FromBody] FavoriteBindModel favoriteModel) { var userId = Convert.ToInt32(userManager.GetUserId(User)); var courses = unitOfWork.GetRepository <Course>().Get(null, null, "Organizer.Country.City,Institude,Currency").ToList(); var lstCoursesBriefDetails = new List <CourseDetailsBriefReturnModel>(); foreach (var item in courses) { if (item.Organizer.CityId == favoriteModel.CityId && item.CourseTypeId == favoriteModel.CourseTypeId && item.CourseScopeId == favoriteModel.CourseScopeId && item.Gender == favoriteModel.Gender) { var coureseBriefDetailsItem = new CourseDetailsBriefReturnModel() { Id = item.Id, Currency = item.Currency.Name, Gender = item.Gender, Name = item.Name, InstituteId = item.InstituteId, Image = item.Name, InstituteName = item.Institude.Name, MainPrice = item.MainPrice, MotivationPrice = item.MotivationPrice, StartDate = item.StartDate, TotalDay = item.TotalDay, Country = item.Organizer.Country.Name, City = item.Organizer.City.Name, }; lstCoursesBriefDetails.Add(coureseBriefDetailsItem); } } return(ApiResponder.RespondSuccessTo(HttpStatusCode.Ok, lstCoursesBriefDetails)); }
public IActionResult GetFeaturedCourse(int page, int pageSize) { var courses = unitOfWork.GetRepository <Course>().Get(null, null, "Organizer.Country.City,Institude,Currency").Skip((page - 1) * pageSize).Take(pageSize).ToList(); var lstCoursesBriefDetails = new List <CourseDetailsBriefReturnModel>(); foreach (var item in courses) { var totalDay = (item.EndDate - item.StartDate).TotalDays; var coureseBriefDetailsItem = new CourseDetailsBriefReturnModel() { Id = item.Id, Currency = item.Currency.Name, Gender = item.Gender, Name = item.Name, InstituteId = item.InstituteId, Image = item.Image, InstituteName = item.Institude.Name, MainPrice = item.MainPrice, MotivationPrice = item.MotivationPrice, StartDate = item.StartDate, TotalDay = item.TotalDay, Country = item.Organizer.Country.Name, City = item.Organizer.City.Name, }; lstCoursesBriefDetails.Add(coureseBriefDetailsItem); } return(ApiResponder.RespondSuccessTo(HttpStatusCode.Ok, lstCoursesBriefDetails)); }
public async Task <IActionResult> SetupFavorite([FromBody] FavoriteBindModel favoriteModel) { var userId = Convert.ToInt32(userManager.GetUserId(User)); var favoriteInserted = unitOfWork.GetRepository <Favorite>().Get(s => s.TraineeId == userId).FirstOrDefault(); var courseFavor = new Favorite() { CityId = favoriteModel.CityId, CourseScopeId = favoriteModel.CourseScopeId, CourseTypeId = favoriteModel.CourseTypeId, Gender = favoriteModel.Gender, TraineeId = userId, CountryId = favoriteModel.CountryId, }; if (favoriteInserted == null) { await unitOfWork.GetRepository <Favorite>().InsertAsync(courseFavor); } else { favoriteInserted.CityId = favoriteModel.CityId; favoriteInserted.CourseTypeId = favoriteModel.CourseTypeId; favoriteInserted.CourseScopeId = favoriteModel.CourseScopeId; favoriteInserted.Gender = favoriteModel.Gender; favoriteInserted.TraineeId = userId; favoriteInserted.CountryId = favoriteModel.CountryId; await unitOfWork.GetRepository <Favorite>().UpdateAsync(favoriteInserted); } var courses = unitOfWork.GetRepository <Course>().Get(null, null, "Organizer.Country.City,Institude,Currency").ToList(); var lstCoursesBriefDetails = new List <CourseDetailsBriefReturnModel>(); foreach (var item in courses) { if (item.Organizer.CityId == favoriteModel.CityId && item.CourseTypeId == favoriteModel.CourseTypeId && item.CourseScopeId == favoriteModel.CourseScopeId && item.Gender == favoriteModel.Gender) { var coureseBriefDetailsItem = new CourseDetailsBriefReturnModel() { Id = item.Id, Currency = item.Currency.Name, Gender = item.Gender, Name = item.Name, InstituteId = item.InstituteId, Image = item.Name, InstituteName = item.Institude.Name, MainPrice = item.MainPrice, MotivationPrice = item.MotivationPrice, StartDate = item.StartDate, TotalDay = item.TotalDay, Country = item.Organizer.Country.Name, City = item.Organizer.City.Name, }; lstCoursesBriefDetails.Add(coureseBriefDetailsItem); } } return(ApiResponder.RespondSuccessTo(HttpStatusCode.Ok, lstCoursesBriefDetails)); }