优化
This commit is contained in:
@@ -200,7 +200,7 @@ object BookController {
|
|||||||
fun saveBook(postData: String?): ReturnData {
|
fun saveBook(postData: String?): ReturnData {
|
||||||
val returnData = ReturnData()
|
val returnData = ReturnData()
|
||||||
GSON.fromJsonObject<Book>(postData).getOrNull()?.let { book ->
|
GSON.fromJsonObject<Book>(postData).getOrNull()?.let { book ->
|
||||||
appDb.bookDao.insert(book)
|
book.save()
|
||||||
AppWebDav.uploadBookProgress(book)
|
AppWebDav.uploadBookProgress(book)
|
||||||
return returnData.setData("")
|
return returnData.setData("")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,7 +62,17 @@ object Restore {
|
|||||||
.forEach { book ->
|
.forEach { book ->
|
||||||
book.coverUrl = LocalBook.getCoverPath(book)
|
book.coverUrl = LocalBook.getCoverPath(book)
|
||||||
}
|
}
|
||||||
appDb.bookDao.insert(*it.toTypedArray())
|
val updateBooks = arrayListOf<Book>()
|
||||||
|
val newBooks = arrayListOf<Book>()
|
||||||
|
it.forEach { book ->
|
||||||
|
if (appDb.bookDao.has(book.bookUrl) == true) {
|
||||||
|
updateBooks.add(book)
|
||||||
|
} else {
|
||||||
|
newBooks.add(book)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
appDb.bookDao.update(*updateBooks.toTypedArray())
|
||||||
|
appDb.bookDao.insert(*newBooks.toTypedArray())
|
||||||
}
|
}
|
||||||
fileToListT<Bookmark>(path, "bookmark.json")?.let {
|
fileToListT<Bookmark>(path, "bookmark.json")?.let {
|
||||||
appDb.bookmarkDao.insert(*it.toTypedArray())
|
appDb.bookmarkDao.insert(*it.toTypedArray())
|
||||||
|
|||||||
@@ -91,13 +91,15 @@ class CacheBookService : BaseService() {
|
|||||||
val cacheBook = CacheBook.getOrCreate(bookUrl) ?: return@execute
|
val cacheBook = CacheBook.getOrCreate(bookUrl) ?: return@execute
|
||||||
val chapterCount = appDb.bookChapterDao.getChapterCount(bookUrl)
|
val chapterCount = appDb.bookChapterDao.getChapterCount(bookUrl)
|
||||||
if (chapterCount == 0) {
|
if (chapterCount == 0) {
|
||||||
WebBook.getChapterListAwait(cacheBook.bookSource, cacheBook.book)
|
val name = cacheBook.book.name
|
||||||
.onFailure {
|
WebBook.getChapterListAwait(cacheBook.bookSource, cacheBook.book).onFailure {
|
||||||
AppLog.put("缓存书籍没有目录且加载目录失败\n${it.localizedMessage}", it)
|
cacheBook.book.totalChapterNum = 0
|
||||||
appCtx.toastOnUi("缓存书籍没有目录且加载目录失败\n${it.localizedMessage}")
|
AppLog.put("《$name》目录为空且加载目录失败\n${it.localizedMessage}", it)
|
||||||
}.getOrNull()?.let { toc ->
|
appCtx.toastOnUi("《$name》目录为空且加载目录失败\n${it.localizedMessage}")
|
||||||
appDb.bookChapterDao.insert(*toc.toTypedArray())
|
}.getOrNull()?.let { toc ->
|
||||||
}
|
appDb.bookChapterDao.insert(*toc.toTypedArray())
|
||||||
|
}
|
||||||
|
cacheBook.book.save()
|
||||||
}
|
}
|
||||||
val end2 = if (end == 0) {
|
val end2 = if (end == 0) {
|
||||||
appDb.bookChapterDao.getChapterCount(bookUrl)
|
appDb.bookChapterDao.getChapterCount(bookUrl)
|
||||||
|
|||||||
Reference in New Issue
Block a user