From 2b7b33958b220fafc4705e4615791a2c9f373296 Mon Sep 17 00:00:00 2001 From: Kim-Dong-Jun99 Date: Thu, 11 Jan 2024 12:04:47 +0900 Subject: [PATCH] =?UTF-8?q?Refactor=20:=20TripMemberMsg=EC=97=90=20NumberO?= =?UTF-8?q?fPeople=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../domain/trip/dto/response/TripMemberMsg.java | 3 ++- .../tentenstomp/domain/trip/service/TripService.java | 9 ++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/tenten/tentenstomp/domain/trip/dto/response/TripMemberMsg.java b/src/main/java/org/tenten/tentenstomp/domain/trip/dto/response/TripMemberMsg.java index a38205a..2100fd2 100644 --- a/src/main/java/org/tenten/tentenstomp/domain/trip/dto/response/TripMemberMsg.java +++ b/src/main/java/org/tenten/tentenstomp/domain/trip/dto/response/TripMemberMsg.java @@ -5,6 +5,7 @@ public record TripMemberMsg( Long tripId, List connectedMembers, - List tripMembers + List tripMembers, + Long numberOfPeople ) { } diff --git a/src/main/java/org/tenten/tentenstomp/domain/trip/service/TripService.java b/src/main/java/org/tenten/tentenstomp/domain/trip/service/TripService.java index 17487d4..98e6fd4 100644 --- a/src/main/java/org/tenten/tentenstomp/domain/trip/service/TripService.java +++ b/src/main/java/org/tenten/tentenstomp/domain/trip/service/TripService.java @@ -45,11 +45,12 @@ public class TripService { @Transactional public void connectMember(String tripId, MemberConnectMsg memberConnectMsg) { HashMap connectedMemberMap = tripConnectedMemberMap.getOrDefault(tripId, new HashMap<>()); + Trip trip = tripRepository.getReferenceById(Long.parseLong(tripId)); Optional tripMemberInfoByMemberId = memberRepository.findTripMemberInfoByMemberId(memberConnectMsg.memberId()); tripMemberInfoByMemberId.ifPresent(tripMemberInfoMsg -> connectedMemberMap.put(memberConnectMsg.memberId(), tripMemberInfoMsg)); TripMemberMsg tripMemberMsg = new TripMemberMsg( - Long.parseLong(tripId), connectedMemberMap.values().stream().toList(), memberRepository.findTripMemberInfoByTripId(Long.parseLong(tripId)) + Long.parseLong(tripId), connectedMemberMap.values().stream().toList(), memberRepository.findTripMemberInfoByTripId(Long.parseLong(tripId)), trip.getNumberOfPeople() ); tripConnectedMemberMap.put(tripId, connectedMemberMap); sendToKafkaAndSave(tripMemberMsg); @@ -59,10 +60,11 @@ public void connectMember(String tripId, MemberConnectMsg memberConnectMsg) { @Transactional public void disconnectMember(String tripId, MemberDisconnectMsg memberDisconnectMsg) { HashMap connectedMemberMap = tripConnectedMemberMap.getOrDefault(tripId, new HashMap<>()); + Trip trip = tripRepository.getReferenceById(Long.parseLong(tripId)); connectedMemberMap.remove(memberDisconnectMsg.memberId()); TripMemberMsg tripMemberMsg = new TripMemberMsg( - Long.parseLong(tripId), connectedMemberMap.values().stream().toList(), memberRepository.findTripMemberInfoByTripId(Long.parseLong(tripId)) + Long.parseLong(tripId), connectedMemberMap.values().stream().toList(), memberRepository.findTripMemberInfoByTripId(Long.parseLong(tripId)), trip.getNumberOfPeople() ); tripConnectedMemberMap.put(tripId, connectedMemberMap); sendToKafkaAndSave(tripMemberMsg); @@ -185,8 +187,9 @@ private TripMemberMsg getTripMemberMsg(String tripId) { return objectMapper.convertValue(cached, TripMemberMsg.class); } HashMap connectedMemberMap = tripConnectedMemberMap.getOrDefault(tripId, new HashMap<>()); + Trip trip = tripRepository.getReferenceById(Long.parseLong(tripId)); TripMemberMsg tripMemberMsg = new TripMemberMsg( - Long.parseLong(tripId), connectedMemberMap.values().stream().toList(), memberRepository.findTripMemberInfoByTripId(Long.parseLong(tripId)) + Long.parseLong(tripId), connectedMemberMap.values().stream().toList(), memberRepository.findTripMemberInfoByTripId(Long.parseLong(tripId)), trip.getNumberOfPeople() ); redisCache.save(MEMBER, tripId, tripMemberMsg); return tripMemberMsg;