diff --git a/.run/AiServiceApplication.run.xml b/.run/AiServiceApplication.run.xml
index d03ed94..250ffbc 100644
--- a/.run/AiServiceApplication.run.xml
+++ b/.run/AiServiceApplication.run.xml
@@ -19,7 +19,7 @@
-
+
diff --git a/ai-service/src/main/resources/application.yml b/ai-service/src/main/resources/application.yml
index 06567e7..1f22f08 100644
--- a/ai-service/src/main/resources/application.yml
+++ b/ai-service/src/main/resources/application.yml
@@ -19,7 +19,7 @@ spring:
# Kafka Consumer Configuration
kafka:
- bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS:4.230.50.63:9092}
+ bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS:20.249.182.13:9095,4.217.131.59:9095}
consumer:
group-id: ${KAFKA_CONSUMER_GROUP:ai-service-consumers}
auto-offset-reset: earliest
diff --git a/event-service/src/main/java/com/kt/event/eventservice/application/dto/kafka/AIEventGenerationJobMessage.java b/event-service/src/main/java/com/kt/event/eventservice/application/dto/kafka/AIEventGenerationJobMessage.java
index b089f6b..f7e8ef5 100644
--- a/event-service/src/main/java/com/kt/event/eventservice/application/dto/kafka/AIEventGenerationJobMessage.java
+++ b/event-service/src/main/java/com/kt/event/eventservice/application/dto/kafka/AIEventGenerationJobMessage.java
@@ -1,6 +1,5 @@
package com.kt.event.eventservice.application.dto.kafka;
-import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
@@ -13,6 +12,7 @@ import java.util.List;
* AI 이벤트 생성 작업 메시지 DTO
*
* ai-event-generation-job 토픽에서 구독하는 메시지 형식
+ * JSON 필드명: camelCase (Jackson 기본 설정)
*/
@Data
@Builder
@@ -23,73 +23,61 @@ public class AIEventGenerationJobMessage {
/**
* 작업 ID
*/
- @JsonProperty("job_id")
private String jobId;
/**
* 사용자 ID (UUID String)
*/
- @JsonProperty("user_id")
private String userId;
/**
* 이벤트 ID
*/
- @JsonProperty("event_id")
private String eventId;
/**
* 매장명
*/
- @JsonProperty("store_name")
private String storeName;
/**
* 매장 업종
*/
- @JsonProperty("store_category")
private String storeCategory;
/**
* 매장 설명
*/
- @JsonProperty("store_description")
private String storeDescription;
/**
* 이벤트 목적
*/
- @JsonProperty("objective")
private String objective;
/**
* 작업 상태 (PENDING, PROCESSING, COMPLETED, FAILED)
*/
- @JsonProperty("status")
private String status;
/**
* AI 추천 결과 데이터
*/
- @JsonProperty("ai_recommendation")
private AIRecommendationData aiRecommendation;
/**
* 에러 메시지 (실패 시)
*/
- @JsonProperty("error_message")
private String errorMessage;
/**
* 작업 생성 일시
*/
- @JsonProperty("created_at")
private LocalDateTime createdAt;
/**
* 작업 완료/실패 일시
*/
- @JsonProperty("completed_at")
private LocalDateTime completedAt;
/**
@@ -101,25 +89,18 @@ public class AIEventGenerationJobMessage {
@AllArgsConstructor
public static class AIRecommendationData {
- @JsonProperty("event_title")
private String eventTitle;
- @JsonProperty("event_description")
private String eventDescription;
- @JsonProperty("event_type")
private String eventType;
- @JsonProperty("target_keywords")
private List targetKeywords;
- @JsonProperty("recommended_benefits")
private List recommendedBenefits;
- @JsonProperty("start_date")
private String startDate;
- @JsonProperty("end_date")
private String endDate;
}
}
diff --git a/event-service/src/main/java/com/kt/event/eventservice/application/service/EventIdGenerator.java b/event-service/src/main/java/com/kt/event/eventservice/application/service/EventIdGenerator.java
index ceb0939..a82895a 100644
--- a/event-service/src/main/java/com/kt/event/eventservice/application/service/EventIdGenerator.java
+++ b/event-service/src/main/java/com/kt/event/eventservice/application/service/EventIdGenerator.java
@@ -35,9 +35,10 @@ public class EventIdGenerator {
}
// storeId 길이 검증 (전체 길이 50자 제한)
- if (storeId.length() > 15) {
- throw new IllegalArgumentException("storeId는 15자 이하여야 합니다");
- }
+ // TODO: 프로덕션에서는 storeId 길이 제한 필요
+ // if (storeId.length() > 15) {
+ // throw new IllegalArgumentException("storeId는 15자 이하여야 합니다");
+ // }
String timestamp = LocalDateTime.now().format(TIMESTAMP_FORMATTER);
String randomPart = generateRandomPart();
diff --git a/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/EventController.java b/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/EventController.java
index 316d48d..c0e016c 100644
--- a/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/EventController.java
+++ b/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/EventController.java
@@ -32,7 +32,7 @@ import org.springframework.web.bind.annotation.*;
*/
@Slf4j
@RestController
-@RequestMapping("/api/v1/events")
+@RequestMapping("/events")
@RequiredArgsConstructor
@Tag(name = "Event", description = "이벤트 관리 API")
public class EventController {
diff --git a/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/JobController.java b/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/JobController.java
index 1b2e1a8..98264d7 100644
--- a/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/JobController.java
+++ b/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/JobController.java
@@ -24,7 +24,7 @@ import org.springframework.web.bind.annotation.RestController;
*/
@Slf4j
@RestController
-@RequestMapping("/api/v1/jobs")
+@RequestMapping("/jobs")
@RequiredArgsConstructor
@Tag(name = "Job", description = "비동기 작업 상태 조회 API")
public class JobController {
diff --git a/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/RedisTestController.java b/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/RedisTestController.java
index 0bdebde..2068ecf 100644
--- a/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/RedisTestController.java
+++ b/event-service/src/main/java/com/kt/event/eventservice/presentation/controller/RedisTestController.java
@@ -12,7 +12,7 @@ import java.time.Duration;
*/
@Slf4j
@RestController
-@RequestMapping("/api/v1/redis-test")
+@RequestMapping("/redis-test")
@RequiredArgsConstructor
public class RedisTestController {
diff --git a/event-service/src/main/resources/application.yml b/event-service/src/main/resources/application.yml
index 1503c98..c4610aa 100644
--- a/event-service/src/main/resources/application.yml
+++ b/event-service/src/main/resources/application.yml
@@ -71,7 +71,7 @@ spring:
server:
port: ${SERVER_PORT:8080}
servlet:
- context-path: /api/v1/events
+ context-path: /api/v1
shutdown: graceful
# Actuator Configuration