|
1 | | -//package com.example.FixLog.controller; |
2 | | -// |
3 | | -// |
4 | | -//import com.example.FixLog.dto.Response; |
5 | | -//import com.example.FixLog.dto.member.SignupRequestDto; |
6 | | -//import com.example.FixLog.dto.member.DuplicateCheckResponseDto; |
7 | | -//import com.example.FixLog.service.MemberService; |
8 | | -//import lombok.RequiredArgsConstructor; |
9 | | -//import org.springframework.http.ResponseEntity; |
10 | | -//import org.springframework.web.bind.annotation.*; |
11 | | -// |
12 | | -//@RestController |
13 | | -//@RequestMapping("/api/members") |
14 | | -//@RequiredArgsConstructor |
15 | | -//public class MemberController { |
16 | | -// |
17 | | -// private final MemberService memberService; |
18 | | -// |
19 | | -// @PostMapping("/signup") |
20 | | -// public ResponseEntity<Response<String>> signup(@RequestBody SignupRequestDto request) { |
21 | | -// memberService.signup(request); |
22 | | -// return ResponseEntity.ok(Response.success("회원가입이 완료되었습니다.", null)); |
23 | | -// } |
24 | | -// |
25 | | -// @GetMapping("/check-email") |
26 | | -// public ResponseEntity<Response<DuplicateCheckResponseDto>> checkEmail(@RequestParam String email) { |
27 | | -// boolean exists = memberService.isEmailDuplicated(email); |
28 | | -// String msg = exists ? "이미 사용 중인 이메일입니다." : "사용 가능한 이메일입니다."; |
29 | | -// return ResponseEntity.ok(Response.success(msg, new DuplicateCheckResponseDto(exists))); |
30 | | -// } |
31 | | -// |
32 | | -// @GetMapping("/check-nickname") |
33 | | -// public ResponseEntity<Response<DuplicateCheckResponseDto>> checkNickname(@RequestParam String nickname) { |
34 | | -// boolean exists = memberService.isNicknameDuplicated(nickname); |
35 | | -// String msg = exists ? "이미 사용 중인 닉네임입니다." : "사용 가능한 닉네임입니다."; |
36 | | -// return ResponseEntity.ok(Response.success(msg, new DuplicateCheckResponseDto(exists))); |
37 | | -// } |
38 | | -//} |
| 1 | +package com.example.FixLog.controller; |
| 2 | + |
| 3 | + |
| 4 | +import com.example.FixLog.domain.member.Member; |
| 5 | +import com.example.FixLog.dto.Response; |
| 6 | +import com.example.FixLog.dto.member.MemberInfoResponseDto; |
| 7 | +import com.example.FixLog.dto.member.SignupRequestDto; |
| 8 | +import com.example.FixLog.dto.member.DuplicateCheckResponseDto; |
| 9 | +import com.example.FixLog.service.MemberService; |
| 10 | +import lombok.RequiredArgsConstructor; |
| 11 | +import org.springframework.http.ResponseEntity; |
| 12 | +import org.springframework.security.core.annotation.AuthenticationPrincipal; |
| 13 | +import org.springframework.web.bind.annotation.*; |
| 14 | + |
| 15 | +@RestController |
| 16 | +@RequestMapping("/api/members") |
| 17 | +@RequiredArgsConstructor |
| 18 | +public class MemberController { |
| 19 | + |
| 20 | + private final MemberService memberService; |
| 21 | + |
| 22 | + @PostMapping("/signup") |
| 23 | + public ResponseEntity<Response<String>> signup(@RequestBody SignupRequestDto request) { |
| 24 | + memberService.signup(request); |
| 25 | + return ResponseEntity.ok(Response.success("회원가입 성공", null)); |
| 26 | + } |
| 27 | + |
| 28 | + @GetMapping("/check-email") |
| 29 | + public ResponseEntity<Response<DuplicateCheckResponseDto>> checkEmail(@RequestParam String email) { |
| 30 | + boolean exists = memberService.isEmailDuplicated(email); |
| 31 | + String msg = exists ? "이미 사용 중인 이메일입니다." : "사용 가능한 이메일입니다."; |
| 32 | + return ResponseEntity.ok(Response.success(msg, new DuplicateCheckResponseDto(exists))); |
| 33 | + } |
| 34 | + |
| 35 | + @GetMapping("/check-nickname") |
| 36 | + public ResponseEntity<Response<DuplicateCheckResponseDto>> checkNickname(@RequestParam String nickname) { |
| 37 | + boolean exists = memberService.isNicknameDuplicated(nickname); |
| 38 | + String msg = exists ? "이미 사용 중인 닉네임입니다." : "사용 가능한 닉네임입니다."; |
| 39 | + return ResponseEntity.ok(Response.success(msg, new DuplicateCheckResponseDto(exists))); |
| 40 | + } |
| 41 | + |
| 42 | + @GetMapping("/me") |
| 43 | + public ResponseEntity<Response<MemberInfoResponseDto>> getMyInfo(@AuthenticationPrincipal Member member) { |
| 44 | + MemberInfoResponseDto responseDto = new MemberInfoResponseDto( |
| 45 | + member.getEmail(), |
| 46 | + member.getNickname(), |
| 47 | + member.getProfileImageUrl(), |
| 48 | + member.getBio(), |
| 49 | + member.getSocialType() |
| 50 | + ); |
| 51 | + return ResponseEntity.ok(Response.success("회원 정보 조회 성공", responseDto)); |
| 52 | + } |
| 53 | +} |
0 commit comments