5
5
import lombok .RequiredArgsConstructor ;
6
6
import lombok .extern .slf4j .Slf4j ;
7
7
import ma .glasnost .orika .MapperFacade ;
8
+ import no .nav .dolly .consumer .brukerservice .BrukerServiceConsumer ;
9
+ import no .nav .dolly .consumer .brukerservice .dto .TilgangDTO ;
8
10
import no .nav .dolly .domain .jpa .Bestilling ;
9
11
import no .nav .dolly .domain .jpa .BestillingMal ;
10
12
import no .nav .dolly .domain .jpa .Bruker ;
11
13
import no .nav .dolly .domain .resultset .RsDollyUtvidetBestilling ;
14
+ import no .nav .dolly .domain .resultset .entity .bestilling .MalBestillingFragment ;
12
15
import no .nav .dolly .domain .resultset .entity .bestilling .RsMalBestilling ;
16
+ import no .nav .dolly .domain .resultset .entity .bestilling .RsMalBestillingSimple ;
13
17
import no .nav .dolly .domain .resultset .entity .bestilling .RsMalBestillingWrapper ;
14
18
import no .nav .dolly .domain .resultset .entity .bruker .RsBrukerUtenFavoritter ;
15
19
import no .nav .dolly .exceptions .NotFoundException ;
29
33
import java .util .Collection ;
30
34
import java .util .Collections ;
31
35
import java .util .Comparator ;
36
+ import java .util .List ;
32
37
import java .util .Map ;
38
+ import java .util .Objects ;
33
39
import java .util .Set ;
34
40
import java .util .concurrent .atomic .AtomicReference ;
35
41
import java .util .stream .Collectors ;
36
42
37
43
import static java .util .Objects .isNull ;
38
44
import static java .util .Objects .nonNull ;
39
45
import static no .nav .dolly .config .CachingConfig .CACHE_BESTILLING_MAL ;
46
+ import static no .nav .dolly .domain .jpa .Bruker .Brukertype .AZURE ;
40
47
import static no .nav .dolly .util .CurrentAuthentication .getUserId ;
41
48
42
49
@ Service
@@ -49,6 +56,7 @@ public class MalBestillingService {
49
56
private static final String EMPTY_JSON = "{}" ;
50
57
51
58
private final BestillingMalRepository bestillingMalRepository ;
59
+ private final BrukerServiceConsumer brukerServiceConsumer ;
52
60
private final BestillingRepository bestillingRepository ;
53
61
private final BrukerService brukerService ;
54
62
private final MapperFacade mapperFacade ;
@@ -286,4 +294,33 @@ private static Set<String> toSet(String miljoer) {
286
294
.collect (Collectors .toSet ()) :
287
295
Collections .emptySet ();
288
296
}
297
+
298
+ public RsMalBestillingSimple getMalBestillingOversikt () {
299
+
300
+ List <MalBestillingFragment > maler ;
301
+ var brukeren = brukerService .fetchOrCreateBruker ();
302
+ if (brukeren .getBrukertype () == AZURE ) {
303
+ maler = bestillingMalRepository .findAllByBrukertypeAzure ();
304
+
305
+ } else {
306
+ var brukere = brukerServiceConsumer .getKollegaerIOrganisasjon (brukeren .getBrukerId ())
307
+ .map (TilgangDTO ::getBrukere )
308
+ .block ();
309
+
310
+ maler = bestillingMalRepository .findAllByBrukerIdIn (brukere );
311
+ }
312
+
313
+ return RsMalBestillingSimple .builder ()
314
+ .brukereMedMaler (
315
+ maler .stream ()
316
+ .map (MalBestillingFragment ::getMalBruker )
317
+ .filter (Objects ::nonNull )
318
+ .map (malBruker -> malBruker .split (":" ))
319
+ .map (malBruker -> RsMalBestillingSimple .MalBruker .builder ()
320
+ .brukernavn (malBruker [0 ])
321
+ .brukerId (malBruker [1 ])
322
+ .build ())
323
+ .toList ())
324
+ .build ();
325
+ }
289
326
}
0 commit comments