diff --git a/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/CategoryManga.kt b/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/CategoryManga.kt index fb44272952..d408570acd 100644 --- a/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/CategoryManga.kt +++ b/server/src/main/kotlin/suwayomi/tachidesk/manga/impl/CategoryManga.kt @@ -70,12 +70,19 @@ object CategoryManga { .slice(ChapterTable.id.count()) .select { (MangaTable.id eq ChapterTable.manga) and (ChapterTable.isDownloaded eq true) } ) + val chapterCountExpression = wrapAsExpression( + ChapterTable + .slice(ChapterTable.id.count()) + .select { (MangaTable.id eq ChapterTable.manga) } + ) - val selectedColumns = MangaTable.columns + unreadExpression + downloadExpression + val selectedColumns = MangaTable.columns + unreadExpression + downloadExpression + chapterCountExpression + val transform: (ResultRow) -> MangaDataClass = { val dataClass = MangaTable.toDataClass(it) dataClass.unreadCount = it[unreadExpression]?.toInt() dataClass.downloadCount = it[downloadExpression]?.toInt() + dataClass.chapterCount = it[chapterCountExpression]?.toInt() dataClass } diff --git a/server/src/main/kotlin/suwayomi/tachidesk/manga/model/dataclass/MangaDataClass.kt b/server/src/main/kotlin/suwayomi/tachidesk/manga/model/dataclass/MangaDataClass.kt index 1f89532749..3ce843e40d 100644 --- a/server/src/main/kotlin/suwayomi/tachidesk/manga/model/dataclass/MangaDataClass.kt +++ b/server/src/main/kotlin/suwayomi/tachidesk/manga/model/dataclass/MangaDataClass.kt @@ -36,7 +36,8 @@ data class MangaDataClass( val freshData: Boolean = false, var unreadCount: Int? = null, - var downloadCount: Int? = null + var downloadCount: Int? = null, + var chapterCount: Int? = null ) data class PagedMangaListDataClass(