mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2025-01-08 00:08:14 +01:00
Update:Find one library item endpoint sequelize query split into two queries to improve performance #2073 #2075
This commit is contained in:
parent
707451309c
commit
456bb87a00
@ -419,10 +419,19 @@ class LibraryItem extends Model {
|
|||||||
*/
|
*/
|
||||||
static async getOldById(libraryItemId) {
|
static async getOldById(libraryItemId) {
|
||||||
if (!libraryItemId) return null
|
if (!libraryItemId) return null
|
||||||
const libraryItem = await this.findByPk(libraryItemId, {
|
|
||||||
|
const libraryItem = await this.findByPk(libraryItemId)
|
||||||
|
|
||||||
|
if (libraryItem.mediaType === 'podcast') {
|
||||||
|
libraryItem.media = await libraryItem.getMedia({
|
||||||
include: [
|
include: [
|
||||||
{
|
{
|
||||||
model: this.sequelize.models.book,
|
model: this.sequelize.models.podcastEpisode
|
||||||
|
}
|
||||||
|
]
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
libraryItem.media = await libraryItem.getMedia({
|
||||||
include: [
|
include: [
|
||||||
{
|
{
|
||||||
model: this.sequelize.models.author,
|
model: this.sequelize.models.author,
|
||||||
@ -436,22 +445,14 @@ class LibraryItem extends Model {
|
|||||||
attributes: ['sequence']
|
attributes: ['sequence']
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
model: this.sequelize.models.podcast,
|
|
||||||
include: [
|
|
||||||
{
|
|
||||||
model: this.sequelize.models.podcastEpisode
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
],
|
],
|
||||||
order: [
|
order: [
|
||||||
[this.sequelize.models.book, this.sequelize.models.author, this.sequelize.models.bookAuthor, 'createdAt', 'ASC'],
|
[this.sequelize.models.author, this.sequelize.models.bookAuthor, 'createdAt', 'ASC'],
|
||||||
[this.sequelize.models.book, this.sequelize.models.series, 'bookSeries', 'createdAt', 'ASC']
|
[this.sequelize.models.series, 'bookSeries', 'createdAt', 'ASC']
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
|
}
|
||||||
|
|
||||||
if (!libraryItem) return null
|
if (!libraryItem) return null
|
||||||
return this.getOldLibraryItem(libraryItem)
|
return this.getOldLibraryItem(libraryItem)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user