public ActionResult Update([DataSourceRequest] DataSourceRequest request, VmTruck truck) { var isEditable = CurrentUser.UserLevel == 3; if (!isEditable) { ModelState.AddModelError("Update", "Current user does not have permission to update trucks."); } if (ModelState.IsValid) { var dbTruck = Db.Trucks.Find(truck.TruckId); if (dbTruck != null) { dbTruck.IsActive = truck.IsActive; dbTruck.TruckDescription = truck.TruckDescription; dbTruck.NextInspectionDate = truck.NextInspectionDate; dbTruck.NextMaintenanceDate = truck.NextMaintenanceDate; try { Db.SaveChanges(); } catch (Exception e) { ModelState.AddModelError("Update truck", ServerError.GetErrorFromException(e).ExceptionMsg); } } } return(Json(new[] { truck }.ToDataSourceResult(request, ModelState))); }
public ActionResult Create([DataSourceRequest] DataSourceRequest request, VmTruck truck) { var isEditable = CurrentUser.IsAdmin; if (!isEditable) { ModelState.AddModelError("Create", "Current user does not have permission to create a truck."); } if (ModelState.IsValid) { try { var newDbTruck = new Truck() { NextInspectionDate = truck.NextInspectionDate, NextMaintenanceDate = truck.NextMaintenanceDate, TruckDescription = truck.TruckDescription, IsActive = true, }; Db.Trucks.Add(newDbTruck); Db.SaveChanges(); truck.TruckId = newDbTruck.TruckId; } catch (Exception e) { ModelState.AddModelError("Create Truck", ServerError.GetErrorFromException(e).ExceptionMsg); } } return(Json(new[] { truck }.ToDataSourceResult(request, ModelState))); }