public ActionResult Create(DestinationViewModel newDestination) { if (!this.ModelState.IsValid) { return(this.View(newDestination)); } var destinationToAdd = this.MappingService.Map <DestinationViewModel, Destination>(newDestination); if (newDestination.Image != null) { if (!this.ImageService.IsImageFile(newDestination.Image)) { ModelState.AddModelError("Image", "The uploaded file is not an image!"); } var path = this.ImageService.MapPath(destinationToAdd.ImagePath); newDestination.Image.SaveAs(path); } if (newDestination.ImageUrl == null && newDestination.Image == null) { destinationToAdd.ImageUrl = ControllersConstants.defaultImageUrl; } this.destinationService.AddDestination(destinationToAdd); return(Redirect("/Admin/Administration")); }
public ActionResult LoadDetails(int id) { var model = new DestinationViewModel(); model = _destinationService.GetAll().Where(x => x.ID == id).FirstOrDefault(); return(Json(model, JsonRequestBehavior.AllowGet)); }
//GET user/Edit/5 public ActionResult Edit(int?destId) { try { if (destId == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } DestinationViewModel destViewModel = new DestinationViewModel(); var dest = destViewModel.FindDestination(destId); TempData["daID"] = dest.DAID; if (dest.destID == 0) { return(HttpNotFound()); } return(View(dest)); } catch (Exception ex) { errorlogviewmodel = new ErrorLogViewModel(); errorlogviewmodel.LogError(ex); return(View("Error")); } }
public async Task <IActionResult> Edit(int id, DestinationViewModel destinationViewModel) { if (id != destinationViewModel.Id) { return(this.NotFound()); } if (!this.ModelState.IsValid) { return(this.View(destinationViewModel)); } try { await this.destinationsService.EditAsync(id, destinationViewModel); } catch (DbUpdateConcurrencyException) { if (!this.DestinationExists(destinationViewModel.Id)) { return(this.NotFound()); } else { throw; } } return(this.RedirectToAction(nameof(this.Index))); }
public ActionResult Update(DestinationViewModel model) { //update data string msg = _destinationService.Update(model); return(Json(new { Message = msg }, JsonRequestBehavior.AllowGet)); }
private async Task <DestinationViewModel> GetDestinationsBySearch(DestinationViewModel viewModel, string searchString) { if (Enum.TryParse(searchString, out DestinationKeyword keyword)) { List <int> destinationIds = await _context.Keyword.Where(i => i.KeywordEnum == keyword).Select(i => i.DestinationId).ToListAsync(); List <Destination> destinations = new List <Destination>(); viewModel.PageViewModel.TotalCount = destinationIds.Count(); foreach (int id in destinationIds) { destinations.Add(await _context.Destination.Where(s => s.Id == id).FirstAsync()); } foreach (Destination destination in destinations.Skip(((viewModel.PageViewModel.PageNumber) - 1) * viewModel.PageViewModel.PageSize).Take(viewModel.PageViewModel.PageSize)) { await GetImagePaths(destination); viewModel.Destinations.Add(destination); } } else { List <Destination> destinationList = await _context.Destination.Where(s => s.Name.Contains(searchString) || s.City.Contains(searchString) || s.State.Contains(searchString)).ToListAsync(); viewModel.PageViewModel.TotalCount = destinationList.Count(); foreach (Destination destination in destinationList.Skip(((viewModel.PageViewModel.PageNumber) - 1) * viewModel.PageViewModel.PageSize).Take(viewModel.PageViewModel.PageSize)) { await GetImagePaths(destination); viewModel.Destinations.Add(destination); } } return(viewModel); }
public async Task <Destination> Do(DestinationViewModel destination) { try { var state = _context.States.Where(stateSr => stateSr.Name == "Active").FirstOrDefault(); var destinationSave = new Destination() { UserId = destination.UserId, TypeId = destination.TypeId, SourceCoordinates = destination.SourceCoordinates, SourceName = destination.SourceName, DestinationCoordinates = destination.DestinationCoordinates, DestinationName = destination.DestinationName, StateId = state.Id }; _context.Destinations.Add(destinationSave); await _context.SaveChangesAsync(); _context.Orders.Add(new Order() { DestinationId = destinationSave.Id, StateId = state.Id }); await _context.SaveChangesAsync(); return(destinationSave); } catch (Exception) { return(null); } }
public IActionResult Filter(DestinationViewModel src) { DestinationViewModel result = new DestinationViewModel(); IEnumerable <Country> list = _countryRepository.FindAll(); // If there is any filter data, we add filters to our list using the Where statement (just like SQL) if (src.FilterData != null) { if (!string.IsNullOrWhiteSpace(src.FilterData.EnglishName)) { // Where contains a Lambda expression. this expression returns True if the English Name contains the filter data // false if it doesn't. list = list.Where(c => c.EnglishName.Contains(src.FilterData.EnglishName, StringComparison.OrdinalIgnoreCase)); } if (!(src.FilterData.Currency == null) && !string.IsNullOrWhiteSpace(src.FilterData.Currency.Symbol)) { // if currency is set as well, we at a where clause to our query checking if the country has a currency with a matching symbol list = list.Where(c => c.Currency != null && !string.IsNullOrWhiteSpace(c.Currency.Symbol) && c.Currency.Symbol.Contains(src.FilterData.Currency.Symbol, StringComparison.OrdinalIgnoreCase)); } if (!(src.FilterData.Region == null)) { // if region is filled, we add a where that only selects countries for that region list = list.Where(c => c.Region.Equals(src.FilterData.Region)); } } // with all filters complete, we execute the query by call the ToList method. // the filtered data should be ordered: // first by subregion // then by country name result.Countries = list.ToList(); PrepViewBag(); return(View("AllDestinations", result)); }
public ActionResult Index(int?id) { try { if (id == null) { id = (int)TempData["daID"]; } DestinationViewModel destViewModel = new DestinationViewModel(); destViewModel.GetDestinationDetails((int)id); destViewModel.GetScreenAccessRights("Destination Details"); CommonFunctions comfuns = new CommonFunctions(); var da = comfuns.FindDA((int)id); destViewModel.DAID = (int)id; destViewModel.DAName = da.DAName; destViewModel.ModuleId = da.ModuleId; TempData["daId"] = destViewModel.DAID; return(View(destViewModel)); } catch (Exception ex) { errorlogviewmodel = new ErrorLogViewModel(); errorlogviewmodel.LogError(ex); return(View("Error")); } }
public async Task <bool> Do(DestinationViewModel destination) { try { var state = _context.States .Where(stateSr => stateSr.Name == "Awaiting Departure").FirstOrDefault(); var destinationSave = new Destination() { UserId = destination.UserId, TypeId = destination.TypeId, SourceCoordinates = destination.SourceCoordinates, SourceName = destination.SourceName, DestinationCoordinates = destination.DestinationCoordinates, DestinationName = destination.DestinationName, VehicleId = destination.VehicleId, StateId = state.Id }; _context.Destinations.Add(destinationSave); await _context.SaveChangesAsync(); } catch (Exception) { return(false); } return(true); }
public ActionResult Edit(DestinationViewModel destViewModel) { try { if (ModelState.IsValid) { bool isduplicate = false; destViewModel.destDesc = destViewModel.destDesc.Trim(); isduplicate = destViewModel.CheckDuplicate(destViewModel); if (isduplicate) { ModelState.AddModelError("destDesc", "Destination already exists"); return(View("Edit", destViewModel)); } destViewModel.UpdateDestination(destViewModel); return(RedirectToAction("Index", "Destination")); } return(View()); } catch (Exception ex) { errorlogviewmodel = new ErrorLogViewModel(); errorlogviewmodel.LogError(ex); return(View("Error")); } }
// GET: Destinations/Edit/5 public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } var destination = await _repository.GetDestinationWithUserCityAndCoutryAsync(id.Value); if (destination == null) { return(NotFound()); } DestinationViewModel model = new DestinationViewModel() { Id = destination.Id, Airport = destination.Airport, IATA = destination.IATA, UserId = destination.User.Id, City = destination.City.Name, Country = destination.Country.Name, Countries = _countryRepository.GetComboCountries(), Cities = _countryRepository.GetComboCities(0) }; return(View(model)); }
public async Task <IActionResult> Edit(string id) { try { if (string.IsNullOrWhiteSpace(id)) { return(NotFound()); } Destination destination = await destinationDAL.FindDestinationByIdAsync(id); if (destination == null) { return(NotFound()); } DestinationViewModel model = new DestinationViewModel { Id = destination.Id, Name = destination.Name, Image = destination.Image, Description = destination.Description ?? "", Country = destination.Country, IsActive = destination.IsActive }; return(View(model)); } catch (Exception ex) { logger.Error(ex.Message); throw; } }
// GET: Destinations/Create public IActionResult Create() { var model = new DestinationViewModel(); GetCombos(model); return(View(model)); }
public IActionResult JustAfrica() { DestinationViewModel destinations = new DestinationViewModel(); destinations.Countries = _countryRepository.FindByRegion("Africa"); ViewBag.FilterName = "African"; return(View("FilteredDestinations", destinations)); }
public IActionResult EnglishSpeaking() { DestinationViewModel destinations = new DestinationViewModel(); destinations.Countries = _countryRepository.FindByLanguage("English"); ViewBag.FilterName = "English speaking"; return(View("FilteredDestinations", destinations)); }
public IActionResult EuroArea() { DestinationViewModel destinations = new DestinationViewModel(); destinations.Countries = _countryRepository.FindByCurrency("€"); ViewBag.FilterName = "Euro area"; return(View("FilteredDestinations", destinations)); }
public string Update(DestinationViewModel model) { string msg = string.Empty; try { Data.Entities.Destination destination = _context.AsQueryable <Data.Entities.Destination>().Where(x => x.ID == model.ID).FirstOrDefault(); bool isExists = false; #region Check if new name changed if (destination.Name.Trim().ToUpper() != model.Name.Trim().ToUpper()) { int ctr = _context.AsQueryable <Data.Entities.Destination>().Where(x => x.Name.Trim() == model.Name.Trim()).Count(); if (ctr > 0) { isExists = true; } } #endregion if (isExists) { msg = "Destination already exists."; } else { if (!string.IsNullOrEmpty(model.Name)) { destination.Name = model.Name; } if (!string.IsNullOrEmpty(model.Description)) { destination.Description = model.Description; } destination.DateModified = DateTime.Now; if (destination != null) { _context.Update <Data.Entities.Destination>(destination); _context.SaveChanges(); } msg = "Destination updated."; } } catch (Exception ex) { msg = "Unexpected error encountered. Please contact your system administrator."; LogsViewModel error = new LogsViewModel() { ActionType = ActionType.Error.ToString(), Description = ex.Message + "\n" + ex.StackTrace, ModifiedBy = "Destination Service Error : Update()", DateModified = DateTime.Now.ToString("MM/dd/yyyy HH:mm") }; new LogsService().Create(error); } return(msg); }
public IActionResult Add() { DestinationViewModel model = new DestinationViewModel { Image = "https://ztourist.blob.core.windows.net/others/destination.jpg" }; return(View(model)); }
public IActionResult Index() { DestinationViewModel result = new DestinationViewModel(); // The find all method returns a list of all destinations result.Countries = _countryRepository.FindAll().ToList(); PrepViewBag(); return(View("AllDestinations", result)); }
public IActionResult Sort(string id) { DestinationViewModel result = new DestinationViewModel(); // FindAll returns all destinations, we order those by the EnglishName and return the result result.Countries = _countryRepository.FindAll().OrderBy(p => p.EnglishName).ToList(); result.SortedBy = id; PrepViewBag(); return(View("AllDestinations", result)); }
/// <summary> /// convert destination view model to domain /// </summary> /// <param name="model"></param> /// <returns></returns> public Destination ConvertToDomain(DestinationViewModel model) { Destination destination = new Destination(); destination.DestinationId = model.DestinationId; destination.Description = model.DestinationDescription; destination.IsActive = model.IsActive; return(destination); }
/// <summary> /// convert destination to view model /// </summary> /// <param name="destination"></param> /// <returns></returns> public DestinationViewModel ConvertToView(Destination destination) { DestinationViewModel model = new DestinationViewModel(); model.DestinationId = destination.DestinationId; model.DestinationDescription = (!string.IsNullOrEmpty(destination.Description)) ? destination.Description : "N/A"; model.IsActive = destination.IsActive; return(model); }
public JsonResult GetFilteredDestinations(string term) { List <Destination> destinations = new List <Destination>(); DestinationViewModel viewModel = new DestinationViewModel(); List <string> DestinationNames; DestinationNames = viewModel.RetrieveDesiredDestinations(term).Select(d => d.DestinationName).ToList(); return(Json(DestinationNames, JsonRequestBehavior.AllowGet)); }
private void ButtonConfirm_OnClick(object sender, RoutedEventArgs e) { if (TypeComboBox.SelectedItem is not ValueDescription destinationType) return; var viewModel = DestinationViewModel.Create((DestinationType)destinationType.Value); _viewModel.Destinations.Add(viewModel); ElementsDataGrid.SelectedItem = viewModel; ButtonsPanel.Visibility = Visibility.Visible; AddConfirmationPanel.Visibility = Visibility.Hidden; }
public async Task <IActionResult> Add(DestinationViewModel model) { try { if (ModelState.IsValid) { if (await destinationDAL.IsExistedDestinationIdAsync(model.Id)) { ModelState.AddModelError("", $"Destination ID '{model.Id.ToUpper()}' is existed"); } if (!ModelState.IsValid) { return(View("Add", model)); } Destination destination = new Destination { Id = model.Id.ToUpper(), Name = model.Name, Description = model.Description ?? "", Country = model.Country, IsActive = model.IsActive }; string img = model.Image ?? "https://ztourist.blob.core.windows.net/others/destination.jpg"; if (model.Photo != null && !string.IsNullOrWhiteSpace(model.Photo?.FileName)) // if photo is chosen then copy { string filePath = model.Id + "." + model.Photo.FileName.Substring(model.Photo.FileName.LastIndexOf(".") + 1); img = await blobService.UploadFile("destinations", filePath, model.Photo); } if (img != null) { destination.Image = img; if (await destinationDAL.AddDestinationAsync(destination)) { return(RedirectToAction(nameof(Details), new { model.Id })); } else { ModelState.AddModelError("", "Add destination failed"); } } else { ModelState.AddModelError("", "Can't upload image"); } } return(View("Add", model)); } catch (Exception ex) { logger.Error(ex.Message); throw; } }
private async Task <DestinationViewModel> GetDestinationsDefault(DestinationViewModel viewModel) { viewModel.PageViewModel.TotalCount = await _context.Destination.CountAsync(); foreach (Destination destination in await _context.Destination.Skip(((viewModel.PageViewModel.PageNumber) - 1) * viewModel.PageViewModel.PageSize).Take(viewModel.PageViewModel.PageSize).ToListAsync()) { await GetImagePaths(destination); viewModel.Destinations.Add(destination); } return(viewModel); }
public async Task EditAsync(int id, DestinationViewModel input) { var destination = this.destinationsRepository.All().FirstOrDefault(x => x.Id == id); destination.Continent = input.Continent; destination.Country = input.Country; destination.Town = input.Town; destination.IsDeleted = input.IsDeleted; this.destinationsRepository.Update(destination); await this.destinationsRepository.SaveChangesAsync(); }
public async Task <IActionResult> Create(DestinationViewModel model) { if (ModelState.IsValid) { City city = await _countryRepository.GetCityAsync(model.CityId); Country country = _countryRepository.GetCountryAsync(city); User user = await _userHelper.GetUserByEmailAsync(User.Identity.Name); Destination destination = new Destination() { Airport = model.Airport, IATA = model.IATA, City = city, Country = country, User = user, }; try { await _repository.CreateAsync(destination); // Ao usar o create grava logo return(RedirectToAction(nameof(Index))); //Redirecionamento para a página // nameof(Index) é o mesmo que colocar ("Index") } catch (Exception ex) { if (ex.InnerException.Message.Contains("duplicate")) { model.CityId = 0; model.CountryId = 0; model.Cities = _countryRepository.GetComboCities(0); model.Countries = _countryRepository.GetComboCountries(); ModelState.AddModelError(string.Empty, "Already exists a destination with that IATA"); return(View(model)); } else { ModelState.AddModelError(string.Empty, ex.InnerException.Message); model.Cities = _countryRepository.GetComboCities(0); model.Countries = _countryRepository.GetComboCountries(); return(View(model)); } } } return(View(model)); }
public async Task <DestinationViewModel> GetDestinations(int?pageNumber, string searchString, bool isMapView) { DestinationViewModel viewModel = new DestinationViewModel(); viewModel.PageViewModel.PageNumber = pageNumber ?? 1; viewModel.PageViewModel.IsMapView = isMapView; if (string.IsNullOrEmpty(searchString)) { return(await GetDestinationsDefault(viewModel)); } else { return(await GetDestinationsBySearch(viewModel, searchString)); } }