fix orderby

This commit is contained in:
2023-08-07 16:51:31 +02:00
parent 2b7b967382
commit b675c1adfb
2 changed files with 7 additions and 4 deletions

View File

@@ -1,7 +1,10 @@
type OrderByDirection = 'asc' | 'desc'
export function createPrismaOrderBy(input: string | null) {
const { key, direction, relation, field } = getOrderByObject(input)
const orderByObject = getOrderByObject(input)
if (!orderByObject) return null
const { key, direction, relation, field } = orderByObject
if (relation && field) {
return {

View File

@@ -62,7 +62,7 @@ export class CardsRepository {
question = undefined,
currentPage,
itemsPerPage,
orderBy,
orderBy = 'updated-desc',
}: GetAllCardsInDeckDto
): Promise<PaginatedCardsWithGrade> {
try {
@@ -78,7 +78,7 @@ export class CardsRepository {
},
}
const { key, direction } = getOrderByObject(orderBy)
const { key, direction } = getOrderByObject(orderBy) || {}
if (key === 'grade') {
const start = (currentPage - 1) * itemsPerPage
@@ -122,7 +122,7 @@ export class CardsRepository {
const result = await this.prisma.$transaction([
this.prisma.card.count({ where }),
this.prisma.card.findMany({
orderBy: createPrismaOrderBy(orderBy) || { updated: 'desc' },
orderBy: createPrismaOrderBy(orderBy),
where,
include: {
grades: {