181 Commits

Author SHA1 Message Date
kkkd-max
c249d94dd1
Merge branch 'develop' into feature/participation 2025-10-27 13:41:13 +09:00
doyeon
fdeba361b4 커ë°gitignore적용 2025-10-27 13:40:18 +09:00
kkkd-max
1ad7655bb6
Update .gitignore
.gradle/ 추가
2025-10-27 13:34:25 +09:00
doyeon
12584a96c4 API 경로에 /api/v1 prefix 추가
- ParticipationController: @RequestMapping("/api/v1") 추가
- WinnerController: @RequestMapping("/api/v1") 추가
- 모든 API 경로가 /api/v1/* 형태로 변경됨

변경된 API 경로:
- POST /api/v1/events/{eventId}/participate
- GET /api/v1/events/{eventId}/participants
- GET /api/v1/events/{eventId}/participants/{participantId}
- POST /api/v1/events/{eventId}/draw-winners
- GET /api/v1/events/{eventId}/winners

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 13:26:05 +09:00
doyeon
ec0b892757 channel 필드 스키마 오류 수정
- DDL_AUTO를 none으로 변경하여 Hibernate 자동 스키마 변경 중지
- channel 필드를 nullable = true로 임시 변경
- 기존 데이터 마이그레이션 후 nullable = false로 변경 예정

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 13:22:25 +09:00
hyeda2020
446e4c613d
Merge pull request #4 from ktds-dg0501/feature/user
Feature/user
2025-10-27 13:15:57 +09:00
Cherry Kim
16b5a68ff7
Merge pull request #2 from ktds-dg0501/feature/content
Feature/content develop merge
2025-10-27 13:14:05 +09:00
doyeon
03bbe8b021 참여 채널(channel) 필드 추가
- Participant 엔티티에 channel 필드 추가 (기본값: SNS)
- ParticipationRequest/Response DTO에 channel 필드 추가
- ParticipantRegisteredEvent에 channel 필드 추가
- ParticipationService에서 channel 정보 전달
- 참여 경로 분석 및 마케팅 효과 측정 가능

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 13:05:42 +09:00
cherry2250
c82dbc6572 Content Service Kafka 의존성 제거
- build.gradle에서 spring-kafka 의존성 삭제
- application*.yml에서 Kafka 설정 제거
- content-service는 Redis에 데이터를 저장하는 역할만 수행
- 서비스 간 비동기 통신이 필요 없어 Kafka 불필요

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 11:50:19 +09:00
doyeon
f82e69ea0d Participation Service 테스트 수정 완료
- ParticipantId 생성 로직 수정 (prt_yyyyMMdd_xxx 형식)
- 보너스 응모권 계산 로직 수정 (매장 방문 시 5개)
- Mock 설정 추가 (ParticipationServiceUnitTest)
- Kafka 통합 테스트 Embedded Kafka로 전환 (일시적으로 비활성화)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 11:42:43 +09:00
cherry2250
f7159465ac Content Service API 경로 표준화
- API 경로를 /content에서 /api/v1/content로 변경
- REST API 버저닝 패턴 적용 (/api/v1/서비스명)
- ContentController.java의 @RequestMapping 수정
- OpenAPI 명세서 경로 업데이트 (7개 엔드포인트)
- Javadoc 주석의 API 경로 정보 업데이트

영향 범위: content-service만 수정, common 모듈 변경 없음

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 11:16:54 +09:00
doyeon
9039424c40 WinnerController Swagger 문서화 추가 및 이벤트/참여자 예외 처리 개선
- WinnerController에 Swagger 어노테이션 추가 (Operation, Parameter, ParameterObject)
- 당첨자 목록 조회 API 기본 정렬 설정 (winnerRank ASC, size=20)
- ParticipationService에서 이벤트/참여자 구분 로직 개선
  - 이벤트 없음: EventNotFoundException 발생
  - 참여자 없음: ParticipantNotFoundException 발생
- EventCacheService 제거 (Redis 기반 검증에서 DB 기반 검증으로 변경)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 11:15:04 +09:00
wonho
1168ba2d1d User Service api prefix 수정(api/v1/users/*) 2025-10-27 10:46:57 +09:00
cherry2250
f838c689ed Content Service 기능 개발 완료
- Redis 연동 구현 (패스워드 인증 지원)
  - RedisConfig에 password 설정 추가
  - RedisGateway에 ContentReader/Writer 인터페이스 구현
  - application-dev.yml 프로파일 추가

- 이미지 삭제 기능 구현
  - DeleteImageUseCase 인터페이스 추가
  - DeleteImageService 구현
  - ContentWriter.deleteImageById() 메서드 추가
  - RedisGateway 및 MockRedisGateway 삭제 로직 구현

- 이미지 필터링 기능 추가
  - GetImageListUseCase에 style, platform 파라미터 추가
  - GetImageListService에 Stream filter 로직 구현
  - ContentController에서 String → Enum 변환 처리

- Mock 서비스 dev 프로파일 지원
  - MockGenerateImagesService dev 프로파일 추가
  - MockRegenerateImageService dev 프로파일 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-27 09:45:21 +09:00
wonho
34df9c3b8f user-service api 초안 개발 2025-10-24 15:19:04 +09:00
doyeon
958184c9d1 Participation Service 단위 테스트 작성 완료
- Domain Entity 단위 테스트 (ParticipantUnitTest, DrawLogUnitTest)
- Service 단위 테스트 (ParticipationServiceUnitTest, WinnerDrawServiceUnitTest)
- 테스트코드표준 준용: Given-When-Then 패턴, BDD 스타일, Mockito 활용
- 총 29개 테스트 케이스 작성 및 검증 완료 (BUILD SUCCESSFUL)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 13:44:14 +09:00
doyeon
04d417e34c Participation Service 백엔드 개발 완료
- 이벤트 참여 API 구현
- 참여자 목록/상세 조회 API 구현
- 당첨자 추첨 및 조회 API 구현
- PostgreSQL 데이터베이스 연동
- Kafka 이벤트 발행 연동
- 로깅 설정 및 실행 프로파일 추가
- .gradle 폴더 Git 추적 제거

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 13:29:10 +09:00
doyeon
c6de9bd1d0 로깅 설정 추가 및 실행 프로파일 수정
- application.yml에 로그 파일 Rolling 설정 추가
- .run 폴더를 Git 추적에 포함하도록 .gitignore 수정
- logs 디렉토리는 Git에서 제외
- IntelliJ 실행 프로파일 구조 개선

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 13:22:39 +09:00
doyeon
e10814f83a .gitignore 업데이트 - 민감 정보 및 로컬 설정 제외
- .gradle/ 추가 (Gradle 캐시)
- .run/ 추가 (IntelliJ 실행 프로파일, DB 비밀번호 포함)
- backing-service/docker-compose.yml 추가 (로컬 개발용 Docker 설정)
2025-10-24 11:18:21 +09:00
cherry2250
ff83dca1a1 Phase 3: content-service JPA 완전 제거 및 Redis 전용 전환
주요 변경사항:
- JPA Entity 3개 삭제 (JobEntity, GeneratedImageEntity, ContentEntity)
- JPA Repository 3개 삭제 (JobJpaRepository, GeneratedImageJpaRepository, ContentJpaRepository)
- JPA Gateway 2개 삭제 (JobGateway, ContentGateway)
- Port 인터페이스 정리: backward compatibility 메서드 제거
- Service 레이어 Redis DTO 전환 (JobManagementService, MockGenerateImagesService, MockRegenerateImageService)
- MockRedisGateway에 ContentReader/ContentWriter 구현 추가 및 Immutable 패턴 처리
- application.yml에서 JPA/H2 설정 제거
- build.gradle에서 JPA 의존성 exclude 처리
- ContentApplication에서 JPA 어노테이션 제거

서비스는 이제 순수 Redis 기반 스토리지로 동작합니다.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 10:46:33 +09:00
cherry2250
5e9e1759ce Content Service Phase 2: Port 인터페이스 구현 및 Gateway 통합
Phase 2 작업으로 Clean Architecture의 의존성 역전 원칙을 적용하여
Service 계층이 Port 인터페이스에만 의존하도록 구조를 개선했습니다.

주요 변경사항:
1. Redis DTO 생성 (Phase 1)
   - RedisAIEventData: AI 이벤트 데이터 DTO
   - RedisImageData: 이미지 데이터 DTO
   - RedisJobData: Job 데이터 DTO

2. Port 인터페이스 생성
   - ImageWriter: 이미지 저장 Port
   - ImageReader: 이미지 조회 Port
   - JobWriter: Job 저장 Port
   - JobReader: Job 조회 Port

3. Gateway 구현
   - RedisGateway: 4개 Port 인터페이스 구현 (Production용)
   - MockRedisGateway: 4개 Port 인터페이스 구현 (Local/Test용)
   - JobGateway: 2개 Port 인터페이스 구현 + @Primary 추가 (Phase 3 삭제 예정)

4. 하위 호환성 유지
   - Port 인터페이스에 레거시 메서드 추가 (save, findById)
   - Service 계층 코드 변경 없이 점진적 마이그레이션
   - "Phase 3에서 삭제 예정" 주석 표시

검증 완료:
- 컴파일 성공
- 서비스 정상 시작 (포트 8084)
- API 정상 작동 확인

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 10:14:54 +09:00
doyeon
ade2719dc7 Revert "Participation Service 백엔드 개발 완료"
This reverts commit e0c1066316dddddbe052bf6e639dc0d7d49b0b0d.
2025-10-24 10:00:48 +09:00
doyeon
e0c1066316 Participation Service 백엔드 개발 완료
주요 구현 사항:
- 이벤트 참여 등록 및 중복 검증 (Redis Cache + DB)
- 참여자 목록 조회 (필터링, 검색, 페이징)
- 당첨자 추첨 (Fisher-Yates Shuffle 알고리즘)
- Kafka 이벤트 발행 (ParticipantRegistered)
- Redis 캐싱으로 성능 최적화
- 전화번호 마스킹 (개인정보 보호)
- 전역 예외 처리 및 검증

기술 스택:
- Spring Boot 3.x + JPA
- MySQL (참여자, 추첨 로그)
- Redis (캐싱, 중복 검증)
- Kafka (이벤트 발행)

API 엔드포인트:
- POST /events/{eventId}/participate
- GET /events/{eventId}/participants
- GET /events/{eventId}/participants/search
- POST /events/{eventId}/draw-winners
- GET /events/{eventId}/winners

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 09:29:03 +09:00
doyeon
50cf1dbcf1 Revert "Participation Service 백엔드 개발 완료"
This reverts commit 5c8aced0431d2f0757b7d93112faaf1a9375a868.
2025-10-24 09:25:23 +09:00
doyeon
5c8aced043 Participation Service 백엔드 개발 완료
주요 구현 사항:
- 이벤트 참여 등록 및 중복 검증 (Redis Cache + DB)
- 참여자 목록 조회 (필터링, 검색, 페이징)
- 당첨자 추첨 (Fisher-Yates Shuffle 알고리즘)
- Kafka 이벤트 발행 (ParticipantRegistered)
- Redis 캐싱으로 성능 최적화
- 전화번호 마스킹 (개인정보 보호)
- 전역 예외 처리 및 검증

기술 스택:
- Spring Boot 3.x + JPA
- MySQL (참여자, 추첨 로그)
- Redis (캐싱, 중복 검증)
- Kafka (이벤트 발행)

API 엔드포인트:
- POST /events/{eventId}/participate
- GET /events/{eventId}/participants
- GET /events/{eventId}/participants/search
- POST /events/{eventId}/draw-winners
- GET /events/{eventId}/winners

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-24 09:21:39 +09:00
cherry2250
6dc6334c75 Content Service Redis 연동 및 테스트 완료
- RedisConfig.java: Production용 Redis 설정 추가
- RedisGateway.java: Redis 읽기/쓰기 Gateway 구현
- application-local.yml: Redis/Kafka auto-configuration 제외 설정
- test-backend.md: 7개 API 테스트 결과서 작성 (100% 성공)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 22:08:17 +09:00
cherry2250
06995864b9 Content Service API 테스트 구현 추가
- REST API Controller 구현 (이미지 생성, Job 조회, 콘텐츠 조회 등)
- Gateway 어댑터 구현 (ContentGateway, JobGateway)
- Mock Gateway 구현 (Redis, CDN, AI 이미지 생성기)
- Mock UseCase 구현 (실제 이미지 생성 시뮬레이션)
- Security 및 Swagger 설정 추가
- 로컬 테스트를 위한 H2 데이터베이스 설정 (application-local.yml)
- 비동기 처리를 위한 @EnableAsync 설정

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 21:30:21 +09:00
cherry2250
3d1dbda74b content-service 핵심 비즈니스 로직 및 영속성 계층 구현 완료
- Domain 모델 구현 (ImageStyle, Platform, GeneratedImage, Content, Job)
- JPA Entity 및 Repository 구현 (3개 엔티티, 3개 리포지토리)
- UseCase 인터페이스 정의 (Inbound 6개, Outbound 8개)
- Service 구현 (JobManagement, GetEventContent, GetImageList, GetImageDetail)
- DTO 구현 (ContentCommand, ContentInfo, ImageInfo, JobInfo)
- Application 설정 (ContentApplication, application.yml)
- 컴파일 오류 수정 및 검증 완료

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 20:48:56 +09:00
cherry2250
ea82ff4748 add common module 2025-10-23 17:54:36 +09:00
wonho
8029d8f9ce 매장정보 조회 API에서 사업자등록번호 제거
- StoreDetailResponse 스키마에서 businessNumber 필드 제거
- 매장정보 조회 응답 예시에서 businessNumber 제거
- User Service의 모든 API에서 사업자등록번호 사용 중단

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 17:27:28 +09:00
wonho
e536e3dfc8 CLAUDE.md에 Lessons Learned 섹션 추가
- Spring Boot 설정 관리 가이드 추가
- 개발 워크플로우 핵심 원칙 추가
- 설정 파일 구조 및 환경 변수 관리 방법 명시
- 컴파일 및 서버 시작 프로세스 정리

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 17:22:43 +09:00
sunmingLee
dea202a3fd 불필요한 폴더 정리 2025-10-23 17:20:31 +09:00
Hyowon Yang
90645a6a42 Merge branch 'main' of https://github.com/ktds-dg0501/kt-event-marketing 2025-10-23 17:19:33 +09:00
Hyowon Yang
546593b9a1 analytics 링고비즈추가 2025-10-23 17:19:02 +09:00
wonho
74d03fd4bf User Service API에서 사업자등록번호 파라미터 제거
- 회원가입 API에서 businessNumber 필드 제거
- API 설명에서 사업자번호 검증 관련 내용 제거
- RegisterRequest 스키마에서 businessNumber required 및 property 제거
- 회원가입 예시에서 businessNumber 제거
- 사업자번호 검증 실패 에러 케이스 제거
- USER_002 에러 코드 제거

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 17:18:44 +09:00
cherry2250
29baa2dee9 edit folder 2025-10-23 17:17:09 +09:00
cherry2250
6b1c4224f7 7개 마이크로서비스 API 명세서 컨벤션 통일
- 공통 OpenAPI 3.0.3 컨벤션 문서 작성 (design/backend/api/API_CONVENTION.md)
- 7개 서비스 API 명세서 표준화 완료:
  * User Service (8081)
  * Event Service (8080)
  * Content Service (8082)
  * AI Service (8083)
  * Participation Service (8084)
  * Distribution Service (8085)
  * Analytics Service (8086)

주요 변경사항:
- API 경로에서 /api prefix 제거 (/api/users → /users)
- 서버 URL 패턴 통일 (Local → Dev → Prod)
- 연락처 정보 표준화 (Digital Garage Team)
- ErrorResponse 스키마 통일 (error → message, details 추가)
- securitySchemes 이름 통일 (BearerAuth)
- 포트 번호 명확히 할당

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 17:12:28 +09:00
cherry2250
b9745f24e5 7개 마이크로서비스 API 설계 완료
- User Service API (7 APIs, 31KB)
- Event Service API (14 APIs, 41KB)
- AI Service API (3 APIs, 26KB)
- Content Service API (6 APIs, 37KB)
- Distribution Service API (2 APIs, 21KB)
- Participation Service API (5 APIs, 25KB)
- Analytics Service API (4 APIs, 28KB)

총 41개 API 엔드포인트, 6,912줄, OpenAPI 3.0 표준 준수
유저스토리 기반 설계, JWT 인증, Kafka/Redis 통합 문서화
API 설계서 작성 완료 (종합 가이드 포함)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 16:56:54 +09:00
wonho
781c3944ed MQ 설치 결과서 작성 (개발 환경)
- Kafka 브로커 정보 추가 (4.230.50.63:9092)
- Consumer Group ID 설정 (ai, analytic)
- Spring Boot 연결 설정 예시 포함
- 토픽 설정 및 연결 테스트 방법 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 16:50:09 +09:00
cherry2250
b571f52abd 파일명 변경: event-이미지* → content-이미지*
변경 이유:
- outer sequence 기준으로 이미지 생성은 Content Service 담당
- 파일명을 서비스 소유권에 맞게 변경

변경 파일:
- event-이미지생성요청.puml → content-이미지생성요청.puml
- event-이미지결과조회.puml → content-이미지결과조회.puml

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 16:37:54 +09:00
cherry2250
3fdde64dd6 Merge branch 'main' of https://github.com/ktds-dg0501/kt-event-marketing 2025-10-23 16:33:24 +09:00
cherry2250
e15b7b42e5 이미지 생성 및 AI 추천 inner sequence 수정
주요 변경사항:
- event-이미지생성요청.puml: Kafka 제거, ContentService 내부 Job 관리로 변경
- event-이미지결과조회.puml: ContentService 패턴으로 업데이트
- event-AI추천요청.puml: Gateway 패턴 추가, 한글화

아키텍처 구분:
- AI 추천: Kafka 사용 (ai-job-topic)
- 이미지 생성: 내부 Job 관리 (Kafka 사용 안 함)

모든 파일:
- Gateway 패턴 적용
- 레이어 아키텍처 (<<API Layer>>, <<Business Layer>>)
- 한글 요청/응답
- Redis 키 패턴 표준화

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 16:31:36 +09:00
cherry2250
d7d4b0a2da inner sequence 동기화 완료 - Gateway 패턴 및 한글화
- event-추천결과조회.puml: Gateway 패턴 추가, 레이어 아키텍처 적용, 한글화
- event-추천안선택.puml: Gateway 패턴 추가, 5단계 구조화, 한글화
- event-콘텐츠선택.puml: ContentService로 변경, Gateway 패턴, 한글화
- event-최종승인및배포.puml: Gateway 패턴 추가, 7단계 구조화, 한글화

모든 파일 공통 변경사항:
- Client actor 및 API Gateway 추가
- <<API Layer>>, <<Business Layer>>, <<Data Layer>> 레이어 구분
- 모든 요청/응답 한글 표시
- Repository CRUD 한글 설명 (SQL 제거)
- Redis 캐시 키 패턴 표준화

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 16:31:16 +09:00
박세원
56f05ba25b CDN에서 Azure Blob Storage로 이미지 저장소 변경
- CDNUploader를 BlobStorageUploader로 교체
- SAS Token 기반 접근 제어 추가 (유효기간 7일)
- Blob Storage Retry 로직 추가 (최대 3회, Exponential Backoff)
- 보안 강화: Public Access 비활성화, 읽기 전용 SAS Token
- Redis 캐싱에 Blob SAS URL 저장 (TTL 7일)
- 성능 영향 최소화 (+0.05-0.1초, 전체의 1-2%)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 16:30:47 +09:00
Hyowon Yang
447d6b8e5d analytics-링고비즈추가
대시보드 조회 내부 시퀀스에 링고비즈 API 호출 추가
- 병렬 API 호출에 링고비즈 추가 (CompletableFuture 4개로 확장)
- Circuit Breaker 및 Fallback 전략 적용
- 데이터 통합 섹션에 링고비즈 통화 완료 수 포함
2025-10-23 16:06:01 +09:00
sunmingLee
146063b22b edit distribution-다중채널배포.puml 2025-10-23 15:43:55 +09:00
cherry2250
edb7045008 outer 및 inner sequence 동기화 및 한글화
변경 사항:
- 이벤트생성플로우 outer: FE → Gateway → User Service 호출 패턴 추가
- user-로그인 inner: 전화번호 → 이메일 기반 인증으로 변경
- user-회원가입 inner: 국세청 API 제거, 이메일 중복검사 추가
- event-목적선택 inner: Gateway 경유, 요청/응답 한글화
- ai-트렌드분석및추천 inner: 과거 이벤트 데이터 제거, Timeout 5분으로 변경
- analytics-대시보드조회 inner: Redis TTL 5분 → 1시간으로 변경

모든 파일에 Repository CRUD 작업 한글 설명 적용 (SQL 제거)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 15:36:45 +09:00
cherry2250
eea1fff98c Outer sequence 다이어그램 수정
1. 고객참여플로우
   - 재추첨 버튼 UI 요소 제거

2. 사용자인증플로우
   - 로그인 input 전화번호 → 이메일/비밀번호로 변경
   - 회원가입 시 이메일 중복검사 로직 추가
   - 전화번호 중복검사도 유지 (이메일 검사 후 수행)

3. 성과분석플로우
   - Redis Cache TTL 5분 → 1시간으로 변경
   - 배치 수집 주기 10분 → 5분으로 변경

4. 이벤트생성플로우
   - 회원/매장정보 조회를 FE에서 직접 수행 후 전달
   - 이벤트 초안 데이터 Redis 저장 (draft:event 키)
   - 최종 승인 시에만 Event DB에 영구 저장
   - AI Service 과거 이벤트 데이터 조회 로직 삭제
   - 이미지 생성 요청 FE → Content Service 다이렉트 호출
   - Job 상태 확인도 Content Service로 직접 조회

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 15:10:37 +09:00
wonho
12baa4bc77 Kafka 백킹서비스 설치 디렉토리 추가
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 15:10:20 +09:00
cherry2250
16f82d3553 이벤트생성플로우 outer sequence 수정
- User Service 회원정보 조회 로직 추가
- AI Service Redis 저장 및 5분 타임아웃 적용
- Content Service Redis 읽기/쓰기 방식으로 변경
- 이미지 생성 5분 타임아웃 적용
- Redis → Event DB 영구 저장 로직 추가
- Kafka 이미지 생성 topic 구독 제거

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-23 14:36:30 +09:00