From fdd48fb6706b760fa12ce92b35990df61441bdde Mon Sep 17 00:00:00 2001 From: Methapon2001 <61303214+Methapon2001@users.noreply.github.com> Date: Mon, 10 Feb 2025 09:54:22 +0700 Subject: [PATCH] feat: throw error when used institution --- src/controllers/04-institution-controller.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/controllers/04-institution-controller.ts b/src/controllers/04-institution-controller.ts index ab1275b..3747600 100644 --- a/src/controllers/04-institution-controller.ts +++ b/src/controllers/04-institution-controller.ts @@ -16,7 +16,7 @@ import { Tags, } from "tsoa"; import prisma from "../db"; -import { notFoundError } from "../utils/error"; +import { isUsedError, notFoundError } from "../utils/error"; import { queryOrNot } from "../utils/relation"; import { RequestWithUser } from "../interfaces/user"; import { deleteFile, fileLocation, getFile, getPresigned, listFile, setFile } from "../utils/minio"; @@ -155,9 +155,15 @@ export class InstitutionController extends Controller { return await prisma.$transaction(async (tx) => { const record = await tx.institution.findFirst({ where: { id: institutionId }, + include: { + taskOrder: { + take: 1, + }, + }, }); if (!record) throw notFoundError("Institution"); + if (record.taskOrder.length > 0) throw isUsedError("Institution"); return await tx.institution.delete({ where: { id: institutionId },