Пример #1
0
        public async Task <IActionResult> PutManga(MangaItem mangaItem)
        {
            _context.Entry(mangaItem).State = EntityState.Modified;
            await _context.SaveChangesAsync();

            return(Ok(mangaItem));
        }
Пример #2
0
        public async Task <IActionResult> PostManga(MangaItem mangaItem)
        {
            _context.MangaItem.Add(mangaItem);
            await _context.SaveChangesAsync();

            return(Ok(mangaItem));
        }
Пример #3
0
        public async Task <IActionResult> FriendList()
        {
            var name = User.FindFirstValue(ClaimTypes.Name);

            if (name == null)
            {
                return(View());
            }
            var user = await _context.User.FirstOrDefaultAsync(a => a.UserName == name);

            if (user == null)
            {
                return(View());
            }
            var userId = user.Id;

            var friendList = await _context.Friends.Where(a => a.UserId == userId).ToListAsync <FriendList>();

            var friendUserList     = new List <User>();
            var friendAnimeUpdates = new List <AnimeItem>();
            var friendMangaUpdates = new List <MangaItem>();
            var friendNovelUpdates = new List <NovelItem>();

            foreach (var row in friendList)
            {
                var friend = await _context.User.FirstOrDefaultAsync(a => a.Id == row.FriendId);

                if (friend != null)
                {
                    friendUserList.Add(friend);
                }

                var animeList = await _context.AnimeList.OrderByDescending(a => a.Id).FirstOrDefaultAsync(a => a.UserId == row.FriendId);

                if (animeList != null)
                {
                    var animeItem = await _context.AnimeItem.FirstOrDefaultAsync(a => a.Id == animeList.AnimeItemId);

                    if (animeItem != null)
                    {
                        friendAnimeUpdates.Add(animeItem);
                    }
                    else
                    {
                        var blankAnime = new AnimeItem();
                        friendAnimeUpdates.Add(blankAnime);
                    }
                }
                else
                {
                    var blankAnime = new AnimeItem();
                    friendAnimeUpdates.Add(blankAnime);
                }

                var mangaList = await _context.MangaList.OrderByDescending(a => a.Id).FirstOrDefaultAsync(a => a.UserId == row.FriendId);

                if (mangaList != null)
                {
                    var mangaItem = await _context.MangaItem.FirstOrDefaultAsync(a => a.Id == mangaList.MangaItemId);

                    if (mangaItem != null)
                    {
                        friendMangaUpdates.Add(mangaItem);
                    }
                    else
                    {
                        var blankManga = new MangaItem();
                        friendMangaUpdates.Add(blankManga);
                    }
                }
                else
                {
                    var blankManga = new MangaItem();
                    friendMangaUpdates.Add(blankManga);
                }

                var novelList = await _context.NovelList.OrderByDescending(a => a.Id).FirstOrDefaultAsync(a => a.UserId == row.FriendId);

                if (novelList != null)
                {
                    var novelItem = await _context.NovelItem.FirstOrDefaultAsync(a => a.Id == novelList.NovelItemId);

                    if (novelItem != null)
                    {
                        friendNovelUpdates.Add(novelItem);
                    }
                    else
                    {
                        var blankNovel = new NovelItem();
                        friendNovelUpdates.Add(blankNovel);
                    }
                }
                else
                {
                    var blankNovel = new NovelItem();
                    friendNovelUpdates.Add(blankNovel);
                }
            }
            var friendListViewModel = new FriendListViewModel
            {
                UserList            = friendUserList,
                LastAnimeUpdateList = friendAnimeUpdates,
                LastMangaUpdateList = friendMangaUpdates,
                LastNovelUpdateList = friendNovelUpdates
            };

            return(View(friendListViewModel));
        }