Skip to content

Commit 3928936

Browse files
committed
ORG-
1902: Filtrere ut inaktive underordnede
1 parent 1e0dec3 commit 3928936

File tree

3 files changed

+12
-3
lines changed

3 files changed

+12
-3
lines changed

Diff for: apps/backend/src/main/java/no/nav/data/team/member/MemberExportService.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ public byte[] generateSpreadsheet(SpreadsheetType type, String filter) {
5959
case TEAM -> mapTeamMembers(List.of(teamService.get(StringUtils.toUUID(filter))), pas, clusters).collect(toList());
6060
case ROLE -> filter(getAll(pas, clusters), m -> convert(m.member().getRoles(), Enum::name).contains(filter));
6161
case LEADER -> filter(getAll(pas, clusters), m -> {
62-
var leaderMembers = nomGraphClient.getLeaderMembers(filter);
62+
var leaderMembers = nomGraphClient.getLeaderMembersActiveOnly(filter);
6363
return leaderMembers.contains(m.member().getNavIdent());
6464
});
6565
};

Diff for: apps/backend/src/main/java/no/nav/data/team/resource/NomGraphClient.java

+10-1
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import no.nav.data.common.utils.StreamUtils;
1515
import no.nav.data.team.integration.process.GraphQLRequest;
1616
import no.nav.data.team.org.OrgUrlId;
17+
import no.nav.data.team.resource.domain.Resource;
1718
import no.nav.data.team.resource.dto.NomGraphQlResponse.MultiRessurs;
1819
import no.nav.data.team.resource.dto.NomGraphQlResponse.SingleOrg;
1920
import no.nav.data.team.resource.dto.NomGraphQlResponse.SingleRessurs;
@@ -102,7 +103,7 @@ public Optional<OrgEnhetDto> getOrgEnhet(String orgUrl) {
102103

103104
public Optional<ResourceUnitsResponse> getUnits(String navIdent) {
104105
return getRessurs(navIdent)
105-
.map(r -> ResourceUnitsResponse.from(r, getLeaderMembers(navIdent), this::getOrgEnhet));
106+
.map(r -> ResourceUnitsResponse.from(r, getLeaderMembersActiveOnly(navIdent), this::getOrgEnhet));
106107
}
107108

108109
private Map<String, RessursDto> getRessurser(List<String> navIdents) {
@@ -114,6 +115,14 @@ private Map<String, RessursDto> getRessurser(List<String> navIdents) {
114115
});
115116
}
116117

118+
public List<String> getLeaderMembersActiveOnly(String navIdent) {
119+
var nomClient = NomClient.getInstance();
120+
return getLeaderMembers(navIdent).stream()
121+
.map(nomClient::getByNavIdent)
122+
.filter(Optional::isPresent).map(Optional::get)
123+
.filter(it -> !it.isInactive()).map(Resource::getNavIdent).toList();
124+
}
125+
117126
public List<String> getLeaderMembers(String navIdent) {
118127
return leaderCache.get(navIdent, ident -> {
119128
var req = new GraphQLRequest(getLeaderMemberQuery, Map.of("navident", navIdent));

Diff for: apps/backend/src/test/java/no/nav/data/team/member/MemberExportServiceTest.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ void setUp() {
6565
createTeam(3, null, List.of(clusterOne.getId(), clusterTwo.getId())))
6666
);
6767
lenient().when(teamService.get(teamOne.getId())).thenReturn(teamOne);
68-
lenient().when(nomGraphClient.getLeaderMembers("A123456")).thenReturn(List.of(createNavIdent(101), createNavIdent(102)));
68+
lenient().when(nomGraphClient.getLeaderMembersActiveOnly("A123456")).thenReturn(List.of(createNavIdent(101), createNavIdent(102)));
6969
UrlGeneratorTestUtil.get();
7070
}
7171

0 commit comments

Comments
 (0)