fix(chat-banner): 관리자 배너 목록에 언어 표기를 추가한다
This commit is contained in:
@@ -62,7 +62,13 @@ class AdminChatBannerController(
|
||||
val banners = bannerService.getActiveBanners(pageable)
|
||||
val response = ChatCharacterBannerListPageResponse(
|
||||
totalCount = banners.totalElements,
|
||||
content = banners.content.map { ChatCharacterBannerResponse.from(it, imageHost) }
|
||||
content = banners.content.map {
|
||||
ChatCharacterBannerResponse.from(
|
||||
banner = it,
|
||||
imageHost = imageHost,
|
||||
appendLanguageToCharacterName = true
|
||||
)
|
||||
}
|
||||
)
|
||||
|
||||
ApiResponse.ok(response)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package kr.co.vividnext.sodalive.admin.chat.dto
|
||||
|
||||
import kr.co.vividnext.sodalive.chat.character.ChatCharacterBanner
|
||||
import kr.co.vividnext.sodalive.i18n.Lang
|
||||
|
||||
/**
|
||||
* 캐릭터 배너 응답 DTO
|
||||
@@ -12,14 +13,30 @@ data class ChatCharacterBannerResponse(
|
||||
val characterName: String
|
||||
) {
|
||||
companion object {
|
||||
fun from(banner: ChatCharacterBanner, imageHost: String): ChatCharacterBannerResponse {
|
||||
fun from(
|
||||
banner: ChatCharacterBanner,
|
||||
imageHost: String,
|
||||
appendLanguageToCharacterName: Boolean = false
|
||||
): ChatCharacterBannerResponse {
|
||||
return ChatCharacterBannerResponse(
|
||||
id = banner.id!!,
|
||||
imagePath = "$imageHost/${banner.imagePath}",
|
||||
characterId = banner.chatCharacter.id!!,
|
||||
characterName = banner.chatCharacter.name
|
||||
characterName = if (appendLanguageToCharacterName) {
|
||||
"${banner.chatCharacter.name} (${getLanguageLabel(banner.lang)})"
|
||||
} else {
|
||||
banner.chatCharacter.name
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
private fun getLanguageLabel(lang: Lang): String {
|
||||
return when (lang) {
|
||||
Lang.KO -> "한국어"
|
||||
Lang.EN -> "영어"
|
||||
Lang.JA -> "일본어"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user