import { NextRequest, NextResponse } from 'next/server'; import { createContractTemplate } from '@/lib/general-contract-template/service'; import { revalidatePath, revalidateTag } from 'next/cache'; import { createContractTemplateSchema } from '@/lib/general-contract-template/validations'; export async function POST(request: NextRequest) { try { const json = await request.json(); const parsed = createContractTemplateSchema.safeParse(json); if (!parsed.success) { return NextResponse.json( { success: false, error: parsed.error.flatten() }, { status: 400 } ); } const { data, error } = await createContractTemplate(parsed.data); revalidatePath('/evcp/general-contract-template'); revalidateTag("general-contract-templates"); if (error) { throw new Error(error); } return NextResponse.json({ success: true, data }); } catch (error) { console.error('템플릿 저장 오류:', error); return NextResponse.json({ success: false, error: '서버 오류' }, { status: 500 }); } }