캐릭터 챗봇 #74
| @@ -34,6 +34,9 @@ async function createCharacter(characterData) { | ||||
|     age: characterData.age, | ||||
|     gender: characterData.gender, | ||||
|     mbti: characterData.mbti, | ||||
|     characterType: characterData.type, | ||||
|     originalTitle: characterData.originalTitle, | ||||
|     originalLink: characterData.originalLink, | ||||
|     speechPattern: characterData.speechPattern, | ||||
|     speechStyle: characterData.conversationStyle, | ||||
|     appearance: characterData.appearance, | ||||
|   | ||||
| @@ -69,17 +69,16 @@ | ||||
|               </v-col> | ||||
|             </v-row> | ||||
|  | ||||
|             <!-- 캐릭터 설명 --> | ||||
|             <!-- 캐릭터 한 줄 소개 --> | ||||
|             <v-row> | ||||
|               <v-col cols="12"> | ||||
|                 <v-textarea | ||||
|                 <v-text-field | ||||
|                   v-model="character.description" | ||||
|                   label="캐릭터 설명" | ||||
|                   label="캐릭터 한 줄 소개" | ||||
|                   :rules="descriptionRules" | ||||
|                   required | ||||
|                   outlined | ||||
|                   auto-grow | ||||
|                   rows="4" | ||||
|                   dense | ||||
|                 /> | ||||
|               </v-col> | ||||
|             </v-row> | ||||
| @@ -117,7 +116,7 @@ | ||||
|               </v-col> | ||||
|             </v-row> | ||||
|  | ||||
|             <!-- MBTI --> | ||||
|             <!-- MBTI & 캐릭터 유형 --> | ||||
|             <v-row> | ||||
|               <v-col | ||||
|                 cols="12" | ||||
| @@ -131,6 +130,18 @@ | ||||
|                   dense | ||||
|                 /> | ||||
|               </v-col> | ||||
|               <v-col | ||||
|                 cols="12" | ||||
|                 md="6" | ||||
|               > | ||||
|                 <v-select | ||||
|                   v-model="character.type" | ||||
|                   :items="typeOptions" | ||||
|                   label="캐릭터 유형" | ||||
|                   outlined | ||||
|                   dense | ||||
|                 /> | ||||
|               </v-col> | ||||
|             </v-row> | ||||
|  | ||||
|             <!-- 태그 - 입력 후 띄어쓰기 할 때마다 Chip 형태로 변경 --> | ||||
| @@ -168,6 +179,32 @@ | ||||
|               </v-col> | ||||
|             </v-row> | ||||
|  | ||||
|             <!-- 원작 정보 --> | ||||
|             <v-row> | ||||
|               <v-col | ||||
|                 cols="12" | ||||
|                 md="6" | ||||
|               > | ||||
|                 <v-text-field | ||||
|                   v-model="character.originalTitle" | ||||
|                   label="원작명" | ||||
|                   outlined | ||||
|                   dense | ||||
|                 /> | ||||
|               </v-col> | ||||
|               <v-col | ||||
|                 cols="12" | ||||
|                 md="6" | ||||
|               > | ||||
|                 <v-text-field | ||||
|                   v-model="character.originalLink" | ||||
|                   label="원작링크" | ||||
|                   outlined | ||||
|                   dense | ||||
|                 /> | ||||
|               </v-col> | ||||
|             </v-row> | ||||
|  | ||||
|             <!-- 긴 텍스트 섹션 --> | ||||
|             <v-row> | ||||
|               <v-col cols="12"> | ||||
| @@ -925,6 +962,9 @@ export default { | ||||
|         gender: '', | ||||
|         age: '', | ||||
|         mbti: '', | ||||
|         type: '', | ||||
|         originalTitle: '', | ||||
|         originalLink: '', | ||||
|         speechPattern: '', | ||||
|         conversationStyle: '', | ||||
|         appearance: '', | ||||
| @@ -950,8 +990,8 @@ export default { | ||||
|         v => (v && v.trim().length > 0) || '이름을 입력하세요' | ||||
|       ], | ||||
|       descriptionRules: [ | ||||
|         v => !!v || '설명을 입력하세요', | ||||
|         v => (v && v.trim().length > 0) || '설명을 입력하세요' | ||||
|         v => !!v || '한 줄 소개를 입력하세요', | ||||
|         v => (v && v.trim().length > 0) || '한 줄 소개를 입력하세요' | ||||
|       ], | ||||
|       imageRules: [ | ||||
|         v => !this.isEdit || !!v || !!this.character.imageUrl || '이미지를 선택하세요' | ||||
| @@ -962,7 +1002,8 @@ export default { | ||||
|         'INFJ', 'INFP', 'ENFJ', 'ENFP', | ||||
|         'ISTJ', 'ISFJ', 'ESTJ', 'ESFJ', | ||||
|         'ISTP', 'ISFP', 'ESTP', 'ESFP' | ||||
|       ] | ||||
|       ], | ||||
|       typeOptions: ['Clone', 'Character'] | ||||
|     } | ||||
|   }, | ||||
|  | ||||
| @@ -1247,6 +1288,9 @@ export default { | ||||
|           age: this.character.age, | ||||
|           gender: this.character.gender, | ||||
|           mbti: this.character.mbti, | ||||
|           type: this.character.type, | ||||
|           originalTitle: this.character.originalTitle, | ||||
|           originalLink: this.character.originalLink, | ||||
|           speechPattern: this.character.speechPattern, | ||||
|           speechStyle: this.character.conversationStyle, | ||||
|           appearance: this.character.appearance, | ||||
| @@ -1269,7 +1313,7 @@ export default { | ||||
|  | ||||
|       // 기본 필드 비교 | ||||
|       const simpleFields = [ | ||||
|         'name', 'description', 'age', 'gender', 'mbti', | ||||
|         'name', 'description', 'age', 'gender', 'mbti', 'type', 'originalTitle', 'originalLink', | ||||
|         'speechPattern', 'isActive' | ||||
|       ]; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user