From edb6ad7d0f2123abb1b509504ac53e3278687cc9 Mon Sep 17 00:00:00 2001 From: minjikim Date: Sun, 10 Sep 2023 17:37:54 +0900 Subject: [PATCH 1/4] =?UTF-8?q?[Feat]=20=EC=A7=80=EC=9B=90=EC=84=9C=20?= =?UTF-8?q?=EC=A0=9C=EB=AA=A9=20=EC=88=98=EC=A0=95=20API?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../application/controller/ApplicationController.java | 11 +++++++++++ .../dto/UpdateApplicationTitleRequestDto.java | 8 ++++++++ .../preq/domain/application/entity/Application.java | 2 ++ .../application/service/ApplicationService.java | 11 +++++++++++ .../preq/global/common/util/response/SuccessCode.java | 3 ++- 5 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 src/main/java/kr/co/preq/domain/application/dto/UpdateApplicationTitleRequestDto.java diff --git a/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java b/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java index 9008a2c..421bd1b 100644 --- a/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java +++ b/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java @@ -1,11 +1,16 @@ package kr.co.preq.domain.application.controller; +import kr.co.preq.domain.application.dto.UpdateApplicationTitleRequestDto; import kr.co.preq.domain.application.service.ApplicationService; import kr.co.preq.global.common.util.response.ApiResponse; import kr.co.preq.global.common.util.response.SuccessCode; import lombok.RequiredArgsConstructor; + +import org.springframework.web.bind.annotation.PatchMapping; import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController @@ -20,4 +25,10 @@ public ApiResponse createApplication() { return ApiResponse.success(SuccessCode.APPLICATION_CREATE_SUCCESS, applicationId); } + + @PatchMapping("/{applicationId}") + public ApiResponse updateApplicationTitle(@RequestParam Long applicationId, @RequestBody UpdateApplicationTitleRequestDto requestDto) { + applicationService.updateApplicationTitle(applicationId, requestDto); + return ApiResponse.success(SuccessCode.APPLICATION_UPDATE_SUCCESS); + } } diff --git a/src/main/java/kr/co/preq/domain/application/dto/UpdateApplicationTitleRequestDto.java b/src/main/java/kr/co/preq/domain/application/dto/UpdateApplicationTitleRequestDto.java new file mode 100644 index 0000000..ba34ec7 --- /dev/null +++ b/src/main/java/kr/co/preq/domain/application/dto/UpdateApplicationTitleRequestDto.java @@ -0,0 +1,8 @@ +package kr.co.preq.domain.application.dto; + +import lombok.Getter; + +@Getter +public class UpdateApplicationTitleRequestDto { + private String title; +} diff --git a/src/main/java/kr/co/preq/domain/application/entity/Application.java b/src/main/java/kr/co/preq/domain/application/entity/Application.java index 5aad94c..dd31d3c 100644 --- a/src/main/java/kr/co/preq/domain/application/entity/Application.java +++ b/src/main/java/kr/co/preq/domain/application/entity/Application.java @@ -5,6 +5,7 @@ import lombok.Builder; import lombok.Getter; import lombok.NoArgsConstructor; +import lombok.Setter; import javax.persistence.*; @@ -13,6 +14,7 @@ @Entity @Table(name = "application") @Getter +@Setter @NoArgsConstructor(access = PROTECTED) public class Application extends BaseEntity { @Column(nullable = false, length = 100) diff --git a/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java b/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java index 1129932..a1320bb 100644 --- a/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java +++ b/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java @@ -1,9 +1,13 @@ package kr.co.preq.domain.application.service; +import kr.co.preq.domain.application.dto.UpdateApplicationTitleRequestDto; import kr.co.preq.domain.application.entity.Application; import kr.co.preq.domain.application.repository.ApplicationRepository; import kr.co.preq.domain.auth.service.AuthService; import kr.co.preq.domain.member.entity.Member; +import kr.co.preq.global.common.util.exception.CustomException; +import kr.co.preq.global.common.util.exception.NotFoundException; +import kr.co.preq.global.common.util.response.ErrorCode; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; @@ -26,4 +30,11 @@ public Long createApplication() { return application.getId(); } + + public void updateApplicationTitle(Long applicationId, UpdateApplicationTitleRequestDto requestDto) { + Application application = applicationRepository.findById(applicationId) + .orElseThrow(() -> new NotFoundException(ErrorCode.NO_ID)); + + application.setTitle(requestDto.getTitle()); + } } diff --git a/src/main/java/kr/co/preq/global/common/util/response/SuccessCode.java b/src/main/java/kr/co/preq/global/common/util/response/SuccessCode.java index bee6b4c..b2c9b65 100644 --- a/src/main/java/kr/co/preq/global/common/util/response/SuccessCode.java +++ b/src/main/java/kr/co/preq/global/common/util/response/SuccessCode.java @@ -39,7 +39,8 @@ public enum SuccessCode { PREQ_GET_SUCCESS(OK, "예상 면접 질문 조회 성공"), // 지원서 - APPLICATION_CREATE_SUCCESS(CREATED, "지원서 생성 성공"); + APPLICATION_CREATE_SUCCESS(CREATED, "지원서 생성 성공"), + APPLICATION_UPDATE_SUCCESS(OK, "지원서 수정 성공"); private final HttpStatus status; private final String message; From 184ac95d37ce9894c9c0bec0646f4e1a30d6132c Mon Sep 17 00:00:00 2001 From: minjikim Date: Sun, 10 Sep 2023 17:49:39 +0900 Subject: [PATCH 2/4] =?UTF-8?q?[Rename]=20requestDto=20=EC=9D=B4=EB=A6=84?= =?UTF-8?q?=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/application/controller/ApplicationController.java | 4 ++-- ...RequestDto.java => ApplicationTitleUpdateRequestDto.java} | 2 +- .../preq/domain/application/service/ApplicationService.java | 5 ++--- 3 files changed, 5 insertions(+), 6 deletions(-) rename src/main/java/kr/co/preq/domain/application/dto/{UpdateApplicationTitleRequestDto.java => ApplicationTitleUpdateRequestDto.java} (67%) diff --git a/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java b/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java index 421bd1b..8db9594 100644 --- a/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java +++ b/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java @@ -1,6 +1,6 @@ package kr.co.preq.domain.application.controller; -import kr.co.preq.domain.application.dto.UpdateApplicationTitleRequestDto; +import kr.co.preq.domain.application.dto.ApplicationTitleUpdateRequestDto; import kr.co.preq.domain.application.service.ApplicationService; import kr.co.preq.global.common.util.response.ApiResponse; import kr.co.preq.global.common.util.response.SuccessCode; @@ -27,7 +27,7 @@ public ApiResponse createApplication() { } @PatchMapping("/{applicationId}") - public ApiResponse updateApplicationTitle(@RequestParam Long applicationId, @RequestBody UpdateApplicationTitleRequestDto requestDto) { + public ApiResponse updateApplicationTitle(@RequestParam Long applicationId, @RequestBody ApplicationTitleUpdateRequestDto requestDto) { applicationService.updateApplicationTitle(applicationId, requestDto); return ApiResponse.success(SuccessCode.APPLICATION_UPDATE_SUCCESS); } diff --git a/src/main/java/kr/co/preq/domain/application/dto/UpdateApplicationTitleRequestDto.java b/src/main/java/kr/co/preq/domain/application/dto/ApplicationTitleUpdateRequestDto.java similarity index 67% rename from src/main/java/kr/co/preq/domain/application/dto/UpdateApplicationTitleRequestDto.java rename to src/main/java/kr/co/preq/domain/application/dto/ApplicationTitleUpdateRequestDto.java index ba34ec7..24b01c3 100644 --- a/src/main/java/kr/co/preq/domain/application/dto/UpdateApplicationTitleRequestDto.java +++ b/src/main/java/kr/co/preq/domain/application/dto/ApplicationTitleUpdateRequestDto.java @@ -3,6 +3,6 @@ import lombok.Getter; @Getter -public class UpdateApplicationTitleRequestDto { +public class ApplicationTitleUpdateRequestDto { private String title; } diff --git a/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java b/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java index a1320bb..4c037aa 100644 --- a/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java +++ b/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java @@ -1,11 +1,10 @@ package kr.co.preq.domain.application.service; -import kr.co.preq.domain.application.dto.UpdateApplicationTitleRequestDto; +import kr.co.preq.domain.application.dto.ApplicationTitleUpdateRequestDto; import kr.co.preq.domain.application.entity.Application; import kr.co.preq.domain.application.repository.ApplicationRepository; import kr.co.preq.domain.auth.service.AuthService; import kr.co.preq.domain.member.entity.Member; -import kr.co.preq.global.common.util.exception.CustomException; import kr.co.preq.global.common.util.exception.NotFoundException; import kr.co.preq.global.common.util.response.ErrorCode; import lombok.RequiredArgsConstructor; @@ -31,7 +30,7 @@ public Long createApplication() { return application.getId(); } - public void updateApplicationTitle(Long applicationId, UpdateApplicationTitleRequestDto requestDto) { + public void updateApplicationTitle(Long applicationId, ApplicationTitleUpdateRequestDto requestDto) { Application application = applicationRepository.findById(applicationId) .orElseThrow(() -> new NotFoundException(ErrorCode.NO_ID)); From ac8887639863ed857e57e091b74a783bdb336f96 Mon Sep 17 00:00:00 2001 From: minjikim Date: Sun, 10 Sep 2023 17:50:34 +0900 Subject: [PATCH 3/4] =?UTF-8?q?[Rename]=20success=20code=20=EB=B3=80?= =?UTF-8?q?=EC=88=98=20=EC=9D=B4=EB=A6=84=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/application/controller/ApplicationController.java | 2 +- .../kr/co/preq/global/common/util/response/SuccessCode.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java b/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java index 8db9594..8090833 100644 --- a/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java +++ b/src/main/java/kr/co/preq/domain/application/controller/ApplicationController.java @@ -29,6 +29,6 @@ public ApiResponse createApplication() { @PatchMapping("/{applicationId}") public ApiResponse updateApplicationTitle(@RequestParam Long applicationId, @RequestBody ApplicationTitleUpdateRequestDto requestDto) { applicationService.updateApplicationTitle(applicationId, requestDto); - return ApiResponse.success(SuccessCode.APPLICATION_UPDATE_SUCCESS); + return ApiResponse.success(SuccessCode.APPLICATION_TITLE_UPDATE_SUCCESS); } } diff --git a/src/main/java/kr/co/preq/global/common/util/response/SuccessCode.java b/src/main/java/kr/co/preq/global/common/util/response/SuccessCode.java index b2c9b65..5dbdb2c 100644 --- a/src/main/java/kr/co/preq/global/common/util/response/SuccessCode.java +++ b/src/main/java/kr/co/preq/global/common/util/response/SuccessCode.java @@ -40,7 +40,7 @@ public enum SuccessCode { // 지원서 APPLICATION_CREATE_SUCCESS(CREATED, "지원서 생성 성공"), - APPLICATION_UPDATE_SUCCESS(OK, "지원서 수정 성공"); + APPLICATION_TITLE_UPDATE_SUCCESS(OK, "지원서 제목 수정 성공"); private final HttpStatus status; private final String message; From cf899ffd4bd9225182c4b10958c96bb07a21e09f Mon Sep 17 00:00:00 2001 From: minjikim Date: Sun, 10 Sep 2023 17:51:45 +0900 Subject: [PATCH 4/4] =?UTF-8?q?[Fix]=20setter=20=EB=8C=80=EC=8B=A0=20updat?= =?UTF-8?q?eTitle=20=ED=95=A8=EC=88=98=20=EC=82=AC=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kr/co/preq/domain/application/entity/Application.java | 5 ++++- .../preq/domain/application/service/ApplicationService.java | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/kr/co/preq/domain/application/entity/Application.java b/src/main/java/kr/co/preq/domain/application/entity/Application.java index dd31d3c..d3b01d3 100644 --- a/src/main/java/kr/co/preq/domain/application/entity/Application.java +++ b/src/main/java/kr/co/preq/domain/application/entity/Application.java @@ -14,7 +14,6 @@ @Entity @Table(name = "application") @Getter -@Setter @NoArgsConstructor(access = PROTECTED) public class Application extends BaseEntity { @Column(nullable = false, length = 100) @@ -32,4 +31,8 @@ public Application(String title, String memo, Member member) { this.memo = memo; this.member = member; } + + public void updateTitle(String title) { + this.title = title; + } } diff --git a/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java b/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java index 4c037aa..4fc5737 100644 --- a/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java +++ b/src/main/java/kr/co/preq/domain/application/service/ApplicationService.java @@ -34,6 +34,6 @@ public void updateApplicationTitle(Long applicationId, ApplicationTitleUpdateReq Application application = applicationRepository.findById(applicationId) .orElseThrow(() -> new NotFoundException(ErrorCode.NO_ID)); - application.setTitle(requestDto.getTitle()); + application.updateTitle(requestDto.getTitle()); } }