221 Commits

Author SHA1 Message Date
Yu Sung
90377bdb3c feat(content-list): 검색 버튼 색상 수정
- 검색 버튼 색상: #3bb9f1로 변경
2026-05-07 15:29:34 +09:00
Yu Sung
a58a5cc0d1 feat(member): 계정 상세 팝업에 콘텐츠 관리자 권한 추가 및 라벨/검색 버튼 색상 수정
- 신규 권한: CONTENT_MANAGER 라디오 옵션 및 매핑 추가
- 라벨 변경: '사용 여부' → '권한'
- 검색 버튼 색상: #3bb9f1로 변경

왜: 콘텐츠 관리자 권한 지원 및 UI 용어/가시성 개선
무엇: MemberList.vue 수정으로 옵션/매핑/라벨/컬러 반영
2026-05-07 15:29:02 +09:00
Yu Sung
e7c95ab91b fix(content): ADMIN 권한에서만 테마 조회 API 호출하도록 수정
ContentList.vue의 created 훅에서 isAdmin 검사 후 getAudioContentThemeList 조건부 호출.

불필요한 API 호출 방지 및 권한 준수.
2026-05-07 15:23:49 +09:00
Yu Sung
ad4d498eeb feat(menu): 역할 기반 사이드 메뉴 추가/노출 로직 개선
- ADMIN 권한에만 추가 메뉴(시리즈 배너, 캐릭터 챗봇, 에이전트 관리, 정산 확장) 노출

- API 메뉴가 비어있고 CONTENT_MANAGER이면 '콘텐츠 리스트(/content/list)' 기본 메뉴 추가

- 기존 예외 처리 유지
2026-05-07 15:21:39 +09:00
Yu Sung
c72e1c18df fix(content): 관리 컬럼과 버튼을 ADMIN 권한에만 표시
배경: 비ADMIN 계정에서도 관리 열과 수정/삭제/공유 버튼이 노출되어 접근 혼란을 유발.

변경: computed isAdmin(Vuex accountStore.role 우선, localStorage 폴백) 추가 후, 테이블 헤더와 각 행의 관리 영역에 v-if="isAdmin" 적용.

영향: ADMIN 외 권한에서는 UI 요소가 렌더링되지 않음. 기능 동작 변경 없음.
2026-05-07 14:28:47 +09:00
Yu Sung
9435334734 fix(api): 관리자 로그인 API 엔드포인트 변경
- /member/login -> /admin/member/login
- 프론트엔드 관리자 로그인 경로와 백엔드 변경사항 동기화
2026-05-07 14:21:59 +09:00
Yu Sung
f01f002614 refactor(account): 로그인 상태 필드 정리 및 role 저장
왜: userId/nickname/profileImage는 사용처가 없어 유지보수 단순화. 대신 권한 판별을 위해 role 필요.\n무엇: accountStore에서 세 필드 삭제, role 추가. isAuthenticated 동기화 수정. LOGIN/LOGOUT 로직 role 반영. Axios Authorization 유지.
2026-05-07 14:19:21 +09:00
Yu Sung
a833f0b6b8 feat(can): 캔 등록 화면에 일본 엔(JPY) 화폐 단위를 추가 2026-05-01 14:27:41 +09:00
Yu Sung
9b756cbaf1 fix(calculate): 오리지널 시리즈 정산 - pageSize 20으로 수정 2026-04-22 11:12:53 +09:00
Yu Sung
de18086699 feat(calculate): 오리지널 시리즈 정산 기능 추가
Co-authored-by: Junie <junie@jetbrains.com>
2026-04-22 10:20:19 +09:00
Yu Sung
2e499483dd feat(agent): 소속 추가 다이얼로그 크리에이터 검색 디바운스 적용
- onSearchCreators에 300ms 디바운스 로직 추가
- assignDialog.searchDebounceTimer 상태 추가 및 다이얼로그/소멸 시 정리
- 최신 검색어와 응답 불일치 시 결과 반영 방지 가드
- 검색어 비었을 때 로딩/결과 초기화 처리 강화
2026-04-13 14:05:56 +09:00
Yu Sung
ceee1681c9 feat(agent): 에이전트-크리에이터 오류 메시지 표시 다이얼로그 추가 2026-04-13 13:59:26 +09:00
Yu Sung
0d494d3482 feat(agent): 정산 월 라벨 추가 및 테이블 정렬/레이아웃 개선
- 상단 레이아웃을 6/6으로 분할하고 좌측에 현재 `<월> 정산 내역` 라벨 표시
- 총 에이전트 수 표시는 우측 정렬로 유지
- 금액/합계 열 정렬을 text-right → text-center로 통일하여 가독성 향상
- 전역 테이블 셀 가운데 정렬 CSS 추가(th/td)
- 클릭 가능한 금액 셀의 UX 유지(cursor: pointer)
2026-04-11 23:11:22 +09:00
Yu Sung
d5a75cd29f feat(agent,settlement): 크리에이터 기준 정산 상세 API/뷰 개선 및 페이지네이션/정렬 일관성 확보
- api/agent: 정산 상세 조회 API 다수 추가(라이브/콘텐츠/커뮤니티/콘텐츠·채널 후원)
- 공통 파라미터 빌더 및 1→0 기반 페이지 변환 유틸 도입으로 Spring Pageable 규약 준수
- 정산 상세 뷰(라이브/콘텐츠/커뮤니티/콘텐츠 후원/채널 후원): 닉네임 표시, 페이지·정렬 파라미터 적용
- 로딩/에러/빈 결과 초기화 처리 강화, 합계 초기화로 실패 시 데이터 오해 방지
- AgentList: 정산 상세 라우팅 시 닉네임 query 전달로 상단 타이틀 표시 개선
2026-04-11 23:04:51 +09:00
Yu Sung
c7a02ea4cc feat(agent): 에이전트 상세 페이지 작성
- api/agent.js에 소속 관리 API 추가 (조회/검색/소속/해제) 및 Pageable 0-based 처리
- AgentDetail.vue 구현 — 목록/페이지네이션/소속 추가(자정 00:00:00)/소속 해제(날짜+시간)
- AgentList.vue에서 상세 진입 시 닉네임을 쿼리로 전달하여 상세에서 표시
- AgentDetail.vue에 간단한 스타일 클래스 추가
2026-04-11 22:20:18 +09:00
Yu Sung
7608cefba1 feat(agent): 에이전트 정산 비율 페이지 작성
- 에이전트 정산 비율 API 추가 (목록/등록/수정/닉네임 검색)
- AgentSettlementRatio.vue 구현 — 목록 테이블, "에이전트 비율 추가" 버튼, 수정 버튼 및 등록/수정 공용 팝업 추가
- UX: 닉네임 검색(v-autocomplete), 숫자/범위(0~100) 검증, datetime-local 입력값 LocalDateTime 문자열 변환 처리
- 에러/로딩 상태 기본 처리 및 목록 새로고침 흐름 반영
2026-04-11 22:01:53 +09:00
Yu Sung
49de523552 fix(router): /agent/settlement-ratio 경로가 에이전트 상세로 잘못 라우팅되던 문제 수정
정적 경로(`/agent/settlement-ratio`)가 동적 경로(`/agent/:agentId`)보다 뒤에 있어
동적으로 매칭되던 라우팅 우선순위 문제를 해결했습니다.
- router/index.js: 정적 경로를 동적 경로보다 앞에 배치
- 기능/로직 변경 없음, 라우팅 매칭 순서만 조정
2026-04-11 21:18:08 +09:00
Yu Sung
2adb0d5daa feat(agent): AgentList.vue 구현 — 총 에이전트 수, 정산 항목별 금액, 합계 표시 및 라우팅 추가
- api: /admin/partner/agent/list 연동을 위한 api/agent.js 추가(getAgentList)
- router: 에이전트 상세 및 5종 정산 상세 라우트 추가(파라미터 agentId 사용)
- AgentDetail.vue와 정산 상세 5개 뷰(플레이스홀더) 추가
- 숫자/통화 포맷 적용 및 클릭 가능한 스타일 클래스 추가
2026-04-11 20:51:28 +09:00
Yu Sung
2277f9eca6 feat(agent): 사이드바에 ‘에이전트 관리’ 메뉴 및 라우트/기본 뷰 추가
- router: /agent/list, /agent/settlement-ratio 라우트 등록
- SideMenu: ‘크리에이터 관리’ 바로 아래 ‘에이전트 관리’ 섹션 동적 삽입
- views: AgentList.vue, AgentSettlementRatio.vue 스텁 추가
2026-04-11 20:37:49 +09:00
Yu Sung
864402b09d feat(member): 회원 수정 다이얼로그에 AGENT(에이전트) 타입 추가
- 라디오 그룹에 `AGENT` 옵션(라벨: "에이전트") 추가
- `showPopupDialog`에서 서버값 '에이전트' → 내부값 'AGENT' 매핑 로직 추가
- `modify`의 변경 없음 판단 로직에 AGENT ↔ 에이전트 비교 조건 반영
2026-04-11 20:01:24 +09:00
Yu Sung
1bffedfd85 feat(content): 유료 콘텐츠에만 정산요율 설정 UI 노출 및 요청 가드 2026-04-07 14:36:37 +09:00
Yu Sung
7fe6b3bb30 feat(content): 정산요율 항목 및 개별 삭제 플래그 추가
- 콘텐츠 리스트 테이블에 정산요율 컬럼 표시(null/빈값은 공란)
- 수정 다이얼로그에 정산요율 입력 필드 추가(number, 빈값 허용)
- isSettlementRatioDeleted 플래그 추가: 체크 시 입력 비활성화 및 요청 전송 제외
- 수정 요청 시 변경된 값만 전송, 삭제 플래그 true면 settlementRatio 미포함
- created/show/cancel 시 데이터 모델 초기화 로직 반영
2026-04-07 14:09:49 +09:00
Yu Sung
71f71e9d77 fix(character-banner): 배너 등록 다이얼로그에서 언어 기본값을 한국어(ko)로 설정 2026-04-02 16:48:39 +09:00
Yu Sung
ffd6e41767 feat(live-recommend): 추천 크리에이터 등록 시 언어 선택(ko/ja/en) 추가 및 등록 요청에 lang 포함
- 등록 폼에 언어 v-select 추가(v-if="!is_modify")
- 데이터 모델에 banner.lang 기본값 'ko'와 langItems(ko/ja/en) 추가
- submit 요청에 ISO 639 코드(lang) 포함
- 취소 시 초기화에 언어 기본값 유지
2026-04-02 16:46:33 +09:00
Yu Sung
fbc10e83da feat(content-banner): 배너 등록 시 언어 선택(ko/ja/en) 추가 및 등록 요청에 lang 포함
- 등록 폼에 언어 v-select 추가(v-if="!is_modify")
- 데이터 모델에 banner.lang 기본값 'ko'와 langItems(ko/ja/en) 추가
- submit 요청에 ISO 639 코드(lang) 포함
- 취소 시 초기화에 언어 기본값 유지
2026-04-02 16:41:17 +09:00
Yu Sung
499d4e4432 fix(chat): 캐릭터 배너 수정 시 언어 선택 UI 숨김
- 수정 모드에서 언어 변경이 불가능하여 UI 비표시 처리\n- 불필요한 :disabled 속성 제거로 코드 명확화

Co-authored-by: Junie <junie@jetbrains.com>
2026-04-02 16:25:52 +09:00
Yu Sung
ad5c27abc3 feat(series-banner): 배너 등록 언어 선택 추가
- 배너 등록/수정 다이얼로그에 언어 선택(ko/ja/en) UI를 추가
2026-04-02 15:56:37 +09:00
Yu Sung
1fc619dfd0 feat(character-banner): 배너 등록 언어 선택 추가
- 배너 등록/수정 다이얼로그에 언어 선택(ko/ja/en) UI를 추가
2026-04-02 15:47:14 +09:00
Yu Sung
97b832fd2e feat(calculate): 라이브 환불 기능 API 연동 및 UI 수정
- refundLive API 요청 파라미터를 canUsage에서 canUsageStr로 변경
- CalculateLive 화면의 환불 함수에서 canUsageStr을 전달하도록 수정
- API URL(/admin/calculate/live/refund) 및 필드 요구사항 반영
2026-03-16 15:49:28 +09:00
Yu Sung
b21d0f455f feat(chat): 시스템 프롬프트 글자수 표시 및 2000자 제한 추가 2026-03-16 11:12:38 +09:00
Yu Sung
0e4b38ce3e feat(charge-refund): 캔 환불 프로세스 추가 2026-03-05 18:13:41 +09:00
Yu Sung
60ee25564b feat(member-block): 계정 및 본인인증 정보 차단 기능 추가 완료 2026-03-05 15:53:14 +09:00
Yu Sung
3dff71046d feat(calculate): 정산 관련 API 및 화면 페이징 처리 추가 2026-03-05 14:23:51 +09:00
Yu Sung
c9f49a208a feat(calculate): 정산 페이지 엑셀 다운로드 방식 수정
- vue-excel-xlsx 사용방식에서 API 호출 방식으로 변경
2026-03-05 13:50:35 +09:00
Yu Sung
dfcc746738 feat(calculate): 크리에이터별 채널 후원 정산 페이지 개발 및 관련 API 수정
1. 크리에이터별 채널 후원 정산 페이지 신규 개발 (/calculate/channel-donation-by-creator) 2. 날짜별 채널 후원 정산 API 경로 변경 (/admin/calculate/channel-donation-by-date) 및 연동 수정 3. 채널 후원 정산 페이지 엑셀 다운로드 방식 유지 (클라이언트 사이드) 4. 크리에이터별 채널 후원 정산 페이지 엑셀 다운로드 인증 추가 (서버 사이드) 5. 크리에이터별 채널 후원 정산 페이지 표에서 날짜 컬럼 제거
2026-03-03 14:54:46 +09:00
Yu Sung
5077ef7532 채널 후원 정산 페이지 추가 2026-02-26 20:02:34 +09:00
Yu Sung
70f5ae2f54 fix(content): 오디오 콘텐츠 삭제 시 FormData 형식으로 요청하도록 수정
deleteAudioContent 메서드에서 api.modifyAudioContent 호출 시 기존 일반 객체 전달 방식을 FormData 객체 전달 방식으로 변경하여 서버의 multipart/form-data 기대 형식과 일치시킴
2026-02-13 18:38:55 +09:00
Yu Sung
512adf7a27 회원 통계 페이지에 애플 가입 수 추가 2026-02-08 16:35:50 +09:00
Yu Sung
23acbd6af3 콘텐츠 수정 - 커버 이미지 수정 기능 추가 2026-02-05 18:02:03 +09:00
Yu Sung
fe87dd6b51 일별 전체 회원 수에 라인 가입자 수를 표에 표시 2026-02-02 11:26:25 +09:00
Yu Sung
b728e96c2a 챗봇 캐릭터 등록시 리전데이터가 보내지지 않는 버그 수정 2026-01-22 16:45:53 +09:00
Yu Sung
bf52a63a52 챗봇 캐릭터 등록시 리전 선택 기능 추가 2026-01-22 16:28:21 +09:00
Yu Sung
5e0657b057 캔 환율관리 - 페이징 없이 모든 데이터 표시되도록 수정 2026-01-13 14:05:52 +09:00
Yu Sung
7e70c48956 feat(admin-series): 시리즈 리스트에 연재요일 표시 2025-11-14 17:13:29 +09:00
Yu Sung
ee2ef50f2a feat(admin-series-banner): 시리즈 배너 리스트 조회, 등록, 수정, 삭제, 순서 변경 기능 추가 2025-11-13 11:53:31 +09:00
Yu Sung
a568d12b3c feat(admin-menu): 시리즈 관리 하위 메뉴로 '배너 등록' 메뉴 추가 2025-11-13 10:49:59 +09:00
Yu Sung
c269b7ca7f fix(admin-series): 시리즈 수정 기능 추가
- 변경 가능한 내용: 연재 요일, 오리지널, 19금, 장르
2025-11-12 16:46:31 +09:00
Yu Sung
d1fedb151a fix(admin-can): 닉네임 검색 시 선택 칩이 사라지는 문제 수정
- v-autocomplete에 cache-items 적용으로 선택 항목 캐시 유지
- value-comparator를 id 기반(compareMember)으로 지정해 동등성 안정화
- items를 displaySearchItems(선택 ∪ 검색 목록)로 제공해 선택 항목 항상 포함 보장
2025-11-10 16:32:26 +09:00
Yu Sung
1e8dd57eec feat(admin-can): 캔 지급 화면에 닉네임 검색·다중 회원번호 입력 및 다중 지급 지원 2025-11-10 15:42:58 +09:00
Yu Sung
0c4e8b8fcb feat(admin-can-status): 화폐단위 추가, 충전금액에 NumberFormat style: currency 적용하여 화폐단위 표시 2025-10-11 04:14:00 +09:00