feat: 캐릭터 생성/수정 Request

- JsonProperty 추가
This commit is contained in:
Klaus 2025-08-07 20:48:27 +09:00
parent 206c25985a
commit 74ed7b20ba
1 changed files with 45 additions and 44 deletions

View File

@ -1,40 +1,41 @@
package kr.co.vividnext.sodalive.admin.chat.character.dto
import com.fasterxml.jackson.annotation.JsonProperty
data class ChatCharacterPersonalityRequest(
val trait: String,
val description: String
@JsonProperty("trait") val trait: String,
@JsonProperty("description") val description: String
)
data class ChatCharacterBackgroundRequest(
val topic: String,
val description: String
@JsonProperty("topic") val topic: String,
@JsonProperty("description") val description: String
)
data class ChatCharacterMemoryRequest(
val title: String,
val content: String,
val emotion: String
@JsonProperty("title") val title: String,
@JsonProperty("content") val content: String,
@JsonProperty("emotion") val emotion: String
)
data class ChatCharacterRegisterRequest(
val name: String,
val systemPrompt: String,
val description: String,
val age: String?,
val gender: String?,
val mbti: String?,
val speechPattern: String?,
val speechStyle: String?,
val appearance: String?,
val isActive: Boolean = true,
val tags: List<String> = emptyList(),
val hobbies: List<String> = emptyList(),
val values: List<String> = emptyList(),
val goals: List<String> = emptyList(),
val relationships: List<String> = emptyList(),
val personalities: List<ChatCharacterPersonalityRequest> = emptyList(),
val backgrounds: List<ChatCharacterBackgroundRequest> = emptyList(),
val memories: List<ChatCharacterMemoryRequest> = emptyList()
@JsonProperty("name") val name: String,
@JsonProperty("systemPrompt") val systemPrompt: String,
@JsonProperty("description") val description: String,
@JsonProperty("age") val age: String?,
@JsonProperty("gender") val gender: String?,
@JsonProperty("mbti") val mbti: String?,
@JsonProperty("speechPattern") val speechPattern: String?,
@JsonProperty("speechStyle") val speechStyle: String?,
@JsonProperty("appearance") val appearance: String?,
@JsonProperty("tags") val tags: List<String> = emptyList(),
@JsonProperty("hobbies") val hobbies: List<String> = emptyList(),
@JsonProperty("values") val values: List<String> = emptyList(),
@JsonProperty("goals") val goals: List<String> = emptyList(),
@JsonProperty("relationships") val relationships: List<String> = emptyList(),
@JsonProperty("personalities") val personalities: List<ChatCharacterPersonalityRequest> = emptyList(),
@JsonProperty("backgrounds") val backgrounds: List<ChatCharacterBackgroundRequest> = emptyList(),
@JsonProperty("memories") val memories: List<ChatCharacterMemoryRequest> = emptyList()
)
data class ExternalApiResponse(
@ -48,23 +49,23 @@ data class ExternalApiData(
)
data class ChatCharacterUpdateRequest(
val id: Long,
val name: String? = null,
val systemPrompt: String? = null,
val description: String? = null,
val age: String? = null,
val gender: String? = null,
val mbti: String? = null,
val speechPattern: String? = null,
val speechStyle: String? = null,
val appearance: String? = null,
val isActive: Boolean? = null,
val tags: List<String>? = null,
val hobbies: List<String>? = null,
val values: List<String>? = null,
val goals: List<String>? = null,
val relationships: List<String>? = null,
val personalities: List<ChatCharacterPersonalityRequest>? = null,
val backgrounds: List<ChatCharacterBackgroundRequest>? = null,
val memories: List<ChatCharacterMemoryRequest>? = null
@JsonProperty("id") val id: Long,
@JsonProperty("name") val name: String? = null,
@JsonProperty("systemPrompt") val systemPrompt: String? = null,
@JsonProperty("description") val description: String? = null,
@JsonProperty("age") val age: String? = null,
@JsonProperty("gender") val gender: String? = null,
@JsonProperty("mbti") val mbti: String? = null,
@JsonProperty("speechPattern") val speechPattern: String? = null,
@JsonProperty("speechStyle") val speechStyle: String? = null,
@JsonProperty("appearance") val appearance: String? = null,
@JsonProperty("isActive") val isActive: Boolean? = null,
@JsonProperty("tags") val tags: List<String>? = null,
@JsonProperty("hobbies") val hobbies: List<String>? = null,
@JsonProperty("values") val values: List<String>? = null,
@JsonProperty("goals") val goals: List<String>? = null,
@JsonProperty("relationships") val relationships: List<String>? = null,
@JsonProperty("personalities") val personalities: List<ChatCharacterPersonalityRequest>? = null,
@JsonProperty("backgrounds") val backgrounds: List<ChatCharacterBackgroundRequest>? = null,
@JsonProperty("memories") val memories: List<ChatCharacterMemoryRequest>? = null
)