public IActionResult GetFavoriteAnimals(int id) { User _user = _userRepository.GetSingle(u => u.Id == id, u => u.FavoriteAnimals); if (_user != null) { List <AnimalDetailsViewModel> _animalViewModel = new List <AnimalDetailsViewModel>(); foreach (var animal in _user.FavoriteAnimals) { Animal _animalDb = _animalRepository.GetSingle(a => a.Id == animal.AnimalId, a => a.AnimalsToAnimalShelter); AnimalShelter _animalShelterDb = _animalShelterRepository.GetSingle(s => s.Id == _animalDb.AnimalsToAnimalShelter.AnimalShelterId); AnimalDetailsViewModel _animalDetailsViewModel = Mapper.Map <Animal, AnimalDetailsViewModel>(_animalDb); _animalDetailsViewModel.IsFavorite = true; _animalDetailsViewModel.AnimalShelter = Mapper.Map <AnimalShelter, AnimalShelterViewModel>(_animalShelterDb); _animalViewModel.Add(_animalDetailsViewModel); } return(new OkObjectResult(_animalViewModel)); } else { return(NotFound()); } }
public async Task <IActionResult> Edit(AnimalDetailsViewModel model) { if (ModelState.IsValid) { var animal = await _animalRepository.GetAnimalWithUserAsync(model.Id); if (animal == null) { return(NotFound()); } if ((this.User.Identity.Name != animal.User.UserName) && !this.User.IsInRole("Admin")) { return(NotFound()); } model.ImageUrl = animal.ImageUrl; animal = _converterHelper.AnimalDetailsToAnimal(animal, model); await _animalRepository.UpdateAsync(animal); } model.User = await _userHelper.GetUserByEmailAsync(model.User.UserName); model.Appointments = _appointmentRepository.GetAnimalAppointments(model.Id); return(View("Details", model)); }
public IActionResult GetByUser(int id) { User _user = _userRepository.GetSingle(u => u.Id == id, u => u.FavoriteAnimals); if (_user != null) { IEnumerable <Animal> _animals = _animalRepository .AllIncluding(a => a.AnimalsToAnimalShelter) .OrderBy(a => a.Id) .ToList(); IList <AnimalDetailsViewModel> _animalViewModel = new List <AnimalDetailsViewModel>(); foreach (var animal in _animals) { AnimalShelter _animalShelterDb = _animalShelterRepository.GetSingle(s => s.Id == animal.AnimalsToAnimalShelter.AnimalShelterId); AnimalDetailsViewModel _animalDetailsViewModel = Mapper.Map <Animal, AnimalDetailsViewModel>(animal); if (_user.FavoriteAnimals.Select(x => x.AnimalId).ToList().Contains(animal.Id)) { _animalDetailsViewModel.IsFavorite = true; } _animalDetailsViewModel.AnimalShelter = Mapper.Map <AnimalShelter, AnimalShelterViewModel>(_animalShelterDb); _animalViewModel.Add(_animalDetailsViewModel); } return(new OkObjectResult(_animalViewModel)); } return(NotFound()); }
public async Task <IActionResult> Edit(AnimalDetailsViewModel model) { var dto = _mapper.Map <AnimalDetailsDto>(model); await _animalDetailsService.UpdateAnimalDetailsAsync(dto); return(NoContent()); }
public async Task <IActionResult> Create(AnimalDetailsViewModel model) { var dto = _mapper.Map <AnimalDetailsDto>(model); var createdData = await _animalDetailsService.CreateAnimalDetailsAsync(dto); return(Ok(createdData)); }
public Animal AnimalDetailsToAnimal(Animal animal, AnimalDetailsViewModel model) { animal.Name = model.Name; animal.Sex = model.Sex; animal.DateOfBirth = model.DateOfBirth; animal.Species = model.Species; animal.Breed = model.Breed; return(animal); }
public IActionResult AnimalDetails(int animalId, bool isSucceed = false) { var animalSorted = _context.Animals.SingleOrDefault(a => a.AnimalId == animalId); //Saving the required animal to get details of var commentsSorted = _context.Comments.Where(c => c.AnimalId == animalId); //Saving all the comments of the required animal ViewBag.isSucceed = isSucceed; //For alerting the user if the add comment operation succeeded AnimalDetailsViewModel animalDetailsViewModel = new AnimalDetailsViewModel() { Animal = animalSorted, Comments = commentsSorted }; return(View(animalDetailsViewModel)); }
public IActionResult GetDetails(int id) { Animal _animal = _animalRepository.GetSingle(a => a.Id == id, a => a.AnimalsToAnimalShelter); if (_animal != null) { AnimalDetailsViewModel _animalViewModel = Mapper.Map <Animal, AnimalDetailsViewModel>(_animal); AnimalShelter _animalShelterDb = _animalShelterRepository.GetSingle(s => s.Id == _animal.AnimalsToAnimalShelter.AnimalShelterId); _animalViewModel.AnimalShelter = Mapper.Map <AnimalShelter, AnimalShelterViewModel>(_animalShelterDb); return(new OkObjectResult(_animalViewModel)); } else { return(NotFound()); } }
public IActionResult GetAll() { IEnumerable <Animal> _animals = _animalRepository .AllIncluding(a => a.AnimalsToAnimalShelter) .OrderBy(a => a.Id) .ToList(); IList <AnimalDetailsViewModel> _animalViewModel = new List <AnimalDetailsViewModel>(); foreach (var animal in _animals) { AnimalShelter _animalShelterDb = _animalShelterRepository.GetSingle(s => s.Id == animal.AnimalsToAnimalShelter.AnimalShelterId); AnimalDetailsViewModel _animalDetailsViewModel = Mapper.Map <Animal, AnimalDetailsViewModel>(animal); _animalDetailsViewModel.AnimalShelter = Mapper.Map <AnimalShelter, AnimalShelterViewModel>(_animalShelterDb); _animalViewModel.Add(_animalDetailsViewModel); } return(new OkObjectResult(_animalViewModel)); }
public IActionResult GetShelterAnimals(int id) { AnimalShelter _shelter = _animalShelterRepository.GetSingle(s => s.Id == id, s => s.Animals); if (_shelter != null) { List <AnimalDetailsViewModel> _animalsViewModel = new List <AnimalDetailsViewModel>(); foreach (var animal in _shelter.Animals) { Animal _animalDb = _animalRepository.GetSingle(animal.Id); AnimalDetailsViewModel _animalViewModel = Mapper.Map <Animal, AnimalDetailsViewModel>(_animalDb); _animalViewModel.AnimalShelter = Mapper.Map <AnimalShelter, AnimalShelterViewModel>(_shelter); _animalsViewModel.Add(_animalViewModel); } return(new OkObjectResult(_animalsViewModel)); } else { return(NotFound()); } }
public IActionResult GetByUserAndParams(int id, [FromBody] AnimalSearchViewModel animalsSearch) { User _user = _userRepository.GetSingle(u => u.Id == id, u => u.FavoriteAnimals); if (_user != null) { AnimalSexEnum sex = (AnimalSexEnum)Enum.Parse(typeof(AnimalSexEnum), animalsSearch.Sex); AnimalSpeciesEnum species = (AnimalSpeciesEnum)Enum.Parse(typeof(AnimalSpeciesEnum), animalsSearch.Species); AnimalAgeAccuracyEnum ageAccuracy = (AnimalAgeAccuracyEnum)Enum.Parse(typeof(AnimalAgeAccuracyEnum), animalsSearch.AgeAccuracy); DateTime dateFrom = animalsSearch.AgeFrom == -1 ? GetDate(30, AnimalAgeAccuracyEnum.Years) : GetDate(animalsSearch.AgeFrom, ageAccuracy); DateTime dateTo = dateTo = animalsSearch.AgeTo == -1 ? GetDate(-30, AnimalAgeAccuracyEnum.Years) : GetDate(-animalsSearch.AgeTo, ageAccuracy); IEnumerable <Animal> _animals = _animalRepository.AllIncluding(a => a.AnimalsToAnimalShelter, a => a.AnimalsToAnimalShelter.AnimalShelter) .Where(a => a.Name.ToUpper().Contains(animalsSearch.Name.Length > 0 ? animalsSearch.Name.ToUpper() : a.Name.ToUpper()) && a.Breed.ToUpper().Contains(animalsSearch.Breed.Length > 0 ? animalsSearch.Breed.ToUpper() : a.Breed.ToUpper()) && a.Sex == sex && a.Species == species && a.DateOfBirth >= dateTo && a.DateOfBirth <= dateFrom && a.AnimalsToAnimalShelter.AnimalShelter.Name == animalsSearch.ShelterName).ToList(); IList <AnimalDetailsViewModel> _animalViewModel = new List <AnimalDetailsViewModel>(); foreach (var animal in _animals) { AnimalShelter _animalShelterDb = _animalShelterRepository.GetSingle(s => s.Id == animal.AnimalsToAnimalShelter.AnimalShelterId); AnimalDetailsViewModel _animalDetailsViewModel = Mapper.Map <Animal, AnimalDetailsViewModel>(animal); if (_user.FavoriteAnimals.Select(x => x.AnimalId).ToList().Contains(animal.Id)) { _animalDetailsViewModel.IsFavorite = true; } _animalDetailsViewModel.AnimalShelter = Mapper.Map <AnimalShelter, AnimalShelterViewModel>(_animalShelterDb); _animalViewModel.Add(_animalDetailsViewModel); } return(new OkObjectResult(_animalViewModel)); } return(NotFound()); }