Skip to content

Commit

Permalink
✨ Legg med vergemål i person info på person query
Browse files Browse the repository at this point in the history
Co-authored-by: Øyvind Hagen <[email protected]>
  • Loading branch information
MartinMekk and oyvindhagen committed Aug 15, 2024
1 parent f61b1d8 commit d09bcc4
Show file tree
Hide file tree
Showing 11 changed files with 51 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ import no.nav.helse.spesialist.api.snapshot.SnapshotService
import no.nav.helse.spesialist.api.tildeling.TildelingDao
import no.nav.helse.spesialist.api.totrinnsvurdering.TotrinnsvurderingApiDao
import no.nav.helse.spesialist.api.varsel.ApiVarselRepository
import no.nav.helse.spesialist.api.vergemål.VergemålApiDao
import org.slf4j.Logger
import org.slf4j.LoggerFactory
import java.time.Duration
Expand All @@ -58,6 +59,7 @@ fun Application.graphQLApi(
notatDao: NotatDao,
totrinnsvurderingApiDao: TotrinnsvurderingApiDao,
VentApiDao: PåVentApiDao,
vergemålApiDao: VergemålApiDao,
reservasjonClient: ReservasjonClient,
avviksvurderinghenter: Avviksvurderinghenter,
skjermedePersonerGruppeId: UUID,
Expand Down Expand Up @@ -93,6 +95,7 @@ fun Application.graphQLApi(
snapshotService = snapshotService,
notatDao = notatDao,
totrinnsvurderingApiDao = totrinnsvurderingApiDao,
vergemålApiDao = vergemålApiDao,
reservasjonClient = reservasjonClient,
avviksvurderinghenter = avviksvurderinghenter,
behandlingsstatistikkMediator = behandlingsstatistikkMediator,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ import no.nav.helse.spesialist.api.snapshot.SnapshotService
import no.nav.helse.spesialist.api.tildeling.TildelingDao
import no.nav.helse.spesialist.api.totrinnsvurdering.TotrinnsvurderingApiDao
import no.nav.helse.spesialist.api.varsel.ApiVarselRepository
import no.nav.helse.spesialist.api.vergemål.VergemålApiDao

internal class SchemaBuilder(
private val personApiDao: PersonApiDao,
Expand All @@ -57,6 +58,7 @@ internal class SchemaBuilder(
private val oppgaveApiDao: OppgaveApiDao,
private val periodehistorikkDao: PeriodehistorikkDao,
private valVentApiDao: PåVentApiDao,
private val vergemålApiDao: VergemålApiDao,
private val snapshotService: SnapshotService,
private val notatDao: NotatDao,
private val totrinnsvurderingApiDao: TotrinnsvurderingApiDao,
Expand Down Expand Up @@ -99,6 +101,7 @@ internal class SchemaBuilder(
notatDao = notatDao,
totrinnsvurderingApiDao = totrinnsvurderingApiDao,
VentApiDao =VentApiDao,
vergemålApiDao = vergemålApiDao,
snapshotService = snapshotService,
reservasjonClient = reservasjonClient,
oppgavehåndterer = oppgavehåndterer,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ import no.nav.helse.spesialist.api.snapshot.SnapshotService
import no.nav.helse.spesialist.api.tildeling.TildelingDao
import no.nav.helse.spesialist.api.totrinnsvurdering.TotrinnsvurderingApiDao
import no.nav.helse.spesialist.api.varsel.ApiVarselRepository
import no.nav.helse.spesialist.api.vergemål.VergemålApiDao
import org.slf4j.Logger
import org.slf4j.LoggerFactory

Expand All @@ -51,6 +52,7 @@ class PersonQuery(
private val notatDao: NotatDao,
private val totrinnsvurderingApiDao: TotrinnsvurderingApiDao,
private valVentApiDao: PåVentApiDao,
private val vergemålApiDao: VergemålApiDao,
private val snapshotService: SnapshotService,
private val reservasjonClient: ReservasjonClient,
private val oppgavehåndterer: Oppgavehåndterer,
Expand Down Expand Up @@ -136,6 +138,7 @@ class PersonQuery(
personinfo.copy(
reservasjon = reservasjon.await(),
unntattFraAutomatisering = unntattFraAutomatiskGodkjenning,
fullmakt = vergemålApiDao.harFullmakt(fødselsnummer)
),
personApiDao = personApiDao,
tildelingDao = tildelingDao,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ data class Personinfo(
val fodselsdato: LocalDate?,
val kjonn: Kjonn,
val adressebeskyttelse: Adressebeskyttelse,
val fullmakt: Boolean? = null,
val reservasjon: Reservasjon? = null,
val unntattFraAutomatisering: UnntattFraAutomatiskGodkjenning? = null,
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package no.nav.helse.spesialist.api.vergemål

import no.nav.helse.HelseDao
import javax.sql.DataSource

class VergemålApiDao(dataSource: DataSource) : HelseDao(dataSource) {
fun harFullmakt(fødselsnummer: String): Boolean? =
asSQL(
"""
SELECT har_fremtidsfullmakter, har_fullmakter
FROM vergemal v
INNER JOIN person p on p.id = v.person_ref
WHERE p.fodselsnummer = :fodselsnummer
""".trimIndent(),
"fodselsnummer" to fødselsnummer
).single { row ->
row.boolean("har_fremtidsfullmakter") || row.boolean("har_fullmakter")
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ import no.nav.helse.spesialist.api.snapshot.SnapshotService
import no.nav.helse.spesialist.api.tildeling.TildelingDao
import no.nav.helse.spesialist.api.totrinnsvurdering.TotrinnsvurderingApiDao
import no.nav.helse.spesialist.api.varsel.ApiVarselRepository
import no.nav.helse.spesialist.api.vergemål.VergemålApiDao
import no.nav.helse.spleis.graphql.hentsnapshot.GraphQLArbeidsgiver
import org.intellij.lang.annotations.Language
import java.time.YearMonth
Expand Down Expand Up @@ -94,6 +95,7 @@ internal abstract class AbstractGraphQLApiTest : DatabaseIntegrationTest() {
snapshotService = snapshotService,
notatDao = notatDao,
totrinnsvurderingApiDao = totrinnsvurderingApiDao,
vergemålApiDao = vergemålApiDao,
reservasjonClient = reservasjonClient,
avviksvurderinghenter = avviksvurderinghenter,
behandlingsstatistikkMediator = behandlingsstatistikkMediator,
Expand Down Expand Up @@ -214,6 +216,7 @@ internal abstract class AbstractGraphQLApiTest : DatabaseIntegrationTest() {
snapshotService = SnapshotService(SnapshotApiDao(dataSource), mockk<SnapshotClient>(relaxed = true)),
notatDao = notatDao,
totrinnsvurderingApiDao = TotrinnsvurderingApiDao(dataSource),
vergemålApiDao = VergemålApiDao(dataSource),
reservasjonClient = mockk<ReservasjonClient>(relaxed = true),
avviksvurderinghenter = mockk<Avviksvurderinghenter>(relaxed = true),
behandlingsstatistikkMediator = mockk<IBehandlingsstatistikkService>(relaxed = true),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ import no.nav.helse.spesialist.api.totrinnsvurdering.TotrinnsvurderingApiDao
import no.nav.helse.spesialist.api.varsel.ApiVarselRepository
import no.nav.helse.spesialist.api.vedtaksperiode.Inntektskilde
import no.nav.helse.spesialist.api.vedtaksperiode.Periodetype
import no.nav.helse.spesialist.api.vergemål.VergemålApiDao
import no.nav.helse.spesialist.test.lagAktørId
import no.nav.helse.spesialist.test.lagEtternavn
import no.nav.helse.spesialist.test.lagFornavn
Expand Down Expand Up @@ -104,6 +105,7 @@ internal abstract class DatabaseIntegrationTest : AbstractDatabaseTest() {
protected val overstyringApiDao = OverstyringApiDao(dataSource)
protected val oppgaveApiDao = OppgaveApiDao(dataSource)
protected val periodehistorikkDao = PeriodehistorikkDao(dataSource)
protected val vergemålApiDao = VergemålApiDao(dataSource)
private val snapshotApiDao = SnapshotApiDao(dataSource)

protected val egenAnsattApiDao = mockk<EgenAnsattApiDao>(relaxed = true)
Expand Down
10 changes: 10 additions & 0 deletions spesialist-api/src/test/schema_til_bruk_fra_tester.graphql
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,14 @@ type Alder {
oppfylt: Boolean!
}

type Annullering {
arsaker: [String!]!
begrunnelse: String
saksbehandlerIdent: String!
tidspunkt: LocalDateTime!
utbetalingId: UUID!
}

type Antall {
automatisk: Int!
manuelt: Int!
Expand Down Expand Up @@ -156,6 +164,7 @@ type Behandlingsstatistikk {
}

type BeregnetPeriode implements Periode {
annullering: Annullering
avslag: [Avslag!]!
behandlingId: UUID!
beregningId: UUID!
Expand Down Expand Up @@ -474,6 +483,7 @@ type Personinfo {
etternavn: String!
fodselsdato: LocalDate
fornavn: String!
fullmakt: Boolean
kjonn: Kjonn!
mellomnavn: String
reservasjon: Reservasjon
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ import no.nav.helse.spesialist.api.snapshot.SnapshotService
import no.nav.helse.spesialist.api.tildeling.TildelingDao
import no.nav.helse.spesialist.api.totrinnsvurdering.TotrinnsvurderingApiDao
import no.nav.helse.spesialist.api.varsel.ApiVarselRepository
import no.nav.helse.spesialist.api.vergemål.VergemålApiDao
import no.nav.helse.spesialist.api.websockets.webSocketsApi
import org.slf4j.LoggerFactory
import java.lang.management.GarbageCollectorMXBean
Expand Down Expand Up @@ -125,6 +126,7 @@ internal class SpesialistApp(
private val automatiseringDao = AutomatiseringDao(dataSource)
private val stansAutomatiskBehandlingDao = StansAutomatiskBehandlingDao(dataSource)
private val egenAnsattDao = EgenAnsattDao(dataSource)
private val vergemålApiDao = VergemålApiDao(dataSource)

private lateinit var meldingMediator: MeldingMediator
private lateinit var saksbehandlerMediator: SaksbehandlerMediator
Expand Down Expand Up @@ -240,6 +242,7 @@ internal class SpesialistApp(
notatDao = notatDao,
totrinnsvurderingApiDao = totrinnsvurderingApiDao,
VentApiDao =VentApiDao,
vergemålApiDao = vergemålApiDao,
reservasjonClient = reservasjonClient,
avviksvurderinghenter = avviksvurderinghenter,
skjermedePersonerGruppeId = tilgangsgrupper.skjermedePersonerGruppeId,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ import no.nav.helse.spesialist.api.snapshot.SnapshotService
import no.nav.helse.spesialist.api.tildeling.TildelingDao
import no.nav.helse.spesialist.api.totrinnsvurdering.TotrinnsvurderingApiDao
import no.nav.helse.spesialist.api.varsel.ApiVarselRepository
import no.nav.helse.spesialist.api.vergemål.VergemålApiDao
import org.intellij.lang.annotations.Language
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertFalse
Expand Down Expand Up @@ -352,6 +353,7 @@ internal class OverstyringE2ETest : AbstractE2ETest() {
notatDao = NotatDao(dataSource),
totrinnsvurderingApiDao = TotrinnsvurderingApiDao(dataSource),
VentApiDao = PåVentApiDao(dataSource),
vergemålApiDao = VergemålApiDao(dataSource),
snapshotService = SnapshotService(SnapshotApiDao(dataSource), snapshotClient),
reservasjonClient = mockk(relaxed = true),
oppgavehåndterer = mockk(relaxed = true),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ import no.nav.helse.spesialist.api.snapshot.SnapshotService
import no.nav.helse.spesialist.api.tildeling.TildelingDao
import no.nav.helse.spesialist.api.totrinnsvurdering.TotrinnsvurderingApiDao
import no.nav.helse.spesialist.api.varsel.ApiVarselRepository
import no.nav.helse.spesialist.api.vergemål.VergemålApiDao
import org.junit.jupiter.api.Assertions.assertEquals
import org.junit.jupiter.api.Assertions.assertNotNull
import org.junit.jupiter.api.Assertions.assertNull
Expand Down Expand Up @@ -168,6 +169,7 @@ internal class TilgangsstyringE2ETest : AbstractE2ETest() {
notatDao = NotatDao(dataSource),
totrinnsvurderingApiDao = TotrinnsvurderingApiDao(dataSource),
VentApiDao = PåVentApiDao(dataSource),
vergemålApiDao = VergemålApiDao(dataSource),
snapshotService = SnapshotService(SnapshotApiDao(dataSource), snapshotClient),
reservasjonClient = mockk(relaxed = true),
oppgavehåndterer = mockk(relaxed = true),
Expand Down

0 comments on commit d09bcc4

Please sign in to comment.