Skip to content

Commit 00fc4b9

Browse files
committed
♻️ 3회독조회시 인덱스 포함
- 프론트 요청으로 회독응답에 인덱스 포함
1 parent f57aade commit 00fc4b9

File tree

3 files changed

+33
-3
lines changed

3 files changed

+33
-3
lines changed

src/main/java/com/boggle_boggle/bbegok/controller/ReadingRecordController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.boggle_boggle.bbegok.controller;
22

33
import com.boggle_boggle.bbegok.dto.ReadDateAndIdDto;
4+
import com.boggle_boggle.bbegok.dto.ReadDateIndexDto;
45
import com.boggle_boggle.bbegok.dto.base.DataResponseDto;
56
import com.boggle_boggle.bbegok.dto.request.NewReadingRecordRequest;
67
import com.boggle_boggle.bbegok.dto.request.UpdateReadingRecordRequest;
@@ -64,7 +65,7 @@ public DataResponseDto<Void> deleteReadingRecord(@PathVariable(name="id") Long r
6465

6566
//독서기록의 회독정보들만 조회
6667
@GetMapping("/{id}/read-dates")
67-
public DataResponseDto<List<ReadDateAndIdDto>> getReadDates(@PathVariable(name = "id") Long readingRecordId,
68+
public DataResponseDto<List<ReadDateIndexDto>> getReadDates(@PathVariable(name = "id") Long readingRecordId,
6869
@AuthenticationPrincipal UserDetails userDetails) {
6970
return DataResponseDto.of(readingRecordService.getReadDates(readingRecordId, userDetails.getUsername()));
7071
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package com.boggle_boggle.bbegok.dto;
2+
3+
import com.boggle_boggle.bbegok.entity.ReadDate;
4+
import com.boggle_boggle.bbegok.enums.ReadStatus;
5+
import lombok.AllArgsConstructor;
6+
import lombok.Getter;
7+
import lombok.NoArgsConstructor;
8+
9+
import java.time.LocalDateTime;
10+
11+
@Getter
12+
@NoArgsConstructor
13+
public class ReadDateIndexDto {
14+
private Long readDateId;
15+
private int readDateIndex;
16+
private LocalDateTime startReadDate;
17+
private LocalDateTime endReadDate;
18+
19+
public ReadDateIndexDto(ReadDate readDate, int index) {
20+
this.readDateId = readDate.getReadDateSeq();
21+
this.startReadDate = readDate.getStartReadDate();
22+
this.endReadDate = readDate.getEndReadDate();
23+
this.readDateIndex = index;
24+
}
25+
}

src/main/java/com/boggle_boggle/bbegok/service/ReadingRecordService.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.boggle_boggle.bbegok.dto.PagesDto;
44
import com.boggle_boggle.bbegok.dto.ReadDateAndIdDto;
55
import com.boggle_boggle.bbegok.dto.ReadDateDto;
6+
import com.boggle_boggle.bbegok.dto.ReadDateIndexDto;
67
import com.boggle_boggle.bbegok.dto.request.NewNoteRequest;
78
import com.boggle_boggle.bbegok.dto.request.NewReadingRecordRequest;
89
import com.boggle_boggle.bbegok.dto.request.UpdateReadingRecordRequest;
@@ -24,6 +25,7 @@
2425

2526
import java.util.*;
2627
import java.util.stream.Collectors;
28+
import java.util.stream.IntStream;
2729

2830
@Service
2931
@RequiredArgsConstructor
@@ -181,8 +183,10 @@ private void updateReadingRecord(UpdateReadingRecordRequest request, User user,
181183

182184
}
183185

184-
public List<ReadDateAndIdDto> getReadDates(Long readingRecordId, String userId) {
186+
public List<ReadDateIndexDto> getReadDates(Long readingRecordId, String userId) {
185187
List<ReadDate> readDateList = readDateRepository.findByReadingRecordOrderByReadDateSeq(findReadingRecord(readingRecordId, userId));
186-
return readDateList.stream().map(ReadDateAndIdDto::new).toList();
188+
return IntStream.range(0, readDateList.size())
189+
.mapToObj(i -> new ReadDateIndexDto(readDateList.get(i), i))
190+
.toList();
187191
}
188192
}

0 commit comments

Comments
 (0)