Conversation
* feat: Review 엔티티 * feat: Comment 엔티티 생성 * feat: Notification 관련 엔티티 및 에넘 * fix: deletedAt, isRead 기본값 수정 * fix: Review isPresented 필드 추가 * fix: added generated id, added AllArgsConstructor, fixed incorrect annotation usage
* ✨feat : store 도메인 엔티티 생성 * ✨ feat : 기본 생성자 및 빌더 추가 * ✨ feat : repository 틀 생성 및 빌더 적용 * ✨ feat : 생성자 어노테이션 추가 * ✨ feat : Enumerated 어노테이션 적용 * ✨ feat : Getter 어노테이션 적용
* feat : image entity 구현 * feat : BaseCreatedEntity 생성 * feat : Pk 관련 Entity,enum 파일 생성 * style : checkstyle 반영 * refactor : builder 수정 * refactor : enumerated 추가 * refactor : rank 예약어 오류 수정
* feat: 게시글(Board) 엔티티 생성(연관관계 제외) - BoardType, BoardStatus enum 매핑 적용 * feat: 게시글-해시태그 연관관계 설정 및 이벤트 관련 엔티티 생성 - Board ↔ BoardHashtag 양방향 연관관계 설정 (게시글 기준 해시태그 조회) - BoardHashtag → Hashtag 단방향 다대일 연관관계 설정 - 연관관계 일관성 유지를 위한 편의 메서드 구현 - Like, Event, BoardEvent 엔티티 생성 - 게시글과 이벤트 간 연관관계 설정 - 모든 엔티티 생성자에 빌더 패턴 적용 (팀 규칙 반영) * rename: Like 엔티티 테이블명을 'likes'로 변경 - 예약어 'like'로 인한 충돌 방지를 위해 테이블명을 'likes'로 수정 * refactor: Event 엔티티 필드에 @column(nullable = false) 설정 추가 * refactor: BoardEvent 생성자에서 잘못된 void 반환 타입 제거
* ✨feat : store 도메인 엔티티 생성 * ✨ feat : 기본 생성자 및 빌더 추가 * ✨ feat : repository 틀 생성 및 빌더 적용 * ✨ feat : 생성자 어노테이션 추가 * ✨ feat : Enumerated 어노테이션 적용 * ✨ feat : Getter 어노테이션 적용 * ♻️ refactor : User 연관관계 추가 및 어노테이션 적용
* feat: 게시글(Board) 엔티티 생성(연관관계 제외) - BoardType, BoardStatus enum 매핑 적용 * feat: 게시글-해시태그 연관관계 설정 및 이벤트 관련 엔티티 생성 - Board ↔ BoardHashtag 양방향 연관관계 설정 (게시글 기준 해시태그 조회) - BoardHashtag → Hashtag 단방향 다대일 연관관계 설정 - 연관관계 일관성 유지를 위한 편의 메서드 구현 - Like, Event, BoardEvent 엔티티 생성 - 게시글과 이벤트 간 연관관계 설정 - 모든 엔티티 생성자에 빌더 패턴 적용 (팀 규칙 반영) * rename: Like 엔티티 테이블명을 'likes'로 변경 - 예약어 'like'로 인한 충돌 방지를 위해 테이블명을 'likes'로 수정 * refactor: Event 엔티티 필드에 @column(nullable = false) 설정 추가 * refactor: BoardEvent 생성자에서 잘못된 void 반환 타입 제거 * feat: 게시글, 공감 엔티티의 연관관계 및 편의 메서드 설정 - 연관관계 설정 및 편의 메서드 구현 * feat: 댓글과 게시글 간 연관관계 설정 * feat: 게시글과 게시글 이미지 연관관계 설정 - 연관관계 편의 메서드 정의하여 양방향 관계 유지
* refactor: 리뷰 연관관계 수정 * fix: joinColumn 수정 * fix: store and board 연관관계 수정
* Feat: 유저 엔티티 추가 * Feat: 파티, 파티초대, 유저/파티 매칭 조건 추가 * Feat: Chat 엔티티 추가 * Feat: 생성일 엔티티 상속 적용 * Feat: 유저 생성자 추가 * Feat: 유저 이미지 연관관계 추가 * Feat: 파티 도메인 연관관계 추가 * Feat: 팔로우 엔티티 추가 * Feat: 유저 취향 엔티티 추가 * Feat: 생성자 추가 * Fix: 연관 관계 맵핑 수정 * Fix: 연관 관계 맵핑 수정 * Feat: Favor 생성자 추가 * Feat: Favor 생성자 추가
* refactor: Comment 연관관계 설정 * feat: create comment controller, service, repository, dto for create request * [Feature] Board, Hashtag, Like 관련 entity 생성 #6 (#12) * feat: 게시글(Board) 엔티티 생성(연관관계 제외) - BoardType, BoardStatus enum 매핑 적용 * feat: 게시글-해시태그 연관관계 설정 및 이벤트 관련 엔티티 생성 - Board ↔ BoardHashtag 양방향 연관관계 설정 (게시글 기준 해시태그 조회) - BoardHashtag → Hashtag 단방향 다대일 연관관계 설정 - 연관관계 일관성 유지를 위한 편의 메서드 구현 - Like, Event, BoardEvent 엔티티 생성 - 게시글과 이벤트 간 연관관계 설정 - 모든 엔티티 생성자에 빌더 패턴 적용 (팀 규칙 반영) * rename: Like 엔티티 테이블명을 'likes'로 변경 - 예약어 'like'로 인한 충돌 방지를 위해 테이블명을 'likes'로 수정 * refactor: Event 엔티티 필드에 @column(nullable = false) 설정 추가 * refactor: BoardEvent 생성자에서 잘못된 void 반환 타입 제거 * [Feature] User, Party, Chat, RandomMatchingCondition 엔티티 #7 (#13) * Feat: 유저 엔티티 추가 * Feat: 파티, 파티초대, 유저/파티 매칭 조건 추가 * Feat: Chat 엔티티 추가 * Feat: 생성일 엔티티 상속 적용 * Feat: 유저 생성자 추가 * Feat: 유저 이미지 연관관계 추가 * feat: add comment creation * feat:add update comment * feat: add update, soft delete api * feat: add getAllComment api * feat: add api to get single comment * feix: add parent, root, child relationships to Comment * refactor: separate root and nested comments for pagination * refactor: remove unnecessary ResponseEntity * fix: corret delete mapping --------- Co-authored-by: modesty <108976049+Chaemin07@users.noreply.github.com> Co-authored-by: YejinYoon <68535398+YejinY00n@users.noreply.github.com>
# Conflicts: # src/main/java/com/example/taste/domain/image/entity/BoardImage.java # src/main/java/com/example/taste/domain/image/entity/Image.java
* feat : image entity 구현 * feat : BaseCreatedEntity 생성 * feat : Pk 관련 Entity,enum 파일 생성 * style : checkstyle 반영 * refactor : builder 수정 * refactor : enumerated 추가 * refactor : rank 예약어 오류 수정 * feat : image, pk entity들 연관관계 추가 * feat : image S3 Service 분리 * feat : image 테스트 전, 기능 구현 완료, 수정 필요 * fix : 테스트 하면서 수정함 * fix : PR template 위치 수정 * fix : 주석 삭제, 불필요한 코드 제거 * fix : ImageService update 수정 * fix : ImageResponseDto builder 삭제 후 생성자 사용
* ✨feat : createBucket 구현 * ✨feat : addStore 구현 * ✨feat : getStore 구현 * ✨feat : 기본 crud 구현 * ✨feat : 기본 crud 구현 * ✨feat : 유효성 검증 * 🚚move : 유저 관련 error code 이동 * 🚚 move : User 도메인 errorcode 이동 * 🐛fix : USER_NOT_FOUND status 수정 * ✨feat : valid 추가 및 message 옵션 적용 * ♻️ refactor : 코드 통일 및 명확성을 위해 enum 클래스 수정 * 🐛 fix : NPE 방지 * 🐛fix : 컨트롤러-서비스 연결안된 부분 연결 * 🐛fix : addBucketItem 트랜잭션 적용 * ♻️ refactor : 버킷명 중복 확인 로직 분리 * ♻️ refactor : validated 에러 핸들러 리턴 타입 수정 * 🔥remove : jpaRepo에서 제공하는 메서드 중복 삭제
* feat : image entity 구현 * feat : Pk 포인트 유형 CRUD 구현 * feat : Pk 포인트 기준 등록시 중복 확인 * feat : 포인트 오버플로우 예외처리 * fix : 오타 수정 * fix : PK 타입 중복 검사 로직 수정 * fix : PK 포인트 적립의 일관성 수정 * fix : requestDto 역직렬화 문제 방지 * fix : Enum Validator 공용 객체로 변경
* style: 테스트를 위해 @NoArgsConstructor access 속성 제거 - 추후 접근제한자 복원 필요 여부 검토 예정 * feat: 게시글 생성 요청 DTO 상속 구조 설계 및 구현 - BoardRequestDto를 상속한 하위 DTO 타입(Normal, Hongdae)을 instanceof로 분기 - 각 타입별로 BoardMapper를 통해 엔티티 변환 및 저장 처리 - dto 내부가 아닌 서비스 계층에서 비즈니스 로직 분기 책임을 수행 - 미구현된 유저/가게 연관 관계는 추후 주석 해제 예정 * refactor: CommonResponse.success 파라미터 타입을 BaseCode로 수정 - SuccessCode에서 BaseCode로 추상화해 공통 코드 처리 * feat: 게시글 관련 성공 및 에러 코드 enum 클래스 구현 * feat: 게시글 엔티티 및 CRUD용 컨트롤러, 서비스 로직 구현 - Board 엔티티 설계 및 User, Store 연관관계 설정 예정 - BoardController에서 게시글 생성/조회/수정/삭제 API 구현 - 서비스에서는 게시글 타입에 따라 분기 처리 및 저장 로직 구성 - 게시글 단건/목록 조회, 상세 조건 기반 조회 기능 기본 틀 마련 * feat: 게시글 요청 DTO → 엔터티 변환용 BoardMapper 클래스 구현 - 일반 게시글과 홍대병 게시글 요청 DTO를 Board 엔터티로 매핑 - Board → BoardListResponseDto 변환 메서드 추가 * feat: 게시글 수정 및 응답 처리를 위한 DTO 클래스 생성 - BoardUpdateRequestDto: 게시글 수정 요청 필드 정의 - BoardResponseDto: 게시글 단건 조회 응답 구조 정의 - BoardListResponseDto: 게시글 목록 조회 응답 구조 정의 * feat: QueryDSL 지원을 위한 커스텀 리포지토리 인터페이스 및 구현체 생성 - 게시글 동적 조회를 위한 BoardRepositoryCustom, BoardRepositoryImpl 클래스 추가 - 기존 BoardRepository에 BoardRepositoryCustom 확장 적용 - QueryDSL 기반 페이징 및 조건 검색 로직 구현 준비 * fix: @builder 사용 시 리스트 초기화를 위한 @Builder.Default 적용 - Lombok 빌더 사용 시 컬렉션 필드가 null로 초기화되는 문제 방지 * refactor: 연관관계 편의 메서드 일관성을 위해 @Setter 제거 - setBoard 메서드를 통한 연관관계 설정 방식으로 통일 * feat: BoardType enum에 @JsonCreator 적용하여 문자열 매핑 지원 - from(String) 메서드에 @JsonCreator 추가로 JSON 역직렬화 시 자동 매핑 가능 - 외부 요청에서 문자열 타입을 안전하게 BoardType으로 변환하도록 개선 * feat: 사용자 ID로 조회하는 findById 서비스 메서드 추가 - userRepository를 통해 사용자 엔티티 조회 - 존재하지 않을 경우 USER_NOT_FOUND 예외 발생 처리 * feat: Store 조회 메서드 추가 및 @transactional 어노테이션 수정 - storeId로 매장 조회하는 findById 메서드 추가 - 매장 미존재 시 STORE_NOT_FOUND 예외 발생 - 트랜잭션 설정이 정상 작동하도록 jakarta → spring 패키지로 변경 * refactor: 게시글 생성 시 사용자 및 맛집 도메인 서비스로부터 조회 처리 - createBoard 메서드에 userId, storeId 파라미터 추가 - userService, storeService를 통해 실제 엔티티 조회 * feat: WebClient 기반 네이버 지도 API 호출 로직 구현 - Controller에서 Service를 통해 Geocoding API 호출 처리 - Service에서 WebClient 사용해 외부 API 동기 방식으로 호출 (block 사용) - 직렬화 오류 해결 전 임시 커밋 * chore: 불필요한 NaverMap 파일 제거 * fix: 잘못된 @param import 수정 - Lettuce용 @param을 JPA용 org.springframework.data.repository.query.Param으로 수정 - JPA @query 문법에서의 파라미터 바인딩 오류 방지 목적 * remove: 테스트용 DummySecurityConfig 파일 삭제 * fix: updatedAt 필드명 오타 수정 * fix: 엔티티 무분별한 인스턴스 생성 방지 - @NoArgsConstructor(access = AccessLevel.PROTECTED) 추가 * feat: 요청 DTO에 유효성 검사 어노테이션 추가 - @Valid를 통한 컨트롤러 단 유효성 검사 적용 * fix: createdAt 필드명 오타 수정 - 잘못된 필드명으로 인한 정렬 오류 방지 * fix: 성공 코드 중복으로 인한 식별 불가 문제 해결 - 각 작업에 고유한 코드(B003~B007) 부여하여 명확한 식별 가능하도록 수정
* feat: Review create dto * feat, fix: add Review creation, fix comment request annotations * chore: fix typo * feat: add update, get Review api * feat: add review deletion api, receipt validation api * refactor: apply custom error * fix: change controller request param to MultipartFile * refactor: replace temporal objects * refactor: replace temporal entities, use custom error of ReviewService * refactor: replace temporal entities, use custom error of CommentService * refactor: add isPresented field to review creation, update dto * chore: security 임시 무력화 * fix: typo, unignore annotation, add pattern annotations * fix: match data type int-> inteager * fix: paging at db level * fix: Review entity, match type, remove redundant validation setting * fix: replace requestbody to requestpart, add null check for image files * fix: prevent image npe, create and use ocr failed custom error * fix: fecting store id instead of user id for redis search key * fix: contents empty check, correct key typo, use custom exception when fetching store * fix: fix key typo, remove image npe check from service * fix: add image npe check at service
* Feat: 로그인 기능 초안 * Feat: 스프링 시큐리티 Config 설정 * Feat: 스프링 시큐리티 설정 * Feat: 회원 가입 * Feat: 로그인 기능 * Feat: 로그인 및 인증 * Feat: 로그아웃 구현 * Fix: 입맛 취향 역직렬화 오류 문제 해결 * Fix: 입맛 취향 역직렬화 오류 문제 해결 * Fix: 회원 가입 시 입맛 취향 저장 로직 에러 수정 * Refactor: 회원 정보 조회 반환 값 수정 * Feat: Favor 값 초기화 컴포넌트 추가 * Refactor: Valid 추가 및 UserFavor Setter 제거 * Refactor: UserErrorCode 수정 * Refactor: Image Cacade 수정 * Refactor: 로그아웃 시 세션 비우기, 회원가입 이미지 저장 로직 변경 * Refactor: signup 검증 어노테이션 및 파라미터명 명시 * Refactor: Favor Admin 리스트 검증 추가 * Refactor: 입맛 취향 업데이트 로직 변경
* feat : image entity 구현 * refactor : Pk 포인트 관리 캐싱 로직 리팩토링 * refactor : Pk 컨트롤러에 security 추가 * refactor : reviewService 내 redisTemplate 형변환 수정 * refactor : 코드래빗 코드리뷰 반영 수정 * refactor : LocalDate 시스템 로케일 수정
* ♻️ refactor : 버킷명 중복 검사 로직에 패턴 적용 * ✨ feat : 이미지 추가 반환 * ✨ feat : 리뷰 생성, 삭제 시 store에도 반영 * ️ refactor : 공통 응답 적용 및 유저 id 추출 * ♻️ refactor : dto에서 비즈니스 로직 분리 * ♻️ refactor : 정적 팩토리 메서드명 변경 * ️ refactor : NPE 방지
* fix : pkTermRanking batch tasklet에 배치 사이즈 적용 jooqCursor * fix : pkTermRanking batch tasklet에 배치 사이즈 적용 jooqCursor * fix : user 프록시 객체 만들기 적용 * fix : 유저 포인트 초기화 로그 남기기 * chore : testuser -> postgres로 바꾸기 * refactor : 배치 리팩토링 * chore : cloudfront 의존성 변경 * rafactor : 시간 변경 * rafactor : user id 세터 제거 * rafactor : retry utils 제거 * rafactor : ai 리팩토링, 커넥션 프로바이더, 서킷 브레이커, 에러 메시지큐 적용 * chore : rabbitmq ci/cd 적용 * chore : rabbitmq ci/cd 적용, recommend mq ttl 수정 * refactor : ttl 적용 * refactor : ttl 적용 * chore : build gradle retry 추가 * chore : build gradle retry 추가 * chore : build gradle retry 추가 * chore : build gradle retry 추가 * chore : build gradle retry 추가
* 🐛 fix : dto 정규표현식 수정 * ✨ feat : 포스팅 횟수 증가 및 예외처리 * ✨ feat : postingCount 스케줄링 * ✨ feat : 게시글 조회시 검증 로직 추가 * ✨ feat : 오픈런 게시글 closed 하는 스케줄러 구현 * ♻️ refactor : 스케줄링 누락 방지 * ✨ feat : board status 변경 메서드 구현 * 🐛 fix : 에러코드 수정 * ✨ feat : 선착순 기능 구현 및 책임 분리 * 🐛 fix : 오류 해결 * ✨ feat : 오픈런 게시글 조회 api 구현 * ✨ feat : 페이징 디폴트값 설정 * 🐛 fix : 임시 버그 수정 * ✨ feat : 웹소켓 관련 오픈런 게시글 기능 구현 * 🔥 remove : 주석 정리 * 🐛 fix : jpa 메서드명 관련 오류 해결 * 🐛 fix : 오류 수정 및 리팩토링 * 🐛 fix : 유효성 검증 어노테이션 수정 * ♻️ refactor : 불필요한 래퍼 클래스 기본 타입으로 변경, clearAutomatically 옵션 적용 * ♻️ refactor : 삭제된 데이터 제외하고 조회 * 🧪 test : 테스트코드 작성 및 일부 수정 * 🐛 fix : 코드리뷰 반영 * ♻️ refactor : 하드코딩된 코드 수정 * 🐛 fix : 웹소켓 config 수정 반영 * 🐛 fix : null 검증 * 🐛 fix : 오류 해결 * 🐛 fix : 오류 해결 * ✨ feat : 소켓 세션 수 모니터링 위한 클래스 생성 * ✨ feat : 구독 시점에 성능 테스트 하도록 구조 변경 * ✨ feat : 부하테스트 로직 구현 * fix : import 수정 * ♻️ refactor : 책임 분리 * 🧪 test : 테스트코드 위치 수정 및 오류 수정 * 🔥 remove : 불필요한 모니터링 설정 삭제 * 🐛 fix : npe 오류 해결 * ✨ feat : 테스트용 소켓 registry 추가 * ✨ feat : 선착순 게시글 redis 캐시 적용 * ✨ feat : 소켓 통신 로그 설정 추가 * ✨ feat : redis 메모리 사용 최적화 * 🛠️ chore : 클래스명 변경 * 🛠️ chore : 주석 제거 및 로깅 * ♻️ refactor : dto 세터 제거 및 쿼리 반환용 dto 생성 * ✨ feat : 메세지큐 적용 * 🧪 test : 테스트코드 작성 * ♻️ refactor : 테스트코드 예외 try-catch * ♻️ refactor : boardFixture 메서드 통일 * ♻️ refactor : rabbitMQ 상수 클래스 분리 * 🛠️ chore : 설정 파일 수정 * 🛠️ chore : host 명 변경 * 🛠️ chore : host명 변경 * 🛠️ chore : rabbitmq 설정 수정 * 🐛 fix : 스레드 대기, 타임아웃 시간 연장 * fix : 테이블 유니크 설정, 테스트코드 태그 적용 * fix : ci 제외
* remove: 설정 통합으로 불필요한 설정 클래스 제거 * feat: OpenAI 임베딩 및 PostgreSQL 설정 추가 - 공통 및 로컬 프로퍼티에 OpenAI 임베딩 설정 항목 추가 - 로컬 환경용 PostgreSQL DataSource 설정 추가 (search 스키마 기반) - spring-ai 및 postgresql 의존성 추가로 임베딩 및 벡터 검색 기반 기능 준비 * feat: 다중 데이터소스 환경 구성 및 배치 설정 개선 - EventWinnerBatchConfig에 DataSource 및 TransactionManager 의존성 주입 - MySQL, PostgreSQL 각각의 JPA 설정 클래스 분리 (MySQL은 기본 설정으로 구성) - PostgreSQL 설정에 Hibernate 속성 추가 (hbm2ddl.auto, dialect) - 각 데이터소스에 맞춰 @EnableJpaRepositories로 Repository 범위 지정 * feat: 임베딩 테스트용 컨트롤러 및 검색 전용 엔티티 추가 - StoreSearch 엔티티 생성 (PostgreSQL, pgvector 기반) - store_name, 위도/경도, categoryName, embeddingVector 필드 포함 - 임베딩 벡터 저장 및 동기화 상태 관리를 위한 SyncStatus 필드 추가 - 간단한 임베딩 테스트용 컨트롤러, 서비스, 요청 DTO 구성 * feat: 가게 저장 및 임베딩 벡터 생성을 위한 기능 추가 중 - Store 엔티티에 위도/경도 좌표 변환용 static 메서드 추가 - 행정동 주소 추출 실패 시 ADMCODE_NOT_FOUND 예외 코드 정의 - 가게 저장 및 임베딩 생성을 위한 서비스 로직 구현 중 (진행 중) * feat: PGVector 필드 도입 및 카테고리 매니저 클래스 생성 - pgvector 라이브러리 의존성 추가 - 임베딩 저장을 위한 PGVector 필드 추가 예정에 따른 준비 작업 - CategoryManager 클래스 생성하여 음식 카테고리 및 지역 키워드 관리 - 검색 요청 시 카테고리 유효성 검사 및 빈도 카운팅 기능 포함 * chore: Hibernate Vector 지원 설정 추가 - 데이터소스 URL에 stringtype=unspecified 옵션 추가 - hibernate.type.preferred_vector_jdbc_type=ARRAY 설정으로 Vector 컬럼 매핑 지원 * feat: 지하철역 GEOM 데이터 CSV 파일 추가 - 지하철역 위치 정보를 담은 '지하철역_GEOM (역사마스터).csv' resources/data 하위에 추가 - 향후 공간 기반 기능 및 데이터 분석에 활용 예정 * feat: 가게 임베딩 벡터 기반 검색 기능 추가 - 가게 검색용 Request/Response DTO에 벡터 검색 관련 필드 추가 - StoreService에 임베딩 벡터 유사도 기반 검색 로직 구현 - StoreController에 벡터 검색 처리용 메서드 추가 - Store 엔터티에 벡터 검색용 필드 및 매핑 추가 * feat: 벡터 유사도 검색용 QueryDSL 확장 유틸 추가 - pgvector 연산자(<=>, <->, <#>) 대응용 SimpleExpression 메서드 정의 * feat: 지하철역(station) 도메인 엔티티 및 초기화 로직 추가 - Station 엔티티 및 CSV 파싱용 StationCsv dto클래스 추가 - 초기 데이터 로드를 위한 StationInitializer 구성 * feat: 임베딩 벡터 생성 및 초기화 기능 추가 - EmbeddingService, EmbeddingController 구현으로 임베딩 생성 로직 분리 - Store 임베딩 초기화를 위한 StoreEmbeddingUpdater 클래스 추가 - 벡터 임베딩 기능 테스트용 임시 컨트롤러 메서드 작성 * chore: 게시글 벡터 검색 기능 구현 전 임시 커밋 - Board 도메인 관련 엔티티, 레포지토리, 서비스 클래스 정비 - 벡터 검색 기능 구현을 위한 기반 코드 및 조건 클래스 추가 - CategoryManager 등 일부 유틸 클래스 수정 포함 * chore: Spring AI 임베딩용 환경 변수 분리 적용 - spring.ai.openai.api-key 설정을 OPENAI_EMBEDDING_API_KEY로 수정 * chore: 사용하지 않는 코드 주석 처리 * chore: ci 수정 * chore: DB 확장 필드 추가 * chore: 도커 이미지 수정 * refactor: 게시글 검색 조건 null 처리 및 필터 기준 상수화 * fix: /api/em으로 엔드포인트수정 * refactor: 임베딩 검색 로직 개선 및 테스트 API 보안 강화 - board.getTitle(), board.getContents()에 대한 null 안전성 확보 - 키워드 필터링 조건을 하드코딩에서 상수로 분리하여 유연성 향상 - VectorQueryDslExtension을 final 클래스로 선언하여 유틸리티 성격 명확화 - 테스트 API 경로를 /api/em으로 수정하여 프로덕션 노출 방지 - KoreanTextProcessor 메서드를 재사용하여 중복된 위치 키워드 로직 제거 - 임베딩 벡터 로깅 시 전체 대신 길이만 출력하도록 수정 - @notblank 어노테이션 주석 해제하여 검색어 유효성 검증 추가
* jooq 삭제, 경로 변경 * Revert "jooq 삭제, 경로 변경" This reverts commit 76625ad. * refactor: 알림 발행 전략 패턴 적용 * feat: 관리자 개인 알림 발송 엔드포인트 추가 * refactor: : ocr 서비스 응답 추출 과정 클래스 메서드화, 응답 null 예외 처리 * refactor: 리뷰 수정에서 빈칸은 내용 지움, null은 수정 없음 으로 변경 * refactor: 알림 조회 메서드 하나로 병합 * test: 유저 직접 주입/ 더미 유저 주입 비교 테스트 * test: 리뷰, 댓글 서비스 테스트코드, 알림 생성 엔드 투 엔드 테스트 대비 로깅 * fix: 알림 삭제 방식 변경 * chore: 미사용 로직 제거 * chore: 예외 메시지 수정 * chore: 테스트용 로직 제거 * fix: 단체 알림 생성 서비스 잘못된 user id 사용 수정 * test: notification admin service test * test: 알림 테스트 * refactor: web push service 외부 주입 * test: admin notification service 테스트 정밀화 * test: 테스트 오탈자 수정 * test: 테스트 오탈자 수정 * test: 바뀐 board fixture 적용 * chore: store repository 수정
* jooq 삭제, 경로 변경 * Revert "jooq 삭제, 경로 변경" This reverts commit 1ed2be7. * refactor: 알림 발행 전략 패턴 적용 * feat: 관리자 개인 알림 발송 엔드포인트 추가 * refactor: : ocr 서비스 응답 추출 과정 클래스 메서드화, 응답 null 예외 처리 * refactor: 리뷰 수정에서 빈칸은 내용 지움, null은 수정 없음 으로 변경 * refactor: 알림 조회 메서드 하나로 병합 * test: 유저 직접 주입/ 더미 유저 주입 비교 테스트 * test: 리뷰, 댓글 서비스 테스트코드, 알림 생성 엔드 투 엔드 테스트 대비 로깅 * fix: 알림 삭제 방식 변경 * chore: 미사용 로직 제거 * chore: 예외 메시지 수정 * chore: 테스트용 로직 제거 * fix: 단체 알림 생성 서비스 잘못된 user id 사용 수정 * test: notification admin service test * test: 알림 테스트 * refactor: web push service 외부 주입 * test: admin notification service 테스트 정밀화 * test: 테스트 오탈자 수정 * test: 테스트 오탈자 수정 * test: 바뀐 board fixture 적용 * chore: store repository 수정
* Feat: 파티 조회 정렬 기준 및 페이징(Slice) 추가 * Feat: 파티 상태 업데이트 배치 임시 저장 * Feat: 파티 만료/삭제 스케줄러 --> 배치로 구현 * Remove: 배치 JooQ 관련 파일 삭제 * Fix: 배치 실행 오류 해결 * Test: 파티 상태 업데이트 배치 테스트 코드 추가 * Test: 파티 랜덤 매칭 테스트 및 더미데이터 추가 코드 * Refactor: 로그인 프로젝션 추가 * Refactor: 로그인 프로젝션 추가 * Feat: PartyRandomMatchInfo 캐싱 적용 및 캐시 정보(파티 평균 연령) 업데이트 로직 추가 * Fix: 로직 오류 수정 * Fix: 빌더 충돌 해결 * Fix: 매치/유저 더미 성능 테스트 프로필 test-int 변경 * Fix: 배치 테스트 프로필 교체 * Test: 테스트 코드 로깅 수정 * Fix: 로컬 병합 충돌 해결 * Refactor: CI 테스트 제외 수정
* Feat: 파티 조회 정렬 기준 및 페이징(Slice) 추가 * Feat: 파티 상태 업데이트 배치 임시 저장 * Feat: 파티 만료/삭제 스케줄러 --> 배치로 구현 * Remove: 배치 JooQ 관련 파일 삭제 * Fix: 배치 실행 오류 해결 * Test: 파티 상태 업데이트 배치 테스트 코드 추가 * Test: 파티 랜덤 매칭 테스트 및 더미데이터 추가 코드 * Refactor: 로그인 프로젝션 추가 * Refactor: 로그인 프로젝션 추가 * Feat: PartyRandomMatchInfo 캐싱 적용 및 캐시 정보(파티 평균 연령) 업데이트 로직 추가 * Fix: 로직 오류 수정 * Fix: 빌더 충돌 해결 * Fix: 매치/유저 더미 성능 테스트 프로필 test-int 변경 * Fix: 배치 테스트 프로필 교체 * Test: 테스트 코드 로깅 수정 * Fix: 로컬 병합 충돌 해결 * Refactor: CI 테스트 제외 수정
* Test: 유저 서비스(팔로우, 입맛, 기본 CRUD) 테스트 코드 작성 * Test: UserFacade 서비스 테스트 * Test: UserService 테스트 추가 * Test: FavorAdminService 테스트 코드 추가 및 userFavor 연관관계 삭제 로직 추가 * Test: AuthnService 테스트 코드 추가 * Test: FavorAdminService 업데이트 테스트 코드 추가 * Fix: 테스트 mock return 추가 * Fix: 오류 수정
* remove: 설정 통합으로 불필요한 설정 클래스 제거 * feat: OpenAI 임베딩 및 PostgreSQL 설정 추가 - 공통 및 로컬 프로퍼티에 OpenAI 임베딩 설정 항목 추가 - 로컬 환경용 PostgreSQL DataSource 설정 추가 (search 스키마 기반) - spring-ai 및 postgresql 의존성 추가로 임베딩 및 벡터 검색 기반 기능 준비 * feat: 다중 데이터소스 환경 구성 및 배치 설정 개선 - EventWinnerBatchConfig에 DataSource 및 TransactionManager 의존성 주입 - MySQL, PostgreSQL 각각의 JPA 설정 클래스 분리 (MySQL은 기본 설정으로 구성) - PostgreSQL 설정에 Hibernate 속성 추가 (hbm2ddl.auto, dialect) - 각 데이터소스에 맞춰 @EnableJpaRepositories로 Repository 범위 지정 * feat: 임베딩 테스트용 컨트롤러 및 검색 전용 엔티티 추가 - StoreSearch 엔티티 생성 (PostgreSQL, pgvector 기반) - store_name, 위도/경도, categoryName, embeddingVector 필드 포함 - 임베딩 벡터 저장 및 동기화 상태 관리를 위한 SyncStatus 필드 추가 - 간단한 임베딩 테스트용 컨트롤러, 서비스, 요청 DTO 구성 * feat: 가게 저장 및 임베딩 벡터 생성을 위한 기능 추가 중 - Store 엔티티에 위도/경도 좌표 변환용 static 메서드 추가 - 행정동 주소 추출 실패 시 ADMCODE_NOT_FOUND 예외 코드 정의 - 가게 저장 및 임베딩 생성을 위한 서비스 로직 구현 중 (진행 중) * feat: PGVector 필드 도입 및 카테고리 매니저 클래스 생성 - pgvector 라이브러리 의존성 추가 - 임베딩 저장을 위한 PGVector 필드 추가 예정에 따른 준비 작업 - CategoryManager 클래스 생성하여 음식 카테고리 및 지역 키워드 관리 - 검색 요청 시 카테고리 유효성 검사 및 빈도 카운팅 기능 포함 * chore: Hibernate Vector 지원 설정 추가 - 데이터소스 URL에 stringtype=unspecified 옵션 추가 - hibernate.type.preferred_vector_jdbc_type=ARRAY 설정으로 Vector 컬럼 매핑 지원 * feat: 지하철역 GEOM 데이터 CSV 파일 추가 - 지하철역 위치 정보를 담은 '지하철역_GEOM (역사마스터).csv' resources/data 하위에 추가 - 향후 공간 기반 기능 및 데이터 분석에 활용 예정 * feat: 가게 임베딩 벡터 기반 검색 기능 추가 - 가게 검색용 Request/Response DTO에 벡터 검색 관련 필드 추가 - StoreService에 임베딩 벡터 유사도 기반 검색 로직 구현 - StoreController에 벡터 검색 처리용 메서드 추가 - Store 엔터티에 벡터 검색용 필드 및 매핑 추가 * feat: 벡터 유사도 검색용 QueryDSL 확장 유틸 추가 - pgvector 연산자(<=>, <->, <#>) 대응용 SimpleExpression 메서드 정의 * feat: 지하철역(station) 도메인 엔티티 및 초기화 로직 추가 - Station 엔티티 및 CSV 파싱용 StationCsv dto클래스 추가 - 초기 데이터 로드를 위한 StationInitializer 구성 * feat: 임베딩 벡터 생성 및 초기화 기능 추가 - EmbeddingService, EmbeddingController 구현으로 임베딩 생성 로직 분리 - Store 임베딩 초기화를 위한 StoreEmbeddingUpdater 클래스 추가 - 벡터 임베딩 기능 테스트용 임시 컨트롤러 메서드 작성 * chore: 게시글 벡터 검색 기능 구현 전 임시 커밋 - Board 도메인 관련 엔티티, 레포지토리, 서비스 클래스 정비 - 벡터 검색 기능 구현을 위한 기반 코드 및 조건 클래스 추가 - CategoryManager 등 일부 유틸 클래스 수정 포함 * chore: Spring AI 임베딩용 환경 변수 분리 적용 - spring.ai.openai.api-key 설정을 OPENAI_EMBEDDING_API_KEY로 수정 * chore: 사용하지 않는 코드 주석 처리 * chore: ci 수정 * chore: DB 확장 필드 추가 * chore: 도커 이미지 수정 * test: 게시글 생성 및 조회 단위 테스트 코드 작성 및 빌더 생성자 메서드 형식 통일 - BoardFixture에 createNormalBoard(dto, store, user) 메서드 추가 - NormalBoardCreationStrategy에 title, contents, type, accessPolicy 필드 명시적 설정 - 게시글 서비스 생성 및 조회 단위 테스트 코드 작성 * test: 게시글 해시태그 적용 단위 테스트 작성 * test: 가게 서비스 단위 테스트 코드 작성 - 가게 생성, 조회, 삭제 기능 단위 테스트 작성 - 카테고리 조회 및 생성 로직에 대한 테스트 추가 - 유사도 기반 가게 검색 및 예외 상황 테스트 포함 - 임베딩 텍스트 생성 테스트 검증 * test: 지오코드 api 임시 커밋 * test: 임시 커밋 * test: 네이버 지도 api 단위 테스트 코드 작성 * test: 게시글 조회 시 FCFS 정책에 따른 예외/성공 시나리오 테스트 보완 * chore: 주석 제거 * feat: 접근제어자 수정
* test : 주소 api 서비스 코드 생성 * test : open api 임베딩 key 환경변수 등록 * test : address, weather 테스트 코드 작성 * test : 이미지, 추천 통합 테스트 코드 작성 * test : ai 추천 서비스 테스트 코드 작성, 필요 없는 코드들/주석 삭제 * test : ai 추천 서비스 테스트 코드 작성, 필요 없는 코드들/주석 삭제 * chore : 주석 삭제 * chore : 주석 삭제
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
📌 관련 이슈
✨ 기능 요약
📝 상세 내역