summaryrefslogtreecommitdiff
path: root/app/api/cron
diff options
context:
space:
mode:
authordujinkim <dujin.kim@dtsolution.co.kr>2025-05-28 00:17:56 +0000
committerdujinkim <dujin.kim@dtsolution.co.kr>2025-05-28 00:17:56 +0000
commit9e280704988fdeffa05c1d8cbb731722f666c6af (patch)
treebbf57b3c882502dc7afd2ff770d95aca69fca0d9 /app/api/cron
parent44356f1b203da5169db42950a42a8146f612c674 (diff)
(대표님) 앱 라우터 api 파트 커밋
Diffstat (limited to 'app/api/cron')
-rw-r--r--app/api/cron/tags/start/route.ts14
1 files changed, 11 insertions, 3 deletions
diff --git a/app/api/cron/tags/start/route.ts b/app/api/cron/tags/start/route.ts
index b506b9a3..3312aad8 100644
--- a/app/api/cron/tags/start/route.ts
+++ b/app/api/cron/tags/start/route.ts
@@ -13,16 +13,20 @@ const syncJobs = new Map<string, {
error?: string;
progress?: number;
packageId?: number;
+ mode?: string
}>();
export async function POST(request: NextRequest) {
try {
// 요청 데이터 가져오기
let packageId: number | undefined;
-
+ let mode: string | undefined;
+
try {
const body = await request.json();
packageId = body.packageId;
+ mode = body.mode; // 모드 정보 추출
+
} catch (error) {
// 요청 본문이 없거나 JSON이 아닌 경우, URL 파라미터 확인
const searchParams = request.nextUrl.searchParams;
@@ -30,6 +34,7 @@ export async function POST(request: NextRequest) {
if (packageIdParam) {
packageId = parseInt(packageIdParam, 10);
}
+ mode = searchParams.get('mode') || undefined;
}
// 고유 ID 생성
@@ -39,7 +44,8 @@ export async function POST(request: NextRequest) {
syncJobs.set(syncId, {
status: 'queued',
startTime: new Date(),
- packageId
+ packageId,
+ mode
});
// 비동기 작업 시작 (백그라운드에서 실행)
@@ -74,6 +80,8 @@ async function processTagImport(syncId: string) {
try {
const jobInfo = syncJobs.get(syncId)!;
const packageId = jobInfo.packageId;
+ const mode = jobInfo.mode; // 모드 정보 추출
+
// 상태 업데이트: 처리 중
syncJobs.set(syncId, {
@@ -98,7 +106,7 @@ async function processTagImport(syncId: string) {
};
// 실제 태그 가져오기 실행
- const result = await importTagsFromSEDP(packageId, updateProgress);
+ const result = await importTagsFromSEDP(packageId, updateProgress, mode);
// 명시적으로 캐시 무효화
revalidateTag(`tags-${packageId}`);