From 8b36598d7d48d9fae0748754cd9707b4b76eb8c0 Mon Sep 17 00:00:00 2001 From: redjungi Date: Sat, 11 Apr 2026 13:47:26 +0900 Subject: [PATCH 1/6] =?UTF-8?q?feat:=20=EB=9D=BC=EC=9D=B4=EB=B2=8C=20?= =?UTF-8?q?=EC=A1=B0=ED=9A=8C=EC=97=90=20equippedItems=20=ED=95=84?= =?UTF-8?q?=EB=93=9C=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../compete/rival/rival/dto/GetMyRivalActingDto.java | 7 +++++-- .../compete/rival/rival/data/GetMyRivalActingData.java | 10 +++++++--- .../rival/rival/service/GetMyRivalActingService.java | 10 +++++++++- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/process/clash/adapter/web/compete/rival/rival/dto/GetMyRivalActingDto.java b/src/main/java/com/process/clash/adapter/web/compete/rival/rival/dto/GetMyRivalActingDto.java index 3302e6caf..2e7f8b00f 100644 --- a/src/main/java/com/process/clash/adapter/web/compete/rival/rival/dto/GetMyRivalActingDto.java +++ b/src/main/java/com/process/clash/adapter/web/compete/rival/rival/dto/GetMyRivalActingDto.java @@ -1,6 +1,7 @@ package com.process.clash.adapter.web.compete.rival.rival.dto; import com.process.clash.application.compete.rival.rival.data.GetMyRivalActingData; +import com.process.clash.application.profile.data.EquippedItemsData; import com.process.clash.application.realtime.data.UserActivityStatus; import java.util.List; @@ -24,7 +25,8 @@ public static Response from(GetMyRivalActingData.Result result) { data.usingApp(), data.isStudying(), data.status(), - data.tier() + data.tier(), + data.equippedItems() )) .toList() ); @@ -41,6 +43,7 @@ private record MyRival( String usingApp, Boolean isStudying, UserActivityStatus status, - String tier + String tier, + EquippedItemsData equippedItems ) {} } diff --git a/src/main/java/com/process/clash/application/compete/rival/rival/data/GetMyRivalActingData.java b/src/main/java/com/process/clash/application/compete/rival/rival/data/GetMyRivalActingData.java index c1a41dc71..3235c3f70 100644 --- a/src/main/java/com/process/clash/application/compete/rival/rival/data/GetMyRivalActingData.java +++ b/src/main/java/com/process/clash/application/compete/rival/rival/data/GetMyRivalActingData.java @@ -1,6 +1,7 @@ package com.process.clash.application.compete.rival.rival.data; import com.process.clash.application.common.actor.Actor; +import com.process.clash.application.profile.data.EquippedItemsData; import com.process.clash.application.realtime.data.UserActivityStatus; import com.process.clash.domain.user.user.entity.User; @@ -38,7 +39,8 @@ public record MyRival( String usingApp, Boolean isStudying, UserActivityStatus status, - String tier + String tier, + EquippedItemsData equippedItems ) { public static MyRival of( @@ -47,7 +49,8 @@ public static MyRival of( Long activeTime, String usingApp, Boolean isStudying, - UserActivityStatus status + UserActivityStatus status, + EquippedItemsData equippedItems ) { return new MyRival( rivalId, @@ -59,7 +62,8 @@ public static MyRival of( usingApp, isStudying, status, - user.tier() + user.tier(), + equippedItems ); } } diff --git a/src/main/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingService.java b/src/main/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingService.java index cedae4802..170d6dc57 100644 --- a/src/main/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingService.java +++ b/src/main/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingService.java @@ -3,6 +3,8 @@ import com.process.clash.application.compete.rival.rival.data.GetMyRivalActingData; import com.process.clash.application.compete.rival.rival.port.in.GetMyRivalActingUseCase; import com.process.clash.application.compete.rival.rival.port.out.RivalRepositoryPort; +import com.process.clash.application.profile.data.EquippedItemsData; +import com.process.clash.application.profile.service.EquippedItemsAssembler; import com.process.clash.application.realtime.data.UserActivityStatus; import com.process.clash.application.realtime.port.out.UserPresencePort; import com.process.clash.application.record.v2.port.out.RecordSessionV2RepositoryPort; @@ -37,6 +39,7 @@ public class GetMyRivalActingService implements GetMyRivalActingUseCase { private final UserPresencePort userPresencePort; private final RecordProperties recordProperties; private final ZoneId recordZoneId; + private final EquippedItemsAssembler equippedItemsAssembler; @Override public GetMyRivalActingData.Result execute(GetMyRivalActingData.Command command) { @@ -86,6 +89,8 @@ public GetMyRivalActingData.Result execute(GetMyRivalActingData.Command command) Map activityStatusByUserId = userPresencePort.getStatuses(opponentIds); + Map equippedItemsMap = equippedItemsAssembler.loadByUserIds(opponentIds); + Long myId = command.actor().id(); List myRivals = rivals.stream() @@ -112,13 +117,16 @@ public GetMyRivalActingData.Result execute(GetMyRivalActingData.Command command) String usingApp = resolveUsingApp(activeSession); boolean isStudying = activeSession != null; + EquippedItemsData equippedItems = equippedItemsMap.getOrDefault(opponentId, EquippedItemsData.empty()); + return GetMyRivalActingData.MyRival.of( rival.id(), opponent, activeTime, usingApp, isStudying, - activityStatus + activityStatus, + equippedItems ); }) .toList(); From a76062e628eaf6cb03bc467fc151fad471159c9a Mon Sep 17 00:00:00 2001 From: redjungi Date: Sat, 11 Apr 2026 13:48:05 +0900 Subject: [PATCH 2/6] =?UTF-8?q?test:=20equippedItems=ED=95=84=EB=93=9C=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80=EB=A1=9C=20=EC=9D=B8=ED=95=9C=20=ED=85=8C?= =?UTF-8?q?=EC=8A=A4=ED=8A=B8=20=EB=A1=9C=EC=A7=81=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../rival/service/GetMyRivalActingServiceTest.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java b/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java index 516b0fb93..ddb91805c 100644 --- a/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java +++ b/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java @@ -3,6 +3,7 @@ import com.process.clash.application.common.actor.Actor; import com.process.clash.application.compete.rival.rival.data.GetMyRivalActingData; import com.process.clash.application.compete.rival.rival.port.out.RivalRepositoryPort; +import com.process.clash.application.profile.service.EquippedItemsAssembler; import com.process.clash.application.realtime.data.UserActivityStatus; import com.process.clash.application.realtime.port.out.UserPresencePort; import com.process.clash.application.record.v2.port.out.RecordSessionV2RepositoryPort; @@ -51,6 +52,8 @@ class GetMyRivalActingServiceTest { private UserPresencePort userPresencePort; private GetMyRivalActingService getMyRivalActingService; + @Mock + private EquippedItemsAssembler equippedItemsAssembler; @BeforeEach void setUp() { @@ -59,8 +62,11 @@ void setUp() { recordSessionRepositoryPort, userRepositoryPort, userPresencePort, + new RecordProperties("UTC", 0), - ZoneId.of("UTC") + ZoneId.of("UTC"), + + equippedItemsAssembler ); } @@ -116,6 +122,7 @@ void execute_returnsRivalsWithActivityStatus() { )); when(userPresencePort.getStatuses(anyList())) .thenReturn(Map.of(2L, UserActivityStatus.ONLINE, 3L, UserActivityStatus.AWAY, 1L, UserActivityStatus.ONLINE)); + when(equippedItemsAssembler.loadByUserIds(anyList())).thenReturn(Map.of()); GetMyRivalActingData.Result result = getMyRivalActingService.execute(command); @@ -147,6 +154,7 @@ void execute_returnsTierAsExpTier_whenRankTierIsNone() { .thenReturn(Map.of()); when(recordSessionRepositoryPort.findAllActiveSessionsByUserIds(anyList())).thenReturn(List.of()); when(userPresencePort.getStatuses(anyList())).thenReturn(Map.of(2L, UserActivityStatus.OFFLINE)); + when(equippedItemsAssembler.loadByUserIds(anyList())).thenReturn(Map.of()); GetMyRivalActingData.Result result = getMyRivalActingService.execute( new GetMyRivalActingData.Command(actor)); @@ -170,6 +178,7 @@ void execute_returnsTierAsRankTier_whenRankTierIsNotNone() { .thenReturn(Map.of()); when(recordSessionRepositoryPort.findAllActiveSessionsByUserIds(anyList())).thenReturn(List.of()); when(userPresencePort.getStatuses(anyList())).thenReturn(Map.of(2L, UserActivityStatus.OFFLINE)); + when(equippedItemsAssembler.loadByUserIds(anyList())).thenReturn(Map.of()); GetMyRivalActingData.Result result = getMyRivalActingService.execute( new GetMyRivalActingData.Command(actor)); From af952ccfe0c098f338b646fc597789ad2c95ab75 Mon Sep 17 00:00:00 2001 From: redjungi Date: Sat, 11 Apr 2026 14:06:22 +0900 Subject: [PATCH 3/6] =?UTF-8?q?test:=20=EB=88=84=EB=9D=BD=EB=90=9C=20equip?= =?UTF-8?q?pedItems=EA=B2=80=EC=A6=9D=20=ED=85=8C=EC=8A=A4=ED=8A=B8=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/GetMyRivalActingServiceTest.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java b/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java index ddb91805c..413e50938 100644 --- a/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java +++ b/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java @@ -3,6 +3,7 @@ import com.process.clash.application.common.actor.Actor; import com.process.clash.application.compete.rival.rival.data.GetMyRivalActingData; import com.process.clash.application.compete.rival.rival.port.out.RivalRepositoryPort; +import com.process.clash.application.profile.data.EquippedItemsData; import com.process.clash.application.profile.service.EquippedItemsAssembler; import com.process.clash.application.realtime.data.UserActivityStatus; import com.process.clash.application.realtime.port.out.UserPresencePort; @@ -198,6 +199,41 @@ void execute_returnsEmptyList_whenNoRivals() { assertThat(result.myRivals()).isEmpty(); } + @Test + @DisplayName("라이벌의 equippedItems가 응답에 올바르게 포함된다") + void execute_returnsEquippedItems() { + Actor actor = new Actor(1L); + Rival rival = new Rival(100L, Instant.now().minusSeconds(86_400), Instant.now(), + RivalLinkingStatus.ACCEPTED, 1L, 2L); + + User rivalUser = createUser(2L, "rivalA", "Rival A"); + + EquippedItemsData equippedItemsData = new EquippedItemsData( + new EquippedItemsData.EquippedItemData(1L, "배지이름", "badge.png"), + new EquippedItemsData.EquippedItemData(2L, "닉네임판", "nameplate.png"), + null + ); + + when(rivalRepositoryPort.findAllByUserId(actor.id())).thenReturn(List.of(rival)); + when(userRepositoryPort.findAllByIds(anyList())) + .thenReturn(List.of(rivalUser, createUser(1L, "me", "Me"))); + when(recordSessionRepositoryPort.getTotalStudyTimeInSecondsByUserIds(anyList(), any(), any())) + .thenReturn(Map.of()); + when(recordSessionRepositoryPort.findAllActiveSessionsByUserIds(anyList())).thenReturn(List.of()); + when(userPresencePort.getStatuses(anyList())).thenReturn(Map.of(2L, UserActivityStatus.OFFLINE)); + when(equippedItemsAssembler.loadByUserIds(anyList())) + .thenReturn(Map.of(2L, equippedItemsData)); + + GetMyRivalActingData.Result result = getMyRivalActingService.execute( + new GetMyRivalActingData.Command(actor)); + + EquippedItemsData actual = result.myRivals().get(0).equippedItems(); + assertThat(actual.insigma().id()).isEqualTo(1L); + assertThat(actual.insigma().name()).isEqualTo("배지이름"); + assertThat(actual.nameplate().id()).isEqualTo(2L); + assertThat(actual.banner()).isNull(); + } + private User createUser(Long id, String username, String name) { return createUser(id, username, name, RankTier.NONE, ExpTier.UNRANKED); } From 5c31f37cb823532b16c08cad6840a161760af225 Mon Sep 17 00:00:00 2001 From: redjungi Date: Sat, 11 Apr 2026 14:30:29 +0900 Subject: [PATCH 4/6] =?UTF-8?q?refactor:=20insigma=EC=98=A4=ED=83=80=20?= =?UTF-8?q?=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../clash/adapter/web/user/dto/EquippedItemsDto.java | 4 ++-- .../clash/application/profile/data/EquippedItemsData.java | 2 +- .../application/profile/service/EquippedItemsAssembler.java | 6 +++--- .../rival/rival/service/GetMyRivalActingServiceTest.java | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/process/clash/adapter/web/user/dto/EquippedItemsDto.java b/src/main/java/com/process/clash/adapter/web/user/dto/EquippedItemsDto.java index e408ab0dc..dfcdddb32 100644 --- a/src/main/java/com/process/clash/adapter/web/user/dto/EquippedItemsDto.java +++ b/src/main/java/com/process/clash/adapter/web/user/dto/EquippedItemsDto.java @@ -5,7 +5,7 @@ public class EquippedItemsDto { public record Response( - Item insigma, + Item insignia, Item nameplate, Item banner ) { @@ -14,7 +14,7 @@ public static Response from(EquippedItemsData data) { return new Response(null, null, null); } return new Response( - Item.from(data.insigma()), + Item.from(data.insignia()), Item.from(data.nameplate()), Item.from(data.banner()) ); diff --git a/src/main/java/com/process/clash/application/profile/data/EquippedItemsData.java b/src/main/java/com/process/clash/application/profile/data/EquippedItemsData.java index 22cb8c41f..ac3b958d2 100644 --- a/src/main/java/com/process/clash/application/profile/data/EquippedItemsData.java +++ b/src/main/java/com/process/clash/application/profile/data/EquippedItemsData.java @@ -1,7 +1,7 @@ package com.process.clash.application.profile.data; public record EquippedItemsData( - EquippedItemData insigma, + EquippedItemData insignia, EquippedItemData nameplate, EquippedItemData banner ) { diff --git a/src/main/java/com/process/clash/application/profile/service/EquippedItemsAssembler.java b/src/main/java/com/process/clash/application/profile/service/EquippedItemsAssembler.java index 0679b924a..e7ee33825 100644 --- a/src/main/java/com/process/clash/application/profile/service/EquippedItemsAssembler.java +++ b/src/main/java/com/process/clash/application/profile/service/EquippedItemsAssembler.java @@ -67,7 +67,7 @@ private EquippedItemsData toEquippedItems( List userEquippedItems, Map productById ) { - EquippedItemsData.EquippedItemData insigma = null; + EquippedItemsData.EquippedItemData insignia = null; EquippedItemsData.EquippedItemData nameplate = null; EquippedItemsData.EquippedItemData banner = null; @@ -87,7 +87,7 @@ private EquippedItemsData toEquippedItems( ); if (userEquippedItem.category() == ProductCategory.INSIGNIA) { - insigma = summary; + insignia = summary; } else if (userEquippedItem.category() == ProductCategory.NAMEPLATE) { nameplate = summary; } else if (userEquippedItem.category() == ProductCategory.BANNER) { @@ -95,6 +95,6 @@ private EquippedItemsData toEquippedItems( } } - return new EquippedItemsData(insigma, nameplate, banner); + return new EquippedItemsData(insignia, nameplate, banner); } } diff --git a/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java b/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java index 413e50938..ea50f7247 100644 --- a/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java +++ b/src/test/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingServiceTest.java @@ -228,8 +228,8 @@ void execute_returnsEquippedItems() { new GetMyRivalActingData.Command(actor)); EquippedItemsData actual = result.myRivals().get(0).equippedItems(); - assertThat(actual.insigma().id()).isEqualTo(1L); - assertThat(actual.insigma().name()).isEqualTo("배지이름"); + assertThat(actual.insignia().id()).isEqualTo(1L); + assertThat(actual.insignia().name()).isEqualTo("배지이름"); assertThat(actual.nameplate().id()).isEqualTo(2L); assertThat(actual.banner()).isNull(); } From a8116ed95fbefcfaeffceb8d65e15c918e405b12 Mon Sep 17 00:00:00 2001 From: redjungi Date: Sat, 11 Apr 2026 14:31:19 +0900 Subject: [PATCH 5/6] =?UTF-8?q?docs:=20insigma=EC=98=A4=ED=83=80=20?= =?UTF-8?q?=EA=B4=80=EB=A0=A8=20=EC=8A=A4=EC=9B=A8=EA=B1=B0=20=EB=AC=B8?= =?UTF-8?q?=EC=84=9C=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ranking/docs/controller/RankingControllerDocument.java | 6 +++--- .../ranking/docs/response/GetRankingResponseDocument.java | 6 +++--- .../adapter/web/user/docs/response/GetMyItemDocument.java | 2 +- .../web/user/docs/response/GetMyItemsResponseDocument.java | 2 +- .../web/user/docs/response/GetMyProfileDataDocument.java | 6 +++--- .../user/docs/response/GetMyProfileResponseDocument.java | 4 ++-- 6 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/process/clash/adapter/web/ranking/docs/controller/RankingControllerDocument.java b/src/main/java/com/process/clash/adapter/web/ranking/docs/controller/RankingControllerDocument.java index e675b00a9..7d700d609 100644 --- a/src/main/java/com/process/clash/adapter/web/ranking/docs/controller/RankingControllerDocument.java +++ b/src/main/java/com/process/clash/adapter/web/ranking/docs/controller/RankingControllerDocument.java @@ -41,9 +41,9 @@ public interface RankingControllerDocument { "point": 1200, "tier": "AURA", "equippedItems": { - "insigma": { + "insignia": { "id": 1, - "name": "기본 인시그니아", + "name": "기본 휘장", "image": "https://cdn.example.com/items/insignia.png" }, "nameplate": null, @@ -58,7 +58,7 @@ public interface RankingControllerDocument { "point": 980, "tier": "GOLD", "equippedItems": { - "insigma": null, + "insignia": null, "nameplate": null, "banner": null } diff --git a/src/main/java/com/process/clash/adapter/web/ranking/docs/response/GetRankingResponseDocument.java b/src/main/java/com/process/clash/adapter/web/ranking/docs/response/GetRankingResponseDocument.java index 0b03f9075..442b78ba3 100644 --- a/src/main/java/com/process/clash/adapter/web/ranking/docs/response/GetRankingResponseDocument.java +++ b/src/main/java/com/process/clash/adapter/web/ranking/docs/response/GetRankingResponseDocument.java @@ -57,8 +57,8 @@ public static class UserRankingDoc { @Schema(name = "EquippedItems", description = "장착 아이템 정보") public static class EquippedItemsDoc { - @Schema(description = "인시그니아") - private EquippedItemDoc insigma; + @Schema(description = "휘장") + private EquippedItemDoc insignia; @Schema(description = "네임플레이트") private EquippedItemDoc nameplate; @@ -73,7 +73,7 @@ public static class EquippedItemDoc { @Schema(description = "아이템 ID", example = "1") private Long id; - @Schema(description = "아이템 이름", example = "기본 인시그니아") + @Schema(description = "아이템 이름", example = "기본 휘장") private String name; @Schema(description = "아이템 이미지 URL", example = "https://cdn.example.com/items/insignia.png") diff --git a/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyItemDocument.java b/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyItemDocument.java index 84c8f514d..154df535b 100644 --- a/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyItemDocument.java +++ b/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyItemDocument.java @@ -8,7 +8,7 @@ public class GetMyItemDocument { @Schema(description = "아이템 ID", example = "1") public Long id; - @Schema(description = "아이템 제목", example = "기본 인시그니아") + @Schema(description = "아이템 제목", example = "기본 휘장") public String title; @Schema(description = "아이템 이미지 URL", example = "https://cdn.example.com/items/insignia.png") diff --git a/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyItemsResponseDocument.java b/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyItemsResponseDocument.java index d4585e4b3..6e0224760 100644 --- a/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyItemsResponseDocument.java +++ b/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyItemsResponseDocument.java @@ -13,7 +13,7 @@ "items": [ { "id": 1, - "title": "기본 인시그니아", + "title": "기본 휘장", "image": "https://cdn.example.com/items/insignia.png", "description": "기본 아이템", "category": "INSIGNIA", diff --git a/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyProfileDataDocument.java b/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyProfileDataDocument.java index 85f2576b6..2f1ce19ac 100644 --- a/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyProfileDataDocument.java +++ b/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyProfileDataDocument.java @@ -58,8 +58,8 @@ public class GetMyProfileDataDocument { @Schema(description = "장착 아이템") public static class EquippedItemsDocument { - @Schema(description = "인시그니아") - public EquippedItemDocument insigma; + @Schema(description = "휘장") + public EquippedItemDocument insignia; @Schema(description = "네임플레이트") public EquippedItemDocument nameplate; @@ -73,7 +73,7 @@ public static class EquippedItemDocument { @Schema(description = "아이템 ID", example = "1") public Long id; - @Schema(description = "아이템 이름", example = "기본 인시그니아") + @Schema(description = "아이템 이름", example = "기본 휘장") public String name; @Schema(description = "아이템 이미지 URL", example = "https://cdn.example.com/items/insignia.png") diff --git a/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyProfileResponseDocument.java b/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyProfileResponseDocument.java index 5e5925f9e..9f2f98298 100644 --- a/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyProfileResponseDocument.java +++ b/src/main/java/com/process/clash/adapter/web/user/docs/response/GetMyProfileResponseDocument.java @@ -26,9 +26,9 @@ "githubLinked": true, "activityStatus": "ONLINE", "equippedItems": { - "insigma": { + "insignia": { "id": 1, - "name": "기본 인시그니아", + "name": "기본 휘장", "image": "https://cdn.example.com/items/insignia.png" }, "nameplate": null, From c0949025238f09ffdd6311d7369611389416c913 Mon Sep 17 00:00:00 2001 From: redjungi Date: Sat, 11 Apr 2026 14:38:27 +0900 Subject: [PATCH 6/6] =?UTF-8?q?fix:=20equippedItems=20=EB=A1=9C=EB=94=A9?= =?UTF-8?q?=20=EC=8B=9C=20=EB=B6=88=ED=95=84=EC=9A=94=ED=95=9C=20=EB=B3=B8?= =?UTF-8?q?=EC=9D=B8=20ID=20=EC=A0=9C=EC=99=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../compete/rival/rival/service/GetMyRivalActingService.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingService.java b/src/main/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingService.java index 170d6dc57..4a935c896 100644 --- a/src/main/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingService.java +++ b/src/main/java/com/process/clash/application/compete/rival/rival/service/GetMyRivalActingService.java @@ -89,7 +89,10 @@ public GetMyRivalActingData.Result execute(GetMyRivalActingData.Command command) Map activityStatusByUserId = userPresencePort.getStatuses(opponentIds); - Map equippedItemsMap = equippedItemsAssembler.loadByUserIds(opponentIds); + List rivalIds = opponentIds.stream() + .filter(id -> !id.equals(command.actor().id())) + .toList(); + Map equippedItemsMap = equippedItemsAssembler.loadByUserIds(rivalIds); Long myId = command.actor().id();