public ActionResult EditView(int id) { var dbContext = new ApplicationDbContext(); var user = dbContext.Users.FirstOrDefault(u => u.UserName == User.Identity.Name); var airline = dbContext.AirlineDbModels.FirstOrDefault(a => a.Id == id && a.UserId == user.Id); if (airline != null) { var anyCertificates = dbContext.AirlineCertificatesDbModels.Any(c => c.Airline.Id == airline.Id); var view = new AirlineViewModel() { Id = airline.Id, Name = airline.Name, Description = airline.Description, Country = airline.Country, Score = airline.Score, LogoPath = airline.Logo, RequireCertificates = anyCertificates }; return(PartialView("Edit", view)); } else { TempData["Message"] = "You must be the owner of the airline to edit."; return(null); } }
public async Task <ActionResult <AirlineViewModel> > Post(AirlineViewModel airline) { var response = await _airlineService.Create(airline.ToModel()); if (response != BusinessLogic.Enums.StatusCode.Created) { _logger.LogError($"Airline {airline.Name} not Created."); } return(response == BusinessLogic.Enums.StatusCode.Created ? (ActionResult <AirlineViewModel>)Ok() : Conflict()); }
public ActionResult Create(AirlineViewModel airline) { if (ModelState.IsValid) { airlineManager.AddAirline(airline.AirlineName); //unitOfWork.AirlineRepository.AddAirline(airline.AirlineName); //unitOfWork.Save(); TempData["Message"] = this.airlineManager.Message; return(RedirectToAction("Create", "Airline")); } return(View(airline)); }
public ActionResult AddView() { var dbContext = new ApplicationDbContext(); var user = dbContext.Users.FirstOrDefault(u => u.UserName == User.Identity.Name); var statistics = dbContext.StatisticsDbModels.FirstOrDefault(s => s.User.Id == user.Id); if (statistics != null && statistics.BankBalance >= airlinePrice) { var airlineModel = new AirlineViewModel(); return(PartialView("Add", airlineModel)); } else { TempData["Message"] = "You don't have enough bank balance to buy new airline."; return(null); } }
// GET: AirLines public ActionResult Index() { List <AirLine> airLines = db.AirLines.Include(p => p.Routes).Where(p => p.IsActive == true).ToList(); List <AirlineViewModel> airlineViewModels = new List <AirlineViewModel>(); foreach (var airline in airLines) { AirlineViewModel model = new AirlineViewModel() { Name = airline.Name, Country = airline.Country, LinkToPage = airline.LinkToPage, Routes = airline.Routes, PublicId = airline.PublicId }; airlineViewModels.Add(model); } return(View(airlineViewModels)); }
// GET: AirLines/Details/5 public ActionResult Details(Guid id) { if (id == Guid.Empty) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AirLine airLine = db.AirLines.FirstOrDefault(p => p.PublicId == id); if (airLine == null) { return(HttpNotFound()); } AirlineViewModel model = new AirlineViewModel() { Name = airLine.Name, Country = airLine.Country, LinkToPage = airLine.LinkToPage, PublicId = airLine.PublicId, Routes = airLine.Routes }; return(View(model)); }
public IEnumerable <AirlineViewModel> Retreive() { using (var context = new ABS()) { List <Airline> airlines = new List <Airline>(); airlines = context.Airlines.ToList(); if (airlines == null) { return(null); } List <AirlineViewModel> airlinesDisplay = new List <AirlineViewModel>(); foreach (var airline in airlines) { AirlineViewModel airlineDisplay = new AirlineViewModel() { AirlineId = airline.AirlineId, Name = airline.Name }; airlinesDisplay.Add(airlineDisplay); } return(airlinesDisplay); } }
public static Airline ToModel(this AirlineViewModel model) => Mapper.Map <Airline>(model);
public ActionResult Update(AirlineViewModel model) { var dbContext = new ApplicationDbContext(); // Check GUEST var user = dbContext.Users.FirstOrDefault(u => u.UserName == User.Identity.Name); if (user != null && user.Email == AccountController.GuestEmail) { TempData["GuestMessage"] = AccountController.GuestMessage; return(RedirectToAction("Register", "Account")); } var airline = dbContext.AirlineDbModels.FirstOrDefault(a => a.Id == model.Id && a.UserId == user.Id); if (airline != null) { var certsAirline = dbContext.AirlineCertificatesDbModels.Include("Certificate").Where(c => c.Airline.Id == airline.Id).ToList(); if (!model.RequireCertificates) { dbContext.AirlineCertificatesDbModels.RemoveRange(certsAirline); } else { foreach (var cert in dbContext.CertificateDbModels) { if (!certsAirline.Any(x => x.Certificate.Id == cert.Id)) { var airlineCertificates = new AirlineCertificatesDbModel() { Certificate = cert, Airline = airline }; dbContext.AirlineCertificatesDbModels.Add(airlineCertificates); } } } airline.Name = model.Name; airline.Description = model.Description; airline.Country = model.Country; airline.Score = model.Score; if (model.FilesInput != null && model.FilesInput.Any()) { var file = model.FilesInput.FirstOrDefault(); if (file != null) { var filePath = Upload(file); airline.Logo = filePath; } } dbContext.SaveChanges(); TempData["Message"] = "You update the airline. Now you can invite pilots to work with you."; Session["HeaderStatistics"] = null; } else { TempData["Message"] = "You must be the owner of the airline to edit."; } return(RedirectToAction("Index")); }
public ActionResult Add(AirlineViewModel model) { var dbContext = new ApplicationDbContext(); // Check GUEST var user = dbContext.Users.FirstOrDefault(u => u.UserName == User.Identity.Name); if (user != null && user.Email == AccountController.GuestEmail) { TempData["GuestMessage"] = AccountController.GuestMessage; return(RedirectToAction("Register", "Account")); } var statistics = dbContext.StatisticsDbModels.FirstOrDefault(s => s.User.Id == user.Id); if (statistics != null && statistics.BankBalance >= airlinePrice) { var dbModel = new AirlineDbModel() { Name = model.Name, Description = model.Description, Country = model.Country, Salary = 20, Score = model.Score, UserId = user.Id, DebtMaturityDate = DateTime.Now }; if (model.FilesInput != null && model.FilesInput.Any()) { var file = model.FilesInput.FirstOrDefault(); string filePath = @"/Content/img/logo/LogoDefault.png";//Upload(file); dbModel.Logo = filePath; } dbContext.AirlineDbModels.Add(dbModel); statistics.BankBalance = statistics.BankBalance - airlinePrice; statistics.Airline = dbModel; if (model.RequireCertificates) { foreach (var cert in dbContext.CertificateDbModels) { var airlineCertificates = new AirlineCertificatesDbModel() { Certificate = cert, Airline = dbModel }; dbContext.AirlineCertificatesDbModels.Add(airlineCertificates); } } dbContext.SaveChanges(); TempData["Message"] = "Congratulation you created a new airline. Now you can invite pilots to work with you."; Session["HeaderStatistics"] = null; } else { TempData["Message"] = "You don't have enough bank balance to buy new airline."; } return(RedirectToAction("Index")); }
public Airlines() { InitializeComponent(); DataContext = new AirlineViewModel(); }