From 599592fa6a05f6c6f8d940d7325a340fa5323e6b Mon Sep 17 00:00:00 2001 From: gedoor Date: Sun, 8 Nov 2020 22:40:54 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=AF=BC=E5=85=A5=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/legado/app/api/controller/BookshelfController.kt | 2 +- .../java/io/legado/app/ui/book/info/BookInfoViewModel.kt | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/io/legado/app/api/controller/BookshelfController.kt b/app/src/main/java/io/legado/app/api/controller/BookshelfController.kt index 2130340c3..fcebe0721 100644 --- a/app/src/main/java/io/legado/app/api/controller/BookshelfController.kt +++ b/app/src/main/java/io/legado/app/api/controller/BookshelfController.kt @@ -78,7 +78,7 @@ object BookshelfController { val book = GSON.fromJsonObject(postData) val returnData = ReturnData() if (book != null) { - App.db.bookDao().insert(book) + App.db.bookDao().update(book) if (ReadBook.book?.bookUrl == book.bookUrl) { ReadBook.book = book ReadBook.durChapterIndex = book.durChapterIndex diff --git a/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt b/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt index 141c690fb..f04c7c34d 100644 --- a/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt +++ b/app/src/main/java/io/legado/app/ui/book/info/BookInfoViewModel.kt @@ -161,7 +161,7 @@ class BookInfoViewModel(application: Application) : BaseViewModel(application) { ) book.durChapterTitle = chapters[book.durChapterIndex].title if (inBookshelf) { - App.db.bookDao().insert(book) + App.db.bookDao().update(book) App.db.bookChapterDao().insert(*chapters.toTypedArray()) } bookData.postValue(book) @@ -179,7 +179,11 @@ class BookInfoViewModel(application: Application) : BaseViewModel(application) { book.durChapterPos = it.durChapterPos book.durChapterTitle = it.durChapterTitle } - App.db.bookDao().insert(book) + if (App.db.bookDao().getBook(book.bookUrl) != null) { + App.db.bookDao().update(book) + } else { + App.db.bookDao().insert(book) + } if (ReadBook.book?.name == book.name && ReadBook.book?.author == book.author) { ReadBook.book = book }