klaus
39c51825da
feat(content-theme): 무료 콘텐츠의 테마를 조회할 때 '자기소개'가 가장 먼저 표시되도록 수정
2025-11-21 00:37:29 +09:00
klaus
9a58b7b95f
feat(latest-content-by-creator): 최신 콘텐츠 1개 조회시 오픈 되어 있는 콘텐츠만 조회하도록 수정
2025-11-20 21:19:29 +09:00
klaus
26eae4b06e
feat(latest-content-by-creator): 최신 콘텐츠 1개 조회시 오픈 되어 있는 콘텐츠만 조회하도록 수정
2025-11-20 20:59:09 +09:00
klaus
60989391f6
feat(content-sort-type): 콘텐츠가 있는 active 테마 조회 API 추가
2025-11-20 00:51:09 +09:00
klaus
88d90eec2f
feat(content-sort-type): getLatestContentByTheme(테마별 콘텐츠 조회)시 정렬 타입 추가
2025-11-20 00:26:24 +09:00
klaus
b6eb13df06
feat(content-sort-type): 콘텐츠 정렬 타입 인기순(POPULARITY) 추가
2025-11-20 00:05:33 +09:00
klaus
a6b815ad05
fix(series-main): 완료 시리즈 랜덤 정렬
2025-11-19 17:48:07 +09:00
klaus
d89122802a
fix(series): 시리즈 리스트 랜덤 정렬로 조회할 수 있도록 기능 추가
2025-11-19 17:45:46 +09:00
klaus
690432d6ee
fix(latest-content): 최신 콘텐츠 전체보기에서 유/무료 모두 조회되도록 수정
2025-11-18 19:21:15 +09:00
klaus
bc358d18de
fix(latest-content): 최신 콘텐츠 전체보기에서 사용하는 theme에서 제외하는 theme 없이 모두 조회하도록 수정
2025-11-18 18:56:09 +09:00
klaus
add88aca35
fix(series-list): 시리즈 리스트 조회시 정렬 수정
2025-11-17 22:24:01 +09:00
klaus
b6971f6a8d
fix(series-list): creator의 시리즈를 볼 떄와 다른 페이지에서 시리즈 리스트를 볼 때 정렬 순서 분리
2025-11-17 21:13:52 +09:00
klaus
f83dd47c7c
fix(security-config): 홈 > 콘텐츠 랭킹을 로그인 하지 않아도 조회가 가능하도록 수정
2025-11-17 15:58:23 +09:00
klaus
146f733f5d
feat(chat-character): 추천 캐릭터 개수 20 -> 30개로 변경
2025-11-17 15:50:40 +09:00
klaus
806fcfe7db
feat(home): 추천 콘텐츠 개수 20 -> 30개로 변경
2025-11-17 15:49:06 +09:00
klaus
04e7c90407
fix(character): isNew -> new로 변경
2025-11-14 05:39:56 +09:00
klaus
f278497526
fix(character): isNew -> new로 변경
2025-11-14 05:37:24 +09:00
klaus
597bd8f8ae
feat(chat-character): Character DTO에 isNew 매핑 적용(N+1 제거)
...
- 내용: 서비스 매핑에서 보조 쿼리 결과를 이용해 `isNew` 채움
2025-11-13 22:44:13 +09:00
klaus
e4c1cf5a9a
feat(repo): 최근 3일 내 이미지 보유 캐릭터 id 일괄 조회 쿼리 추가
...
- 내용: `findCharacterIdsWithRecentImages(characterIds, since)` 추가
- 본문: 왜(이유) – N+1 제거, 무엇 – IN 기반 벌크 조회
2025-11-13 22:41:20 +09:00
klaus
9f6bdf6ed8
feat(series-main): 장르별 시리즈 group 조건 수정
...
- audioContent.id를 그룹 조건에서 제거
2025-11-13 19:59:54 +09:00
klaus
4f89b0189e
feat(series-main): 시리즈 홈, 요일별 시리즈, 장르별 시리즈 API 추가
2025-11-13 16:02:11 +09:00
klaus
27be9a4fc2
feat(series-banner): 시리즈 배너의 등록, 수정, 삭제, 조회 및 정렬 순서 일괄 변경 기능이 추가
2025-11-13 11:37:46 +09:00
klaus
9464cc5ed4
feat(series): 완결된 시리즈를 조회할 수 있도록 isCompleted 파라미터 추가
2025-11-13 10:22:55 +09:00
klaus
39760e16ff
feat(series): 오직 보이스온에서만(오리지널) 제공하는 콘텐츠도 조회할 수 있도록 isOriginal 파라미터 추가
2025-11-12 17:25:38 +09:00
klaus
bf149c45ad
feat(admin-series): 관리자 시리즈 리스트 응답에 publishedDaysOfWeek(리스트)와 isOriginal(Boolean) 추가
2025-11-12 16:37:28 +09:00
klaus
4f52ec0663
fix(admin-series): 시리즈 수정 API 추가
2025-11-12 14:58:48 +09:00
klaus
3ed306ae8c
fix(content): 콘텐츠 리스트 조회 API
...
- 로그인 된 사용자만 사용할 수 있도록 수정
2025-11-12 13:56:37 +09:00
klaus
ee35244296
feat(content): 콘텐츠 리스트 조회 API
2025-11-12 13:47:30 +09:00
klaus
fe76ecdfa9
feat(chat-character): 보온 주간 차트 콘텐츠 정렬 기준 추가
...
- 매출, 판매량, 댓글 수, 좋아요 수, 후원
2025-11-11 23:02:58 +09:00
klaus
16b6c13309
feat(chat-character): 추천 캐릭터 조회 및 메인/새로고침 API 반영
2025-11-11 17:01:50 +09:00
klaus
80c44373c7
refactor(home): 추천 dedup 자료구조를 LinkedHashMap에서 Set+List로 교체
2025-11-11 14:46:36 +09:00
klaus
a538bb766d
feat(home): 홈 추천 콘텐츠 조회 및 전용 엔드포인트 추가
...
- HomeService: getRecommendContentList 추가 및 fetchData에 recommendContentList 주입
- HomeController: GET /api/home/recommend-contents 엔드포인트 추가
- 추천 로직은 랜덤 20개, 성인/타입/차단 필터 반영
2025-11-11 14:21:37 +09:00
klaus
26c09de7c9
feat(admin-can): 관리자 캔 충전 API를 다중 회원 일괄 충전으로 확장
...
- AdminCanChargeRequest: memberId → memberIds(List<Long>)로 변경
- AdminCanService.charge: memberIds 선조회 후 다건 충전 로직 추가
- 잘못된/비어있는 회원번호 검증 및 트랜잭션 롤백으로 정합성 보장
배경: 관리자 일괄 충전 요구사항 반영으로 여러 회원에게 동일 수량의 캔을 한 번에 충전할 수 있도록 개선. 중복 ID는 제거하여 중복 충전을 방지하고, 하나라도 유효하지 않으면 전체 롤백되도록 처리하여 데이터 정합성 확보.
2025-11-10 15:15:10 +09:00
klaus
82bd93c1ae
feat(admin-member): 닉네임 검색으로 회원 id, nickname 반환 API 추가
2025-11-10 14:39:44 +09:00
klaus
e24e8372a8
feat(home): 포인트 사용 가능 콘텐츠 리스트 추가
2025-11-10 13:58:17 +09:00
klaus
eab7dc4521
feat(home-free-content): 최신 콘텐츠 조회 함수 getLatestContentByTheme에 orderbyRandom flag를 추가하여 랜덤으로 정렬한 후 데이터를 가져올 수 있도록 수정
2025-11-10 12:14:24 +09:00
klaus
5ca666c7fa
feat(home-latest-content): 최신 콘텐츠 조회시 정렬 조건 변경
...
- 기존: id 내림차순
- 변경: 오픈일 내림차순
2025-11-07 20:48:08 +09:00
klaus
8fb3bd578f
feat(live-room-heart): like-heart API의 request에 heartCount를 추가하여 왕하트(100개)를 쓸 수 있도록 수정
2025-11-03 11:30:42 +09:00
klaus
01fad8d93c
feat(change message): 비비드 넥스트 -> 주식회사 소다라이브
2025-11-03 11:24:48 +09:00
klaus
a05ada5df0
feat(can-use-status): PAYVERSE로 충전한 캔을 사용한 내역도 포함되도록 수정
2025-10-22 23:13:24 +09:00
klaus
34480385d3
UseCalculate에 PAYVERSE로 충전한 캔 로그 데이터를 쌓도록 수정
2025-10-22 22:22:03 +09:00
klaus
fd68ed87a3
fix(can-use): PAYVERSE로 충전한 캔이 사용되지 않는 버그 수정
2025-10-22 21:34:39 +09:00
klaus
779fc5c5a5
feat(chat): 채팅권 구매 가격과 채팅횟수 변경
...
- 기존: 30캔, 채팅 40개
- 변경: 10캔, 채팅 12개
2025-10-22 16:40:54 +09:00
klaus
08ebb311fb
feat(home): 인기 캐릭터 추가
2025-10-20 14:47:13 +09:00
klaus
12cdd25be7
feat(creator-profile-live): LiveRoomResponse에 utc 기반의 라이브 시작 시간 추가
2025-10-16 15:05:23 +09:00
klaus
59700493eb
feat(explorer): 크리에이터 프로필에 최신/총/소장 콘텐츠 정보 추가
...
- ExplorerService.getCreatorProfile에서 다음 정보 계산/반환
- 최신 오디오 콘텐츠 1개(`latestContent`)
- 전체 콘텐츠 수(`totalContentCount`)
- 조회 유저의 소장 콘텐츠 수(`ownedContentCount`)
- ExplorerQueryRepository.getOwnedContentCount 추가
- 활성 KEEP 또는 유효한 RENTAL 주문 기준으로 distinct 카운트
- GetCreatorProfileResponse 스키마 확장
- `latestContent`, `totalContentCount`, `ownedContentCount` 필드 추가
- AudioContentService.getLatestCreatorAudioContent 사용해 최신 콘텐츠 조회 로직 보강
- 성인 콘텐츠 노출 여부 및 구매/대여 상태 반영
- OrderRepository의 주문 타입 조회 로직을 활용해 보유/대여 상태 표시
API 응답 필드가 추가되어 프로필 화면 구성 정보를 보강합니다. (호환성 유지)
2025-10-14 15:35:15 +09:00
klaus
88c3a84972
perf(admin-charge): 통화별 합계를 DB 그룹 집계로 이관하여 전송량/CPU 감소
2025-10-11 05:41:14 +09:00
klaus
db0d3a6ef3
refactor(admin-charge): QGetChargeStatusQueryDto의 currency가 null이면 KRW로 설정되도록 coalesce("KRW") 적용
2025-10-11 05:07:21 +09:00
klaus
3d29d27441
refactor(admin-charge): QGetChargeStatusQueryDto의 currency가 null이 되지 않도록 coalesce("") 사용
2025-10-11 04:52:58 +09:00
klaus
b5f66603bd
refactor(admin-charge): QGetChargeStatusQueryDto의 currency가 null이 되지 않도록 coalesce("") 사용
2025-10-11 04:39:15 +09:00
klaus
976eeaa443
refactor(admin-charge): GetChargeStatusDetailResponse의 amount 타입을 Int에서 BigDecimal로 변경
...
- 충전 금액 계산을 좀 더 명확하게 하기 위해서 변경
2025-10-11 03:54:47 +09:00
klaus
25d1d813f1
refactor(admin-charge): HQL 파싱 에러 해결 위해 RIGHT → substring/length 치환
2025-10-11 03:37:46 +09:00
klaus
778f0c3ba2
fix(admin/charge): 통화별 리스트와 합계 행 추가 및 전체 합계 로직 수정
...
- 기존 로직은 통화 구분 없이 전체 합계를 계산·표시하여 통화가 혼재된 데이터에서 오해의 소지가 있었음.
- 관리 화면 요구사항: 통화(currency)별 합계를 명확히 제공.
2025-10-11 03:12:10 +09:00
klaus
38c50a4f8a
fix(admin/charge): 통화별 리스트와 합계 행 추가 및 전체 합계 로직 수정
...
- 기존 로직은 통화 구분 없이 전체 합계를 계산·표시하여 통화가 혼재된 데이터에서 오해의 소지가 있었음.
- 관리 화면 요구사항: 통화(currency)별 합계를 명확히 제공.
2025-10-11 02:31:15 +09:00
klaus
c497f321bb
fix(admin-charge-status-detail): pgChargeAmount와 can의 가격을 가져와서 사용하는 로직을 제거하고 payment에 기록된 가격으로 계산하도록 수정
2025-10-10 23:32:36 +09:00
klaus
84c0768c8b
fix(admin-charge-status): pgChargeAmount와 can의 가격을 가져와서 사용하는 로직을 제거하고 payment에 기록된 가격으로 계산하도록 수정
2025-10-10 22:31:36 +09:00
klaus
efb8d8115f
fix(verify-hecto): 데이터 검증시 가격비교 제거
2025-10-10 18:49:54 +09:00
klaus
41183b4648
fix(can-list): 국가별로 통화가 표시되도록 수정
2025-10-10 14:32:12 +09:00
klaus
36e20bf0d1
fix(payverse-webhook): orderId 비교 추가
...
- orderId와 chargeId 비교 로직 추가
2025-10-03 02:17:48 +09:00
klaus
0308e9ad83
fix(payverse): productName 비교 로직 제거
...
- productName에 +가 있는 경우 저장된 데이터와 검증을 위한 데이터가 다르게 나오기 때문에 비교 불가능
2025-10-03 02:10:30 +09:00
klaus
06c0374f16
사용하지 않는 print 제거
2025-10-03 01:56:55 +09:00
klaus
c5bc610e2f
webhook 호출 IP 확인을 위해 print 추가
2025-10-03 01:48:19 +09:00
klaus
a86a24ca34
사용하지 않는 print 제거
2025-10-03 01:46:52 +09:00
klaus
cb2e3ea581
fix(payverse-wehook): 한국 원화일 때와 USD일 때 mid 값이 달라야 하는데 성공 여부 비교시 원화 mid로 고정하여 비교하던 로직 수정
2025-10-03 01:29:59 +09:00
klaus
42eaf1d5e3
fix(payverse-verify): 결제 성공 여부 판단 로직 수정
...
- processingAmount 대신 requestAmount와 can 가격 비교
- productName, customerId 비교 추가
2025-10-03 01:25:27 +09:00
klaus
02ef706fc2
temp: 디버깅을 위해 print 추가
2025-10-03 00:57:50 +09:00
klaus
085b217abb
fix(can): 이전 버전의 호환성을 위해 기존의 int price를 유지하도록 수정
2025-10-03 00:02:47 +09:00
klaus
0866e0972a
값 확인을 위해 추가했던 println 제거
2025-10-02 22:31:23 +09:00
klaus
4b13265737
fix(charge): payverseVerify 결제금액 비교로직 수정
...
- BigDecimal끼리 비교하는데 casting 로직이 추가되어 문제가 생기던 버그 수정
2025-10-02 22:23:06 +09:00
klaus
79cd2b8123
debug(charge): 해외결제 DEBUG를 위해 print 임시 추가
2025-10-02 20:40:34 +09:00
klaus
8cc9641bbf
feat(charge): payloadJson의 amount
...
- 소수점 아래 불필요한 0을 제거
2025-10-02 20:29:49 +09:00
klaus
32935aed88
feat(charge): payloadJson의 amount
...
- 소수점 아래 불필요한 0을 제거
2025-10-02 19:59:04 +09:00
klaus
c72adbfc4b
temp(charge): 캔 리스트
...
- 해외 충전 테스트를 위해 전체 캔 리스트 표시
2025-10-02 19:56:23 +09:00
klaus
bc378cc619
temp(charge): 캔 리스트
...
- 해외 충전 테스트를 위해 전체 캔 리스트 표시
2025-10-02 19:03:42 +09:00
klaus
6327a5d2bf
feat(charge): 캔 충전시 통화(KRW, USD)별로 분기 처리
2025-10-02 18:59:52 +09:00
klaus
2ab2a04748
feat(can): 캔 응답 - String 형태 가격 필드 추가
2025-10-02 15:07:57 +09:00
klaus
fb0a9e98a1
사용하지 않는 print 제거
2025-10-02 12:20:25 +09:00
klaus
e45fe1bf10
feat: 일반 유저용 캔 리스트 조회 API 추가, GeoCountryFilter(GeoCountry.OTHER, GeoCountry.KR 구분용) 추가
2025-10-01 22:29:39 +09:00
klaus
3d852a8356
feat: 관리자용 캔 리스트 조회 API 추가
2025-10-01 22:16:44 +09:00
klaus
b244944f41
feat: 캔 엔티티 currency - length 3으로 고정하여 CHAR(3)에 대응되도록 수정
2025-10-01 21:21:57 +09:00
klaus
3c7ba669e2
feat: Payment, AdTrackingHistory 엔티티 price - Decimal(10, 4)에 대응되도록 Column 추가
2025-10-01 21:08:35 +09:00
klaus
81e7e7129c
feat: 캔 엔티티 currency - length 3으로 고정하여 CHAR(3)에 대응되도록 수정
2025-10-01 21:05:51 +09:00
klaus
d7ad110b9e
feat: 캔 등록/조회 - currency 추가
2025-10-01 20:55:52 +09:00
klaus
0c17ea2dcd
fix: 캔 가격, Payment의 price 타입 Int, Double -> BigDecimal로 변경
2025-10-01 20:37:53 +09:00
klaus
78ff13a654
temp: 캔 가격 타입 Int -> Double로 변경
2025-10-01 16:07:34 +09:00
klaus
863c285049
fix: 불필요한 print 제거
2025-09-30 18:32:12 +09:00
klaus
a3d74c0b57
fix: Payverse Webhook 엔드포인트에서 실제 클라이언트 IP를 가져올 수 있도록 수정
2025-09-30 18:22:46 +09:00
klaus
9016a72046
fix: ResponseStatusException이 ApiResponse로 래핑되지 않도록 수정
...
- 기본 에러 JSON 반환 유지
2025-09-30 18:16:13 +09:00
klaus
3c32614d1c
temp(Exception): ResponseStatusException은 ApiResponse로 래핑하지 않고 그대로 전달
2025-09-30 17:59:55 +09:00
klaus
51988471cf
temp(payverse): 호출되는 INBOUND_IP 확인하기 위해 출력
2025-09-30 17:55:31 +09:00
klaus
8990bd0722
fix(payverse): webhook 엔드포인트는 로그인 하지 않더라도 실행되도록 수정
2025-09-30 17:37:15 +09:00
klaus
aab2417976
fix(payverse): print 제거
2025-09-30 17:22:39 +09:00
klaus
1bd6f8da4e
fix(payverse): PVKR 카드 코드면 method를 "카드"로 저장
2025-09-30 17:02:02 +09:00
klaus
22bd1bf042
fix(payverse): 결제 payload에 customerId 길이 30자로 제한
...
- customerId를 sha1 기반 30자 이내로 생성하도록 변경하여 스펙 준수
- 불필요한 billkeyReq 제거
2025-09-26 16:51:54 +09:00
klaus
d536a65fb4
fix(charge): payverse pg payload
...
- requestAmount의 값을 BigDecimal로 처리
2025-09-26 16:23:11 +09:00
klaus
03149a637d
feat(charge): payverse pg - webhook API 추가
2025-09-25 21:18:45 +09:00
klaus
bc6c05b3ea
feat(charge): payverse pg - 충전/검증 API 추가
2025-09-25 20:37:39 +09:00
klaus
59ca353b25
feat(calculate-ratio): 정산 비율 삭제 URL 수정
2025-09-22 14:17:18 +09:00
klaus
6bc65ec412
feat(calculate-ratio): 정산 비율 조회 - 결과에 memberId 추가
2025-09-22 14:01:28 +09:00
klaus
97e95b51ab
feat(calculate-ratio): 정산 비율 수정/삭제(소프트 삭제)와 업서트, 쿼리 보강
...
- deletedAt 기반 소프트 삭제 도입 및 restore/updateValues 추가
- 생성 시 기존(삭제 포함) 레코드 복구 후 값 갱신(업서트)
- /admin/calculate/ratio/update, /delete 엔드포인트 추가
- 정산 쿼리 조인에 deletedAt.isNull 적용하여 삭제 데이터 배제
- 목록/카운트 조회에서도 삭제 데이터 제외
2025-09-22 13:36:36 +09:00