Ejemplo n.º 1
0
        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");
        }
Ejemplo n.º 2
0
        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");
        }