From 0e25f6a7ad652e63d70cdd131ae81492acbed0b5 Mon Sep 17 00:00:00 2001 From: jisu Date: Sat, 11 Jan 2025 21:20:22 +0900 Subject: [PATCH 1/7] refact: refactor security filter chains to ensure proper order and access control for auth --- .../api/config/WebSecurityConfig.kt | 55 +++++++++---------- 1 file changed, 25 insertions(+), 30 deletions(-) diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/config/WebSecurityConfig.kt b/src/main/kotlin/com/dobby/backend/presentation/api/config/WebSecurityConfig.kt index afec53b1..17049344 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/config/WebSecurityConfig.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/config/WebSecurityConfig.kt @@ -17,69 +17,64 @@ import org.springframework.web.servlet.HandlerExceptionResolver @Configuration @EnableMethodSecurity -class WebSecurityConfig( -) { +class WebSecurityConfig { @Bean - @Order(0) - fun securityFilterChain( + @Order(1) + fun authSecurityFilterChain( httpSecurity: HttpSecurity, jwtTokenProvider: JwtTokenProvider, - handlerExceptionResolver: HandlerExceptionResolver, + handlerExceptionResolver: HandlerExceptionResolver ): SecurityFilterChain = httpSecurity - .securityMatcher( "/v1/**") + .securityMatcher("/v1/auth/**", "/v1/members/signup", "/v1/emails/**") .csrf { it.disable() } .cors(Customizer.withDefaults()) .sessionManagement { it.sessionCreationPolicy(SessionCreationPolicy.STATELESS) } .authorizeHttpRequests { - it.anyRequest().permitAll() // 모든 요청 허용 - } - .addFilterBefore( - JwtAuthenticationFilter(jwtTokenProvider, handlerExceptionResolver), - UsernamePasswordAuthenticationFilter::class.java - ) - .exceptionHandling { - it.accessDeniedHandler { request, response, exception -> - handlerExceptionResolver.resolveException(request, response, null, PermissionDeniedException()) - }.authenticationEntryPoint { request, response, authException -> - handlerExceptionResolver.resolveException(request, response, null, UnauthorizedException()) - } + it.requestMatchers("/v1/auth/**").permitAll() + it.requestMatchers("/v1/members/signup", "/v1/emails/**").permitAll() + it.anyRequest().authenticated() } .build() @Bean - @Order(1) - fun authSecurityFilterChain( + @Order(2) + fun securityFilterChain( httpSecurity: HttpSecurity, jwtTokenProvider: JwtTokenProvider, - handlerExceptionResolver: HandlerExceptionResolver + handlerExceptionResolver: HandlerExceptionResolver, ): SecurityFilterChain = httpSecurity - .securityMatcher("/v1/auth/**") + .securityMatcher("/v1/**") .csrf { it.disable() } .cors(Customizer.withDefaults()) .sessionManagement { it.sessionCreationPolicy(SessionCreationPolicy.STATELESS) } .authorizeHttpRequests { - println("[DEBUG] authSecurityFilterChain triggered") - it.requestMatchers("/v1/auth/**").permitAll() it.anyRequest().authenticated() } + .addFilterBefore( + JwtAuthenticationFilter(jwtTokenProvider, handlerExceptionResolver), + UsernamePasswordAuthenticationFilter::class.java + ) + .exceptionHandling { + it.accessDeniedHandler { request, response, exception -> + handlerExceptionResolver.resolveException(request, response, null, PermissionDeniedException()) + }.authenticationEntryPoint { request, response, authException -> + handlerExceptionResolver.resolveException(request, response, null, UnauthorizedException()) + } + } .build() @Bean - @Order(2) + @Order(3) fun swaggerSecurityFilterChain(httpSecurity: HttpSecurity): SecurityFilterChain = httpSecurity .securityMatcher("/swagger-ui/**", "/v3/api-docs/**") .csrf { it.disable() } .cors(Customizer.withDefaults()) .authorizeHttpRequests { - it.requestMatchers( - "/swagger-ui/**", - "/v3/api-docs/**" - ).permitAll() + it.requestMatchers("/swagger-ui/**", "/v3/api-docs/**").permitAll() } .build() - } From 7b28eb4676164aaa1709a86fe9413e3b330ce23c Mon Sep 17 00:00:00 2001 From: jisu Date: Sat, 11 Jan 2025 21:43:52 +0900 Subject: [PATCH 2/7] refact: delete path condition in JwtAuthenticationFilter --- .../api/config/filter/JwtAuthenticationFilter.kt | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/config/filter/JwtAuthenticationFilter.kt b/src/main/kotlin/com/dobby/backend/presentation/api/config/filter/JwtAuthenticationFilter.kt index 6d9dc8da..54785c61 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/config/filter/JwtAuthenticationFilter.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/config/filter/JwtAuthenticationFilter.kt @@ -19,12 +19,6 @@ class JwtAuthenticationFilter( response: HttpServletResponse, filterChain: FilterChain, ) { - val path = request.servletPath - - if(path.startsWith("/v1/members/signup") || path.startsWith("/v1/emails") || path.startsWith("/v1/auth")) { - filterChain.doFilter(request, response) - return - } try { val authenticationHeader = request.getHeader("Authorization") ?: throw AuthenticationTokenNotFoundException() From b0ad193a1bd626d77acfe244d2c2403ec859b5b3 Mon Sep 17 00:00:00 2001 From: jisu Date: Sat, 11 Jan 2025 21:45:35 +0900 Subject: [PATCH 3/7] refact: remove AuthenticationUtils and use getCurrentMemberId directly --- .../dobby/backend/util/AuthenticationUtils.kt | 17 +------- .../backend/util/AuthenticationUtilsTest.kt | 40 ------------------- 2 files changed, 1 insertion(+), 56 deletions(-) delete mode 100644 src/test/kotlin/com/dobby/backend/util/AuthenticationUtilsTest.kt diff --git a/src/main/kotlin/com/dobby/backend/util/AuthenticationUtils.kt b/src/main/kotlin/com/dobby/backend/util/AuthenticationUtils.kt index 0af57b1b..ecd97153 100644 --- a/src/main/kotlin/com/dobby/backend/util/AuthenticationUtils.kt +++ b/src/main/kotlin/com/dobby/backend/util/AuthenticationUtils.kt @@ -1,20 +1,5 @@ package com.dobby.backend.util -import com.dobby.backend.infrastructure.database.entity.member.MemberEntity -import org.springframework.security.core.Authentication -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken import org.springframework.security.core.context.SecurityContextHolder -object AuthenticationUtils { - fun createAuthentication(member: MemberEntity): Authentication { - return UsernamePasswordAuthenticationToken( - member, - null, - emptyList() - ) as Authentication - } - fun getCurrentMemberId(): Long { - val authentication = SecurityContextHolder.getContext().authentication - return authentication.name.toLong() - } -} +fun getCurrentMemberId() = SecurityContextHolder.getContext().authentication.name.toLong() diff --git a/src/test/kotlin/com/dobby/backend/util/AuthenticationUtilsTest.kt b/src/test/kotlin/com/dobby/backend/util/AuthenticationUtilsTest.kt deleted file mode 100644 index 32268324..00000000 --- a/src/test/kotlin/com/dobby/backend/util/AuthenticationUtilsTest.kt +++ /dev/null @@ -1,40 +0,0 @@ -package com.dobby.backend.util - -import com.dobby.backend.infrastructure.database.entity.enum.ProviderType -import com.dobby.backend.infrastructure.database.entity.enum.RoleType -import com.dobby.backend.infrastructure.database.entity.member.MemberEntity -import io.kotest.core.spec.style.BehaviorSpec -import io.kotest.matchers.shouldBe -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken -import org.springframework.security.core.Authentication - -class AuthenticationUtilsTest : BehaviorSpec({ - given("유효한 MemberEntity가 주어졌을 때") { - val member = MemberEntity( - id = 1L, - oauthEmail = "test@example.com", - contactEmail = "contact@example.com", - provider = ProviderType.GOOGLE, - name = "Test User", - role = RoleType.RESEARCHER - ) - - `when`("AuthenticationUtils.createAuthentication이 호출되면") { - val authentication: Authentication = AuthenticationUtils.createAuthentication(member) - - then("UsernamePasswordAuthenticationToken 객체가 반환되어야 한다") { - authentication shouldBe UsernamePasswordAuthenticationToken( - member, // principal - null, // credential - emptyList() // granted authorized sizes - ) - } - - then("Authentication의 필드가 올바르게 설정되어야 한다") { - authentication.principal shouldBe member - authentication.credentials shouldBe null - authentication.authorities.size shouldBe 0 - } - } - } -}) From b702d5f963546a395a1ba5e3f6a18e516c8b6daf Mon Sep 17 00:00:00 2001 From: jisu Date: Sat, 11 Jan 2025 21:46:04 +0900 Subject: [PATCH 4/7] refact: inject memberId in mapper instead of use case --- .../dobby/backend/application/service/PostService.kt | 4 ++-- .../usecase/experiment/CreatePostUseCase.kt | 5 ++--- .../usecase/experiment/GetResearcherInfoUseCase.kt | 12 +++++++----- .../presentation/api/controller/PostController.kt | 3 ++- .../backend/presentation/api/mapper/PostMapper.kt | 8 ++++++++ 5 files changed, 21 insertions(+), 11 deletions(-) diff --git a/src/main/kotlin/com/dobby/backend/application/service/PostService.kt b/src/main/kotlin/com/dobby/backend/application/service/PostService.kt index b0cc7e5b..19fc21dd 100644 --- a/src/main/kotlin/com/dobby/backend/application/service/PostService.kt +++ b/src/main/kotlin/com/dobby/backend/application/service/PostService.kt @@ -15,7 +15,7 @@ class PostService( return createPostUseCase.execute(input) } - fun getDefaultInfo(): GetResearcherInfoUseCase.Output { - return getResearcherInfoUseCase.execute(Unit) + fun getDefaultInfo(input: GetResearcherInfoUseCase.Input): GetResearcherInfoUseCase.Output { + return getResearcherInfoUseCase.execute(input) } } diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreatePostUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreatePostUseCase.kt index 1e63c799..3552ab32 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreatePostUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreatePostUseCase.kt @@ -12,7 +12,6 @@ import com.dobby.backend.infrastructure.database.entity.enum.RoleType import com.dobby.backend.infrastructure.database.entity.enum.TimeSlot import com.dobby.backend.infrastructure.database.entity.enum.areaInfo.Area import com.dobby.backend.infrastructure.database.entity.enum.areaInfo.Region -import com.dobby.backend.util.AuthenticationUtils import java.time.LocalDate class CreatePostUseCase( @@ -20,6 +19,7 @@ class CreatePostUseCase( private val memberGateway: MemberGateway, ) : UseCase { data class Input( + val memberId: Long, val targetGroupInfo: TargetGroupInfo, val applyMethodInfo: ApplyMethodInfo, val imageListInfo: ImageListInfo, @@ -74,8 +74,7 @@ class CreatePostUseCase( ) override fun execute(input: Input): Output { - val memberId = AuthenticationUtils.getCurrentMemberId() - val member = memberGateway.getById(memberId) + val member = memberGateway.getById(input.memberId) if (member.role != RoleType.RESEARCHER) { throw PermissionDeniedException() diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/experiment/GetResearcherInfoUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/experiment/GetResearcherInfoUseCase.kt index aa554c40..7a786311 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/experiment/GetResearcherInfoUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/experiment/GetResearcherInfoUseCase.kt @@ -3,19 +3,21 @@ package com.dobby.backend.application.usecase.experiment import com.dobby.backend.application.usecase.UseCase import com.dobby.backend.domain.exception.ResearcherNotFoundException import com.dobby.backend.domain.gateway.ResearcherGateway -import com.dobby.backend.util.AuthenticationUtils class GetResearcherInfoUseCase( private val researcherGateway: ResearcherGateway -) : UseCase{ +) : UseCase{ + data class Input( + val memberId: Long + ) + data class Output( val univName: String, val leadResearcher: String, ) - override fun execute(input: Unit): Output { - val memberId = AuthenticationUtils.getCurrentMemberId() - val researcher = researcherGateway.findByMemberId(memberId) + override fun execute(input: Input): Output { + val researcher = researcherGateway.findByMemberId(input.memberId) ?: throw ResearcherNotFoundException() val leadResearcher = researcher.univName +" "+ researcher.major+ diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/controller/PostController.kt b/src/main/kotlin/com/dobby/backend/presentation/api/controller/PostController.kt index 26dcc47e..235f5df0 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/controller/PostController.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/controller/PostController.kt @@ -35,7 +35,8 @@ class PostController ( description = "연구자의 기본 정보 [학교 + 전공 + 랩실 정보 + 이름]를 반환합니다." ) fun getDefaultInfo(): DefaultInfoResponse { - val output = postService.getDefaultInfo() + val input = PostMapper.toDefaultInfoUseCaseInput() + val output = postService.getDefaultInfo(input) return PostMapper.toDefaultInfoResponse(output) } } diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/mapper/PostMapper.kt b/src/main/kotlin/com/dobby/backend/presentation/api/mapper/PostMapper.kt index b0f97391..e8af8e4e 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/mapper/PostMapper.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/mapper/PostMapper.kt @@ -6,10 +6,12 @@ import com.dobby.backend.presentation.api.dto.request.expirement.CreatePostReque import com.dobby.backend.presentation.api.dto.response.expirement.CreatePostResponse import com.dobby.backend.presentation.api.dto.response.expirement.DefaultInfoResponse import com.dobby.backend.presentation.api.dto.response.expirement.PostInfo +import com.dobby.backend.util.getCurrentMemberId object PostMapper { fun toCreatePostUseCaseInput(request: CreatePostRequest): CreatePostUseCase.Input { return CreatePostUseCase.Input( + memberId = getCurrentMemberId(), applyMethodInfo = toApplyMethodInfo(request.applyMethodInfo), targetGroupInfo = toTargetGroupInfo(request.targetGroupInfo), imageListInfo = toImageListInfo(request.imageListInfo), @@ -77,4 +79,10 @@ object PostMapper { univName = response.univName ) } + + fun toDefaultInfoUseCaseInput(): GetResearcherInfoUseCase.Input { + return GetResearcherInfoUseCase.Input( + memberId = getCurrentMemberId() + ) + } } From a37f65cfcfcee9dc81547d5cfd4aeb597213f0e0 Mon Sep 17 00:00:00 2001 From: jisu Date: Sat, 11 Jan 2025 21:52:52 +0900 Subject: [PATCH 5/7] refact: rename file name related to ExperimentPost --- ...ostService.kt => ExperimentPostService.kt} | 10 +++---- ...Case.kt => CreateExperimentPostUseCase.kt} | 8 ++--- ...troller.kt => ExperimentPostController.kt} | 28 ++++++++--------- .../request/expirement/CreatePostRequest.kt | 2 +- ...esponse.kt => CreateExperimentResponse.kt} | 3 +- ...{PostMapper.kt => ExperimentPostMapper.kt} | 30 +++++++++---------- 6 files changed, 41 insertions(+), 40 deletions(-) rename src/main/kotlin/com/dobby/backend/application/service/{PostService.kt => ExperimentPostService.kt} (57%) rename src/main/kotlin/com/dobby/backend/application/usecase/experiment/{CreatePostUseCase.kt => CreateExperimentPostUseCase.kt} (94%) rename src/main/kotlin/com/dobby/backend/presentation/api/controller/{PostController.kt => ExperimentPostController.kt} (57%) rename src/main/kotlin/com/dobby/backend/presentation/api/dto/response/expirement/{CreatePostResponse.kt => CreateExperimentResponse.kt} (88%) rename src/main/kotlin/com/dobby/backend/presentation/api/mapper/{PostMapper.kt => ExperimentPostMapper.kt} (71%) diff --git a/src/main/kotlin/com/dobby/backend/application/service/PostService.kt b/src/main/kotlin/com/dobby/backend/application/service/ExperimentPostService.kt similarity index 57% rename from src/main/kotlin/com/dobby/backend/application/service/PostService.kt rename to src/main/kotlin/com/dobby/backend/application/service/ExperimentPostService.kt index 19fc21dd..ce2f4e0b 100644 --- a/src/main/kotlin/com/dobby/backend/application/service/PostService.kt +++ b/src/main/kotlin/com/dobby/backend/application/service/ExperimentPostService.kt @@ -1,18 +1,18 @@ package com.dobby.backend.application.service -import com.dobby.backend.application.usecase.experiment.CreatePostUseCase +import com.dobby.backend.application.usecase.experiment.CreateExperimentPostUseCase import com.dobby.backend.application.usecase.experiment.GetResearcherInfoUseCase import jakarta.transaction.Transactional import org.springframework.stereotype.Service @Service -class PostService( - private val createPostUseCase: CreatePostUseCase, +class ExperimentPostService( + private val createExperimentPostUseCase: CreateExperimentPostUseCase, private val getResearcherInfoUseCase: GetResearcherInfoUseCase ) { @Transactional - fun createNewExperimentPost(input: CreatePostUseCase.Input): CreatePostUseCase.Output { - return createPostUseCase.execute(input) + fun createNewExperimentPost(input: CreateExperimentPostUseCase.Input): CreateExperimentPostUseCase.Output { + return createExperimentPostUseCase.execute(input) } fun getDefaultInfo(input: GetResearcherInfoUseCase.Input): GetResearcherInfoUseCase.Output { diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreatePostUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreateExperimentPostUseCase.kt similarity index 94% rename from src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreatePostUseCase.kt rename to src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreateExperimentPostUseCase.kt index 3552ab32..e6c29e6d 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreatePostUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/experiment/CreateExperimentPostUseCase.kt @@ -14,10 +14,10 @@ import com.dobby.backend.infrastructure.database.entity.enum.areaInfo.Area import com.dobby.backend.infrastructure.database.entity.enum.areaInfo.Region import java.time.LocalDate -class CreatePostUseCase( +class CreateExperimentPostUseCase( private val experimentPostGateway: ExperimentPostGateway, private val memberGateway: MemberGateway, -) : UseCase { +) : UseCase { data class Input( val memberId: Long, val targetGroupInfo: TargetGroupInfo, @@ -108,7 +108,7 @@ class CreatePostUseCase( } } - private fun createApplyMethod(applyMethodInfo: CreatePostUseCase.ApplyMethodInfo): ApplyMethod { + private fun createApplyMethod(applyMethodInfo: CreateExperimentPostUseCase.ApplyMethodInfo): ApplyMethod { return ApplyMethod( id = 0L, phoneNum = applyMethodInfo.phoneNum, @@ -119,7 +119,7 @@ class CreatePostUseCase( private fun createExperimentPost( member: Member, - input: CreatePostUseCase.Input, + input: CreateExperimentPostUseCase.Input, targetGroup: TargetGroup, applyMethod: ApplyMethod ): ExperimentPost { diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/controller/PostController.kt b/src/main/kotlin/com/dobby/backend/presentation/api/controller/ExperimentPostController.kt similarity index 57% rename from src/main/kotlin/com/dobby/backend/presentation/api/controller/PostController.kt rename to src/main/kotlin/com/dobby/backend/presentation/api/controller/ExperimentPostController.kt index 235f5df0..55276e64 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/controller/PostController.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/controller/ExperimentPostController.kt @@ -1,10 +1,10 @@ package com.dobby.backend.presentation.api.controller -import com.dobby.backend.application.service.PostService -import com.dobby.backend.presentation.api.dto.request.expirement.CreatePostRequest -import com.dobby.backend.presentation.api.dto.response.expirement.CreatePostResponse +import com.dobby.backend.application.service.ExperimentPostService +import com.dobby.backend.presentation.api.dto.request.expirement.CreateExperimentPostRequest +import com.dobby.backend.presentation.api.dto.response.expirement.CreateExperimentPostResponse import com.dobby.backend.presentation.api.dto.response.expirement.DefaultInfoResponse -import com.dobby.backend.presentation.api.mapper.PostMapper +import com.dobby.backend.presentation.api.mapper.ExperimentPostMapper import io.swagger.v3.oas.annotations.Operation import io.swagger.v3.oas.annotations.tags.Tag import jakarta.validation.Valid @@ -13,8 +13,8 @@ import org.springframework.web.bind.annotation.* @Tag(name = "[연구자] 공고 등록 API - /v1/experiment-posts") @RestController @RequestMapping("/v1/experiment-posts") -class PostController ( - private val postService: PostService +class ExperimentPostController ( + private val experimentPostService: ExperimentPostService ){ @PostMapping("") @Operation( @@ -22,11 +22,11 @@ class PostController ( description = "연구자가 실험자를 모집하는 공고를 등록합니다." ) fun createPost( - @RequestBody @Valid request: CreatePostRequest - ): CreatePostResponse { - val input = PostMapper.toCreatePostUseCaseInput(request) - val output = postService.createNewExperimentPost(input) - return PostMapper.toCreatePostResponse(output) + @RequestBody @Valid request: CreateExperimentPostRequest + ): CreateExperimentPostResponse { + val input = ExperimentPostMapper.toCreatePostUseCaseInput(request) + val output = experimentPostService.createNewExperimentPost(input) + return ExperimentPostMapper.toCreateExperimentPostResponse(output) } @GetMapping("/default") @@ -35,8 +35,8 @@ class PostController ( description = "연구자의 기본 정보 [학교 + 전공 + 랩실 정보 + 이름]를 반환합니다." ) fun getDefaultInfo(): DefaultInfoResponse { - val input = PostMapper.toDefaultInfoUseCaseInput() - val output = postService.getDefaultInfo(input) - return PostMapper.toDefaultInfoResponse(output) + val input = ExperimentPostMapper.toDefaultInfoUseCaseInput() + val output = experimentPostService.getDefaultInfo(input) + return ExperimentPostMapper.toDefaultInfoResponse(output) } } diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreatePostRequest.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreatePostRequest.kt index ce415be8..d2976bfc 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreatePostRequest.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreatePostRequest.kt @@ -8,7 +8,7 @@ import com.dobby.backend.infrastructure.database.entity.enum.areaInfo.Area import com.dobby.backend.infrastructure.database.entity.enum.areaInfo.Region import java.time.LocalDate -data class CreatePostRequest( +data class CreateExperimentPostRequest( val targetGroupInfo: TargetGroupInfo, val applyMethodInfo: ApplyMethodInfo, val imageListInfo: ImageListInfo, diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/expirement/CreatePostResponse.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/expirement/CreateExperimentResponse.kt similarity index 88% rename from src/main/kotlin/com/dobby/backend/presentation/api/dto/response/expirement/CreatePostResponse.kt rename to src/main/kotlin/com/dobby/backend/presentation/api/dto/response/expirement/CreateExperimentResponse.kt index 0ac75ab4..dbd9adff 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/expirement/CreatePostResponse.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/expirement/CreateExperimentResponse.kt @@ -2,9 +2,10 @@ package com.dobby.backend.presentation.api.dto.response.expirement import java.time.LocalDate -data class CreatePostResponse( +data class CreateExperimentPostResponse( val postInfo: PostInfo ) + data class PostInfo( val postId: Long, val title: String, diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/mapper/PostMapper.kt b/src/main/kotlin/com/dobby/backend/presentation/api/mapper/ExperimentPostMapper.kt similarity index 71% rename from src/main/kotlin/com/dobby/backend/presentation/api/mapper/PostMapper.kt rename to src/main/kotlin/com/dobby/backend/presentation/api/mapper/ExperimentPostMapper.kt index e8af8e4e..869973f2 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/mapper/PostMapper.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/mapper/ExperimentPostMapper.kt @@ -1,16 +1,16 @@ package com.dobby.backend.presentation.api.mapper -import com.dobby.backend.application.usecase.experiment.CreatePostUseCase +import com.dobby.backend.application.usecase.experiment.CreateExperimentPostUseCase import com.dobby.backend.application.usecase.experiment.GetResearcherInfoUseCase -import com.dobby.backend.presentation.api.dto.request.expirement.CreatePostRequest -import com.dobby.backend.presentation.api.dto.response.expirement.CreatePostResponse +import com.dobby.backend.presentation.api.dto.request.expirement.CreateExperimentPostRequest +import com.dobby.backend.presentation.api.dto.response.expirement.CreateExperimentPostResponse import com.dobby.backend.presentation.api.dto.response.expirement.DefaultInfoResponse import com.dobby.backend.presentation.api.dto.response.expirement.PostInfo import com.dobby.backend.util.getCurrentMemberId -object PostMapper { - fun toCreatePostUseCaseInput(request: CreatePostRequest): CreatePostUseCase.Input { - return CreatePostUseCase.Input( +object ExperimentPostMapper { + fun toCreatePostUseCaseInput(request: CreateExperimentPostRequest): CreateExperimentPostUseCase.Input { + return CreateExperimentPostUseCase.Input( memberId = getCurrentMemberId(), applyMethodInfo = toApplyMethodInfo(request.applyMethodInfo), targetGroupInfo = toTargetGroupInfo(request.targetGroupInfo), @@ -32,16 +32,16 @@ object PostMapper { ) } - private fun toApplyMethodInfo(dto: com.dobby.backend.presentation.api.dto.request.expirement.ApplyMethodInfo): CreatePostUseCase.ApplyMethodInfo { - return CreatePostUseCase.ApplyMethodInfo( + private fun toApplyMethodInfo(dto: com.dobby.backend.presentation.api.dto.request.expirement.ApplyMethodInfo): CreateExperimentPostUseCase.ApplyMethodInfo { + return CreateExperimentPostUseCase.ApplyMethodInfo( content = dto.content, formUrl = dto.formUrl, phoneNum = dto.phoneNum ) } - private fun toTargetGroupInfo(dto: com.dobby.backend.presentation.api.dto.request.expirement.TargetGroupInfo): CreatePostUseCase.TargetGroupInfo { - return CreatePostUseCase.TargetGroupInfo( + private fun toTargetGroupInfo(dto: com.dobby.backend.presentation.api.dto.request.expirement.TargetGroupInfo): CreateExperimentPostUseCase.TargetGroupInfo { + return CreateExperimentPostUseCase.TargetGroupInfo( startAge = dto.startAge, endAge = dto.endAge, genderType = dto.genderType, @@ -49,19 +49,19 @@ object PostMapper { ) } - private fun toImageListInfo(dto: com.dobby.backend.presentation.api.dto.request.expirement.ImageListInfo): CreatePostUseCase.ImageListInfo { - return CreatePostUseCase.ImageListInfo( + private fun toImageListInfo(dto: com.dobby.backend.presentation.api.dto.request.expirement.ImageListInfo): CreateExperimentPostUseCase.ImageListInfo { + return CreateExperimentPostUseCase.ImageListInfo( images = dto.images ) } - fun toCreatePostResponse(response: CreatePostUseCase.Output): CreatePostResponse{ - return CreatePostResponse( + fun toCreateExperimentPostResponse(response: CreateExperimentPostUseCase.Output): CreateExperimentPostResponse{ + return CreateExperimentPostResponse( postInfo = toPostInfo(response.postInfo) ) } - private fun toPostInfo(input: CreatePostUseCase.PostInfo): PostInfo{ + private fun toPostInfo(input: CreateExperimentPostUseCase.PostInfo): PostInfo{ return PostInfo( postId = input.postId, title = input.title, From ccd66c32b750e35d19ded54bd7a9e446d68a4e59 Mon Sep 17 00:00:00 2001 From: jisu Date: Sat, 11 Jan 2025 21:54:46 +0900 Subject: [PATCH 6/7] refact: organize packages by domain --- .../com/dobby/backend/application/mapper/SignupMapper.kt | 4 ++-- .../backend/application/mapper/VerificationMapper.kt | 4 ++-- .../com/dobby/backend/application/service/AuthService.kt | 3 ++- .../com/dobby/backend/application/service/EmailService.kt | 4 ++-- .../dobby/backend/application/service/SignupService.kt | 6 +++--- .../usecase/{ => auth}/GenerateTestTokenUseCase.kt | 3 ++- .../{ => auth}/GenerateTokenWithRefreshTokenUseCase.kt | 3 ++- .../{signup => member}/CreateParticipantUseCase.kt | 2 +- .../usecase/{signup => member}/CreateResearcherUseCase.kt | 2 +- .../{signup => member}/VerifyResearcherEmailUseCase.kt | 2 +- .../{signup => member}/email/EmailCodeSendUseCase.kt | 2 +- .../{signup => member}/email/EmailVerificationUseCase.kt | 2 +- .../backend/presentation/api/controller/AuthController.kt | 2 +- .../presentation/api/controller/EmailController.kt | 4 ++-- .../presentation/api/controller/SignupController.kt | 2 +- .../api/dto/response/auth/MemberSignInResponse.kt | 2 +- .../api/dto/response/auth/OauthLoginResponse.kt | 2 +- .../dto/response/{signup => member}/EmailSendResponse.kt | 2 +- .../{signup => member}/EmailVerificationResponse.kt | 2 +- .../api/dto/response/{ => member}/MemberResponse.kt | 2 +- .../api/dto/response/{signup => member}/SignupResponse.kt | 3 +-- .../dobby/backend/presentation/api/mapper/EmailMapper.kt | 8 ++++---- .../dobby/backend/presentation/api/mapper/SignupMapper.kt | 8 ++++---- .../dobby/backend/application/service/EmailServiceTest.kt | 4 ++-- .../application/usecase/GenerateTestTokenUseCaseTest.kt | 1 + .../usecase/GenerateTokenWithRefreshTokenUseCaseTest.kt | 1 + 26 files changed, 42 insertions(+), 38 deletions(-) rename src/main/kotlin/com/dobby/backend/application/usecase/{ => auth}/GenerateTestTokenUseCase.kt (89%) rename src/main/kotlin/com/dobby/backend/application/usecase/{ => auth}/GenerateTokenWithRefreshTokenUseCase.kt (90%) rename src/main/kotlin/com/dobby/backend/application/usecase/{signup => member}/CreateParticipantUseCase.kt (98%) rename src/main/kotlin/com/dobby/backend/application/usecase/{signup => member}/CreateResearcherUseCase.kt (98%) rename src/main/kotlin/com/dobby/backend/application/usecase/{signup => member}/VerifyResearcherEmailUseCase.kt (94%) rename src/main/kotlin/com/dobby/backend/application/usecase/{signup => member}/email/EmailCodeSendUseCase.kt (98%) rename src/main/kotlin/com/dobby/backend/application/usecase/{signup => member}/email/EmailVerificationUseCase.kt (96%) rename src/main/kotlin/com/dobby/backend/presentation/api/dto/response/{signup => member}/EmailSendResponse.kt (84%) rename src/main/kotlin/com/dobby/backend/presentation/api/dto/response/{signup => member}/EmailVerificationResponse.kt (83%) rename src/main/kotlin/com/dobby/backend/presentation/api/dto/response/{ => member}/MemberResponse.kt (94%) rename src/main/kotlin/com/dobby/backend/presentation/api/dto/response/{signup => member}/SignupResponse.kt (73%) diff --git a/src/main/kotlin/com/dobby/backend/application/mapper/SignupMapper.kt b/src/main/kotlin/com/dobby/backend/application/mapper/SignupMapper.kt index d8a8949d..bb40f3b9 100644 --- a/src/main/kotlin/com/dobby/backend/application/mapper/SignupMapper.kt +++ b/src/main/kotlin/com/dobby/backend/application/mapper/SignupMapper.kt @@ -1,6 +1,6 @@ package com.dobby.backend.application.mapper -import com.dobby.backend.application.usecase.signup.CreateResearcherUseCase -import com.dobby.backend.application.usecase.signup.CreateParticipantUseCase +import com.dobby.backend.application.usecase.member.CreateResearcherUseCase +import com.dobby.backend.application.usecase.member.CreateParticipantUseCase import com.dobby.backend.domain.model.member.Participant import com.dobby.backend.domain.model.member.Researcher import com.dobby.backend.infrastructure.database.entity.member.MemberEntity diff --git a/src/main/kotlin/com/dobby/backend/application/mapper/VerificationMapper.kt b/src/main/kotlin/com/dobby/backend/application/mapper/VerificationMapper.kt index 1b29c1ae..836837e9 100644 --- a/src/main/kotlin/com/dobby/backend/application/mapper/VerificationMapper.kt +++ b/src/main/kotlin/com/dobby/backend/application/mapper/VerificationMapper.kt @@ -1,7 +1,7 @@ package com.dobby.backend.application.mapper -import com.dobby.backend.application.usecase.signup.email.EmailCodeSendUseCase -import com.dobby.backend.application.usecase.signup.email.EmailVerificationUseCase +import com.dobby.backend.application.usecase.member.email.EmailCodeSendUseCase +import com.dobby.backend.application.usecase.member.email.EmailVerificationUseCase import com.dobby.backend.infrastructure.database.entity.VerificationEntity import com.dobby.backend.infrastructure.database.entity.enum.VerificationStatus import com.dobby.backend.presentation.api.dto.request.signup.EmailSendRequest diff --git a/src/main/kotlin/com/dobby/backend/application/service/AuthService.kt b/src/main/kotlin/com/dobby/backend/application/service/AuthService.kt index 16129b2d..be649923 100644 --- a/src/main/kotlin/com/dobby/backend/application/service/AuthService.kt +++ b/src/main/kotlin/com/dobby/backend/application/service/AuthService.kt @@ -1,8 +1,9 @@ package com.dobby.backend.application.service -import com.dobby.backend.application.usecase.* import com.dobby.backend.application.usecase.auth.FetchGoogleUserInfoUseCase import com.dobby.backend.application.usecase.auth.FetchNaverUserInfoUseCase +import com.dobby.backend.application.usecase.auth.GenerateTestTokenUseCase +import com.dobby.backend.application.usecase.auth.GenerateTokenWithRefreshTokenUseCase import org.springframework.stereotype.Service @Service diff --git a/src/main/kotlin/com/dobby/backend/application/service/EmailService.kt b/src/main/kotlin/com/dobby/backend/application/service/EmailService.kt index 51255459..6d4364b3 100644 --- a/src/main/kotlin/com/dobby/backend/application/service/EmailService.kt +++ b/src/main/kotlin/com/dobby/backend/application/service/EmailService.kt @@ -1,7 +1,7 @@ package com.dobby.backend.application.service -import com.dobby.backend.application.usecase.signup.email.EmailCodeSendUseCase -import com.dobby.backend.application.usecase.signup.email.EmailVerificationUseCase +import com.dobby.backend.application.usecase.member.email.EmailCodeSendUseCase +import com.dobby.backend.application.usecase.member.email.EmailVerificationUseCase import jakarta.transaction.Transactional import org.springframework.stereotype.Service diff --git a/src/main/kotlin/com/dobby/backend/application/service/SignupService.kt b/src/main/kotlin/com/dobby/backend/application/service/SignupService.kt index f496306a..be60ed83 100644 --- a/src/main/kotlin/com/dobby/backend/application/service/SignupService.kt +++ b/src/main/kotlin/com/dobby/backend/application/service/SignupService.kt @@ -1,8 +1,8 @@ package com.dobby.backend.application.service -import com.dobby.backend.application.usecase.signup.CreateParticipantUseCase -import com.dobby.backend.application.usecase.signup.CreateResearcherUseCase -import com.dobby.backend.application.usecase.signup.VerifyResearcherEmailUseCase +import com.dobby.backend.application.usecase.member.CreateParticipantUseCase +import com.dobby.backend.application.usecase.member.CreateResearcherUseCase +import com.dobby.backend.application.usecase.member.VerifyResearcherEmailUseCase import com.dobby.backend.domain.exception.SignupOauthEmailDuplicateException import com.dobby.backend.domain.gateway.MemberGateway import com.dobby.backend.infrastructure.database.entity.enum.MemberStatus diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/GenerateTestTokenUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/auth/GenerateTestTokenUseCase.kt similarity index 89% rename from src/main/kotlin/com/dobby/backend/application/usecase/GenerateTestTokenUseCase.kt rename to src/main/kotlin/com/dobby/backend/application/usecase/auth/GenerateTestTokenUseCase.kt index 479010a1..0a3ddbac 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/GenerateTestTokenUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/auth/GenerateTestTokenUseCase.kt @@ -1,5 +1,6 @@ -package com.dobby.backend.application.usecase +package com.dobby.backend.application.usecase.auth +import com.dobby.backend.application.usecase.UseCase import com.dobby.backend.domain.gateway.MemberGateway import com.dobby.backend.domain.gateway.TokenGateway import com.dobby.backend.domain.model.member.Member diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/GenerateTokenWithRefreshTokenUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/auth/GenerateTokenWithRefreshTokenUseCase.kt similarity index 90% rename from src/main/kotlin/com/dobby/backend/application/usecase/GenerateTokenWithRefreshTokenUseCase.kt rename to src/main/kotlin/com/dobby/backend/application/usecase/auth/GenerateTokenWithRefreshTokenUseCase.kt index 7cffd9a8..6cafd136 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/GenerateTokenWithRefreshTokenUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/auth/GenerateTokenWithRefreshTokenUseCase.kt @@ -1,5 +1,6 @@ -package com.dobby.backend.application.usecase +package com.dobby.backend.application.usecase.auth +import com.dobby.backend.application.usecase.UseCase import com.dobby.backend.domain.gateway.MemberGateway import com.dobby.backend.domain.gateway.TokenGateway import com.dobby.backend.domain.model.member.Member diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/signup/CreateParticipantUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/member/CreateParticipantUseCase.kt similarity index 98% rename from src/main/kotlin/com/dobby/backend/application/usecase/signup/CreateParticipantUseCase.kt rename to src/main/kotlin/com/dobby/backend/application/usecase/member/CreateParticipantUseCase.kt index 3f1cf208..d4d22941 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/signup/CreateParticipantUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/member/CreateParticipantUseCase.kt @@ -1,4 +1,4 @@ -package com.dobby.backend.application.usecase.signup +package com.dobby.backend.application.usecase.member import com.dobby.backend.application.mapper.SignupMapper import com.dobby.backend.application.usecase.UseCase diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/signup/CreateResearcherUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/member/CreateResearcherUseCase.kt similarity index 98% rename from src/main/kotlin/com/dobby/backend/application/usecase/signup/CreateResearcherUseCase.kt rename to src/main/kotlin/com/dobby/backend/application/usecase/member/CreateResearcherUseCase.kt index 0e4e5f56..b938f453 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/signup/CreateResearcherUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/member/CreateResearcherUseCase.kt @@ -1,4 +1,4 @@ -package com.dobby.backend.application.usecase.signup +package com.dobby.backend.application.usecase.member import com.dobby.backend.application.mapper.SignupMapper import com.dobby.backend.application.usecase.UseCase diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/signup/VerifyResearcherEmailUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/member/VerifyResearcherEmailUseCase.kt similarity index 94% rename from src/main/kotlin/com/dobby/backend/application/usecase/signup/VerifyResearcherEmailUseCase.kt rename to src/main/kotlin/com/dobby/backend/application/usecase/member/VerifyResearcherEmailUseCase.kt index cab8942a..b6847792 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/signup/VerifyResearcherEmailUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/member/VerifyResearcherEmailUseCase.kt @@ -1,4 +1,4 @@ -package com.dobby.backend.application.usecase.signup +package com.dobby.backend.application.usecase.member import com.dobby.backend.application.usecase.UseCase diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/signup/email/EmailCodeSendUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/member/email/EmailCodeSendUseCase.kt similarity index 98% rename from src/main/kotlin/com/dobby/backend/application/usecase/signup/email/EmailCodeSendUseCase.kt rename to src/main/kotlin/com/dobby/backend/application/usecase/member/email/EmailCodeSendUseCase.kt index b7d2fffd..5685f075 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/signup/email/EmailCodeSendUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/member/email/EmailCodeSendUseCase.kt @@ -1,4 +1,4 @@ -package com.dobby.backend.application.usecase.signup.email +package com.dobby.backend.application.usecase.member.email import com.dobby.backend.application.mapper.VerificationMapper import com.dobby.backend.application.usecase.UseCase diff --git a/src/main/kotlin/com/dobby/backend/application/usecase/signup/email/EmailVerificationUseCase.kt b/src/main/kotlin/com/dobby/backend/application/usecase/member/email/EmailVerificationUseCase.kt similarity index 96% rename from src/main/kotlin/com/dobby/backend/application/usecase/signup/email/EmailVerificationUseCase.kt rename to src/main/kotlin/com/dobby/backend/application/usecase/member/email/EmailVerificationUseCase.kt index b98d4645..f3f55f5f 100644 --- a/src/main/kotlin/com/dobby/backend/application/usecase/signup/email/EmailVerificationUseCase.kt +++ b/src/main/kotlin/com/dobby/backend/application/usecase/member/email/EmailVerificationUseCase.kt @@ -1,4 +1,4 @@ -package com.dobby.backend.application.usecase.signup.email +package com.dobby.backend.application.usecase.member.email import com.dobby.backend.application.mapper.VerificationMapper import com.dobby.backend.application.usecase.UseCase diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/controller/AuthController.kt b/src/main/kotlin/com/dobby/backend/presentation/api/controller/AuthController.kt index a43670d1..28f56a32 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/controller/AuthController.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/controller/AuthController.kt @@ -6,7 +6,7 @@ import com.dobby.backend.infrastructure.database.entity.enum.RoleType import com.dobby.backend.presentation.api.dto.request.auth.google.GoogleOauthLoginRequest import com.dobby.backend.presentation.api.dto.request.auth.MemberRefreshTokenRequest import com.dobby.backend.presentation.api.dto.request.auth.NaverOauthLoginRequest -import com.dobby.backend.presentation.api.dto.response.MemberResponse +import com.dobby.backend.presentation.api.dto.response.member.MemberResponse import com.dobby.backend.presentation.api.dto.response.auth.TestMemberSignInResponse import io.swagger.v3.oas.annotations.Operation import io.swagger.v3.oas.annotations.tags.Tag diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/controller/EmailController.kt b/src/main/kotlin/com/dobby/backend/presentation/api/controller/EmailController.kt index 967284e7..2f76902d 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/controller/EmailController.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/controller/EmailController.kt @@ -3,8 +3,8 @@ package com.dobby.backend.presentation.api.controller import com.dobby.backend.application.service.EmailService import com.dobby.backend.presentation.api.dto.request.signup.EmailSendRequest import com.dobby.backend.presentation.api.dto.request.signup.EmailVerificationRequest -import com.dobby.backend.presentation.api.dto.response.signup.EmailSendResponse -import com.dobby.backend.presentation.api.dto.response.signup.EmailVerificationResponse +import com.dobby.backend.presentation.api.dto.response.member.EmailSendResponse +import com.dobby.backend.presentation.api.dto.response.member.EmailVerificationResponse import com.dobby.backend.presentation.api.mapper.EmailMapper import io.swagger.v3.oas.annotations.Operation import io.swagger.v3.oas.annotations.tags.Tag diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/controller/SignupController.kt b/src/main/kotlin/com/dobby/backend/presentation/api/controller/SignupController.kt index 0710de78..f146ec99 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/controller/SignupController.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/controller/SignupController.kt @@ -3,7 +3,7 @@ package com.dobby.backend.presentation.api.controller import com.dobby.backend.application.service.SignupService import com.dobby.backend.presentation.api.dto.request.signup.ParticipantSignupRequest import com.dobby.backend.presentation.api.dto.request.signup.ResearcherSignupRequest -import com.dobby.backend.presentation.api.dto.response.signup.SignupResponse +import com.dobby.backend.presentation.api.dto.response.member.SignupResponse import com.dobby.backend.presentation.api.mapper.SignupMapper import io.swagger.v3.oas.annotations.Operation import io.swagger.v3.oas.annotations.tags.Tag diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/auth/MemberSignInResponse.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/auth/MemberSignInResponse.kt index 72284466..f81f6afa 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/auth/MemberSignInResponse.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/auth/MemberSignInResponse.kt @@ -1,6 +1,6 @@ package com.dobby.backend.presentation.api.dto.response.auth -import com.dobby.backend.presentation.api.dto.response.MemberResponse +import com.dobby.backend.presentation.api.dto.response.member.MemberResponse import io.swagger.v3.oas.annotations.media.Schema @Schema(description = "로그인 결과 DTO") diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/auth/OauthLoginResponse.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/auth/OauthLoginResponse.kt index 3c262091..9898a21b 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/auth/OauthLoginResponse.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/auth/OauthLoginResponse.kt @@ -1,6 +1,6 @@ package com.dobby.backend.presentation.api.dto.response.auth -import com.dobby.backend.presentation.api.dto.response.MemberResponse +import com.dobby.backend.presentation.api.dto.response.member.MemberResponse import io.swagger.v3.oas.annotations.media.Schema import lombok.Getter diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/EmailSendResponse.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/EmailSendResponse.kt similarity index 84% rename from src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/EmailSendResponse.kt rename to src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/EmailSendResponse.kt index 08f2ea5a..c6ea79e5 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/EmailSendResponse.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/EmailSendResponse.kt @@ -1,4 +1,4 @@ -package com.dobby.backend.presentation.api.dto.response.signup +package com.dobby.backend.presentation.api.dto.response.member import io.swagger.v3.oas.annotations.media.Schema diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/EmailVerificationResponse.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/EmailVerificationResponse.kt similarity index 83% rename from src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/EmailVerificationResponse.kt rename to src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/EmailVerificationResponse.kt index b4238353..f93b2c85 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/EmailVerificationResponse.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/EmailVerificationResponse.kt @@ -1,4 +1,4 @@ -package com.dobby.backend.presentation.api.dto.response.signup +package com.dobby.backend.presentation.api.dto.response.member import io.swagger.v3.oas.annotations.media.Schema diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/MemberResponse.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/MemberResponse.kt similarity index 94% rename from src/main/kotlin/com/dobby/backend/presentation/api/dto/response/MemberResponse.kt rename to src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/MemberResponse.kt index 11293661..7d1d6e1c 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/MemberResponse.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/MemberResponse.kt @@ -1,4 +1,4 @@ -package com.dobby.backend.presentation.api.dto.response +package com.dobby.backend.presentation.api.dto.response.member import com.dobby.backend.domain.model.member.Member import com.dobby.backend.infrastructure.database.entity.enum.ProviderType diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/SignupResponse.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/SignupResponse.kt similarity index 73% rename from src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/SignupResponse.kt rename to src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/SignupResponse.kt index 45649673..37f4f04d 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/signup/SignupResponse.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/response/member/SignupResponse.kt @@ -1,6 +1,5 @@ -package com.dobby.backend.presentation.api.dto.response.signup +package com.dobby.backend.presentation.api.dto.response.member -import com.dobby.backend.presentation.api.dto.response.MemberResponse import io.swagger.v3.oas.annotations.media.Schema data class SignupResponse( diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/mapper/EmailMapper.kt b/src/main/kotlin/com/dobby/backend/presentation/api/mapper/EmailMapper.kt index a158a1d3..21c3407e 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/mapper/EmailMapper.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/mapper/EmailMapper.kt @@ -1,11 +1,11 @@ package com.dobby.backend.presentation.api.mapper -import com.dobby.backend.application.usecase.signup.email.EmailCodeSendUseCase -import com.dobby.backend.application.usecase.signup.email.EmailVerificationUseCase +import com.dobby.backend.application.usecase.member.email.EmailCodeSendUseCase +import com.dobby.backend.application.usecase.member.email.EmailVerificationUseCase import com.dobby.backend.presentation.api.dto.request.signup.EmailSendRequest import com.dobby.backend.presentation.api.dto.request.signup.EmailVerificationRequest -import com.dobby.backend.presentation.api.dto.response.signup.EmailSendResponse -import com.dobby.backend.presentation.api.dto.response.signup.EmailVerificationResponse +import com.dobby.backend.presentation.api.dto.response.member.EmailSendResponse +import com.dobby.backend.presentation.api.dto.response.member.EmailVerificationResponse object EmailMapper { diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/mapper/SignupMapper.kt b/src/main/kotlin/com/dobby/backend/presentation/api/mapper/SignupMapper.kt index c660f60b..14d65455 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/mapper/SignupMapper.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/mapper/SignupMapper.kt @@ -1,11 +1,11 @@ package com.dobby.backend.presentation.api.mapper -import com.dobby.backend.application.usecase.signup.CreateResearcherUseCase -import com.dobby.backend.application.usecase.signup.CreateParticipantUseCase +import com.dobby.backend.application.usecase.member.CreateResearcherUseCase +import com.dobby.backend.application.usecase.member.CreateParticipantUseCase import com.dobby.backend.presentation.api.dto.request.signup.ParticipantSignupRequest import com.dobby.backend.presentation.api.dto.request.signup.ResearcherSignupRequest -import com.dobby.backend.presentation.api.dto.response.MemberResponse -import com.dobby.backend.presentation.api.dto.response.signup.SignupResponse +import com.dobby.backend.presentation.api.dto.response.member.MemberResponse +import com.dobby.backend.presentation.api.dto.response.member.SignupResponse object SignupMapper { fun toCreateResearcherInput(req: ResearcherSignupRequest) : CreateResearcherUseCase.Input{ diff --git a/src/test/kotlin/com/dobby/backend/application/service/EmailServiceTest.kt b/src/test/kotlin/com/dobby/backend/application/service/EmailServiceTest.kt index 72edd4c5..91e160f6 100644 --- a/src/test/kotlin/com/dobby/backend/application/service/EmailServiceTest.kt +++ b/src/test/kotlin/com/dobby/backend/application/service/EmailServiceTest.kt @@ -1,6 +1,6 @@ package com.dobby.backend.application.service -import com.dobby.backend.application.usecase.signup.email.EmailCodeSendUseCase -import com.dobby.backend.application.usecase.signup.email.EmailVerificationUseCase +import com.dobby.backend.application.usecase.member.email.EmailCodeSendUseCase +import com.dobby.backend.application.usecase.member.email.EmailVerificationUseCase import io.kotest.core.spec.style.BehaviorSpec import io.kotest.matchers.shouldBe import io.mockk.every diff --git a/src/test/kotlin/com/dobby/backend/application/usecase/GenerateTestTokenUseCaseTest.kt b/src/test/kotlin/com/dobby/backend/application/usecase/GenerateTestTokenUseCaseTest.kt index 22a74223..0099eb01 100644 --- a/src/test/kotlin/com/dobby/backend/application/usecase/GenerateTestTokenUseCaseTest.kt +++ b/src/test/kotlin/com/dobby/backend/application/usecase/GenerateTestTokenUseCaseTest.kt @@ -1,5 +1,6 @@ package com.dobby.backend.application.usecase +import com.dobby.backend.application.usecase.auth.GenerateTestTokenUseCase import com.dobby.backend.domain.gateway.MemberGateway import io.kotest.core.spec.style.BehaviorSpec import com.dobby.backend.domain.gateway.TokenGateway diff --git a/src/test/kotlin/com/dobby/backend/application/usecase/GenerateTokenWithRefreshTokenUseCaseTest.kt b/src/test/kotlin/com/dobby/backend/application/usecase/GenerateTokenWithRefreshTokenUseCaseTest.kt index f000d209..8363f3d1 100644 --- a/src/test/kotlin/com/dobby/backend/application/usecase/GenerateTokenWithRefreshTokenUseCaseTest.kt +++ b/src/test/kotlin/com/dobby/backend/application/usecase/GenerateTokenWithRefreshTokenUseCaseTest.kt @@ -1,5 +1,6 @@ package com.dobby.backend.application.usecase +import com.dobby.backend.application.usecase.auth.GenerateTokenWithRefreshTokenUseCase import com.dobby.backend.domain.gateway.MemberGateway import com.dobby.backend.domain.gateway.TokenGateway import com.dobby.backend.domain.model.member.Member From 1d309586a9e6601d01c936e3090a200dcc0fa232 Mon Sep 17 00:00:00 2001 From: jisu Date: Sat, 11 Jan 2025 22:04:47 +0900 Subject: [PATCH 7/7] refact: rename request file --- .../{CreatePostRequest.kt => CreateExperimentPostRequest.kt} | 1 - 1 file changed, 1 deletion(-) rename src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/{CreatePostRequest.kt => CreateExperimentPostRequest.kt} (96%) diff --git a/src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreatePostRequest.kt b/src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreateExperimentPostRequest.kt similarity index 96% rename from src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreatePostRequest.kt rename to src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreateExperimentPostRequest.kt index d2976bfc..979b1bde 100644 --- a/src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreatePostRequest.kt +++ b/src/main/kotlin/com/dobby/backend/presentation/api/dto/request/expirement/CreateExperimentPostRequest.kt @@ -1,6 +1,5 @@ package com.dobby.backend.presentation.api.dto.request.expirement -import com.dobby.backend.domain.model.experiment.ApplyMethod import com.dobby.backend.infrastructure.database.entity.enum.GenderType import com.dobby.backend.infrastructure.database.entity.enum.MatchType import com.dobby.backend.infrastructure.database.entity.enum.TimeSlot