public EditAssignVehicleViewModel(VehicleContract vehicleContract) { this.ContractorID = vehicleContract.Contract.ContractorID; this.VehicleContractID = vehicleContract.VehicleContractID; this.VehicleID = vehicleContract.VehicleID; this.ContractID = vehicleContract.ContractID; }
public VehicleContractViewModel(VehicleContract vehicleContract) { this.VehicleContractID = vehicleContract.VehicleContractID; this.VehicleID = vehicleContract.VehicleID; this.ContractID = vehicleContract.ContractID; this.IdentificationNumber = vehicleContract.Vehicle.IdentificationNumber; this.Description = vehicleContract.Vehicle.Description; this.ContractCode = vehicleContract.Contract.ContractCode; }
public VehicleContract GetContract() { var contract = new VehicleContract() { VehicleContractID = this.VehicleContractID, VehicleID = this.VehicleID, ContractID = this.ContractID }; return(contract); }
public static Vehicle ToModel(this VehicleContract vehicleContract) { return((vehicleContract == null) ? null : new Vehicle { ID = vehicleContract.ID, Model = vehicleContract.Model, Year = (short)vehicleContract.Year, Description = vehicleContract.Description }); }
public async Task <ActionResult> VehiclesToUnassign(int vehicleID, int contractID) { VehicleContract vehicleContract = await vehicleRepository.GetVehicleContract(vehicleID, contractID); if (vehicleContract == null) { return(HttpNotFound()); } var model = new VehicleContractViewModel(vehicleContract); return(View(model)); }
public async Task <Result> UpdateVehicleAsync(VehicleContract vehicleContract) { return(await ExecDBAsync( async db => { var vehicle = vehicleContract.ToModel(); var(valid, error) = vehicle.Validate(); if (valid) { db.Vehicles.Attach(vehicle) .Log(Log, result => (LogLevel.Info, $"Saving {result.ToContract()}.")); (await db.SaveChangesAsync()).Log(Log, rows => (LogLevel.Debug, $"Rows affected: {rows}")); return Result.Succeeded(); } Log.LogError($"Failed validation: {error}."); return Result.Failed(error); } )); }
public async Task <ActionResult> VehiclesToAssign(EditAssignVehicleViewModel model) { if (ModelState.IsValid) { VehicleContract contract = (VehicleContract)model.GetContract(); try { await vehicleRepository.CreateContractAsync(contract); return(RedirectToAction("AssignedVehicles", "Contractors", new { contractID = model.ContractID })); } catch (Exception e) { var errors = string.Join(",", e.Message); ModelState.AddModelError(string.Empty, errors); } } ViewBag.VehicleID = new SelectList(vehicleRepository.UnAssignedVehicles(model.ContractID, base.CurrentContractorID), "VehicleID", "IdentificationNumber"); // If we got this far, something failed, redisplay form return(View(model)); }
public async Task <VehicleResult> AddVehicleAsync(VehicleContract vehicleContract) { return(await ExecDBAsync( async db => { var vehicle = vehicleContract.ToModel(); var(valid, error) = vehicle.Validate(); if (valid) { vehicleContract = db.Vehicles.Add(vehicle) .ToContract() .Log(Log, result => (LogLevel.Info, $"Adding with new ID {result.ID}: {result}.")); (await db.SaveChangesAsync()).Log(Log, rows => (LogLevel.Debug, $"Rows affected: {rows}")); return VehicleResult.Succeeded(vehicleContract); } Log.LogError($"Failed validation: {error}."); return VehicleResult.Failed(error); } )); }