From e173df75a3dd65c11e2d72fde2b1034e81cbb975 Mon Sep 17 00:00:00 2001 From: dgjinsu Date: Fri, 1 Dec 2023 18:19:40 +0900 Subject: [PATCH] =?UTF-8?q?feat:=20swagger=20=EC=98=88=EC=8B=9C=20?= =?UTF-8?q?=EB=8D=B0=EC=9D=B4=ED=84=B0=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../member/controller/MemberController.java | 2 +- .../domain/member/dtos/JoinRequest.java | 24 ++++++++++++++++--- .../dtos/ValidationUsernameRequest.java | 4 +++- .../dtos/VerificationAccountRequest.java | 3 +++ .../dtos/VerificationAccountResponse.java | 2 ++ .../member/dtos/VerificationSmsRequest.java | 2 ++ .../member/dtos/VerificationSmsResponse.java | 2 ++ .../domain/member/entity/Nationality.java | 14 ----------- .../jikgong/domain/member/entity/Worker.java | 4 ++-- .../domain/member/service/MemberService.java | 6 +++-- 10 files changed, 40 insertions(+), 23 deletions(-) delete mode 100644 src/main/java/jikgong/domain/member/entity/Nationality.java diff --git a/src/main/java/jikgong/domain/member/controller/MemberController.java b/src/main/java/jikgong/domain/member/controller/MemberController.java index 97ebccc..31c1e7d 100644 --- a/src/main/java/jikgong/domain/member/controller/MemberController.java +++ b/src/main/java/jikgong/domain/member/controller/MemberController.java @@ -27,7 +27,7 @@ public ResponseEntity joinMember(@RequestBody JoinRequest request) { @Operation(summary = "회원 가입: 아이디 중복 체크") @PostMapping("/validation-phone") public ResponseEntity validationPhone(@RequestBody ValidationUsernameRequest request) { - memberService.validationPhone(request); + memberService.validationPhone(request.getPhone()); return ResponseEntity.ok(new Response("사용 가능한 아이디 입니다.")); } diff --git a/src/main/java/jikgong/domain/member/dtos/JoinRequest.java b/src/main/java/jikgong/domain/member/dtos/JoinRequest.java index a851d32..8de2aed 100644 --- a/src/main/java/jikgong/domain/member/dtos/JoinRequest.java +++ b/src/main/java/jikgong/domain/member/dtos/JoinRequest.java @@ -1,7 +1,7 @@ package jikgong.domain.member.dtos; +import io.swagger.v3.oas.annotations.media.Schema; import jikgong.domain.member.entity.Gender; -import jikgong.domain.member.entity.Nationality; import jikgong.domain.member.entity.Role; import lombok.Getter; import lombok.NoArgsConstructor; @@ -9,28 +9,46 @@ @NoArgsConstructor @Getter public class JoinRequest { + @Schema(description = "휴대폰 번호", example = "01012345678") private String phone; + @Schema(description = "인증 코드 6자리", example = "") private String authCode; // 인증 코드 + @Schema(description = "회원 타입 [ROLE_WORKER or ROLE_REGISTER]", example = "ROLE_WORKER") private Role role; // 회원 타입 - private String account; // 게좌번호 + @Schema(description = "계좌 번호", example = "12341234123412") + private String account; // 게좌 번호 + @Schema(description = "은행 종류", example = "국민은행") private String bank; // 은행 // 위치 정보 + @Schema(description = "도로명 주소", example = "부산광역시 사하구 낙동대로 550번길 37") private String address; // 도로명 주소 + @Schema(description = "위도", example = "35.116777388697734") private Float latitude; // 위도 + @Schema(description = "경도", example = "128.9685393114043") private Float longitude; // 경도 // 회사 정보 + @Schema(description = "사업자 번호", example = "00000000") private String businessNumber; // 사업자 번호 + @Schema(description = "지역", example = "서울") private String region; // 지역 + @Schema(description = "회사 명", example = "삼성") private String companyName; // 회사 명 + @Schema(description = "이메일", example = "jaeyoung@naver.com") private String email; // 이메일 + @Schema(description = "담당자 이름", example = "이재용") private String manager; // 담당자 이름 + @Schema(description = "문의 내용", example = "직공 서비스에 가입하고 싶습니다.") private String requestContent; // 문의 내용 // 노동자 정보 + @Schema(description = "노동자 이름", example = "홍길동") private String workerName; // 노동자 이름 + @Schema(description = "생년월일", example = "19750101") private String rrnPrefix; // 생년월일 + @Schema(description = "성별 [MALE or FEMAILE]", example = "MALE") private Gender gender; // 성별 - private Nationality nationality; // 국적 + @Schema(description = "국적", example = "대한민국") + private String nationality; // 국적 } diff --git a/src/main/java/jikgong/domain/member/dtos/ValidationUsernameRequest.java b/src/main/java/jikgong/domain/member/dtos/ValidationUsernameRequest.java index ce1b150..7d09f85 100644 --- a/src/main/java/jikgong/domain/member/dtos/ValidationUsernameRequest.java +++ b/src/main/java/jikgong/domain/member/dtos/ValidationUsernameRequest.java @@ -1,10 +1,12 @@ package jikgong.domain.member.dtos; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Getter; import lombok.NoArgsConstructor; @NoArgsConstructor @Getter public class ValidationUsernameRequest { - private String username; // 아이디 + @Schema(description = "휴대폰 번호", example = "01012345678") + private String phone; // 휴대폰 번호 } diff --git a/src/main/java/jikgong/domain/member/dtos/VerificationAccountRequest.java b/src/main/java/jikgong/domain/member/dtos/VerificationAccountRequest.java index 8ee2ba6..7a3ebe0 100644 --- a/src/main/java/jikgong/domain/member/dtos/VerificationAccountRequest.java +++ b/src/main/java/jikgong/domain/member/dtos/VerificationAccountRequest.java @@ -1,11 +1,14 @@ package jikgong.domain.member.dtos; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Getter; import lombok.NoArgsConstructor; @NoArgsConstructor @Getter public class VerificationAccountRequest { + @Schema(description = "계좌 번호", example = "12341234123412") private String account; // 계좌 번호 + @Schema(description = "은행 종류", example = "국민은행") private String bank; // 은행 } diff --git a/src/main/java/jikgong/domain/member/dtos/VerificationAccountResponse.java b/src/main/java/jikgong/domain/member/dtos/VerificationAccountResponse.java index 46bfbe1..3cafe03 100644 --- a/src/main/java/jikgong/domain/member/dtos/VerificationAccountResponse.java +++ b/src/main/java/jikgong/domain/member/dtos/VerificationAccountResponse.java @@ -1,10 +1,12 @@ package jikgong.domain.member.dtos; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Getter; @AllArgsConstructor @Getter public class VerificationAccountResponse { + @Schema(description = "인증 번호", example = "") private String authCode; // 2자리 인증 코드 } diff --git a/src/main/java/jikgong/domain/member/dtos/VerificationSmsRequest.java b/src/main/java/jikgong/domain/member/dtos/VerificationSmsRequest.java index ed2fffa..9a9bf62 100644 --- a/src/main/java/jikgong/domain/member/dtos/VerificationSmsRequest.java +++ b/src/main/java/jikgong/domain/member/dtos/VerificationSmsRequest.java @@ -1,10 +1,12 @@ package jikgong.domain.member.dtos; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Getter; import lombok.NoArgsConstructor; @NoArgsConstructor @Getter public class VerificationSmsRequest { + @Schema(description = "휴대폰 번호", example = "01012345678") private String phone; // 핸드폰 번호 } diff --git a/src/main/java/jikgong/domain/member/dtos/VerificationSmsResponse.java b/src/main/java/jikgong/domain/member/dtos/VerificationSmsResponse.java index 3ba194f..f5b2a73 100644 --- a/src/main/java/jikgong/domain/member/dtos/VerificationSmsResponse.java +++ b/src/main/java/jikgong/domain/member/dtos/VerificationSmsResponse.java @@ -1,10 +1,12 @@ package jikgong.domain.member.dtos; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.AllArgsConstructor; import lombok.Getter; @AllArgsConstructor @Getter public class VerificationSmsResponse { + @Schema(description = "6자리 인증 코드", example = "") private String authCode; // 6자리 인증 코드 } diff --git a/src/main/java/jikgong/domain/member/entity/Nationality.java b/src/main/java/jikgong/domain/member/entity/Nationality.java deleted file mode 100644 index b5b178a..0000000 --- a/src/main/java/jikgong/domain/member/entity/Nationality.java +++ /dev/null @@ -1,14 +0,0 @@ -package jikgong.domain.member.entity; - -import lombok.Getter; - -@Getter -public enum Nationality { - KOREA("한국"); - - private final String description; - // todo: 추가 예정 - Nationality(String description) { - this.description = description; - } -} diff --git a/src/main/java/jikgong/domain/member/entity/Worker.java b/src/main/java/jikgong/domain/member/entity/Worker.java index d0309e7..6494b14 100644 --- a/src/main/java/jikgong/domain/member/entity/Worker.java +++ b/src/main/java/jikgong/domain/member/entity/Worker.java @@ -17,10 +17,10 @@ public class Worker { @Enumerated(value = EnumType.STRING) private Gender gender; // 성별 @Enumerated(value = EnumType.STRING) - private Nationality nationality; // 국적 + private String nationality; // 국적 @Builder - public Worker(String workerName, String rrnPrefix, Gender gender, Nationality nationality) { + public Worker(String workerName, String rrnPrefix, Gender gender, String nationality) { this.workerName = workerName; this.rrnPrefix = rrnPrefix; this.gender = gender; diff --git a/src/main/java/jikgong/domain/member/service/MemberService.java b/src/main/java/jikgong/domain/member/service/MemberService.java index d434d5a..05c84a1 100644 --- a/src/main/java/jikgong/domain/member/service/MemberService.java +++ b/src/main/java/jikgong/domain/member/service/MemberService.java @@ -29,6 +29,8 @@ public class MemberService { private final PasswordEncoder encoder; public Long joinMember(JoinRequest request) { + validationPhone(request.getPhone()); + Worker worker = null; Company company = null; @@ -77,8 +79,8 @@ public Long joinMember(JoinRequest request) { return savedMember.getId(); } - public void validationPhone(ValidationUsernameRequest request) { - Optional member = memberRepository.findByPhone(request.getUsername()); + public void validationPhone(String phone) { + Optional member = memberRepository.findByPhone(phone); if (member.isPresent()) { throw new CustomException(ErrorCode.MEMBER_PHONE_EXIST); }