fix(agent-calculate): 에이전트 기본 정산 비율을 7퍼센트로 조정한다
This commit is contained in:
@@ -435,7 +435,7 @@ class AgentCalculateQueryRepository(
|
||||
SELECT
|
||||
COUNT(DISTINCT uc.id) AS count_value,
|
||||
SUM(ucc.can) AS total_can,
|
||||
COALESCE(asr.settlement_ratio, 10) AS agent_settlement_ratio
|
||||
COALESCE(asr.settlement_ratio, 7) AS agent_settlement_ratio
|
||||
FROM use_can_calculate ucc
|
||||
INNER JOIN use_can uc ON ucc.use_can_id = uc.id
|
||||
INNER JOIN member m ON m.id = ucc.recipient_creator_id
|
||||
@@ -451,7 +451,7 @@ class AgentCalculateQueryRepository(
|
||||
AND ucc.status = 'RECEIVED'
|
||||
AND uc.created_at >= :startDate
|
||||
AND uc.created_at <= :endDate
|
||||
GROUP BY acr.id, asr.id, COALESCE(asr.settlement_ratio, 10)
|
||||
GROUP BY acr.id, asr.id, COALESCE(asr.settlement_ratio, 7)
|
||||
) grouped
|
||||
""".trimIndent()
|
||||
)
|
||||
@@ -812,7 +812,7 @@ class AgentCalculateQueryRepository(
|
||||
COUNT(uc.id) AS count_value,
|
||||
SUM(uc.can + uc.reward_can) AS total_can,
|
||||
COALESCE(csr.live_settlement_ratio, 70) AS settlement_ratio,
|
||||
COALESCE(asr.settlement_ratio, 10) AS agent_settlement_ratio
|
||||
COALESCE(asr.settlement_ratio, 7) AS agent_settlement_ratio
|
||||
FROM use_can uc
|
||||
INNER JOIN live_room lr ON uc.room_id = lr.id
|
||||
INNER JOIN member m ON lr.member_id = m.id
|
||||
@@ -828,7 +828,7 @@ class AgentCalculateQueryRepository(
|
||||
WHERE uc.is_refund = FALSE
|
||||
AND uc.created_at >= :startDate
|
||||
AND uc.created_at <= :endDate
|
||||
GROUP BY acr.id, asr.id, COALESCE(csr.live_settlement_ratio, 70), COALESCE(asr.settlement_ratio, 10)
|
||||
GROUP BY acr.id, asr.id, COALESCE(csr.live_settlement_ratio, 70), COALESCE(asr.settlement_ratio, 7)
|
||||
""".trimIndent()
|
||||
|
||||
private fun buildContentSettlementTotalSubQuery() = """
|
||||
@@ -836,7 +836,7 @@ class AgentCalculateQueryRepository(
|
||||
COUNT(o.id) AS count_value,
|
||||
SUM(o.can) AS total_can,
|
||||
COALESCE(COALESCE(c.settlement_ratio, csr.content_settlement_ratio), 70) AS settlement_ratio,
|
||||
COALESCE(asr.settlement_ratio, 10) AS agent_settlement_ratio
|
||||
COALESCE(asr.settlement_ratio, 7) AS agent_settlement_ratio
|
||||
FROM orders o
|
||||
INNER JOIN content c ON o.content_id = c.id
|
||||
INNER JOIN member m ON c.member_id = m.id
|
||||
@@ -857,7 +857,7 @@ class AgentCalculateQueryRepository(
|
||||
asr.id,
|
||||
COALESCE(c.settlement_ratio, csr.content_settlement_ratio),
|
||||
COALESCE(COALESCE(c.settlement_ratio, csr.content_settlement_ratio), 70),
|
||||
COALESCE(asr.settlement_ratio, 10)
|
||||
COALESCE(asr.settlement_ratio, 7)
|
||||
""".trimIndent()
|
||||
|
||||
private fun buildCommunitySettlementTotalSubQuery() = """
|
||||
@@ -865,7 +865,7 @@ class AgentCalculateQueryRepository(
|
||||
COUNT(uc.id) AS count_value,
|
||||
SUM(uc.can + uc.reward_can) AS total_can,
|
||||
COALESCE(csr.community_settlement_ratio, 70) AS settlement_ratio,
|
||||
COALESCE(asr.settlement_ratio, 10) AS agent_settlement_ratio
|
||||
COALESCE(asr.settlement_ratio, 7) AS agent_settlement_ratio
|
||||
FROM use_can uc
|
||||
INNER JOIN creator_community cc ON uc.creator_community_id = cc.id
|
||||
INNER JOIN member m ON cc.member_id = m.id
|
||||
@@ -882,7 +882,7 @@ class AgentCalculateQueryRepository(
|
||||
AND uc.can_usage = 'PAID_COMMUNITY_POST'
|
||||
AND uc.created_at >= :startDate
|
||||
AND uc.created_at <= :endDate
|
||||
GROUP BY acr.id, asr.id, COALESCE(csr.community_settlement_ratio, 70), COALESCE(asr.settlement_ratio, 10)
|
||||
GROUP BY acr.id, asr.id, COALESCE(csr.community_settlement_ratio, 70), COALESCE(asr.settlement_ratio, 7)
|
||||
""".trimIndent()
|
||||
|
||||
private fun buildContentDonationSettlementTotalSubQuery() = """
|
||||
@@ -890,7 +890,7 @@ class AgentCalculateQueryRepository(
|
||||
COUNT(uc.id) AS count_value,
|
||||
SUM(uc.can + uc.reward_can) AS total_can,
|
||||
70 AS settlement_ratio,
|
||||
COALESCE(asr.settlement_ratio, 10) AS agent_settlement_ratio
|
||||
COALESCE(asr.settlement_ratio, 7) AS agent_settlement_ratio
|
||||
FROM use_can uc
|
||||
INNER JOIN content c ON uc.content_id = c.id
|
||||
INNER JOIN member m ON c.member_id = m.id
|
||||
@@ -905,7 +905,7 @@ class AgentCalculateQueryRepository(
|
||||
AND uc.can_usage = 'DONATION'
|
||||
AND uc.created_at >= :startDate
|
||||
AND uc.created_at <= :endDate
|
||||
GROUP BY acr.id, asr.id, COALESCE(asr.settlement_ratio, 10)
|
||||
GROUP BY acr.id, asr.id, COALESCE(asr.settlement_ratio, 7)
|
||||
""".trimIndent()
|
||||
|
||||
private fun Any?.toIntValue(): Int {
|
||||
|
||||
@@ -64,7 +64,7 @@ data class GetAgentChannelDonationSettlementByCreatorQueryData @QueryProjection
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val DEFAULT_AGENT_SETTLEMENT_RATIO = 10
|
||||
private const val DEFAULT_AGENT_SETTLEMENT_RATIO = 7
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -46,7 +46,7 @@ data class GetAgentCreatorSettlementSummaryQueryData @QueryProjection constructo
|
||||
private val TAX_RATE = BigDecimal("0.033")
|
||||
private val PERCENT_DIVISOR = BigDecimal("100")
|
||||
private const val DEFAULT_SETTLEMENT_RATIO = 70
|
||||
private const val DEFAULT_AGENT_SETTLEMENT_RATIO = 10
|
||||
private const val DEFAULT_AGENT_SETTLEMENT_RATIO = 7
|
||||
|
||||
private fun calculateAgentSettlementAmount(settlementAmount: Int, agentSettlementRatio: Int): Int {
|
||||
return BigDecimal(settlementAmount)
|
||||
|
||||
Reference in New Issue
Block a user