Klaus
eed755fd11
feat(admin-character): 캐릭터 수정 API
...
- 태그 중복 매핑이 되지 않도록 수정
2025-08-12 21:03:06 +09:00
Klaus
74a612704e
feat(admin-character): 캐릭터 수정 API
...
- 태그 중복 매핑이 되지 않도록 수정
2025-08-12 20:40:25 +09:00
Klaus
8defc56d1e
ExternalApiData에 @JsonIgnoreProperties(ignoreUnknown = true)를 추가하여 없는 필드는 무시하도록 수정
2025-08-12 18:22:37 +09:00
Klaus
1db20d118d
ExternalApiResponse
...
- 각 필드에 JsonProperty 추가
2025-08-12 18:08:45 +09:00
Klaus
7a70a770bb
캐릭터 Controller
...
- exception print
2025-08-12 17:54:39 +09:00
Klaus
cc9e4f974f
캐릭터 Controller
...
- exception print
2025-08-12 17:38:45 +09:00
Klaus
2965b8fea0
feat(admin-character): 캐릭터 리스트, 캐릭터 상세
...
- CharacterType: 첫 글자만 대문자, 나머지 소문자로 변경
- 이미지가 null 이면 ""으로 변경
2025-08-12 17:01:51 +09:00
Klaus
00c617ec2e
feat(admin-character): 캐릭터 상세 결과에 characterType 추가
2025-08-12 16:45:25 +09:00
Klaus
01ef738d31
feat(chat-character): 캐릭터 상세 조회 응답 확장 및 ‘다른 캐릭터’ 추천 추가
...
- 상세 페이지 정보 강화 및 탐색성 향상을 위해 응답 필드를 확장
- CharacterDetailResponse에 originalTitle, originalLink, characterType, others 추가
- OtherCharacter DTO 추가 (characterId, name, imageUrl, tags)
- 공유 태그 기반으로 현재 캐릭터를 제외한 랜덤 10개 캐릭터 조회 JPA 쿼리 추가
- ChatCharacterRepository.findRandomBySharedTags(@Query, RAND 정렬, 페이징)
- 서비스 계층에 getOtherCharactersBySharedTags 추가 및 태그 지연 로딩 초기화
- 컨트롤러에서:
- others 리스트를 조회/매핑하여 응답에 포함
- originalTitle, originalLink, characterType을 응답에 포함
2025-08-12 03:47:48 +09:00
Klaus
423cbe7315
feat(chat-character): 캐릭터 상세 조회 응답 스키마 간소화 및 태그 포맷 규칙 적용
...
- CharacterDetailResponse에서 불필요 필드 제거
- 제거: age, gender, speechPattern, speechStyle, appearance, memories, relationships, values, hobbies, goals
- 성격(personalities), 배경(backgrounds)을 각각 첫 번째 항목 1개만 반환하도록 변경
- 단일 객체(Optional)로 응답: CharacterPersonalityResponse?, CharacterBackgroundResponse?
- 태그 포맷 규칙 적용
- 태그에 # 프리픽스가 없으면 붙이고, 공백으로 연결하여 단일 문자열로 반환
- Controller 로직 정리
- 불필요 매핑 제거 및 DTO 스키마 변경에 맞춘 변환 로직 반영
2025-08-12 03:16:29 +09:00
Klaus
afb003c397
feat(chat-character): 원작/원작 링크/캐릭터 유형 추가 및 외부 API 호출 분리
...
- ChatCharacter 엔티티에 originalTitle, originalLink(Nullable), characterType(Enum) 필드 추가
- characterType: CLONE | CHARACTER (기본값 CHARACTER)
- 원작/원작 링크는 빈 문자열 대신 null 허용으로 저장
- Admin DTO(Register/Update)에 originalTitle, originalLink, characterType 필드 추가
- 등록 API에서 외부 API 요청 바디에 3개 필드(originalTitle, originalLink, characterType) 제외 처리
- 수정 API에서 3개 필드만 변경된 경우 외부 API 호출 생략하고 DB만 업데이트
- hasChanges: 외부 API 대상 필드 변경 여부 판단(3개 필드 제외)
- hasDbOnlyChanges: 3개 필드만 변경된 경우 처리 분기
- Service 계층에 필드 매핑 및 Enum 파싱 추가
- createChatCharacter / createChatCharacterWithDetails에 originalTitle/originalLink/characterType 반영
- 이름 중복 검증 로직 유지, isActive=false 비활성화 이름 처리 로직 유지
2025-08-12 02:58:26 +09:00
Klaus
2dc5a29220
feat(chat-character): 관계 name 필드 추가에 따른 등록/수정/조회 로직 및 DTO 반영
...
- 관계 스키마를 name, relationShip 구조로 일원화
- Admin/사용자 컨트롤러 조회 응답에서 관계를 객체로 반환하도록 수정
- 등록/수정 요청 DTO에 ChatCharacterRelationshipRequest(name, relationShip) 추가
- 서비스 계층 create/update/add 메소드 시그니처 및 매핑 로직 업데이트
- description 한 줄 소개 사용 전제 하의 관련 사용부 점검(엔티티 컬럼 구성은 기존 유지)
2025-08-12 02:13:46 +09:00
Klaus
c525ec0330
feat(chat): 내 채팅방 목록 페이징 적용 및 page 파라미터 추가
...
- Repository에 Pageable 인자로 전달하여 DB 레벨 limit/offset 적용
- Service에서 PageRequest.of(page, 20)로 20개 페이지 처리 고정
- Controller /api/chat/room/list에 page 요청 파라미터 추가 및 전달
왜: 참여 중인 채팅방 목록이 페이징되지 않아 20개 단위로 최신 메시지 기준 내림차순 페이징 처리 필요
2025-08-11 14:26:00 +09:00
Klaus
735f1e26df
feat(chat-character): 최근 대화한 캐릭터 조회 구현 및 메인 API 연동
...
왜: 기존에는 채팅방 미구현으로 최근 대화 리스트를 빈 배열로 응답했음. 채팅방/메시지 기능이 준비됨에 따라 실제 최근 대화 캐릭터를 노출해야 함.
무엇:
- repository: findRecentCharactersByMember JPA 쿼리 추가 (채팅방/참여자/메시지 조인, 최신 메시지 기준 정렬)
- service: getRecentCharacters(member, limit) 구현 (member null 처리 및 페이징 적용)
- controller: /api/chat/character/main에서 인증 사용자 기준 최근 캐릭터 최대 10개 반환
2025-08-11 11:33:35 +09:00
Klaus
5129400a29
fix(banner): 캐릭터 검색 결과
...
- Paging 관련 데이터 중 totalCount만 반환
2025-08-08 21:46:47 +09:00
Klaus
a6a01aaa37
fix(banner): 캐릭터 검색
...
- 검색 결과에 imageHost와 imagePath 사이에 / 추가
2025-08-08 21:19:37 +09:00
Klaus
b819df9656
feat(securityConfig): 아래 API는 로그인 하지 않아도 조회할 수 있도록 수정
...
- /api/chat/list
2025-08-08 17:31:21 +09:00
Klaus
5d1c5fcc44
fix(chat): 채팅방 메시지
...
- 메시지 DB 타입을 TEXT로 변경
2025-08-08 17:11:38 +09:00
Klaus
ebad3b31b7
fix(chat): 채팅방 메시지 전송 API
...
- 빈 메시지이면 전송하지 않고 반환
2025-08-08 16:52:30 +09:00
Klaus
3e9f7f9e29
fix(chat): 채팅방, 채팅방 메시지, 채팅방 참여자 엔티티 이름 변경
...
- CharacterChatRoom -> ChatRoom
- CharacterChatMessage -> ChatMessage
- CharacterChatParticipant -> ChatParticipant
2025-08-08 16:47:47 +09:00
Klaus
4b3463e97c
feat(chat): 채팅방 메시지 전송 API 구현
2025-08-08 16:41:53 +09:00
Klaus
002f2c2834
feat(chat): 채팅방 메시지 조회 API 구현
2025-08-08 16:00:30 +09:00
Klaus
1509ee0729
feat(chat): 채팅방 나가기 API 구현
2025-08-08 15:48:20 +09:00
Klaus
830e41dfa3
feat(chat): 채팅방 세션 조회 API 구현
2025-08-08 15:15:29 +09:00
Klaus
4d1f84cc5c
feat(chat-room): 채팅방 목록 API 응답 구조 개편 및 최근 메시지/프로필 이미지 제공\n\n- 페이징 객체 제거: ApiResponse<List<ChatRoomListItemDto>> 형태로 반환\n- 메시지 보낸 시간 필드 제거\n- 상대방(캐릭터) 프로필 이미지 URL 제공 (imageHost/imagePath 조합 -> imageUrl)\n- 가장 최근 메시지 1개 미리보기 제공 (최대 25자, 초과 시 ... 처리)\n- 목록 조회 쿼리 투영 DTO 및 정렬 로직 개선 (최근 메시지 없으면 방 생성 시간 사용)\n- 비인증/미본인인증 사용자: 빈 리스트 반환
2025-08-08 14:27:25 +09:00
Klaus
1bafbed17c
feat(chat): 채팅방 생성 API 구현
...
- 채팅방 생성 및 조회 기능 구현
- 외부 API 연동을 통한 세션 생성 로직 추가
- 채팅방 참여자(유저, 캐릭터) 추가 기능 구현
- UUID 기반 유저 ID 생성 로직 추가
2025-08-08 00:27:25 +09:00
Klaus
694d9cd05a
feat(character chat room): 채팅방, 채팅메시지, 채팅방 참여자 엔티티 구성
2025-08-07 23:35:57 +09:00
Klaus
60172ae84d
feat(character): 캐릭터 상세 조회 API 추가
...
- 캐릭터 ID로 상세 정보를 조회하는 API 엔드포인트 추가
- 캐릭터 상세 정보 조회 서비스 메서드 구현
- 캐릭터 상세 정보 응답 DTO 클래스 추가
2025-08-07 23:10:36 +09:00
Klaus
7e7a1122fa
refactor(character): 최근 등록된 캐릭터 조회 로직 개선
...
조회할 때부터 isActive = true, limit 10개를 불러오도록 리팩토링
- ChatCharacterRepository에 findByIsActiveTrueOrderByCreatedAtDesc 메소드 추가
- ChatCharacterService의 getNewCharacters 메소드 수정
2025-08-07 22:40:06 +09:00
Klaus
a1533c8e98
feat(character): 캐릭터 메인 API 추가
2025-08-07 22:33:29 +09:00
Klaus
b0a6fc6498
feat: weraser api 연동 부분
...
- exception 발생시 exception message도 같이 출력
2025-08-07 21:18:29 +09:00
Klaus
74ed7b20ba
feat: 캐릭터 생성/수정 Request
...
- JsonProperty 추가
2025-08-07 20:48:27 +09:00
Klaus
206c25985a
fix: 캐릭터 리포지토리
...
- active -> isActive로 변경
2025-08-07 16:52:41 +09:00
Klaus
0001697274
fix: 환경변수 값 변수명 수정
2025-08-07 16:15:56 +09:00
Klaus
add21c45c5
fix(캐릭터 성격특성): description SQL 컬럼 타입 TEXT로 변경
2025-08-07 16:01:53 +09:00
Klaus
ef8458c7a3
feat(banner): 정렬 순서 추가
2025-08-07 15:31:03 +09:00
Klaus
81f972edc1
fix(banner): ChatCharacterBanner 엔티티의 isActive 속성 참조 오류 수정
...
- 사용하지 않는 메서드 제거
2025-08-07 14:45:28 +09:00
Klaus
c729a402aa
feat(banner): 배너 등록/수정/삭제 API
2025-08-07 14:38:09 +09:00
Klaus
2335050834
feat(admin): 관리자 페이지 캐릭터 상세 API 구현
2025-08-07 12:30:19 +09:00
Klaus
6340ed27cf
fix(chat): ChatCharacter 엔티티의 isActive 속성 참조 오류 수정
2025-08-07 12:01:34 +09:00
Klaus
618f80fddc
feat(admin): 관리자 페이지 캐릭터 리스트 API 구현
...
1. isActive가 true인 캐릭터만 조회하는 기능 구현
2. 페이징 처리 구현 (기본 20개 조회)
3. 필요한 데이터 포함 (id, 캐릭터명, 프로필 이미지, 설명, 성별, 나이, MBTI, 태그, 성격, 말투, 등록일, 수정일)
2025-08-07 11:59:21 +09:00
Klaus
45b6c8db96
git commit -m "fix(chat): 캐릭터 등록/수정 API
...
- 이름 중복 검사 로직 추가
2025-08-06 22:19:52 +09:00
Klaus
5132a6b9fa
feat(character): 캐릭터 수정 API 구현
...
- ChatCharacterUpdateRequest 클래스 추가 (모든 필드 nullable)
- ChatCharacter 엔티티의 필드를 var로 변경하여 수정 가능하게 함
- 이미지 포함/제외 수정 API를 하나로 통합
- 변경된 데이터만 업데이트하도록 구현
- isActive가 false인 경우 특별 처리 추가
2025-08-06 21:59:16 +09:00
Klaus
de6642b675
git commit -m "feat(chat): 캐릭터 등록 API 구현
...
- 외부 API 호출 및 응답 처리 구현
- 이미지 파일 S3 업로드 기능 추가
- Multipart 요청 처리 지원"
2025-08-06 20:51:01 +09:00
Klaus
3b42399726
feat: 255자 넘어가야 하는 필드 columnDefinition = "TEXT" 추가
2025-08-06 18:44:56 +09:00
Klaus
689f9fe48f
feat(chat): ChatCharacter와 다른 엔티티 간 관계 구현
...
ChatCharacter와 Memory, Personality, Background, Relationship 간 1:N 관계 설정
Tag, Value, Hobby, Goal 엔티티의 중복 방지 및 관계 매핑 구현
관계 설정을 위한 서비스 및 리포지토리 클래스 추가
2025-08-06 17:42:48 +09:00
Klaus
2659adb7a9
feat: 최근 공지사항 API 추가
2025-07-25 21:44:32 +09:00
Klaus
fcb2ca1917
fix: 크리에이터 팔로우 API
...
- 본인은 팔로우 되지 않도록 수정
2025-07-21 22:30:19 +09:00
Klaus
804e139385
fix: 라이브 메인 API - 최근 종료된 라이브
...
- 쿼리 최적화
2025-07-21 20:39:54 +09:00
Klaus
f0fc996426
fix: 라이브 메인 API - 최근 종료된 라이브
...
- 날짜 제한 1주
2025-07-21 20:28:21 +09:00
Klaus
efdb485a3b
fix: 라이브 메인 API - 최근 종료된 라이브
...
- 날짜 제한 2주
2025-07-21 19:44:38 +09:00
Klaus
3d695069a2
fix: 홈 메인 API - 인기 크리에이터
...
- 팔로잉 여부 추가
2025-07-21 18:21:53 +09:00
Klaus
e068b57062
fix: 라이브 메인 API - 최근 종료한 라이브
...
- 팔로잉 여부 제거
2025-07-21 18:05:33 +09:00
Klaus
811810cd36
fix: GetCommunityPostListResponse
...
- json property 제거
2025-07-21 16:45:58 +09:00
Klaus
c90df4b02b
fix: 라이브 메인 API
...
- 테마별 최신콘텐츠 캐시 제거
2025-07-21 16:44:10 +09:00
Klaus
7c1082f833
fix: 라이브 메인 API
...
- @JsonProperty 애노테이션 추가
2025-07-21 16:31:05 +09:00
Klaus
800b8d3216
fix: 라이브 메인 API
...
- @JsonProperty 애노테이션 추가
2025-07-21 16:18:33 +09:00
Klaus
ab877beae1
fix: 라이브 메인 API
...
- redis caching이 적용된 data class에 @JsonProperty 애노테이션 추가
2025-07-21 15:48:40 +09:00
Klaus
046c163e6f
feat: 라이브 메인 API
...
- 기존에 섹션별로 따로따로 호출하던 것을 하나로 합쳐서 호출할 수 있도록 API 추가
2025-07-21 15:14:47 +09:00
Klaus
8e877a6366
fix: 라이브 다시듣기 콘텐츠 API 추가
2025-07-18 20:27:02 +09:00
Klaus
d18c19dd35
fix: 최근 종료한 라이브 API 오류 수정
2025-07-18 18:09:00 +09:00
Klaus
a99260209b
fix: 최근 종료한 라이브 API 오류 수정
2025-07-18 18:00:36 +09:00
Klaus
2192ddc8fa
fix: 최근 종료한 라이브 API 오류 수정
2025-07-18 17:50:18 +09:00
Klaus
741a1282a3
fix: 최근 종료한 라이브 API 오류 수정
2025-07-18 17:30:48 +09:00
Klaus
1a6a331ad8
fix: 최근 종료한 라이브 API 오류 수정
2025-07-18 17:22:05 +09:00
Klaus
1ba63e2cab
fix: 최근 종료한 라이브 API 오류 수정
2025-07-18 17:13:37 +09:00
Klaus
5696240e03
fix: 최근 종료한 라이브 API 오류 수정
2025-07-18 16:49:18 +09:00
Klaus
885243a5b0
fix: 최근 종료한 라이브 API 오류 수정
2025-07-18 16:35:15 +09:00
Klaus
a849d00c7f
fix: 최근 종료한 라이브 API 오류 수정
...
- SQLSyntaxErrorException 오류수정
- select 값에 집계쿼리를 넣어서 해결
2025-07-18 15:46:20 +09:00
Klaus
d04b44c931
fix: 최근 종료한 라이브 API
...
- 차단 당한 크리에이터는 안보이도록 수정
- 20개 미만이면 재시도 처리
- 재시도 최대 횟수 3회
2025-07-18 14:40:16 +09:00
Klaus
a3aad9d2c9
feat: 최근 종료한 라이브 20개 가져오는 API 추가
2025-07-18 14:15:03 +09:00
Klaus
d98268f809
refactor: timeAgo 함수
...
- LocalDateTime 확장함수 처리
2025-07-18 13:33:19 +09:00
Klaus
34440e9ba3
fix: 라이브 후원 합계 API
...
- 안쓰는 파라미터 제거
2025-07-17 19:36:10 +09:00
Klaus
d1c889e5f2
fix: 라이브 리스트 API
...
- 라이브 시작 시간 UTC 추가
2025-07-17 18:58:48 +09:00
Klaus
55da259510
fix: 검색 API
...
- 콘텐츠, 시리즈 검색에서 크리에이터의 닉네임으로도 검색 되도록 수정
2025-07-16 19:00:39 +09:00
Klaus
4436e6f20a
fix: 메인 홈 API - 요일별 시리즈
...
- 시리즈 생성 날짜 내림차순 정렬
2025-07-15 04:03:38 +09:00
Klaus
3cedd36e15
fix: 메인 홈 API
...
- 기존 홈 탭 상단에 있는 배너 임시 추가
2025-07-15 02:46:14 +09:00
Klaus
ecbe9b2e93
.
2025-07-15 02:38:29 +09:00
Klaus
9ad6b6ea48
fix: 메인 홈 API - 최신 콘텐츠
...
- 무료/유료 콘텐츠 모두 조회 되도록 수정
2025-07-15 01:32:45 +09:00
Klaus
0d2daf4d2c
fix: 메인 홈 API - 추천 채널
...
- 미인증 계정에서 19금 콘텐츠가 조회되지 않도록 수정
2025-07-15 01:29:57 +09:00
Klaus
edf16a6021
fix: 메인 홈 API
...
- 기존 홈 탭 상단에 있는 배너 임시 추가
2025-07-15 01:10:00 +09:00
Klaus
7551a19b34
fix: 메인 홈 API
...
- 로그인 하지 않고 조회가 가능하도록 수정
2025-07-14 18:48:57 +09:00
Klaus
f59f45d9a4
fix: 메인 홈 - 추천 채널
...
- 콘텐츠가 빈 리스트로 반환되는 버그 수정
2025-07-12 03:18:37 +09:00
Klaus
81e82ad731
fix: 메인 홈 - 추천 채널
...
- 콘텐츠가 빈 리스트로 반환되는 버그 수정
2025-07-12 02:53:31 +09:00
Klaus
ca870392e2
fix: 메인 홈 - 요일별 시리즈
...
- groupBy 이후 없는 컬럼으로 정렬한 오류 수정
2025-07-12 00:43:45 +09:00
Klaus
a7e167a95f
fix: 메인 홈 - 요일별 시리즈
...
- groupBy 추가하여 동일한 시리즈가 여러개 추가되어 있는 버그 수정
2025-07-11 23:39:55 +09:00
Klaus
a49b82a7c2
fix: 메인 홈 - 인기 크리에이터
...
- 팔로워 수 추가
2025-07-11 20:00:39 +09:00
Klaus
704ad12ccf
fix: 메인 홈 - getContentCurationList
...
- 캐시 제거
2025-07-11 19:36:29 +09:00
Klaus
ab9fd2bc16
fix: 메인 홈 - GetAudioContentMainItem
...
- JsonProperty를 isPointAvailable 수정
- @JsonProperty를 -> @get:JsonProperty, @param:JsonProperty로 수정
2025-07-11 18:43:07 +09:00
Klaus
69a63a77d3
fix: 메인 홈 - GetAudioContentMainItem
...
- JsonProperty를 pointAvailable 수정하여 Redis Cache에서 데이터 가져올 떄 파싱이 이뤄질 수 있도록 수정
2025-07-11 18:02:52 +09:00
Klaus
da7e4c2156
fix: 메인 홈 - GetContentCurationResponse
...
- JsonProperty를 추가하여 Redis Cache에서 데이터 가져올 떄 파싱이 이뤄질 수 있도록 수정
2025-07-11 17:46:22 +09:00
Klaus
a4b5185f6b
fix: 메인 홈 - 최근 콘텐츠 조회
...
- join 하지 않은 blockMember 제거
- 정렬 조건 추가 - id 내림차순
2025-07-11 14:04:08 +09:00
Klaus
22fc8b22b8
feat: 메인 홈
...
- API 추가
2025-07-10 15:31:41 +09:00
Klaus
a8da17162a
feat: 커뮤니티 글 등록/수정
...
- 유료 글에서만 gif를 등록할 수 있도록 수정
2025-07-03 15:26:35 +09:00
Klaus
f13c221fd6
fix: 커뮤니티 댓글 조회
...
- 결과값에 isSecret(비밀 댓글 여부) 추가
2025-06-13 16:51:10 +09:00
Klaus
4ffa9363a8
fix: 커뮤니티 댓글 조회
...
- 프로필 이미지 imageHost에 /가 포함되도록 수정
2025-06-13 16:06:44 +09:00
Klaus
6d2f48f86d
fix: 커뮤니티 댓글 조회
...
- 크리에이터가 아닌 경우 내가 쓴 비밀댓글 + 일반댓글만 조회되도록 수정
2025-06-12 19:08:47 +09:00
Klaus
8e01ced1f5
feat: 커뮤니티 댓글
...
- 유료 커뮤니티 글을 구매한 경우 비밀 댓글 쓰기 기능 추가
2025-06-12 16:10:32 +09:00
Klaus
640f5ce6f5
fix: 팔로워 리스트
...
- 차단한 멤버는 팔로워 리스트에 보이지 않도록 수정
2025-06-12 13:51:03 +09:00
Klaus
c0be30027c
fix: 팔로워 리스트
...
- 차단한 멤버는 팔로워 리스트에 보이지 않도록 수정
2025-06-12 13:44:09 +09:00