예제 #1
0
        public virtual async ValueTask <Tuple <ResponseStatus, object> > DeleteManga(long mangaId)
        {
            var manga = await MangaManager.GetManga(mangaId, -1);

            if (manga == null)
            {
                return(new Tuple <ResponseStatus, object>(
                           ResponseStatus.NotFound,
                           null));
            }

            var path = LibraryManager.GeFileTreeNode(manga.PathId);

            var success = await MangaManager.DeleteManga(mangaId) && LibraryManager.Delete(path);

            return(new Tuple <ResponseStatus, object>(
                       success
                    ? ResponseStatus.Success
                    : ResponseStatus.BadRequest,
                       success));
        }
예제 #2
0
        public virtual async ValueTask <Tuple <ResponseStatus, object> > DeleteLibrary(long libraryId)
        {
            var library = LibraryManager.GetLibrary(libraryId);

            if (library == null)
            {
                return(new Tuple <ResponseStatus, object>(
                           ResponseStatus.NotFound,
                           false));
            }

            var mangaPathIds = library.Repository.GetAllNodeObjectId();
            var mangaIds     = await MangaManager.GetMangaIdByFileTreeNodeId(mangaPathIds);

            foreach (var mangaId in mangaIds)
            {
                await MangaManager.DeleteManga(mangaId);
            }

            LibraryManager.Delete(library);
            return(new Tuple <ResponseStatus, object>(
                       ResponseStatus.Success,
                       true));
        }