public async Task <IActionResult> UpdateMenu(int id, MenuForSaveDto menuForSaveDto) { if (menuForSaveDto == null) { return(BadRequest()); } var menuFromRepo = await _repo.GetMenu(id); if (menuFromRepo == null) { return(NotFound($"Could not find menu with an ID of {id}")); } menuFromRepo.MenuExtras = null; _mapper.Map <MenuForSaveDto, Menu>(menuForSaveDto, menuFromRepo); if (await _unitOfWork.CompleteAsync()) { return(NoContent()); } throw new Exception($"Updating menu {id} failed on save"); }
public async Task <IActionResult> CreateMenu(int hotelId, MenuForSaveDto menuForSaveDto) { if (menuForSaveDto == null) { return(BadRequest()); } var menuEntity = _mapper.Map <Menu>(menuForSaveDto); menuEntity.HotelId = hotelId; _repo.Add(menuEntity); if (await _unitOfWork.CompleteAsync()) { var menu = await _repo.GetMenu(menuEntity.Id); var menuToReturn = _mapper.Map <MenuForUpdateDto>(menu); return(CreatedAtRoute("GetMenu", new { id = menuEntity.Id }, menuToReturn)); } throw new Exception("Creating the menu failed on save"); }