관리자 - 크리에이터 리스트 API
This commit is contained in:
parent
94551b05ff
commit
3d514e8ad4
|
@ -20,4 +20,13 @@ class AdminMemberController(private val service: AdminMemberService) {
|
||||||
@RequestParam(value = "search_word") searchWord: String,
|
@RequestParam(value = "search_word") searchWord: String,
|
||||||
pageable: Pageable
|
pageable: Pageable
|
||||||
) = ApiResponse.ok(service.searchMember(searchWord, pageable))
|
) = ApiResponse.ok(service.searchMember(searchWord, pageable))
|
||||||
|
|
||||||
|
@GetMapping("/creator/list")
|
||||||
|
fun getCreatorList(pageable: Pageable) = ApiResponse.ok(service.getCreatorList(pageable))
|
||||||
|
|
||||||
|
@GetMapping("/creator/search")
|
||||||
|
fun searchCreator(
|
||||||
|
@RequestParam(value = "search_word") searchWord: String,
|
||||||
|
pageable: Pageable
|
||||||
|
) = ApiResponse.ok(service.searchCreator(searchWord, pageable))
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,7 +41,7 @@ class AdminMemberQueryRepositoryImpl(private val queryFactory: JPAQueryFactory)
|
||||||
.select(member.id)
|
.select(member.id)
|
||||||
.from(member)
|
.from(member)
|
||||||
.where(
|
.where(
|
||||||
member.id.gt(1)
|
member.role.ne(MemberRole.ADMIN)
|
||||||
.and(
|
.and(
|
||||||
if (role != null) {
|
if (role != null) {
|
||||||
member.role.eq(role)
|
member.role.eq(role)
|
||||||
|
|
|
@ -42,6 +42,34 @@ class AdminMemberService(
|
||||||
return GetAdminMemberListResponse(totalCount, memberList)
|
return GetAdminMemberListResponse(totalCount, memberList)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun getCreatorList(pageable: Pageable): GetAdminMemberListResponse {
|
||||||
|
val totalCount = repository.getMemberTotalCount(role = MemberRole.CREATOR)
|
||||||
|
val creatorList = processMemberListToGetAdminMemberListResponseItemList(
|
||||||
|
memberList = repository.getMemberList(
|
||||||
|
offset = pageable.offset,
|
||||||
|
limit = pageable.pageSize.toLong(),
|
||||||
|
role = MemberRole.CREATOR
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
return GetAdminMemberListResponse(totalCount, creatorList)
|
||||||
|
}
|
||||||
|
|
||||||
|
fun searchCreator(searchWord: String, pageable: Pageable): GetAdminMemberListResponse {
|
||||||
|
if (searchWord.length < 2) throw SodaException("2글자 이상 입력하세요.")
|
||||||
|
val totalCount = repository.searchMemberTotalCount(searchWord = searchWord, role = MemberRole.CREATOR)
|
||||||
|
val creatorList = processMemberListToGetAdminMemberListResponseItemList(
|
||||||
|
memberList = repository.searchMember(
|
||||||
|
searchWord = searchWord,
|
||||||
|
offset = pageable.offset,
|
||||||
|
limit = pageable.pageSize.toLong(),
|
||||||
|
role = MemberRole.CREATOR
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
return GetAdminMemberListResponse(totalCount, creatorList)
|
||||||
|
}
|
||||||
|
|
||||||
private fun processMemberListToGetAdminMemberListResponseItemList(
|
private fun processMemberListToGetAdminMemberListResponseItemList(
|
||||||
memberList: List<Member>
|
memberList: List<Member>
|
||||||
): List<GetAdminMemberListResponseItem> {
|
): List<GetAdminMemberListResponseItem> {
|
||||||
|
@ -51,7 +79,7 @@ class AdminMemberService(
|
||||||
val userType = when (it.role) {
|
val userType = when (it.role) {
|
||||||
MemberRole.ADMIN -> "관리자"
|
MemberRole.ADMIN -> "관리자"
|
||||||
MemberRole.USER -> "일반회원"
|
MemberRole.USER -> "일반회원"
|
||||||
MemberRole.CREATOR -> "요즘친구"
|
MemberRole.CREATOR -> "크리에이터"
|
||||||
MemberRole.AGENT -> "에이전트"
|
MemberRole.AGENT -> "에이전트"
|
||||||
MemberRole.BOT -> "봇"
|
MemberRole.BOT -> "봇"
|
||||||
}
|
}
|
||||||
|
|
|
@ -792,7 +792,7 @@ class LiveRoomService(
|
||||||
val host = room.member ?: throw SodaException("잘못된 요청입니다.")
|
val host = room.member ?: throw SodaException("잘못된 요청입니다.")
|
||||||
|
|
||||||
if (host.role != MemberRole.CREATOR) {
|
if (host.role != MemberRole.CREATOR) {
|
||||||
throw SodaException("비비드넥스트와 계약한\n요즘친구에게만 후원을 하실 수 있습니다.")
|
throw SodaException("비비드넥스트와 계약한\n크리에이터에게만 후원을 하실 수 있습니다.")
|
||||||
}
|
}
|
||||||
|
|
||||||
canPaymentService.spendCan(
|
canPaymentService.spendCan(
|
||||||
|
|
Loading…
Reference in New Issue