示例#1
0
        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)));
        }
示例#2
0
        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)));
        }