commit
bc8bc479d1
|
@ -6,6 +6,8 @@ import kr.co.vividnext.sodalive.marketing.AdMediaPartnerType
|
||||||
import org.springframework.data.repository.findByIdOrNull
|
import org.springframework.data.repository.findByIdOrNull
|
||||||
import org.springframework.stereotype.Service
|
import org.springframework.stereotype.Service
|
||||||
import org.springframework.transaction.annotation.Transactional
|
import org.springframework.transaction.annotation.Transactional
|
||||||
|
import java.net.URLEncoder
|
||||||
|
import java.nio.charset.StandardCharsets
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
class AdminAdMediaPartnerService(private val repository: AdMediaPartnerRepository) {
|
class AdminAdMediaPartnerService(private val repository: AdMediaPartnerRepository) {
|
||||||
|
@ -61,16 +63,17 @@ class AdminAdMediaPartnerService(private val repository: AdMediaPartnerRepositor
|
||||||
AdMediaPartnerType.MAIN -> "main"
|
AdMediaPartnerType.MAIN -> "main"
|
||||||
}
|
}
|
||||||
|
|
||||||
val link = "$oneLinkHost?" +
|
val params = mapOf(
|
||||||
"af_dp=voiceon://" +
|
"deep_link_value" to deepLinkValue,
|
||||||
"&deep_link_value=$deepLinkValue" +
|
"deep_link_sub1" to it.pid,
|
||||||
"&deep_link_sub1=${it.pid}" +
|
"deep_link_sub2" to it.utmSource,
|
||||||
"&deep_link_sub2=${it.utmSource}" +
|
"deep_link_sub3" to it.utmMedium,
|
||||||
"&deep_link_sub3=${it.utmMedium}" +
|
"deep_link_sub4" to it.pidName,
|
||||||
"&deep_link_sub4=${it.pidName}" +
|
"utm_source" to it.utmSource,
|
||||||
"&utm_source=${it.utmSource}" +
|
"utm_medium" to it.utmMedium,
|
||||||
"&utm_medium=${it.utmMedium}" +
|
"utm_campaign" to it.pid
|
||||||
"&utm_campaign=${it.pid}"
|
)
|
||||||
|
val link = createUrl(params = params)
|
||||||
|
|
||||||
it.link = link
|
it.link = link
|
||||||
it
|
it
|
||||||
|
@ -82,7 +85,16 @@ class AdminAdMediaPartnerService(private val repository: AdMediaPartnerRepositor
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun createUrl(params: Map<String, String>): String {
|
||||||
|
val encodedParams = params.map { (key, value) ->
|
||||||
|
"${URLEncoder.encode(key, StandardCharsets.UTF_8.toString())}=" +
|
||||||
|
URLEncoder.encode(value, StandardCharsets.UTF_8.toString())
|
||||||
|
}.joinToString("&")
|
||||||
|
|
||||||
|
return "$ONE_LINK_HOST?$encodedParams"
|
||||||
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
private val oneLinkHost = "https://voiceon.onelink.me/RkTm"
|
private const val ONE_LINK_HOST = "https://voiceon.onelink.me/RkTm"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue