Пример #1
0
        private Album ChangeForUpdate(Album album, UpdateAlbumInput input)
        {
            album.Name = input.Name;

            if (input.MyCoverImage?.Length > 0)
            {
                if (album.CoverImage != null)
                {
                    DeleteFile(album.CoverImage);
                }

                album.CoverImage = input.MyCoverImage.FileName;
            }


            if (input.MyQuality128?.Length > 0)
            {
                if (album.Quality128 != null)
                {
                    DeleteFile(album.Quality128);
                }

                album.Quality128 = input.MyQuality128.FileName;
            }

            if (input.MyQuality320?.Length > 0)
            {
                if (album.Quality320 != null)
                {
                    DeleteFile(album.Quality320);
                }

                album.Quality320 = input.MyQuality320.FileName;
            }


            album.Link = input.Link;

            album.TitleTag = input.TitleTag;

            album.MetaDescription = input.MetaDescription;

            album.MetaTag = input.MetaTag;

            album.StyleId = input.StyleId;

            album.ArtistId = input.ArtistId;

            return(album);
        }
Пример #2
0
        public async Task <IActionResult> UpdateAlbum([FromForm] UpdateAlbumInput updateAlbumInput)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var updateAlbum = await albumCrud.UpdateAlbum(updateAlbumInput);

            if (updateAlbum == false)
            {
                return(NotFound());
            }

            return(Ok());
        }
Пример #3
0
        public async Task <bool> UpdateAlbum(UpdateAlbumInput updateAlbumInput)
        {
            var getAlbum = await albumRepository.Get(updateAlbumInput.Id);

            if (getAlbum == null)
            {
                return(false);
            }

            var tracksOfAlbum = await trackRepository.GetQuery()
                                .Where(tracks => tracks.AlbumId == updateAlbumInput.Id)
                                .ToListAsync();

            foreach (var item in tracksOfAlbum)
            {
                item.StyleId = updateAlbumInput.StyleId;

                item.ArtistId = updateAlbumInput.ArtistId;

                trackRepository.Update(item);
            }

            await trackRepository.Save();

            await UploadFile(updateAlbumInput.MyCoverImage);

            await UploadFile(updateAlbumInput.MyQuality128);

            await UploadFile(updateAlbumInput.MyQuality320);

            var changeAlbum = ChangeForUpdate(getAlbum, updateAlbumInput);

            albumRepository.Update(changeAlbum);

            await albumRepository.Save();

            return(true);
        }