From 8745affd7f80a980e427702282aa72d52bc78a22 Mon Sep 17 00:00:00 2001 From: HyungJu Date: Thu, 16 May 2024 21:17:14 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20=EC=9D=B4=EB=B2=A4=ED=8A=B8=20=EB=B0=B1?= =?UTF-8?q?=EC=8B=A0=20=EB=B0=9C=EA=B8=89=20=EA=B8=B0=EB=8A=A5=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../application/InoculationService.kt | 20 +++++++++---------- .../presentation/EventController.kt | 15 +++++++------- .../dto/EventVaccinationRequest.kt | 5 +++++ 3 files changed, 22 insertions(+), 18 deletions(-) create mode 100644 src/main/kotlin/com/vacgom/backend/inoculation/presentation/dto/EventVaccinationRequest.kt diff --git a/src/main/kotlin/com/vacgom/backend/inoculation/application/InoculationService.kt b/src/main/kotlin/com/vacgom/backend/inoculation/application/InoculationService.kt index 2c61f29..cb8bbc1 100644 --- a/src/main/kotlin/com/vacgom/backend/inoculation/application/InoculationService.kt +++ b/src/main/kotlin/com/vacgom/backend/inoculation/application/InoculationService.kt @@ -4,7 +4,6 @@ import com.vacgom.backend.disease.application.DiseaseService import com.vacgom.backend.global.exception.error.BusinessException import com.vacgom.backend.global.exception.error.GlobalError import com.vacgom.backend.inoculation.application.dto.request.DiseaseNameRequest -import com.vacgom.backend.inoculation.application.dto.request.MemberNameRequest import com.vacgom.backend.inoculation.application.dto.response.InoculationCertificateResponse import com.vacgom.backend.inoculation.application.dto.response.InoculationDetailResponse import com.vacgom.backend.inoculation.application.dto.response.InoculationSimpleResponse @@ -12,9 +11,8 @@ import com.vacgom.backend.inoculation.domain.Inoculation import com.vacgom.backend.inoculation.domain.constants.VaccinationType import com.vacgom.backend.inoculation.infrastructure.persistence.InoculationRepository import com.vacgom.backend.inoculation.infrastructure.persistence.VaccinationRepository +import com.vacgom.backend.inoculation.presentation.dto.EventVaccinationRequest import com.vacgom.backend.inoculation.presentation.dto.InoculationSimpleRequest -import com.vacgom.backend.member.domain.Nickname -import com.vacgom.backend.member.exception.MemberError import com.vacgom.backend.member.infrastructure.persistence.MemberRepository import com.vacgom.backend.notification.application.NotificationService import jakarta.transaction.Transactional @@ -171,13 +169,13 @@ class InoculationService( ) ?: throw BusinessException(GlobalError.GLOBAL_NOT_FOUND) } - fun addEventInoculation(memberNameRequest: MemberNameRequest) { - val name = memberNameRequest.name + fun addEventInoculation(eventVaccinationRequest: EventVaccinationRequest) { val member = - memberRepository.findMemberByNickname(Nickname(name)) ?: throw BusinessException(MemberError.NOT_FOUND) + memberRepository.findById(UUID.fromString(eventVaccinationRequest.userId)) + .orElseThrow { BusinessException(GlobalError.GLOBAL_NOT_FOUND) } val eventVaccination = - vaccinationRepository.findById(UUID.fromString("30784537-3331-3646-3734-453738383131")) + vaccinationRepository.findById(UUID.fromString("3e1065ab-e785-11ee-9d8f-0e9be882b70f")) .orElseThrow { BusinessException(GlobalError.GLOBAL_NOT_FOUND) } inoculationRepository.save( @@ -185,14 +183,14 @@ class InoculationService( 1, "이벤트", LocalDate.now(), - "백신아 곰아워!", - "이벤트 백신", - "아프지 말라곰", + "구름스퀘어", + "GUAP 이벤트 백신", + "백곰", "https://vacgom.co.kr", member, eventVaccination, ), ) - notificationService.sendNotification(member.id!!, "이벤트 백신 접종 증명서가 발신되었어요!", "ㅎㅅㅎ") + notificationService.sendNotification(member.id!!, "이벤트 백신 접종 증명서가 발급되었어요!", "event") } } diff --git a/src/main/kotlin/com/vacgom/backend/inoculation/presentation/EventController.kt b/src/main/kotlin/com/vacgom/backend/inoculation/presentation/EventController.kt index 7b7f713..3639b16 100644 --- a/src/main/kotlin/com/vacgom/backend/inoculation/presentation/EventController.kt +++ b/src/main/kotlin/com/vacgom/backend/inoculation/presentation/EventController.kt @@ -1,7 +1,7 @@ package com.vacgom.backend.inoculation.presentation import com.vacgom.backend.inoculation.application.InoculationService -import com.vacgom.backend.inoculation.application.dto.request.MemberNameRequest +import com.vacgom.backend.inoculation.presentation.dto.EventVaccinationRequest import org.springframework.http.ResponseEntity import org.springframework.web.bind.annotation.PostMapping import org.springframework.web.bind.annotation.RequestBody @@ -10,13 +10,14 @@ import org.springframework.web.bind.annotation.RestController @RestController @RequestMapping("/api/v1/event") -class EventController ( - val inoculationService: InoculationService -){ - +class EventController( + val inoculationService: InoculationService, +) { @PostMapping - fun doEvent(@RequestBody memberNameRequest: MemberNameRequest): ResponseEntity { - inoculationService.addEventInoculation(memberNameRequest) + fun issueEventVaccination( + @RequestBody request: EventVaccinationRequest, + ): ResponseEntity { + inoculationService.addEventInoculation(request) return ResponseEntity.ok().build() } } diff --git a/src/main/kotlin/com/vacgom/backend/inoculation/presentation/dto/EventVaccinationRequest.kt b/src/main/kotlin/com/vacgom/backend/inoculation/presentation/dto/EventVaccinationRequest.kt new file mode 100644 index 0000000..2979cd8 --- /dev/null +++ b/src/main/kotlin/com/vacgom/backend/inoculation/presentation/dto/EventVaccinationRequest.kt @@ -0,0 +1,5 @@ +package com.vacgom.backend.inoculation.presentation.dto + +data class EventVaccinationRequest( + val userId: String, +)