public async Task <IActionResult> Create(PetViewModel model) { if (ModelState.IsValid) { var path = string.Empty; if (model.ImageFile != null && model.ImageFile.Length > 0) { path = await _imageHelper.UploadImageAsync(model.ImageFile, "Pets"); } try { model.Owner = await _ownerRepository.GetOwnerWithUserByIdAsync(model.OwnerId); model.Specie = await _specieRepository.GetSpecieByIdAsync(model.SpecieId); var pet = _converterHelper.ToPet(model, path, true); pet.CreatedBy = await _userHelper.GetUserByEmailAsync(User.Identity.Name); await _petRepository.CreateAsync(pet); return(RedirectToAction($"{nameof(MyPets)}")); } catch (Exception exception) { ModelState.AddModelError(string.Empty, exception.Message); } } return(View(model)); }
public async Task <IActionResult> AddPet(PetViewModel model) { if (ModelState.IsValid) { string path = string.Empty; // Verify image if (model.ImageFile != null) { path = await _imageHelper.UploadImageAsync(model.ImageFile, "Pets"); } var pet = _converterHelper.ToPet(model, path, true); if (ModelState.IsValid) { await _petRepository.CreateAsync(pet); return(RedirectToAction("Details", null, new { @id = model.CustomerId })); } } model.PetTypes = _combosHelper.GetComboPetTypes(); return(View(model)); }
public async Task <Pet> CreateAsync(Pet pet) { try { // Ensure Pet exists to be linked with... var existingUser = await userRepository.GetAsync(pet.UserId); if (existingUser == null) { return(null); } await petRepository.CreateAsync(pet); await unitOfWork.CompleteAsync(); return(pet); } catch (Exception) { // TODO: Better error handling! return(null); } }
public async Task <bool> CreatePetAsync(PetModel petModel) { return(await _petRepository.CreateAsync(petModel)); }