Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions src/backend/state-server/src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,14 @@ spring:

consumer:
group-id:
channel-chat-event: "${spring.application.name}-channelChatEventGroup-${INSTANCE_ID}"
dm-chat-event: "${spring.application.name}-dmChatEventGroup-${INSTANCE_ID}"
notification-event: "${spring.application.name}-notificationEventGroup-${INSTANCE_ID}"
server-event: "${spring.application.name}-serverEventGroup-${INSTANCE_ID}"
channel-event: "${spring.application.name}-channelEventGroup-${INSTANCE_ID}"
connection-event: "${spring.application.name}-connectionEventGroup-${INSTANCE_ID}"
presence-event: "${spring.application.name}-presenceEventGroup-${INSTANCE_ID}"
member-event: "${spring.application.name}-memberEventGroup-${INSTANCE_ID}"
channel-chat-event: "${spring.application.name}-channelChatEventGroup"
dm-chat-event: "${spring.application.name}-dmChatEventGroup"
notification-event: "${spring.application.name}-notificationEventGroup"
server-event: "${spring.application.name}-serverEventGroup"
channel-event: "${spring.application.name}-channelEventGroup"
connection-event: "${spring.application.name}-connectionEventGroup"
presence-event: "${spring.application.name}-presenceEventGroup"
member-event: "${spring.application.name}-memberEventGroup"

enable-auto-commit: true
auto-offset-reset: latest
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import com.bbebig.commonmodule.kafka.dto.PresenceEventDto;
import com.bbebig.commonmodule.kafka.dto.notification.FriendPresenceEventDto;
import com.bbebig.commonmodule.kafka.dto.notification.NotificationEventType;
import com.bbebig.userserver.friend.service.FriendService;
import com.bbebig.userserver.member.service.KafkaProducerService;
import lombok.RequiredArgsConstructor;
Expand Down Expand Up @@ -41,6 +42,7 @@ private void handleEvent(PresenceEventDto presenceEventDto) {
for (Long friendMemberId : friendMemberIds) {
FriendPresenceEventDto friendPresenceEventDto = FriendPresenceEventDto.builder()
.memberId(friendMemberId)
.type(NotificationEventType.FRIEND_PRESENCE)
.friendMemberId(memberId)
.globalStatus(presenceEventDto.getGlobalStatus())
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,4 +96,17 @@ public CommonResponse<MemberReadResponseDto> readMember(
return CommonResponse.onSuccess(memberService.readMember(memberId));
}

@Operation(summary = "멤버 닉네임으로 검색", description = "멤버 닉네임으로 조회합니다.")
@ApiResponses(value = {
@ApiResponse(responseCode = "200", description = "멤버 조회 성공", useReturnTypeSchema = true),
@ApiResponse(responseCode = "400", description = "", content = @Content)
})
@GetMapping("/search")
public CommonResponse<MemberReadResponseDto> getMemberByNickName(
@RequestParam("nickName") String nickName
) {
log.info("[Member] 닉네임으로 멤버 조회 요청: nickName = {}", nickName);
return CommonResponse.onSuccess(memberService.getMemberByNickname(nickName));
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,9 @@
import com.bbebig.userserver.member.entity.Member;
import org.springframework.data.jpa.repository.JpaRepository;

import java.util.Optional;

public interface MemberRepository extends JpaRepository<Member,Long> {

Optional<Member> findByNickname(String nickname);
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.bbebig.userserver.member.service;

import com.bbebig.commonmodule.clientDto.UserFeignResponseDto;
import com.bbebig.commonmodule.clientDto.UserFeignResponseDto.*;
import com.bbebig.commonmodule.global.response.code.error.ErrorStatus;
import com.bbebig.commonmodule.global.response.exception.ErrorHandler;
Expand All @@ -26,6 +25,7 @@
import org.springframework.transaction.annotation.Transactional;

import java.util.List;
import java.util.Optional;

@Slf4j
@Service
Expand Down Expand Up @@ -143,6 +143,12 @@ public MemberReadResponseDto readMember(Long memberId) {
return MemberReadResponseDto.convertToMemberReadResponseDto(member);
}

@Transactional(readOnly = true)
public MemberReadResponseDto getMemberByNickname(String nickname) {
Optional<Member> member = memberRepository.findByNickname(nickname);
return member.map(MemberReadResponseDto::convertToMemberReadResponseDto).orElse(null);
}

/**
* 멤버 정보 조회 (For Feign Client)
*/
Expand All @@ -164,6 +170,8 @@ public MemberInfoResponseDto getMemberInfo(Long memberId) {
.build();
}



/**
* 멤버 전역 상태 조회
*/
Expand Down
20 changes: 10 additions & 10 deletions src/backend/user-server/src/main/resources/application.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ spring:
host: redis

kafka:
bootstrap-servers: kafka:9092
bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS}

topic:
channel-chat-event: "channelChatEvent"
Expand All @@ -29,18 +29,18 @@ spring:
member-event: "memberEvent"

producer:
bootstrap-servers: kafka:9092
bootstrap-servers: ${KAFKA_BOOTSTRAP_SERVERS}

consumer:
group-id:
channel-chat-event: "${spring.application.name}-channelChatEventGroup-${INSTANCE_ID}"
dm-chat-event: "${spring.application.name}-dmChatEventGroup-${INSTANCE_ID}"
notification-event: "${spring.application.name}-notificationEventGroup-${INSTANCE_ID}"
server-event: "${spring.application.name}-serverEventGroup-${INSTANCE_ID}"
channel-event: "${spring.application.name}-channelEventGroup-${INSTANCE_ID}"
connection-event: "${spring.application.name}-connectionEventGroup-${INSTANCE_ID}"
presence-event: "${spring.application.name}-presenceEventGroup-${INSTANCE_ID}"
member-event: "${spring.application.name}-memberEventGroup-${INSTANCE_ID}"
channel-chat-event: "${spring.application.name}-channelChatEventGroup"
dm-chat-event: "${spring.application.name}-dmChatEventGroup"
notification-event: "${spring.application.name}-notificationEventGroup"
server-event: "${spring.application.name}-serverEventGroup"
channel-event: "${spring.application.name}-channelEventGroup"
connection-event: "${spring.application.name}-connectionEventGroup"
presence-event: "${spring.application.name}-presenceEventGroup"
member-event: "${spring.application.name}-memberEventGroup"


enable-auto-commit: true
Expand Down