Skip to content

Commit 4fec658

Browse files
committed
[Feat] Propagate isExpired flag in viewport markers MemberPlaceQueryService.java
1 parent fb9deac commit 4fec658

1 file changed

Lines changed: 18 additions & 5 deletions

File tree

src/main/java/boombimapi/domain/place/query/service/MemberPlaceQueryService.java

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,15 @@ public List<ViewportMarkerResponse> getMemberPlacesInViewport(
4848

4949
final int zoomLevel = request.zoomLevel();
5050
final boolean isMaxZoom = zoomLevel == properties.maxZoomAtRefZ();
51-
52-
final double memberLatitude = request.memberCoordinate().latitude();
53-
final double memberLongitude = request.memberCoordinate().longitude();
51+
final LocalDateTime now = LocalDateTime.now();
5452

5553
// 1. 최대 줌 레벨에서는 클러스터링 X
5654
if (isMaxZoom) {
5755
List<ViewportMarkerResponse> markers = new ArrayList<>(rows.size());
5856
for (MemberPlaceViewportRow row : rows) {
5957

58+
Boolean isExpired = resolveIsExpired(row, now);
59+
6060
markers.add(
6161
ViewportPlaceMarkerResponse.of(
6262
row.id(),
@@ -68,7 +68,7 @@ public List<ViewportMarkerResponse> getMemberPlacesInViewport(
6868
row.congestionMessage(),
6969
row.createdAt(),
7070
row.isFavorite(),
71-
row.expiresAt().isBefore(LocalDateTime.now())
71+
isExpired
7272
)
7373
);
7474
}
@@ -134,6 +134,8 @@ public List<ViewportMarkerResponse> getMemberPlacesInViewport(
134134
if (row == null)
135135
continue;
136136

137+
Boolean isExpired = resolveIsExpired(row, now);
138+
137139
markers.add(
138140
ViewportPlaceMarkerResponse.of(
139141
row.id(),
@@ -145,12 +147,23 @@ public List<ViewportMarkerResponse> getMemberPlacesInViewport(
145147
row.congestionMessage(),
146148
row.createdAt(),
147149
row.isFavorite(),
148-
row.expiresAt().isBefore(LocalDateTime.now())
150+
isExpired
149151
)
150152
);
151153
}
152154
}
153155

154156
return markers;
155157
}
158+
159+
private Boolean resolveIsExpired(
160+
MemberPlaceViewportRow row,
161+
LocalDateTime now
162+
) {
163+
if (row.expiresAt() == null) {
164+
return null;
165+
}
166+
167+
return row.expiresAt().isBefore(now);
168+
}
156169
}

0 commit comments

Comments
 (0)