Skip to content

Commit 18883f5

Browse files
committed
๐Ÿ› fix: ์ค‘๊ฐ„ ์žฅ์†Œ ํˆฌํ‘œ DTO ์ˆ˜์ •(Schedule -> ScheduleId)
1 parent 865818f commit 18883f5

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

โ€Žsrc/main/java/com/grepp/spring/app/model/schedule/dto/VoteMiddleLocationDto.javaโ€Ž

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.grepp.spring.app.model.schedule.entity.Schedule;
55
import com.grepp.spring.app.model.schedule.entity.ScheduleMember;
66
import com.grepp.spring.app.model.schedule.entity.Vote;
7+
import com.grepp.spring.app.model.schedule.repository.ScheduleMemberRepository;
78
import lombok.Builder;
89
import lombok.Getter;
910
import lombok.Setter;
@@ -12,21 +13,27 @@
1213
@Setter
1314
@Builder
1415
public class VoteMiddleLocationDto {
15-
private ScheduleMember scheduleMember;
16+
// private ScheduleMember scheduleMember;
17+
private Long scheduleMemberId;
1618
private Location location;
1719
private Schedule schedule;
1820

19-
public static VoteMiddleLocationDto toDto(ScheduleMember scheduleMember, Location location, Schedule schedule) {
21+
public static VoteMiddleLocationDto toDto(Long scheduleMemberId, Location location, Schedule schedule) {
2022
return VoteMiddleLocationDto.builder()
21-
.scheduleMember(scheduleMember)
23+
.scheduleMemberId(scheduleMemberId)
2224
.location(location)
2325
.schedule(schedule)
2426
.build();
2527
}
2628

27-
public static Vote fromDto(VoteMiddleLocationDto dto) {
29+
public static Vote fromDto(VoteMiddleLocationDto dto,
30+
ScheduleMemberRepository scheduleMemberRepository) {
31+
32+
ScheduleMember scheduleMember = scheduleMemberRepository.findById(dto.getScheduleMemberId())
33+
.orElseThrow(() -> new IllegalArgumentException("ScheduleMember not found with ID: " + dto.getScheduleMemberId()));
2834
return Vote.builder()
29-
.scheduleMember(dto.getScheduleMember())
35+
// .scheduleMember(dto.getScheduleMember())
36+
.scheduleMember(scheduleMember)
3037
.location(dto.getLocation())
3138
.schedule(dto.getSchedule())
3239
.build();

โ€Žsrc/main/java/com/grepp/spring/app/model/schedule/service/ScheduleCommandService.javaโ€Ž

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -449,6 +449,8 @@ private List<JsonNode> findNearestStations(double latitude, double longitude)
449449
@Transactional
450450
public void voteMiddleLocation(Schedule schedule, ScheduleMember scheduleMember, Location lid) {
451451

452+
// ์—”ํ‹ฐํ‹ฐ ๊ฐ์ฒด ๋Œ€์‹  ID๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๋ณ€๊ฒฝ
453+
Long scheduleMemberId = scheduleMember.getId();
452454
// Location location = getLocation(lid);
453455
// Location ์—”ํ‹ฐํ‹ฐ์— ๋น„๊ด€์  ๋ฝ์„ ๊ฑธ๊ณ  ์กฐํšŒํ•˜๊ธฐ
454456
// ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ id๋กœ ๋ฐ›์œผ๋ฉด ๋” ์ข‹์„ ๊ฒƒ ๊ฐ™์Œ
@@ -466,8 +468,8 @@ public void voteMiddleLocation(Schedule schedule, ScheduleMember scheduleMember,
466468
int scheduleMemberNumber = scheduleMemberQueryRepository.findByScheduleId(schedule.getId()).size();
467469

468470
// vote ์ €์žฅ ์‹œ์ ์„ ๋’ค๋กœ ๋ฏธ๋ค„์„œ, Location ๋ฝ๊ณผ์˜ ๊ต์ฐฉ์„ ๋ฐฉ์ง€
469-
VoteMiddleLocationDto dto = VoteMiddleLocationDto.toDto(scheduleMember, lid, schedule);
470-
Vote vote = VoteMiddleLocationDto.fromDto(dto);
471+
VoteMiddleLocationDto dto = VoteMiddleLocationDto.toDto(scheduleMemberId, lid, schedule);
472+
Vote vote = VoteMiddleLocationDto.fromDto(dto, scheduleMemberRepository);
471473
voteCommandRepository.save(vote);
472474

473475

โ€Žsrc/main/java/com/grepp/spring/app/model/schedule/service/ScheduleQueryService.javaโ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ public class ScheduleQueryService {
5151
private final VoteQueryRepository voteQueryRepository;
5252
private final MetroTransferQueryRepository metroTransferQueryRepository;
5353

54-
@Transactional
54+
@Transactional(readOnly = true)
5555
public ShowScheduleResponse showSchedule(Schedule schedule, String userId) {
5656

5757
Long eventId = schedule.getEvent().getId();

0 commit comments

Comments
ย (0)