Skip to content

Commit 621c91a

Browse files
committed
Feat: 채팅 아바타 img 기능
1 parent 81c2f8e commit 621c91a

File tree

6 files changed

+14
-6
lines changed

6 files changed

+14
-6
lines changed

src/main/java/cmf/commitField/domain/chat/chatMessage/controller/response/ChatMsgResponse.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,10 @@
1212
public class ChatMsgResponse {
1313
//채팅방 ID
1414
private Long roomId;
15+
private Long id;
1516
//사용자(user)
1617
private String from;
1718
private String message;
1819
private LocalDateTime sendAt;
20+
private String avatarUrl; // 아바타 URL 필드 추가
1921
}

src/main/java/cmf/commitField/domain/chat/chatMessage/dto/ChatMsgDto.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,5 @@ public class ChatMsgDto {
1515
private String nickname;
1616
private String message;
1717
private LocalDateTime sendAt;
18+
private String avatarUrl; // avatarUrl 필드 추가
1819
}

src/main/java/cmf/commitField/domain/chat/chatMessage/service/ChatMessageServiceImpl.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,25 +44,26 @@ public ChatMsgResponse sendMessage(ChatMsgRequest message, Long userId, Long roo
4444
ChatRoom chatRoom = chatRoomRepository.findChatRoomById(roomId)
4545
.orElseThrow(() -> new CustomException(ErrorCode.NOT_FOUND_ROOM));
4646

47-
//채팅 메세지 생성
4847
ChatMsg chatMsg = ChatMsg.builder()
4948
.message(message.getMessage())
5049
.createdAt(LocalDateTime.now())
5150
.user(findUser)
5251
.chatRoom(chatRoom)
5352
.build();
5453

54+
chatMessageRepository.save(chatMsg);
55+
5556
// Response message
56-
//응답 값으로 변환
57-
ChatMsgResponse response = ChatMsgResponse.builder()
57+
// 응답값 변환
58+
return ChatMsgResponse.builder()
59+
.id(chatMsg.getId()) // chatMsgId 추가
5860
.roomId(roomId)
59-
.from(findUser.getUsername()) // nickname 대신 username 사용
61+
.from(findUser.getUsername())
6062
.message(message.getMessage())
6163
.sendAt(chatMsg.getCreatedAt())
64+
.avatarUrl(findUser.getAvatarUrl()) // 아바타 URL 추가
6265
.build();
6366

64-
chatMessageRepository.save(chatMsg);
65-
return response;
6667
}
6768

6869
@Transactional(readOnly = true)
@@ -85,6 +86,7 @@ public List<ChatMsgDto> getRoomChatMsgList(Long roomId, Long userId, Long lastId
8586
.sendAt(chatMsg.getCreatedAt())
8687
.message(chatMsg.getMessage())
8788
.userId(chatMsg.getUser().getId())
89+
.avatarUrl(chatMsg.getUser().getAvatarUrl()) // avatarUrl 추가
8890
.build();
8991
if (build.getSendAt().isAfter(joinDt)) {
9092
chatMsgDtos.add(build);

src/main/java/cmf/commitField/domain/user/dto/UserChatInfoDto.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,5 @@ public class UserChatInfoDto {
1010
private String username;
1111
private String nickname;
1212
private String email;
13+
private String avatarUrl;
1314
}

src/main/java/cmf/commitField/domain/user/service/UserService.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ public UserChatInfoDto showUserChatInfo(String username) {
4949
.email(user.getEmail())
5050
.nickname(user.getNickname())
5151
.username(user.getUsername())
52+
.avatarUrl(user.getAvatarUrl())
5253
.build();
5354
}
5455

src/main/java/cmf/commitField/global/websocket/ChatWebSocketHandler.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -202,6 +202,7 @@ private void handleChatMessage(WebSocketSession session, JsonNode jsonNode) {
202202
wsMessage.put("userId", userId);
203203
wsMessage.put("from", user.getUsername()); // nickname 대신 username 사용
204204
wsMessage.put("nickname", user.getUsername()); // nickname 대신 username 사용
205+
wsMessage.put("avatarUrl", user.getAvatarUrl()); // 아바타 URL 추가
205206
wsMessage.put("message", message);
206207
wsMessage.put("sendAt", response.getSendAt().toString());
207208

0 commit comments

Comments
 (0)