- refundLive API 요청 파라미터를 canUsage에서 canUsageStr로 변경
- CalculateLive 화면의 환불 함수에서 canUsageStr을 전달하도록 수정
- API URL(/admin/calculate/live/refund) 및 필드 요구사항 반영
1. 크리에이터별 채널 후원 정산 페이지 신규 개발 (/calculate/channel-donation-by-creator) 2. 날짜별 채널 후원 정산 API 경로 변경 (/admin/calculate/channel-donation-by-date) 및 연동 수정 3. 채널 후원 정산 페이지 엑셀 다운로드 방식 유지 (클라이언트 사이드) 4. 크리에이터별 채널 후원 정산 페이지 엑셀 다운로드 인증 추가 (서버 사이드) 5. 크리에이터별 채널 후원 정산 페이지 표에서 날짜 컬럼 제거
- v-autocomplete에 cache-items 적용으로 선택 항목 캐시 유지
- value-comparator를 id 기반(compareMember)으로 지정해 동등성 안정화
- items를 displaySearchItems(선택 ∪ 검색 목록)로 제공해 선택 항목 항상 포함 보장
수정 모드에서 saveCharacter가 변경 필드만 전송하면서 relationships 배열이 제외되어
삭제/수정 사항이 서버에 반영되지 않는 문제가 있었습니다. 수정 시 항상
relationships를 포함해 서버와 동기화되도록 변경했습니다.
- CharacterForm.vue: update 시 changedData.relationships 항상 포함
- relationshipType, currentStatus를 v-text-field로 변경하고 길이 제한(<=10자) 및 필수 입력 검증 추가
- 인물 관계 입력을 3단 레이아웃으로 재구성 (1행: 상대방 이름+관계명, 2행: 관계 타입+현재 상태+중요도, 3행: 관계 설명)
- addRelationship 로직 보강: 각 필드 substring 보정, 중요도 1~10 범위 보정, 최대 개수(10개) 체크
- 저장 로직 비교 함수에서 relationships를 객체 배열 비교 대상에 포함하여 변경 감지 정확도 개선
왜: 기존 TextField 하나로 관계를 모두 입력해 가독성과 구조화가 어려웠고, 선택형 필드 요구사항이 변경되어 직접 입력하도록 수정 필요
무엇: UI/검증/데이터 처리 전반을 요구사항에 맞게 분리 및 보강
- isSaveDisabled 로직을 등록/수정 모드로 분리
- 수정(edit) 모드에서는 필수값 유효성과 무관하게 변경 감지 시 버튼 활성화
- 등록(create) 모드에서는 기존대로 폼 유효성으로 활성화 판단
- saveCharacter에서도 등록 모드에서만 필수값 유효성 검사를 강제하도록 수정
관련 파일: src/views/Chat/CharacterForm.vue
- 수정 모드 이미지 변경 강제 제거, 시스템 프롬프트 필수 규칙 추가, 저장 버튼 라벨 조건부 표기(저장/수정)
- 수정 모드: 변경사항 또는 새 이미지 선택 시에만 저장 활성화, 등록 모드: 유효성만 충족 시 저장 가능
- 왜: 수정 UX 개선 및 필수 입력 요건 충족
CharacterForm.vue: 설명을 한 줄 소개(TextField)로 변경하고 MBTI 옆에 캐릭터 유형 Select 추가, 태그 아래 원작명/원작링크 필드 추가. api/character.js: createCharacter 요청에 characterType, originalTitle, originalLink 반영. 수정/등록 로직에 관련 필드 매핑 및 변경 필드 추출 반영. 왜: 신규 요구사항 반영 및 API/데이터 정합성 확보.