public async Task <IActionResult> Details(int?id, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; if (!id.HasValue) { return(NotFound()); } var rental = await _context.Rentals .Include(r => r.RentalUser) .Include(e => e.RentalEquipment) .AsNoTracking() .FirstOrDefaultAsync(x => x.RentalID == id); if (rental == null) { return(NotFound()); } var model = new RentListModel { RentStartDate = rental.RentalStart.Date, RentEndDate = rental.RentalEnd.Date, RentedByUser = rental.RentalUser.Name + " " + rental.RentalUser.Surname, RentID = rental.RentalID, UserID = rental.RentalUserID, EquipmentName = rental.RentalEquipment.EquipmentName, EquipmentID = rental.RentalEquipmentID }; return(View(model)); }
public async Task <IActionResult> _ProlongRentalModal(RentListModel model, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; var elementToEdit = await _context.Rentals.FirstOrDefaultAsync(x => x.RentalID == model.ProlongModalData.RentID); elementToEdit.RentalEnd = elementToEdit.RentalEnd.AddMonths(model.ProlongModalData.MonthProlongation); _context.Entry(elementToEdit).State = EntityState.Modified; var result = await _context.SaveChangesAsync(); return(RedirectToAction("Index")); }
public async Task <IActionResult> _ConfirmDeleteModal(int id, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; var element = await _context.Rentals.FirstOrDefaultAsync(x => x.RentalID == id); var rent = new RentListModel { RentID = element.RentalID }; return(PartialView(rent)); }
public async Task <IActionResult> _ProlongRentalModal(int id, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; var elementToProlong = await _context.Rentals.FirstOrDefaultAsync(x => x.RentalID == id); var rent = new RentListModel { ProlongModalData = new ProlongationRentalModel { RentID = id, } }; return(PartialView(rent)); }
public async Task <IActionResult> _ConfirmDeleteModal(RentListModel model, string returnUrl = null) { ViewData["ReturnUrl"] = returnUrl; var elementToDelete = await _context.Rentals.FirstOrDefaultAsync(x => x.RentalID == model.RentID); _context.Rentals.Remove(elementToDelete); var result = await _context.SaveChangesAsync(); var equipmentToModify = await _context.Equipments.FirstOrDefaultAsync(x => x.RentID == model.RentID); equipmentToModify.RentID = null; _context.Entry(equipmentToModify).State = EntityState.Modified; result = await _context.SaveChangesAsync(); return(RedirectToAction("Index")); }