public async Task <ActionResult <VehicleToReturnDto> > CreateVehicle(VehicleCreateDto vehicleToCreate) { var validator = new VehicleValidator(); var res = validator.Validate(vehicleToCreate); if (res.IsValid) { var vehicle = _mapper.Map <VehicleCreateDto, Vehicle>(vehicleToCreate); _unitOfWork.Repository <Vehicle>().Add(vehicle); var result = await _unitOfWork.Complete(); if (result <= 0) { return(BadRequest(new ApiResponse(400, "Problem creating vehicle"))); } vehicle.AddFuelType(vehicleToCreate.FuelTypeId, vehicle.Id); _unitOfWork.Repository <Vehicle>().Update(vehicle); var result2 = await _unitOfWork.Complete(); if (result2 <= 0) { return(BadRequest(new ApiResponse(400, "Problem adding fuel type"))); } return(_mapper.Map <Vehicle, VehicleToReturnDto>(vehicle)); } else { return(BadRequest(res.Errors)); } }
public IActionResult Post([FromBody] VehicleCreateDto model) { var vehicle = _mapper.Map <Vehicle>(model); vehicle.AccountId = _userService.CurrentUserId; _db.Add(vehicle); _db.SaveChanges(); return(Created("", model)); }
public int CreateVehicle(VehicleCreateDto vehicle) { int result = 0; try { result = _iVehicleInMemoryService.CreateVehicle(vehicle); } catch (Exception) { result = -1; } return(result); }
public async Task <ActionResult <VehicleToReturnDto> > UpdateVehicle(int id, VehicleCreateDto vehicleToUpdate) { var vehicle = await _unitOfWork.Repository <Vehicle>().GetByIdAsync(id); _mapper.Map(vehicleToUpdate, vehicle); _unitOfWork.Repository <Vehicle>().Update(vehicle); var result = await _unitOfWork.Complete(); if (result <= 0) { return(BadRequest(new ApiResponse(400, "Problem updating vehicle"))); } return(_mapper.Map <Vehicle, VehicleToReturnDto>(vehicle)); }
public void CreateVehicle_WhenValidVehicle() { // Arrange var vehicle = new VehicleCreateDto { Year = 2015, Make = "Honda", Model = "Accord" }; mockRepository.Setup(x => x.CreateVehicle(It.IsAny <VehicleCreateDto>())) .Returns(1); //Act var result = _vehicleController.CreateVehicle(vehicle); var contentResult = (result as OkNegotiatedContentResult <string>)?.Content; //Assert Assert.AreEqual("Vehicle details added successfully", contentResult); }
public ActionResult <VehicleModel> AddVehicleToRace(int raceId, VehicleCreateDto vehicle) { VehicleSubtypeModel subtypeModel = _dakarRepo.GetVehicleSubtype(vehicle.VehicleType, vehicle.VehicleSubtype); if (subtypeModel == null) { return(BadRequest("Invalid vehicle type and/or subtype.")); } VehicleModel vehicleToCreate = _mapper.Map <VehicleModel>(vehicle); vehicleToCreate.VehicleSubtype = subtypeModel; if (_dakarRepo.AddVehicleToRace(raceId, vehicleToCreate, out string status)) { _dakarRepo.SaveChanges(); return(Ok(vehicleToCreate)); } return(BadRequest(status)); }
public int CreateVehicle(VehicleCreateDto vehicle) { int result = 0; try { var lstVehicles = GetCacheData(); if (lstVehicles == null) { lstVehicles = new List <VehicleDto>(); } int id = lstVehicles.Count() + 1; VehicleDto vehicleDto = null; if (vehicle != null) { vehicleDto = new VehicleDto { Id = id, Make = vehicle.Make, Model = vehicle.Model, Year = vehicle.Year }; } lstVehicles.Add(vehicleDto ?? new VehicleDto()); AddCacheData(lstVehicles); result = 1; } catch (Exception) { result = -1; throw; } return(result); }
public IHttpActionResult CreateVehicle(VehicleCreateDto vehicle) { if (!ModelState.IsValid) { return(BadRequest("Year, Make and Model are required. Year must be in between 1950 and 2050.")); } var result = _iVehicleService.CreateVehicle(vehicle); switch (result) { case -1: return(Ok("System temporarily disconnected. Please try again")); case 0: return(Ok("Vehicle couldn't be added. Please try again")); case 1: return(Ok("Vehicle details added successfully")); default: break; } return(Ok(result)); }