From c61eea1c721d25b11edd4b0658f718beeb26c32b Mon Sep 17 00:00:00 2001 From: bbbang105 <2018111366@dgu.ac.kr> Date: Thu, 14 Nov 2024 02:10:38 +0900 Subject: [PATCH 1/7] =?UTF-8?q?#115=20[style]=20:=20Event=20API=20?= =?UTF-8?q?=EC=84=A4=EB=AA=85=EC=9D=84=20=EA=B5=AC=EC=B2=B4=ED=99=94?= =?UTF-8?q?=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../onetime/controller/EventController.java | 62 ++++++++++++++++--- 1 file changed, 54 insertions(+), 8 deletions(-) diff --git a/src/main/java/side/onetime/controller/EventController.java b/src/main/java/side/onetime/controller/EventController.java index b5f709a..921235d 100644 --- a/src/main/java/side/onetime/controller/EventController.java +++ b/src/main/java/side/onetime/controller/EventController.java @@ -18,7 +18,16 @@ public class EventController { private final EventService eventService; - // 이벤트 생성 API + /** + * 이벤트 생성 API + * + * 이 API는 새로운 이벤트를 생성합니다. 인증된 유저와 익명 유저 모두 이벤트를 생성할 수 있으며, + * 인증된 유저의 경우 추가적인 정보가 저장됩니다. + * + * @param createEventRequest 생성할 이벤트에 대한 요청 데이터 (제목, 시작/종료 시간, 카테고리, 설문 범위 등) + * @param authorizationHeader 인증된 유저의 토큰 (선택 사항) + * @return 생성된 이벤트의 ID + */ @PostMapping public ResponseEntity> createEvent( @Valid @RequestBody CreateEventRequest createEventRequest, @@ -34,7 +43,16 @@ public ResponseEntity> createEvent( return ApiResponse.onSuccess(SuccessStatus._CREATED_EVENT, createEventResponse); } - // 이벤트 조회 API + /** + * 이벤트 조회 API + * + * 이 API는 특정 이벤트의 세부 정보를 조회합니다. 이벤트의 제목, 시간, 카테고리 등의 정보를 제공하며 + * 인증된 유저일 경우 추가적인 정보가 포함될 수 있습니다. + * + * @param authorizationHeader 인증된 유저의 토큰 (선택 사항) + * @param eventId 조회할 이벤트의 ID + * @return 조회한 이벤트의 세부 정보 + */ @GetMapping("/{event_id}") public ResponseEntity> getEvent( @RequestHeader(value = "Authorization", required = false) String authorizationHeader, @@ -42,11 +60,17 @@ public ResponseEntity> getEvent( GetEventResponse getEventResponse = eventService.getEvent(eventId, authorizationHeader); - return ApiResponse.onSuccess(SuccessStatus._GET_EVENT, getEventResponse); } - // 참여자 조회 API + /** + * 참여자 조회 API + * + * 이 API는 특정 이벤트에 참여한 모든 참여자의 이름 목록을 조회합니다. + * + * @param eventId 참여자 목록을 조회할 이벤트의 ID + * @return 해당 이벤트에 참여한 참여자의 이름 목록 + */ @GetMapping("/{event_id}/participants") public ResponseEntity> getParticipants( @PathVariable("event_id") String eventId) { @@ -55,7 +79,14 @@ public ResponseEntity> getParticipants( return ApiResponse.onSuccess(SuccessStatus._GET_PARTICIPANTS, getParticipantsResponse); } - // 가장 많이 되는 시간 조회 API + /** + * 가장 많이 되는 시간 조회 API + * + * 이 API는 특정 이벤트에서 가장 많이 가능한 시간대를 조회하여, 가능 인원과 해당 시간대 정보를 제공합니다. + * + * @param eventId 조회할 이벤트의 ID + * @return 가능 인원이 많은 시간대와 관련 세부 정보 + */ @GetMapping("/{event_id}/most") public ResponseEntity>> getMostPossibleTime( @PathVariable("event_id") String eventId) { @@ -64,7 +95,14 @@ public ResponseEntity>> getMostPossibleTim return ApiResponse.onSuccess(SuccessStatus._GET_MOST_POSSIBLE_TIME, getMostPossibleTimes); } - // 유저 참여 이벤트 목록 조회 API + /** + * 유저 참여 이벤트 목록 조회 API + * + * 이 API는 인증된 유저가 참여한 모든 이벤트 목록을 조회합니다. 유저의 참여 상태, 이벤트 정보 등이 포함됩니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @return 유저가 참여한 이벤트 목록 + */ @GetMapping("/user/all") public ResponseEntity>> getUserParticipatedEvents( @RequestHeader("Authorization") String authorizationHeader) { @@ -73,7 +111,15 @@ public ResponseEntity>> getU return ApiResponse.onSuccess(SuccessStatus._GET_USER_PARTICIPATED_EVENTS, getUserParticipatedEventsResponses); } - // 유저가 생성한 이벤트 삭제 API + /** + * 유저가 생성한 이벤트 삭제 API + * + * 이 API는 인증된 유저가 생성한 특정 이벤트를 삭제합니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @param eventId 삭제할 이벤트의 ID + * @return 삭제 성공 여부 + */ @DeleteMapping("/{event_id}") public ResponseEntity> removeUserCreatedEvent( @RequestHeader("Authorization") String authorizationHeader, @@ -82,4 +128,4 @@ public ResponseEntity> removeUserCreatedEvent( eventService.removeUserCreatedEvent(authorizationHeader, eventId); return ApiResponse.onSuccess(SuccessStatus._REMOVE_USER_CREATED_EVENT); } -} +} \ No newline at end of file From e2e1893c8293a550b8aa18bea545a7e2e916234c Mon Sep 17 00:00:00 2001 From: bbbang105 <2018111366@dgu.ac.kr> Date: Thu, 14 Nov 2024 02:13:40 +0900 Subject: [PATCH 2/7] =?UTF-8?q?#115=20[style]=20:=20Fixed=20API=20?= =?UTF-8?q?=EC=84=A4=EB=AA=85=EC=9D=84=20=EA=B5=AC=EC=B2=B4=ED=99=94?= =?UTF-8?q?=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../onetime/controller/FixedController.java | 67 +++++++++++++++---- 1 file changed, 55 insertions(+), 12 deletions(-) diff --git a/src/main/java/side/onetime/controller/FixedController.java b/src/main/java/side/onetime/controller/FixedController.java index d71f368..152a877 100644 --- a/src/main/java/side/onetime/controller/FixedController.java +++ b/src/main/java/side/onetime/controller/FixedController.java @@ -23,39 +23,68 @@ public class FixedController { private final FixedEventService fixedEventService; private final FixedScheduleService fixedScheduleService; - // 고정 이벤트 생성 및 고정 스케줄 등록 API + /** + * 고정 이벤트 생성 및 고정 스케줄 등록 API + * + * 이 API는 새로운 고정 이벤트를 생성하고 관련된 고정 스케줄을 등록합니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @param createFixedEventRequest 생성할 고정 이벤트에 대한 요청 데이터 (제목, 스케줄 목록 등) + * @return 생성 성공 여부를 나타내는 메시지 + */ @PostMapping public ResponseEntity> createFixedEvent( @RequestHeader("Authorization") String authorizationHeader, @Valid @RequestBody CreateFixedEventRequest createFixedEventRequest) { fixedEventService.createFixedEvent(authorizationHeader, createFixedEventRequest); - return ApiResponse.onSuccess(SuccessStatus._CREATED_FIXED_SCHEDULE); } - // 전체 고정 스케줄 조회 API + /** + * 전체 고정 스케줄 조회 API + * + * 이 API는 유저가 등록한 모든 고정 스케줄을 조회합니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @return 유저가 등록한 모든 고정 스케줄 목록 + */ @GetMapping public ResponseEntity>> getAllFixedSchedules( @RequestHeader("Authorization") String authorizationHeader) { List fixedEventResponses = fixedScheduleService.getAllFixedSchedules(authorizationHeader); - return ApiResponse.onSuccess(SuccessStatus._GET_ALL_FIXED_SCHEDULES, fixedEventResponses); } - // 특정 고정 스케줄 상세 조회 API + /** + * 특정 고정 스케줄 상세 조회 API + * + * 이 API는 특정 ID에 해당하는 고정 스케줄의 상세 정보를 조회합니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @param fixedEventId 조회할 고정 스케줄의 ID + * @return 조회된 고정 스케줄의 세부 정보 + */ @GetMapping("/{id}") public ResponseEntity> getFixedScheduleDetail( @RequestHeader("Authorization") String authorizationHeader, @PathVariable("id") Long fixedEventId) { FixedEventDetailResponse fixedEventDetailResponse = fixedScheduleService.getFixedScheduleDetail(authorizationHeader, fixedEventId); - return ApiResponse.onSuccess(SuccessStatus._GET_FIXED_SCHEDULE_DETAIL, fixedEventDetailResponse); } - // 고정 이벤트 또는 스케줄 수정 API + /** + * 고정 이벤트 또는 스케줄 수정 API + * + * 이 API는 특정 고정 이벤트의 제목과 스케줄을 수정할 수 있습니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @param fixedEventId 수정할 고정 이벤트의 ID + * @param modifyFixedEventRequest 수정할 고정 이벤트의 제목 및 스케줄 + * @return 수정 성공 여부를 나타내는 메시지 + */ @PatchMapping("/{id}") public ResponseEntity> modifyFixedEvent( @RequestHeader("Authorization") String authorizationHeader, @@ -72,25 +101,39 @@ public ResponseEntity> modifyFixedEvent( return ApiResponse.onSuccess(SuccessStatus._MODIFY_FIXED_SCHEDULE); } - // 고정 이벤트 & 스케줄 삭제 API + /** + * 고정 이벤트 & 스케줄 삭제 API + * + * 이 API는 특정 ID에 해당하는 고정 이벤트와 관련된 스케줄을 삭제합니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @param fixedEventId 삭제할 고정 이벤트의 ID + * @return 삭제 성공 여부를 나타내는 메시지 + */ @DeleteMapping("/{id}") public ResponseEntity> removeFixedEvent( @RequestHeader("Authorization") String authorizationHeader, @PathVariable("id") Long fixedEventId) { fixedEventService.removeFixedEvent(authorizationHeader, fixedEventId); - return ApiResponse.onSuccess(SuccessStatus._REMOVE_FIXED_SCHEDULE); } - // 요일별 고정 이벤트 조회 API + /** + * 요일별 고정 이벤트 조회 API + * + * 이 API는 특정 요일에 해당하는 고정 이벤트 목록을 조회합니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @param day 조회할 요일 (예: 월, 화 등) + * @return 조회된 요일의 고정 이벤트 목록 + */ @GetMapping("by-day/{day}") public ResponseEntity>> getFixedEventByDay( @RequestHeader("Authorization") String authorizationHeader, @PathVariable("day") String day) { List response = fixedEventService.getFixedEventByDay(authorizationHeader, day); - return ApiResponse.onSuccess(SuccessStatus._GET_FIXED_EVENT_BY_DAY, response); } -} +} \ No newline at end of file From bb367b768c50e9615d583822427a09c4747ab9a8 Mon Sep 17 00:00:00 2001 From: bbbang105 <2018111366@dgu.ac.kr> Date: Thu, 14 Nov 2024 02:16:17 +0900 Subject: [PATCH 3/7] =?UTF-8?q?#115=20[style]=20:=20Member=20API=20?= =?UTF-8?q?=EC=84=A4=EB=AA=85=EC=9D=84=20=EA=B5=AC=EC=B2=B4=ED=99=94?= =?UTF-8?q?=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../onetime/controller/MemberController.java | 29 ++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/src/main/java/side/onetime/controller/MemberController.java b/src/main/java/side/onetime/controller/MemberController.java index 6ba7f6b..baed016 100644 --- a/src/main/java/side/onetime/controller/MemberController.java +++ b/src/main/java/side/onetime/controller/MemberController.java @@ -23,7 +23,14 @@ public class MemberController { private final MemberService memberService; - // 멤버 등록 API + /** + * 멤버 등록 API + * + * 이 API는 새로운 멤버를 등록합니다. 멤버가 속한 이벤트 ID와 이름, PIN, 스케줄 목록을 받습니다. + * + * @param registerMemberRequest 등록할 멤버 정보 (이벤트 ID, 이름, PIN, 스케줄 목록) + * @return 성공 여부와 등록된 멤버 정보 (멤버 ID, 이벤트 카테고리) + */ @PostMapping("/action-register") public ResponseEntity> registerMember( @Valid @RequestBody RegisterMemberRequest registerMemberRequest) { @@ -32,7 +39,14 @@ public ResponseEntity> registerMember( return ApiResponse.onSuccess(SuccessStatus._REGISTER_MEMBER, registerMemberResponse); } - // 멤버 로그인 API + /** + * 멤버 로그인 API + * + * 이 API는 멤버의 로그인 정보를 확인하고, 로그인에 성공한 경우 멤버의 정보를 반환합니다. + * + * @param loginMemberRequest 로그인할 멤버 정보 (이벤트 ID, 이름, PIN) + * @return 성공 여부와 로그인된 멤버 정보 (멤버 ID, 이벤트 카테고리) + */ @PostMapping("/action-login") public ResponseEntity> loginMember( @Valid @RequestBody LoginMemberRequest loginMemberRequest) { @@ -41,7 +55,14 @@ public ResponseEntity> loginMember( return ApiResponse.onSuccess(SuccessStatus._LOGIN_MEMBER, loginMemberResponse); } - // 이름 중복 확인 API + /** + * 이름 중복 확인 API + * + * 이 API는 특정 이벤트에서 지정한 이름이 중복되는지 확인합니다. + * + * @param isDuplicateRequest 중복 확인할 정보 (이벤트 ID, 확인할 이름) + * @return 성공 여부와 이름 사용 가능 여부 (isPossible 필드) + */ @PostMapping("/name/action-check") public ResponseEntity> isDuplicate( @Valid @RequestBody IsDuplicateRequest isDuplicateRequest) { @@ -49,4 +70,4 @@ public ResponseEntity> isDuplicate( IsDuplicateResponse isDuplicateResponse = memberService.isDuplicate(isDuplicateRequest); return ApiResponse.onSuccess(SuccessStatus._IS_POSSIBLE_NAME, isDuplicateResponse); } -} +} \ No newline at end of file From 5a4c51f4e4dba7a76b7a4b1cd6818bc3c7718e99 Mon Sep 17 00:00:00 2001 From: bbbang105 <2018111366@dgu.ac.kr> Date: Thu, 14 Nov 2024 02:20:35 +0900 Subject: [PATCH 4/7] =?UTF-8?q?#115=20[style]=20:=20Schedule=20API=20?= =?UTF-8?q?=EC=84=A4=EB=AA=85=EC=9D=84=20=EA=B5=AC=EC=B2=B4=ED=99=94?= =?UTF-8?q?=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ScheduleController.java | 100 ++++++++++++++++-- 1 file changed, 89 insertions(+), 11 deletions(-) diff --git a/src/main/java/side/onetime/controller/ScheduleController.java b/src/main/java/side/onetime/controller/ScheduleController.java index 944aea0..27fbd49 100644 --- a/src/main/java/side/onetime/controller/ScheduleController.java +++ b/src/main/java/side/onetime/controller/ScheduleController.java @@ -21,7 +21,16 @@ public class ScheduleController { private final ScheduleService scheduleService; - // 요일 스케줄 등록 API + /** + * 요일 스케줄 등록 API + * + * 요일별 반복되는 스케줄을 등록하는 API입니다. + * 인증된 사용자와 비인증 사용자에 따라 스케줄 생성 방식이 다릅니다. + * + * @param createDayScheduleRequest 요일 스케줄 생성 요청 객체 (이벤트 ID, 멤버 ID, 요일 스케줄 목록) + * @param authorizationHeader 인증된 유저의 토큰 (선택사항) + * @return 스케줄 등록 성공 상태 + */ @PostMapping("/day") public ResponseEntity> createDaySchedules( @Valid @RequestBody CreateDayScheduleRequest createDayScheduleRequest, @@ -35,7 +44,16 @@ public ResponseEntity> createDaySchedules( return ApiResponse.onSuccess(SuccessStatus._CREATED_DAY_SCHEDULES); } - // 날짜 스케줄 등록 API + /** + * 날짜 스케줄 등록 API + * + * 특정 날짜에 대한 스케줄을 등록하는 API입니다. + * 인증된 사용자와 비인증 사용자에 따라 스케줄 생성 방식이 다릅니다. + * + * @param createDateScheduleRequest 날짜 스케줄 생성 요청 객체 (이벤트 ID, 멤버 ID, 날짜 스케줄 목록) + * @param authorizationHeader 인증된 유저의 토큰 (선택사항) + * @return 스케줄 등록 성공 상태 + */ @PostMapping("/date") public ResponseEntity> createDateSchedules( @Valid @RequestBody CreateDateScheduleRequest createDateScheduleRequest, @@ -49,7 +67,14 @@ public ResponseEntity> createDateSchedules( return ApiResponse.onSuccess(SuccessStatus._CREATED_DATE_SCHEDULES); } - // 전체 요일 스케줄 조회 API + /** + * 전체 요일 스케줄 조회 API + * + * 특정 이벤트에 등록된 모든 요일 스케줄을 조회합니다. + * + * @param eventId 조회할 이벤트의 ID + * @return 이벤트에 등록된 요일 스케줄 목록 + */ @GetMapping("/day/{event_id}") public ResponseEntity>> getAllDaySchedules( @PathVariable("event_id") String eventId) { @@ -58,7 +83,15 @@ public ResponseEntity>> getAllDaySched return ApiResponse.onSuccess(SuccessStatus._GET_ALL_DAY_SCHEDULES, perDaySchedulesResponses); } - // 개인 요일 스케줄 조회 API (비로그인) + /** + * 개인 요일 스케줄 조회 API (비로그인) + * + * 비로그인 사용자의 특정 이벤트에 대한 개인 요일 스케줄을 조회합니다. + * + * @param eventId 조회할 이벤트의 ID + * @param memberId 조회할 멤버의 ID + * @return 멤버의 요일 스케줄 + */ @GetMapping("/day/{event_id}/{member_id}") public ResponseEntity> getMemberDaySchedules( @PathVariable("event_id") String eventId, @@ -68,7 +101,15 @@ public ResponseEntity> getMemberDaySchedule return ApiResponse.onSuccess(SuccessStatus._GET_MEMBER_DAY_SCHEDULES, perDaySchedulesResponse); } - // 개인 요일 스케줄 조회 API (로그인) + /** + * 개인 요일 스케줄 조회 API (로그인) + * + * 인증된 사용자의 특정 이벤트에 대한 개인 요일 스케줄을 조회합니다. + * + * @param eventId 조회할 이벤트의 ID + * @param authorizationHeader 인증된 유저의 토큰 + * @return 사용자의 요일 스케줄 + */ @GetMapping("/day/{event_id}/user") public ResponseEntity> getUserDaySchedules( @PathVariable("event_id") String eventId, @@ -78,7 +119,14 @@ public ResponseEntity> getUserDaySchedules( return ApiResponse.onSuccess(SuccessStatus._GET_USER_DAY_SCHEDULES, perDaySchedulesResponse); } - // 멤버 필터링 요일 스케줄 조회 API + /** + * 멤버 필터링 요일 스케줄 조회 API + * + * 멤버 이름을 필터링하여 특정 이벤트의 요일 스케줄을 조회합니다. + * + * @param getFilteredSchedulesRequest 필터링할 스케줄 요청 객체 (이벤트 ID, 멤버 이름 목록) + * @return 필터링된 요일 스케줄 목록 + */ @GetMapping("/day/action-filtering") public ResponseEntity>> getFilteredDaySchedules( @Valid @RequestBody GetFilteredSchedulesRequest getFilteredSchedulesRequest) { @@ -87,7 +135,14 @@ public ResponseEntity>> getFilteredDay return ApiResponse.onSuccess(SuccessStatus._GET_FILTERED_DAY_SCHEDULES, perDaySchedulesResponses); } - // 전체 날짜 스케줄 조회 API + /** + * 전체 날짜 스케줄 조회 API + * + * 특정 이벤트에 등록된 모든 날짜 스케줄을 조회합니다. + * + * @param eventId 조회할 이벤트의 ID + * @return 이벤트에 등록된 날짜 스케줄 목록 + */ @GetMapping("/date/{event_id}") public ResponseEntity>> getAllDateSchedules( @PathVariable("event_id") String eventId) { @@ -96,7 +151,15 @@ public ResponseEntity>> getAllDateSch return ApiResponse.onSuccess(SuccessStatus._GET_ALL_DATE_SCHEDULES, perDateSchedulesResponses); } - // 개인 날짜 스케줄 조회 API (비로그인) + /** + * 개인 날짜 스케줄 조회 API (비로그인) + * + * 비로그인 사용자의 특정 이벤트에 대한 개인 날짜 스케줄을 조회합니다. + * + * @param eventId 조회할 이벤트의 ID + * @param memberId 조회할 멤버의 ID + * @return 멤버의 날짜 스케줄 + */ @GetMapping("/date/{event_id}/{member_id}") public ResponseEntity> getMemberDateSchedules( @PathVariable("event_id") String eventId, @@ -106,7 +169,15 @@ public ResponseEntity> getMemberDateSchedu return ApiResponse.onSuccess(SuccessStatus._GET_MEMBER_DATE_SCHEDULES, perDateSchedulesResponse); } - // 개인 날짜 스케줄 조회 API (로그인) + /** + * 개인 날짜 스케줄 조회 API (로그인) + * + * 인증된 사용자의 특정 이벤트에 대한 개인 날짜 스케줄을 조회합니다. + * + * @param eventId 조회할 이벤트의 ID + * @param authorizationHeader 인증된 유저의 토큰 + * @return 사용자의 날짜 스케줄 + */ @GetMapping("/date/{event_id}/user") public ResponseEntity> getUserDateSchedules( @PathVariable("event_id") String eventId, @@ -116,7 +187,14 @@ public ResponseEntity> getUserDateSchedule return ApiResponse.onSuccess(SuccessStatus._GET_USER_DATE_SCHEDULES, perDateSchedulesResponse); } - // 멤버 필터링 날짜 스케줄 조회 API + /** + * 멤버 필터링 날짜 스케줄 조회 API + * + * 멤버 이름을 필터링하여 특정 이벤트의 날짜 스케줄을 조회합니다. + * + * @param getFilteredSchedulesRequest 필터링할 스케줄 요청 객체 (이벤트 ID, 멤버 이름 목록) + * @return 필터링된 날짜 스케줄 목록 + */ @GetMapping("/date/action-filtering") public ResponseEntity>> getFilteredDateSchedules( @Valid @RequestBody GetFilteredSchedulesRequest getFilteredSchedulesRequest) { @@ -124,4 +202,4 @@ public ResponseEntity>> getFilteredDa List perDateSchedulesResponses = scheduleService.getFilteredDateSchedules(getFilteredSchedulesRequest); return ApiResponse.onSuccess(SuccessStatus._GET_FILTERED_DATE_SCHEDULES, perDateSchedulesResponses); } -} +} \ No newline at end of file From 78816cce3bba9e3480117573dfd0077ff732e399 Mon Sep 17 00:00:00 2001 From: bbbang105 <2018111366@dgu.ac.kr> Date: Thu, 14 Nov 2024 02:20:42 +0900 Subject: [PATCH 5/7] =?UTF-8?q?#115=20[style]=20:=20Token=20API=20?= =?UTF-8?q?=EC=84=A4=EB=AA=85=EC=9D=84=20=EA=B5=AC=EC=B2=B4=ED=99=94?= =?UTF-8?q?=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/side/onetime/controller/TokenController.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/side/onetime/controller/TokenController.java b/src/main/java/side/onetime/controller/TokenController.java index 471d278..f0355f4 100644 --- a/src/main/java/side/onetime/controller/TokenController.java +++ b/src/main/java/side/onetime/controller/TokenController.java @@ -19,7 +19,15 @@ public class TokenController { private final TokenService tokenService; - // 액세스 토큰 재발행 API + /** + * 액세스 토큰 재발행 API + * + * 이 API는 유효한 리프레쉬 토큰을 제공받아 새 액세스 토큰과 리프레쉬 토큰을 재발행합니다. + * 리프레쉬 토큰의 유효성을 검증하고, 인증 정보에 따라 토큰을 갱신합니다. + * + * @param reissueAccessTokenRequest 리프레쉬 토큰을 포함한 요청 객체 + * @return 재발행된 액세스 토큰과 리프레쉬 토큰을 포함하는 응답 객체 + */ @PostMapping("/action-reissue") public ResponseEntity> reissueToken( @Valid @RequestBody ReissueTokenRequest reissueAccessTokenRequest) { From 902b2046b8af64b1b3e10b57866872b6d6707f01 Mon Sep 17 00:00:00 2001 From: bbbang105 <2018111366@dgu.ac.kr> Date: Thu, 14 Nov 2024 02:22:03 +0900 Subject: [PATCH 6/7] =?UTF-8?q?#115=20[style]=20:=20Url=20API=20=EC=84=A4?= =?UTF-8?q?=EB=AA=85=EC=9D=84=20=EA=B5=AC=EC=B2=B4=ED=99=94=ED=95=98?= =?UTF-8?q?=EA=B3=A0,=20=EB=B3=80=EC=88=98=EB=AA=85=EC=9D=84=20=EC=88=98?= =?UTF-8?q?=EC=A0=95=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../onetime/controller/UrlController.java | 26 +++++++++++++++---- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/src/main/java/side/onetime/controller/UrlController.java b/src/main/java/side/onetime/controller/UrlController.java index 2425283..4ff0557 100644 --- a/src/main/java/side/onetime/controller/UrlController.java +++ b/src/main/java/side/onetime/controller/UrlController.java @@ -21,16 +21,32 @@ public class UrlController { private final UrlService urlService; - // 원본 -> 단축 URL API + /** + * 원본 URL을 단축 URL로 변환하는 API + * + * 이 API는 제공된 원본 URL을 단축 URL로 변환합니다. + * 주어진 URL에서 이벤트 ID를 추출하고, 해당 이벤트가 존재할 경우에만 단축 URL을 생성하여 반환합니다. + * + * @param convertToShortenUrlRequest 원본 URL을 포함한 요청 객체 + * @return 변환된 단축 URL을 포함하는 응답 객체 + */ @PostMapping("/action-shorten") public ResponseEntity> convertToShortenUrl( - @Valid @RequestBody ConvertToShortenUrlRequest covertToShortenUrlRequest) { + @Valid @RequestBody ConvertToShortenUrlRequest convertToShortenUrlRequest) { - ConvertToShortenUrlResponse convertToShortenUrlResponse = urlService.convertToShortenUrl(covertToShortenUrlRequest); + ConvertToShortenUrlResponse convertToShortenUrlResponse = urlService.convertToShortenUrl(convertToShortenUrlRequest); return ApiResponse.onSuccess(SuccessStatus._CONVERT_TO_SHORTEN_URL, convertToShortenUrlResponse); } - // 단축 -> 원본 URL API + /** + * 단축 URL을 원본 URL로 복원하는 API + * + * 이 API는 단축된 URL을 원래의 URL로 복원합니다. + * 복원된 URL에서 이벤트 ID를 추출하여, 해당 이벤트가 존재하는지 확인 후 원본 URL을 반환합니다. + * + * @param convertToOriginalUrlRequest 단축 URL을 포함한 요청 객체 + * @return 복원된 원본 URL을 포함하는 응답 객체 + */ @PostMapping("/action-original") public ResponseEntity> convertToOriginalUrl( @Valid @RequestBody ConvertToOriginalUrlRequest convertToOriginalUrlRequest) { @@ -38,4 +54,4 @@ public ResponseEntity> convertToOrigin ConvertToOriginalUrlResponse convertToOriginalUrlResponse = urlService.convertToOriginalUrl(convertToOriginalUrlRequest); return ApiResponse.onSuccess(SuccessStatus._CONVERT_TO_ORIGINAL_URL, convertToOriginalUrlResponse); } -} +} \ No newline at end of file From b28b37458b76eb45023eebf7a3f9678ac524ec42 Mon Sep 17 00:00:00 2001 From: bbbang105 <2018111366@dgu.ac.kr> Date: Thu, 14 Nov 2024 02:25:04 +0900 Subject: [PATCH 7/7] =?UTF-8?q?#115=20[style]=20:=20User=20API=20=EC=84=A4?= =?UTF-8?q?=EB=AA=85=EC=9D=84=20=EA=B5=AC=EC=B2=B4=ED=99=94=ED=95=9C?= =?UTF-8?q?=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../onetime/controller/UserController.java | 38 +++++++++++++++++-- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/src/main/java/side/onetime/controller/UserController.java b/src/main/java/side/onetime/controller/UserController.java index 2a135aa..93dad6d 100644 --- a/src/main/java/side/onetime/controller/UserController.java +++ b/src/main/java/side/onetime/controller/UserController.java @@ -18,7 +18,15 @@ public class UserController { private final UserService userService; - // 유저 온보딩 API + /** + * 유저 온보딩 API + * + * 회원가입 이후, 유저의 닉네임을 설정하고 온보딩을 완료하는 API입니다. + * 주어진 레지스터 토큰을 통해 사용자 정보를 확인한 후, 액세스 토큰과 리프레쉬 토큰을 발급하여 반환합니다. + * + * @param onboardUserRequest 유저의 레지스터 토큰과 닉네임 정보를 포함하는 요청 객체 + * @return 발급된 액세스 토큰과 리프레쉬 토큰을 포함하는 응답 객체 + */ @PostMapping("/onboarding") public ResponseEntity> onboardUser( @Valid @RequestBody OnboardUserRequest onboardUserRequest) { @@ -27,7 +35,14 @@ public ResponseEntity> onboardUser( return ApiResponse.onSuccess(SuccessStatus._ONBOARD_USER, onboardUserResponse); } - // 유저 정보 조회 API + /** + * 유저 정보 조회 API + * + * 로그인한 유저의 닉네임과 이메일 정보를 조회합니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @return 유저의 닉네임과 이메일을 포함한 응답 객체 + */ @GetMapping("/profile") public ResponseEntity> getUserProfile( @RequestHeader("Authorization") String authorizationHeader) { @@ -36,7 +51,15 @@ public ResponseEntity> getUserProfile( return ApiResponse.onSuccess(SuccessStatus._GET_USER_PROFILE, getUserProfileResponse); } - // 유저 정보 수정 API + /** + * 유저 정보 수정 API + * + * 유저의 닉네임을 수정하는 API입니다. 수정된 닉네임은 최대 길이 제한을 받습니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @param updateUserProfileRequest 수정할 닉네임을 포함하는 요청 객체 + * @return 성공 상태 응답 객체 + */ @PatchMapping("/profile/action-update") public ResponseEntity> updateUserProfile( @RequestHeader("Authorization") String authorizationHeader, @@ -46,7 +69,14 @@ public ResponseEntity> updateUserProfile( return ApiResponse.onSuccess(SuccessStatus._UPDATE_USER_PROFILE); } - // 유저 서비스 탈퇴 API + /** + * 유저 서비스 탈퇴 API + * + * 유저의 계정을 삭제하여 서비스에서 탈퇴하는 API입니다. + * + * @param authorizationHeader 인증된 유저의 토큰 + * @return 성공 상태 응답 객체 + */ @PostMapping("/action-withdraw") public ResponseEntity> withdrawService( @RequestHeader("Authorization") String authorizationHeader) {