diff options
Diffstat (limited to 'lib/compliance/services.ts')
| -rw-r--r-- | lib/compliance/services.ts | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/compliance/services.ts b/lib/compliance/services.ts index de67598b..2d3ec092 100644 --- a/lib/compliance/services.ts +++ b/lib/compliance/services.ts @@ -932,3 +932,32 @@ export async function getTemplatesRelatedDataCount(templateIds: number[]) { return { totalQuestions: 0, totalResponses: 0, details: [] }; } } + +// basic_contract_id로 compliance response 조회 +export async function getComplianceResponseByBasicContractId(basicContractId: number) { + try { + if (!basicContractId || isNaN(basicContractId) || basicContractId <= 0) { + console.error(`Invalid basicContractId: ${basicContractId}`); + return null; + } + + const [response] = await db + .select({ + id: complianceResponses.id, + templateId: complianceResponses.templateId, + basicContractId: complianceResponses.basicContractId, + status: complianceResponses.status, + completedAt: complianceResponses.completedAt, + createdAt: complianceResponses.createdAt, + updatedAt: complianceResponses.updatedAt, + }) + .from(complianceResponses) + .where(eq(complianceResponses.basicContractId, basicContractId)) + .limit(1); + + return response || null; + } catch (error) { + console.error("Error fetching compliance response by basic contract id:", error); + return null; + } +} |
