public async Task <IActionResult> Create([Bind("Id,Name,UserId,RouteNumber,Epj,FluidLeaks,Tires,Forks,HandGuards,SafetyWarnings,OperatorsManual,PowerCord,CapacityPlate,ServiceBreak,SteeringOperation,DrivingControl,HoistControl,Horn,LightsAlarms,HourMeter,BatteryIndicator,ManualForks,Wheels,Maneuverability,Handle,ManualFluidLeaks,ReleaseLever,CracksWear,HandTruckWheels,DockCracks,Bent,MissingHardware,Pins,LiftHandleDamage,Comments,Signature,Date")] OperatorEquipment operatorEquipment) { if (ModelState.IsValid) { //Grabbing logged in users id string userId = _userManager.GetUserId(HttpContext.User); ApplicationUser user = _context.Users.Where(a => a.Id == userId).FirstOrDefault(); //The most recent trip route number var mostRecentRouteNumber = _context.Trip.Where(t => t.UserId == userId).OrderByDescending(x => x.StartTime).FirstOrDefault(); if (mostRecentRouteNumber == null) { // user loaded page but doesn't have any trips in their history return(View()); } //Assigning the route number here from most recent trip operatorEquipment.RouteNumber = mostRecentRouteNumber.RouteNumber; //Assigning user ID to the logged in users ID operatorEquipment.UserId = user.Id; //Assigning the name of the logged in user operatorEquipment.Name = user.FirstName + " " + user.LastName; _context.Add(operatorEquipment); await _context.SaveChangesAsync(); return(Redirect("~/DotAudit/Create")); } return(View(operatorEquipment)); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Name,UserId,RouteNumber,Epj,FluidLeaks,Tires,Forks,HandGuards,SafetyWarnings,OperatorsManual,PowerCord,CapacityPlate,ServiceBreak,SteeringOperation,DrivingControl,HoistControl,Horn,LightsAlarms,HourMeter,BatteryIndicator,ManualForks,Wheels,Maneuverability,Handle,ManualFluidLeaks,ReleaseLever,CracksWear,HandTruckWheels,DockCracks,Bent,MissingHardware,Pins,LiftHandleDamage,Comments,Signature,Date")] OperatorEquipment operatorEquipment) { if (id != operatorEquipment.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(operatorEquipment); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!OperatorEquipmentExists(operatorEquipment.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(operatorEquipment)); }