2
0

🗃️ Optimize usage queries

This commit is contained in:
Baptiste Arnaud
2022-12-06 19:11:11 +01:00
parent 855a2856c8
commit d6f90af126
7 changed files with 56 additions and 23 deletions

View File

@ -12,26 +12,27 @@ const handler = async (req: NextApiRequest, res: NextApiResponse) => {
if (req.method === 'GET') {
const typebotId = req.query.typebotId as string
const totalViews = await prisma.result.count({
where: {
typebotId,
typebot: canReadTypebot(typebotId, user),
},
})
const totalStarts = await prisma.result.count({
where: {
typebotId,
typebot: canReadTypebot(typebotId, user),
answers: { some: {} },
},
})
const totalCompleted = await prisma.result.count({
where: {
typebotId,
typebot: canReadTypebot(typebotId, user),
isCompleted: true,
},
})
const [totalViews, totalStarts, totalCompleted] = await prisma.$transaction(
[
prisma.result.count({
where: {
typebot: canReadTypebot(typebotId, user),
},
}),
prisma.result.count({
where: {
typebot: canReadTypebot(typebotId, user),
hasStarted: true,
},
}),
prisma.result.count({
where: {
typebot: canReadTypebot(typebotId, user),
isCompleted: true,
},
}),
]
)
const stats: Stats = {
totalViews,
totalStarts,