| @@ -628,4 +628,12 @@ class ExplorerQueryRepository( | ||||
|             ) | ||||
|             .fetchFirst() | ||||
|     } | ||||
|  | ||||
|     fun getVisibleDonationRank(creatorId: Long): Boolean { | ||||
|         return queryFactory | ||||
|             .select(member.isVisibleDonationRank) | ||||
|             .from(member) | ||||
|             .where(member.id.eq(creatorId)) | ||||
|             .fetchFirst() | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -178,11 +178,15 @@ class ExplorerService( | ||||
|         val notificationRecipientCount = notificationUserIds.size | ||||
|  | ||||
|         // 후원랭킹 | ||||
|         val memberDonationRanking = queryRepository.getMemberDonationRanking( | ||||
|         val memberDonationRanking = if (creatorId == member.id!! || creatorAccount.isVisibleDonationRank) { | ||||
|             queryRepository.getMemberDonationRanking( | ||||
|                 creatorId, | ||||
|                 10, | ||||
|                 withDonationCan = creatorId == member.id!! | ||||
|             ) | ||||
|         } else { | ||||
|             listOf() | ||||
|         } | ||||
|  | ||||
|         // 추천 크리에이터 | ||||
|         val similarCreatorList = queryRepository.getSimilarCreatorList(creatorId) | ||||
| @@ -290,6 +294,11 @@ class ExplorerService( | ||||
|             } else { | ||||
|                 0 | ||||
|             }, | ||||
|             isVisibleDonationRank = if (creatorId == member.id!!) { | ||||
|                 queryRepository.getVisibleDonationRank(creatorId) | ||||
|             } else { | ||||
|                 false | ||||
|             }, | ||||
|             totalCount = queryRepository.getMemberDonationRankingTotal(creatorId), | ||||
|             userDonationRanking = queryRepository.getMemberDonationRanking( | ||||
|                 creatorId, | ||||
|   | ||||
| @@ -4,6 +4,7 @@ data class GetDonationAllResponse( | ||||
|     val accumulatedCansToday: Int, | ||||
|     val accumulatedCansLastWeek: Int, | ||||
|     val accumulatedCansThisMonth: Int, | ||||
|     val isVisibleDonationRank: Boolean, | ||||
|     val totalCount: Int, | ||||
|     val userDonationRanking: List<MemberDonationRankingResponse> | ||||
| ) | ||||
|   | ||||
| @@ -653,7 +653,8 @@ class LiveRoomService( | ||||
|             .getNotificationUserIds(room.member!!.id!!) | ||||
|             .contains(member.id) | ||||
|  | ||||
|         val donationRankingTop3UserIds = explorerQueryRepository | ||||
|         val donationRankingTop3UserIds = if (room.member!!.isVisibleDonationRank) { | ||||
|             explorerQueryRepository | ||||
|                 .getMemberDonationRanking( | ||||
|                     room.member!!.id!!, | ||||
|                     3, | ||||
| @@ -662,6 +663,9 @@ class LiveRoomService( | ||||
|                 .asSequence() | ||||
|                 .map { it.userId } | ||||
|                 .toList() | ||||
|         } else { | ||||
|             listOf() | ||||
|         } | ||||
|  | ||||
|         return GetRoomInfoResponse( | ||||
|             roomId = roomId, | ||||
|   | ||||
| @@ -28,6 +28,8 @@ data class Member( | ||||
|     @Enumerated(value = EnumType.STRING) | ||||
|     var role: MemberRole = MemberRole.USER, | ||||
|  | ||||
|     var isVisibleDonationRank: Boolean = true, | ||||
|  | ||||
|     var isActive: Boolean = true, | ||||
|  | ||||
|     var container: String = "web" | ||||
|   | ||||
| @@ -547,6 +547,10 @@ class MemberService( | ||||
|             member.blogUrl = profileUpdateRequest.blogUrl | ||||
|         } | ||||
|  | ||||
|         if (profileUpdateRequest.isVisibleDonationRank != null) { | ||||
|             member.isVisibleDonationRank = profileUpdateRequest.isVisibleDonationRank | ||||
|         } | ||||
|  | ||||
|         return ProfileResponse(member, cloudFrontHost, profileUpdateRequest.container) | ||||
|     } | ||||
|  | ||||
|   | ||||
| @@ -13,5 +13,6 @@ data class ProfileUpdateRequest( | ||||
|     val instagramUrl: String? = null, | ||||
|     val websiteUrl: String? = null, | ||||
|     val blogUrl: String? = null, | ||||
|     val isVisibleDonationRank: Boolean? = null, | ||||
|     val container: String | ||||
| ) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user