(parentId: number)
| 139 | await db.$transaction(async (prisma) => { |
| 140 | // Function to recursively delete answers and decrement totalReplies |
| 141 | const deleteNestedAnswers = async (parentId: number) => { |
| 142 | const childAnswers = await prisma.answer.findMany({ |
| 143 | where: { parentId }, |
| 144 | }); |
| 145 | |
| 146 | for (const childAnswer of childAnswers) { |
| 147 | await deleteNestedAnswers(childAnswer.id); // Recursively delete children |
| 148 | await prisma.answer.delete({ where: { id: childAnswer.id } }); |
| 149 | // Decrement totalReplies for each child answer |
| 150 | await prisma.answer.update({ |
| 151 | where: { id: parentId }, |
| 152 | data: { totalanswers: { decrement: 1 } }, |
| 153 | }); |
| 154 | } |
| 155 | }; |
| 156 | |
| 157 | // Delete all nested answers recursively |
| 158 | await deleteNestedAnswers(answerId); |
no outgoing calls
no test coverage detected