Skip to content

Commit 9fea2bf

Browse files
authored
Merge pull request #42 from YAPP-Github/fix/T3-131
[T3-131] 엔드 포인트 수정 및 루틴 단건 조회 서비스 로직 수정
2 parents 3136543 + 83559a4 commit 9fea2bf

5 files changed

Lines changed: 17 additions & 12 deletions

File tree

src/main/java/bitnagil/bitnagil_backend/emotionMarble/controller/EmotionMarbleController.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
import bitnagil.bitnagil_backend.global.annotation.CurrentUser;
99
import bitnagil.bitnagil_backend.global.response.CustomResponseDto;
1010
import bitnagil.bitnagil_backend.user.domain.User;
11-
import jakarta.validation.constraints.NotNull;
1211
import lombok.RequiredArgsConstructor;
1312

13+
import org.springframework.format.annotation.DateTimeFormat;
1414
import org.springframework.web.bind.annotation.*;
1515

1616
import java.time.LocalDate;
@@ -38,11 +38,11 @@ public CustomResponseDto<RegisterEmotionMarbleResponse> registryEmotionMarble(
3838
}
3939

4040
// 당일의 유저가 선택한 감정 구슬 조회 API
41-
@GetMapping("/me")
42-
public CustomResponseDto<EmotionMarbleTypeResponse> getEmotionMarbleForHome(
41+
@GetMapping("/{searchDate}")
42+
public CustomResponseDto<EmotionMarbleTypeResponse> getEmotionMarbleBySearchDate(
4343
@CurrentUser User user,
44-
@RequestParam @NotNull LocalDate searchDate) {
44+
@PathVariable @DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate searchDate) {
4545

46-
return CustomResponseDto.from(emotionMarbleService.getEmotionMarbleForHome(user, searchDate));
46+
return CustomResponseDto.from(emotionMarbleService.getEmotionMarbleBySearchDate(user, searchDate));
4747
}
4848
}

src/main/java/bitnagil/bitnagil_backend/emotionMarble/controller/spec/EmotionMarbleSpec.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,15 @@
1212
import io.swagger.v3.oas.annotations.Operation;
1313
import io.swagger.v3.oas.annotations.Parameter;
1414
import io.swagger.v3.oas.annotations.Parameters;
15+
import io.swagger.v3.oas.annotations.enums.ParameterIn;
1516
import io.swagger.v3.oas.annotations.tags.Tag;
1617
import jakarta.validation.constraints.NotNull;
1718

1819
import java.time.LocalDate;
1920
import java.util.List;
2021

2122
import org.springframework.format.annotation.DateTimeFormat;
23+
import org.springframework.web.bind.annotation.PathVariable;
2224
import org.springframework.web.bind.annotation.RequestParam;
2325

2426
@Tag(name = ApiTags.EMOTION_MARBLE)
@@ -34,9 +36,9 @@ public CustomResponseDto<RegisterEmotionMarbleResponse> registryEmotionMarble(
3436

3537
@Operation(summary = "검색 날짜 기준으로 대한 유저의 감정구슬 정보를 조회합니다.")
3638
@Parameters({
37-
@Parameter(name = "searchDate", description = "감정 구슬 조회 날짜", required = true, example = "2025-07-01")
39+
@Parameter(name = "searchDate", description = "감정 구슬 조회 날짜", required = true, example = "2025-07-01",
40+
in = ParameterIn.PATH)
3841
})
39-
CustomResponseDto<EmotionMarbleTypeResponse> getEmotionMarbleForHome(
40-
@CurrentUser User user,
41-
@RequestParam @NotNull LocalDate searchDate);
42+
CustomResponseDto<EmotionMarbleTypeResponse> getEmotionMarbleBySearchDate(
43+
User user, @PathVariable LocalDate searchDate);
4244
}

src/main/java/bitnagil/bitnagil_backend/emotionMarble/service/EmotionMarbleService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ public RegisterEmotionMarbleResponse registryEmotionMarble(User user, RegisterEm
7171
}
7272

7373
@Transactional(readOnly = true)
74-
public EmotionMarbleTypeResponse getEmotionMarbleForHome(User user, LocalDate searchDate) {
74+
public EmotionMarbleTypeResponse getEmotionMarbleBySearchDate(User user, LocalDate searchDate) {
7575
EmotionMarble emotionMarble = emotionMarbleRepository.findByUserIdAndDateIs(
7676
user.getUserPk().getId(), searchDate);
7777

src/main/java/bitnagil/bitnagil_backend/routine/service/RoutineService.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,14 +192,17 @@ public RoutineSearchResponse getRoutines(User user, LocalDate startDate, LocalDa
192192
return queryRoutines(user, startDate, endDate);
193193
}
194194

195+
// TODO: 추후에 어떤 루틴인지 식별이 필요할 때 RoutineType 추가 요망
195196
// routineId에 대한 단일 루틴 조회하는 메서드입니다.
196197
@Transactional(readOnly = true)
197198
public RoutineSearchResultDto getRoutine(User user, UUID routineId) {
198199
LocalDateTime now = LocalDateTime.now();
199200

200201
Routine routine = routineValidator.validateRoutineOwnership(routineId, user, now);
201202

202-
List<SubRoutine> subRoutines = subRoutineRepository.findByRoutineId(routine.getRoutinePk().getId());
203+
List<SubRoutine> subRoutines = subRoutineRepository
204+
.findByRoutineIdAndDeletedAtIsNullAndHistoryStartDateTimeBeforeAndHistoryEndDateTimeGreaterThanEqual(
205+
routineId, now, now);
203206

204207
// 서브 루틴 목록 Dto로 변환
205208
List<SubRoutineSearchResultDto> subRoutineSearchResultDtos =

src/main/java/bitnagil/bitnagil_backend/user/controller/UserController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class UserController implements UserSpec {
1919

2020
private final UserService userService;
2121

22-
@GetMapping("/nickname")
22+
@GetMapping("/infos")
2323
public CustomResponseDto<UserInfoResponse> getUserInfo(@CurrentUser User user) {
2424
UserInfoResponse userInfoResponse = userService.getUserInfo(user);
2525

0 commit comments

Comments
 (0)