示例#1
0
        public Singer Unpublish(int id, int userId)
        {
            _userManager.ValidAdminByUserId(userId);
            var singer = Find(id);

            if (!singer.IsPublished)
            {
                ThrowException("歌唱家属于未发布状态,无需再次操作!");
            }

            singer.UnpublisherId        = userId;
            singer.IsPublished          = false;
            singer.LastModificationTime = DateTime.Now;
            singer.PublishmentTime      = null;

            //下架专辑
            JMDbContext.Album
            .Where(a => a.SingerId == singer.Id && a.IsPublished && !a.IsDeleted)
            .ToList()
            .ForEach(a => _albumManager.Unpublish(a.Id, userId));

            //下架音乐
            JMDbContext.Music
            .Where(m => m.SingerId == singer.Id && m.IsPublished && !m.IsDeleted)
            .ToList()
            .ForEach(m => _musicManager.Unpublish(m.Id, userId));


            Save();
            return(singer);
        }
        public Album Unpublish(int id, int userId)
        {
            _userManager.ValidAdminByUserId(userId);
            var album = Find(id);

            if (!album.IsPublished)
            {
                ThrowException("专辑属于未发布状态,无需再次操作!");
            }

            album.IsPublished          = false;
            album.UnpublisherId        = userId;
            album.LastModificationTime = DateTime.Now;
            album.PublishmentTime      = null;

            JMDbContext.Music
            .Where(m => m.AlbumId == album.Id && m.IsPublished && !m.IsDeleted)
            .ToList()
            .ForEach(m => _musicManager.Unpublish(m.Id, userId));

            Save();
            return(album);
        }