캔 결제 메시지 다국어 처리

This commit is contained in:
2025-12-23 18:09:17 +09:00
parent 58f7a8654b
commit 6e8a88178c
11 changed files with 358 additions and 110 deletions

View File

@@ -182,6 +182,178 @@ class SodaMessageSource {
)
)
private val canChargeMessages = mapOf(
"can.charge.invalid_payment_info" to mapOf(
Lang.KO to "결제정보에 오류가 있습니다.",
Lang.EN to "There is an error with the payment information.",
Lang.JA to "決済情報に誤りがあります。"
),
"can.charge.invalid_request_restart" to mapOf(
Lang.KO to "잘못된 요청입니다\n앱 종료 후 다시 시도해 주세요.",
Lang.EN to "Invalid request.\nPlease restart the app and try again.",
Lang.JA to "不正なリクエストです。\nアプリを終了して再度お試しください。"
),
"can.charge.purchase_failed_contact" to mapOf(
Lang.KO to "구매를 하지 못했습니다.\n고객센터로 문의해 주세요",
Lang.EN to "Purchase could not be completed.\nPlease contact customer support.",
Lang.JA to "購入を完了できませんでした。\nカスタマーサポートへお問い合わせください。"
),
"can.charge.payment_incomplete" to mapOf(
Lang.KO to "결제를 완료하지 못했습니다.",
Lang.EN to "Payment could not be completed.",
Lang.JA to "決済を完了できませんでした。"
),
"can.charge.payment_method.apple_iap" to mapOf(
Lang.KO to "애플(인 앱 결제)",
Lang.EN to "Apple (In-App Purchase)",
Lang.JA to "Appleアプリ内課金"
),
"can.charge.payment_method.google_iap" to mapOf(
Lang.KO to "구글(인 앱 결제)",
Lang.EN to "Google (In-App Purchase)",
Lang.JA to "Googleアプリ内課金"
),
"can.charge.payment_method.card" to mapOf(
Lang.KO to "카드",
Lang.EN to "Card",
Lang.JA to "カード"
),
"can.charge.title" to mapOf(
Lang.KO to "%s 캔",
Lang.EN to "%s cans",
Lang.JA to "%s缶"
)
)
private val canChargeEventMessages = mapOf(
"can.charge.event.not_applied_contact" to mapOf(
Lang.KO to "이벤트가 적용되지 않았습니다.\n고객센터에 문의해 주세요.",
Lang.EN to "The event was not applied.\nPlease contact customer support.",
Lang.JA to "イベントが適用されていません。\nカスタマーサポートへお問い合わせください。"
),
"can.charge.event.additional_can_paid" to mapOf(
Lang.KO to "%s 캔이 추가 지급되었습니다.",
Lang.EN to "%s cans have been added.",
Lang.JA to "%s缶が追加で支給されました。"
),
"can.charge.event.first_title" to mapOf(
Lang.KO to "첫 충전 이벤트",
Lang.EN to "First Recharge Event",
Lang.JA to "初回チャージイベント"
)
)
private val canCouponMessages = mapOf(
"can.coupon.invalid_number_contact" to mapOf(
Lang.KO to "잘못된 쿠폰번호입니다.\n고객센터로 문의해 주시기 바랍니다.",
Lang.EN to "Invalid coupon number.\nPlease contact customer support.",
Lang.JA to "無効なクーポン番号です。\nカスタマーサポートへお問い合わせください。"
),
"can.coupon.already_used" to mapOf(
Lang.KO to "이미 사용한 쿠폰번호 입니다.",
Lang.EN to "This coupon number has already been used.",
Lang.JA to "すでに使用されたクーポン番号です。"
),
"can.coupon.use_complete" to mapOf(
Lang.KO to "쿠폰 사용이 완료되었습니다.\n%s캔이 지급되었습니다.",
Lang.EN to "Coupon redeemed successfully.\n%s cans have been granted.",
Lang.JA to "クーポンの使用が完了しました。\n%s缶が支給されました。"
),
"can.coupon.use_complete_point" to mapOf(
Lang.KO to "쿠폰 사용이 완료되었습니다.\n%s포인트가 지급되었습니다.",
Lang.EN to "Coupon redeemed successfully.\n%s points have been granted.",
Lang.JA to "クーポンの使用が完了しました。\n%sポイントが付与されました。"
),
"can.coupon.single_use_only" to mapOf(
Lang.KO to "해당 쿠폰은 1회만 충전이 가능합니다.",
Lang.EN to "This coupon can be used only once for charging.",
Lang.JA to "このクーポンは1回のみチャージに使用できます。"
),
"can.coupon.expired" to mapOf(
Lang.KO to "유효기간이 경과된 쿠폰입니다.",
Lang.EN to "This coupon has expired.",
Lang.JA to "有効期限が切れたクーポンです。"
),
"can.coupon.inactive" to mapOf(
Lang.KO to "이용이 불가능한 쿠폰입니다.",
Lang.EN to "This coupon is not available.",
Lang.JA to "利用できないクーポンです。"
),
"can.coupon.no_changes" to mapOf(
Lang.KO to "변경사항이 없습니다.",
Lang.EN to "No changes found.",
Lang.JA to "変更事項がありません。"
),
"can.coupon.validity_after_current" to mapOf(
Lang.KO to "유효기간은 기존 유효기간 이후 날짜로 설정하실 수 있습니다.",
Lang.EN to "Validity must be set after the current expiration date.",
Lang.JA to "有効期限は現在の有効期限以降に設定できます。"
),
"can.coupon.auth_required" to mapOf(
Lang.KO to "쿠폰은 본인인증을 하셔야 사용이 가능합니다.",
Lang.EN to "You must verify your identity to use coupons.",
Lang.JA to "クーポンの使用には本人認証が必要です。"
),
"can.coupon.download_failed_retry" to mapOf(
Lang.KO to "다운로드를 하지 못했습니다.\n다시 시도해 주세요.",
Lang.EN to "Download failed.\nPlease try again.",
Lang.JA to "ダウンロードできませんでした。\nもう一度お試しください。"
),
"can.coupon.download_filename" to mapOf(
Lang.KO to "쿠폰번호리스트.xlsx",
Lang.EN to "coupon_number_list.xlsx",
Lang.JA to "クーポン番号リスト.xlsx"
),
"can.coupon.download_header.index" to mapOf(
Lang.KO to "순번",
Lang.EN to "No.",
Lang.JA to "番号"
),
"can.coupon.download_header.number" to mapOf(
Lang.KO to "쿠폰번호",
Lang.EN to "Coupon Number",
Lang.JA to "クーポン番号"
),
"can.coupon.download_header.used" to mapOf(
Lang.KO to "사용여부",
Lang.EN to "Used",
Lang.JA to "使用有無"
),
"can.coupon.download_used_mark" to mapOf(
Lang.KO to "O",
Lang.EN to "O",
Lang.JA to "O"
),
"can.coupon.download_unused_mark" to mapOf(
Lang.KO to "X",
Lang.EN to "X",
Lang.JA to "X"
)
)
private val canPaymentMessages = mapOf(
"can.payment.invalid_request_retry" to mapOf(
Lang.KO to "잘못된 요청입니다.\n다시 시도해 주세요.",
Lang.EN to "Invalid request.\nPlease try again.",
Lang.JA to "不正なリクエストです。\nもう一度お試しください。"
),
"can.payment.invalid_reservation" to mapOf(
Lang.KO to "잘못된 예약정보 입니다.",
Lang.EN to "Invalid reservation information.",
Lang.JA to "無効な予約情報です。"
),
"can.payment.method.refund" to mapOf(
Lang.KO to "환불",
Lang.EN to "Refund",
Lang.JA to "返金"
),
"can.payment.insufficient_can" to mapOf(
Lang.KO to "%s 캔이 부족합니다. 충전 후 이용해 주세요.",
Lang.EN to "You are short of %s cans. Please recharge and try again.",
Lang.JA to "%s缶が不足しています。チャージしてからご利用ください。"
)
)
private val adminChatBannerMessages = mapOf(
"admin.chat.banner.image_save_failed" to mapOf(
Lang.KO to "이미지 저장에 실패했습니다.",
@@ -1546,6 +1718,10 @@ class SodaMessageSource {
auditionVoteMessages,
settlementRatioMessages,
adminCanMessages,
canChargeMessages,
canChargeEventMessages,
canCouponMessages,
canPaymentMessages,
adminChatBannerMessages,
adminChatCalculateMessages,
adminChatCharacterMessages,