public HotelEditViewModel Update(HotelEditViewModel Hotel) { Hotel _Hotel = HotelRepo.Update(Hotel.toModel()); if (Hotel.HotelImages != null && Hotel.HotelImages.Count() > 0) { var toAdd = Hotel.HotelImages.Where(i => i.ID == 0); foreach (var image in toAdd) { ImagRepo.Add(image.toModel()); } var toUpdate = Hotel.HotelImages.Where(i => i.ID > 0); foreach (var image in toUpdate) { ImagRepo.Update(image.toModel()); } int[] ids = Hotel.HotelImages.Select(x => x.ID).ToArray(); var toDelete = ImagRepo.GetFilter(i => !ids.Contains(i.ID) && i.HotelID == Hotel.ID); foreach (var image in toDelete) { ImagRepo.Remove(image); } //unitOfWork.commit(); } unitOfWork.commit(); return(_Hotel.toEditViewModel()); }
public HotelEditViewModel Update(HotelEditViewModel Hotel) { Hotel _Hotel = HotelRepo.Update(Hotel.toModel()); unitOfWork.commit(); return(_Hotel.toEditViewModel()); }
public ResultViewModels <HotelEditViewModel> EditHotel(HotelEditViewModel HotelEditView) { ResultViewModels <HotelEditViewModel> result = new ResultViewModels <HotelEditViewModel>(); try { var hotelTemp = HotelService.Update(HotelEditView); if (hotelTemp == null) { result.Successed = false; result.Message = "Data is empty"; } else { result.Successed = true; result.Message = "Data Updated"; result.Data = hotelTemp; } } catch (Exception ex) { result.Successed = false; result.Message = "Something Went Wrong !!"; } return(result); }
private void OnAddButtonClicked() { HotelEditViewModel = new HotelEditViewModel(Repository); HotelEditViewModel.Closing += () => { HotelEditViewModel = null; ViewModelReturn(); }; }
public void Update_ThrowExceptionIfOblastWithGivenIdDoNotExist() { var model = new HotelEditViewModel { SelectedOblastId = 1 }; Action testCode = () => this.hotelsService.Update(model); testCode.ShouldThrow <OblastNullException>(); }
private void OnEditButtonClicked() { HotelEditViewModel = new HotelEditViewModel(Repository, SelectedHotel); HotelEditViewModel.Closing += () => { HotelEditViewModel = null; ViewModelReturn(); }; }
public IActionResult Edit(HotelEditViewModel model) { if (!this.ModelState.IsValid) { return(base.RedirectToAction("Edit", new { hotelId = model.Id })); } this.hotelsService.Update(model); return(base.RedirectToAction("Details", new { hotelId = model.Id })); }
public async Task EditHotelAsync(HotelEditViewModel hotel) { Hotel originalHotel = GetHotel(hotel.Id); originalHotel.Latitude = hotel.Latitude; originalHotel.Longitude = hotel.Longitude; originalHotel.Name = hotel.Name; originalHotel.Stars = hotel.Stars; originalHotel.Description = hotel.Description; originalHotel.CityId = hotel.CityId; _context.Hotels.Update(originalHotel); await _context.SaveChangesAsync(); }
public async Task <IActionResult> Edit(HotelEditViewModel hotel) { if (ModelState.IsValid) { await _portalService.EditHotelAsync(hotel); if (hotel.Images != null) { await UploadImagesAsync(hotel.Images, hotel.Id); } return(RedirectToAction("Details", new { id = hotel.Id })); } return(View(hotel)); }
public HotelEditViewModel Add(HotelEditViewModel Hotel) { Hotel _Hotel = HotelRepo.Add(Hotel.toModel()); unitOfWork.commit(); if (Hotel.HotelImages != null && Hotel.HotelImages.Count() > 0) { foreach (var image in Hotel.HotelImages) { image.HotelID = _Hotel.ID; ImagRepo.Add(image.toModel()); } } unitOfWork.commit(); return(_Hotel.toEditViewModel()); }
public IActionResult Edit(int?id) { if (id == null) { return(NotFound()); } HotelEditViewModel hotelEditViewModel = _portalService.PrepareEditHotel(id); if (hotelEditViewModel == null) { return(NotFound()); } ViewData["CityId"] = new SelectList(_portalService.Cities, "Id", "Name"); ViewData["Stars"] = new SelectList(new List <int> { 1, 2, 3, 4, 5 }); ViewData["ImageIds"] = _portalService.GetHotelImageIds(id).ToList(); return(View(hotelEditViewModel)); }
public void Update(HotelEditViewModel model) { if (!this.oblastsService.CheckExistById(model.SelectedOblastId)) { throw new OblastNullException(); } Hotel hotel = this.GetById(model.Id); hotel.Name = model.Name; hotel.Description = model.Description; hotel.Stars = model.Stars; hotel.Address = model.Address; hotel.PhoneNumber = model.PhoneNumber; hotel.OblastId = model.SelectedOblastId; if (model.Photo != null) { hotel.ImageUrl = this.imagesUploader.Upload(model.Photo, ImagesDirectory, ImagesFolderName); } this.dbContext.SaveChanges(); }
public void Update_DoNotChangeHotelPhotoIfDoNotHaveGivenPhoto() { int oblastId = 1; int hotelId = 2; string imageUrl = "testImageUrl"; this.dbContext.Oblasts.Add(new Oblast { Id = oblastId }); this.dbContext.Hotels.Add(new Hotel { Id = hotelId, ImageUrl = imageUrl }); this.dbContext.SaveChanges(); var model = new HotelEditViewModel { Id = hotelId, SelectedOblastId = oblastId }; this.hotelsService.Update(model); string result = this.dbContext.Hotels.First().ImageUrl; result.ShouldBe(imageUrl); }
public HotelEditViewModel AddHotel(HotelEditViewModel HotelEditView) { var Hotel = HotelService.Add(HotelEditView); return(Hotel); }
public void Update_UpdateGivenHotelCorrectly() { int hotelId = 3; this.dbContext.Hotels.Add(new Hotel { Id = hotelId }); this.dbContext.SaveChanges(); int oblastId = 1; this.dbContext.Oblasts.Add(new Oblast { Id = oblastId }); this.dbContext.SaveChanges(); string address = "testAddress"; string description = "testDescription"; string name = "testName"; string phoneNumber = "testPhoneNumner"; int stars = 1; IFormFile photo = new Mock <IFormFile>().Object; var model = new HotelEditViewModel { Id = hotelId, Address = address, Description = description, Name = name, PhoneNumber = phoneNumber, Stars = stars, Photo = photo, SelectedOblastId = oblastId, }; string imageUrl = "testUrl"; string imagesDirectory = "wwwroot/images/hotels/"; string imagesFolderName = "hotels"; var mockedImagesUploader = new Mock <ImagesUploader>(null); mockedImagesUploader .Setup(x => x.Upload(photo, imagesDirectory, imagesFolderName)) .Returns(imageUrl); typeof(HotelsService) .GetFields(BindingFlags.NonPublic | BindingFlags.Instance) .First(x => x.FieldType == typeof(ImagesUploader)) .SetValue(this.hotelsService, mockedImagesUploader.Object); this.hotelsService.Update(model); Hotel result = this.dbContext.Hotels.First(); result.ShouldSatisfyAllConditions ( () => result.Address.ShouldBe(address), () => result.Description.ShouldBe(description), () => result.Name.ShouldBe(name), () => result.PhoneNumber.ShouldBe(phoneNumber), () => result.Stars.ShouldBe(stars), () => result.OblastId.ShouldBe(oblastId), () => result.ImageUrl.ShouldBe(imageUrl) ); }
public HotelEditViewModel EditHotel(HotelEditViewModel HotelEditView) { var Hotel = HotelService.Update(HotelEditView); return(Hotel); }
public void Remove(HotelEditViewModel Hotel) { HotelRepo.Remove(Hotel.toModel()); unitOfWork.commit(); }