Skip to content

Commit 89fd689

Browse files
committed
fix : 검색 결과 순서대로 반환하도록 수정
1 parent c69d7ec commit 89fd689

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

src/main/java/com/projectlyrics/server/domain/song/repository/impl/QueryDslSongQueryRepository.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import java.util.List;
1515
import java.util.Objects;
1616
import java.util.Optional;
17+
import java.util.stream.Collectors;
1718
import lombok.RequiredArgsConstructor;
1819
import org.springframework.data.domain.Pageable;
1920
import org.springframework.data.domain.Slice;
@@ -138,9 +139,16 @@ public List<Song> findAllByIds(List<Long> ids) {
138139

139140
@Override
140141
public List<Song> findAllByIdsInListOrder(List<Long> songIds) {
142+
String idCsv = songIds.stream()
143+
.map(String::valueOf)
144+
.collect(Collectors.joining(","));
145+
141146
NumberExpression<Integer> orderExpression =
142-
Expressions.numberTemplate(Integer.class, "FIELD({0}, {1})", song.id,
143-
songIds.stream().map(String::valueOf).toArray());
147+
Expressions.numberTemplate(
148+
Integer.class,
149+
"FIELD({0}, " + idCsv + ")",
150+
song.id
151+
);
144152

145153
return jpaQueryFactory
146154
.selectFrom(song)

0 commit comments

Comments
 (0)