예제 #1
0
        public async Task UpdateMusicAsync(int Id, MusicCUDTO musicDTO)
        {
            await CheckGenreAsync(musicDTO.Genre);

            var music = mapper.Map <Music>(musicDTO);

            music.Id      = Id;
            music.AlbumId = await CheckAlbumAsync(musicDTO.Album, musicDTO.Author);

            await unitOfWork.MusicRepository.Update(music);

            await AddMusicGenreRecordAsync(music.Id, musicDTO.Genre);
        }
예제 #2
0
        public async Task <ActionResult <MusicCUDTO> > Add([FromBody] MusicCUDTO musicDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            await musicService.AddMusicAsync(musicDto);

            musicDto = await musicService.GetMusicForUpdateAsync(musicDto.Name, musicDto.Author, musicDto.Year);

            return(CreatedAtAction(nameof(GetForUpdate), new { id = musicDto.Id }, musicDto));
        }
예제 #3
0
        public async Task AddMusicAsync(MusicCUDTO musicCreateDTO)
        {
            await CheckGenreAsync(musicCreateDTO.Genre);

            var music = mapper.Map <Music>(musicCreateDTO);

            music.AlbumId = await CheckAlbumAsync(musicCreateDTO.Album, musicCreateDTO.Author);

            await unitOfWork.MusicRepository.Add(music);

            music = await unitOfWork.MusicRepository.Get(music.Name, music.Author, music.Year);
            await AddMusicGenreRecordAsync(music.Id, musicCreateDTO.Genre);
        }
예제 #4
0
        public async Task <ActionResult <MusicCUDTO> > Update(int?Id, [FromBody] MusicCUDTO musicDto)
        {
            if (Id == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (!await musicService.IsAnyMusicDefinedAsync(musicDto.Id))
            {
                return(NotFound());
            }

            await musicService.UpdateMusicAsync(Id.Value, musicDto);

            return(Ok(musicDto));
        }