public async Task <ActionResult> CreateWaitlist([FromBody] WaitlistForCreationDto waitlistForCreationDto) { if (ModelState.IsValid) { var waitlistToCreate = _mapper.Map <Waitlist>(waitlistForCreationDto); _unitOfWork.WaitlistRepository.Add(waitlistToCreate); if (await _unitOfWork.WaitlistRepository.SaveChangesAsync()) { var waitlistToReturn = _mapper.Map <WaitlistForReturnDto>(waitlistToCreate); return(CreatedAtRoute("GetWaitlist", new { controller = "Waitlists", id = waitlistToCreate.WaitlistId }, waitlistToReturn)); } else { return(BadRequest("Failed to save changes to the database.")); } } return(BadRequest(ModelState)); /*if (await _repo.SaveAll()) { * var customerToRetun = _mapper.Map<CustomerForReturnDto>(customer); * return CreatedAtAction(nameof(GetCustomer), new { id = customer.CustomerId }, customerToRetun); * }*/ }
public IActionResult JoinWaitlist([FromBody] WaitlistForCreationDto w) { var library = _dbContext.Libraries.FirstOrDefault(l => l.Id == w.LibraryId); var user = _dbContext.Users.FirstOrDefault(u => u.Id == w.UserId); //change later to get from token (?) if (library == null || user == null) { return(NotFound()); } var waitlist = new Waitlist { Library = library, User = user, RequestedOn = DateTime.Now, IsActive = true }; _dbContext.Add(waitlist); _dbContext.SaveChanges(); return(Ok()); }