Example #1
0
        public async Task <IActionResult> AddBike(BikeForUpdateDto bikeToAdd)
        {
            if (bikeToAdd.Name != null)
            {
                bikeToAdd.Name = bikeToAdd.Name.ToLower();
            }

            if (await _bikeRepo.BikeExists(bikeToAdd.Name))
            {
                return(BadRequest("A bike with that name already exists"));
            }

            var bikeToCreate = _mapper.Map <Bike>(bikeToAdd);

            bikeToCreate.DateAdded = DateTime.Now;

            _bikeRepo.Add(bikeToCreate);

            if (!await _bikeRepo.SaveAll())
            {
                return(BadRequest("That didn't work"));
            }

            if (_bikeRepo.GetBike(bikeToCreate.Id) == null)
            {
                return(BadRequest("That didn't work"));
            }

            return(StatusCode(201));
        }