This commit is contained in:
gedoor 2021-12-24 15:12:55 +08:00
parent 818aa90ed9
commit ebfe3a972c
4 changed files with 4 additions and 5 deletions

View File

@ -17,7 +17,7 @@ interface BookGroupDao {
@Query("SELECT * FROM book_groups ORDER BY `order`")
fun flowAll(): Flow<List<BookGroup>>
@Query(
@get:Query(
"""
SELECT * FROM book_groups where (groupId >= 0 and show > 0)
or (groupId = -4 and show > 0 and (select count(bookUrl) from books where type != ${BookType.audio} and origin != '${BookType.local}' and ((SELECT sum(groupId) FROM book_groups where groupId > 0) & `group`) = 0) > 0)
@ -26,7 +26,7 @@ interface BookGroupDao {
or (groupId = -1 and show > 0)
ORDER BY `order`"""
)
fun flowShow(): Flow<List<BookGroup>>
val show: Flow<List<BookGroup>>
@Query("SELECT * FROM book_groups where groupId >= 0 ORDER BY `order`")
fun flowSelect(): Flow<List<BookGroup>>

View File

@ -17,7 +17,6 @@ import io.legado.app.model.CacheBook
import io.legado.app.model.webBook.WebBook
import io.legado.app.service.CacheBookService
import io.legado.app.utils.postEvent
import kotlinx.coroutines.*
import timber.log.Timber
import java.util.concurrent.CopyOnWriteArraySet

View File

@ -76,7 +76,7 @@ class BookshelfFragment1 : BaseBookshelfFragment(R.layout.fragment_bookshelf),
private fun initBookGroupData() {
groupsFlowJob?.cancel()
groupsFlowJob = launch {
appDb.bookGroupDao.flowShow().collect {
appDb.bookGroupDao.show.collect {
upGroup(it)
}
}

View File

@ -100,7 +100,7 @@ class BookshelfFragment2 : BaseBookshelfFragment(R.layout.fragment_bookshelf1),
private fun initGroupData() {
groupsFlowJob?.cancel()
groupsFlowJob = launch {
appDb.bookGroupDao.flowShow().collect {
appDb.bookGroupDao.show.collect {
if (it != bookGroups) {
bookGroups = it
booksAdapter.notifyDataSetChanged()