From 76e32c17f62d36637123312aef153be14b53b411 Mon Sep 17 00:00:00 2001 From: HyunSu1768 Date: Wed, 8 May 2024 17:17:18 +0900 Subject: [PATCH] =?UTF-8?q?feat=20::=20isAdmin=20=ED=95=84=EB=93=9C=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../team/adapter/dto/response/DetailTeamResponse.kt | 3 ++- .../team/application/service/GetTeamDetailService.kt | 8 ++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/kotlin/xquare/app/xquareinfra/domain/team/adapter/dto/response/DetailTeamResponse.kt b/src/main/kotlin/xquare/app/xquareinfra/domain/team/adapter/dto/response/DetailTeamResponse.kt index e6ccd74..a74871f 100644 --- a/src/main/kotlin/xquare/app/xquareinfra/domain/team/adapter/dto/response/DetailTeamResponse.kt +++ b/src/main/kotlin/xquare/app/xquareinfra/domain/team/adapter/dto/response/DetailTeamResponse.kt @@ -8,5 +8,6 @@ data class DetailTeamResponse( val memberCount: Int, val adminName: String, val createdAt: LocalDateTime, - val memberList: List + val memberList: List, + val isAdmin: Boolean ) diff --git a/src/main/kotlin/xquare/app/xquareinfra/domain/team/application/service/GetTeamDetailService.kt b/src/main/kotlin/xquare/app/xquareinfra/domain/team/application/service/GetTeamDetailService.kt index 5c29ede..11da001 100644 --- a/src/main/kotlin/xquare/app/xquareinfra/domain/team/application/service/GetTeamDetailService.kt +++ b/src/main/kotlin/xquare/app/xquareinfra/domain/team/application/service/GetTeamDetailService.kt @@ -2,6 +2,7 @@ package xquare.app.xquareinfra.domain.team.application.service import org.springframework.stereotype.Service import org.springframework.transaction.annotation.Transactional +import xquare.app.xquareinfra.domain.auth.application.port.out.ReadCurrentUserPort import xquare.app.xquareinfra.domain.team.adapter.dto.response.DetailTeamResponse import xquare.app.xquareinfra.domain.team.adapter.dto.response.TeamMemberResponse import xquare.app.xquareinfra.domain.team.application.port.`in`.GetTeamDetailUseCase @@ -15,10 +16,12 @@ import java.util.* @Service class GetTeamDetailService( private val findTeamPort: FindTeamPort, - private val findUserPort: FindUserPort + private val findUserPort: FindUserPort, + private val readCurrentUserPort: ReadCurrentUserPort ): GetTeamDetailUseCase { override fun getTeamDetail(teamId: UUID): DetailTeamResponse { val team = findTeamPort.findById(teamId) ?: throw BusinessLogicException.TEAM_NOT_FOUND + val user = readCurrentUserPort.readCurrentUser() val response = team.run { val admin = findUserPort.findById(adminId) ?: throw BusinessLogicException.USER_NOT_FOUND DetailTeamResponse( @@ -27,7 +30,8 @@ class GetTeamDetailService( memberCount = members.size, adminName = admin.name, createdAt = createdAt!!, - memberList = getMemberResponse(members) + memberList = getMemberResponse(members), + isAdmin = team.adminId == user.id!! ) } return response