add ChapterCount to manga object in categoryMangas endpoint (#349)

* adds ChapterCount to the Manga returned when accessing the array of Manga is a category

* removed a conflicting expresssion
This commit is contained in:
abhijeetChawla
2022-04-24 14:13:35 +05:30
committed by GitHub
parent 047f8c176f
commit 84f701c4ab
2 changed files with 10 additions and 2 deletions

View File

@@ -70,12 +70,19 @@ object CategoryManga {
.slice(ChapterTable.id.count()) .slice(ChapterTable.id.count())
.select { (MangaTable.id eq ChapterTable.manga) and (ChapterTable.isDownloaded eq true) } .select { (MangaTable.id eq ChapterTable.manga) and (ChapterTable.isDownloaded eq true) }
) )
val chapterCountExpression = wrapAsExpression<Long>(
ChapterTable
.slice(ChapterTable.id.count())
.select { (MangaTable.id eq ChapterTable.manga) }
)
val selectedColumns = MangaTable.columns + unreadExpression + downloadExpression + chapterCountExpression
val selectedColumns = MangaTable.columns + unreadExpression + downloadExpression
val transform: (ResultRow) -> MangaDataClass = { val transform: (ResultRow) -> MangaDataClass = {
val dataClass = MangaTable.toDataClass(it) val dataClass = MangaTable.toDataClass(it)
dataClass.unreadCount = it[unreadExpression]?.toInt() dataClass.unreadCount = it[unreadExpression]?.toInt()
dataClass.downloadCount = it[downloadExpression]?.toInt() dataClass.downloadCount = it[downloadExpression]?.toInt()
dataClass.chapterCount = it[chapterCountExpression]?.toInt()
dataClass dataClass
} }

View File

@@ -36,7 +36,8 @@ data class MangaDataClass(
val freshData: Boolean = false, val freshData: Boolean = false,
var unreadCount: Int? = null, var unreadCount: Int? = null,
var downloadCount: Int? = null var downloadCount: Int? = null,
var chapterCount: Int? = null
) )
data class PagedMangaListDataClass( data class PagedMangaListDataClass(