Skip to content

Commit 9c776e6

Browse files
committed
fortsett behandling
1 parent 3a80ce8 commit 9c776e6

File tree

2 files changed

+38
-20
lines changed

2 files changed

+38
-20
lines changed

domenetjenester/mottak/src/main/java/no/nav/ung/sak/mottak/dokumentmottak/oppgavebekreftelse/InntektBekreftelseHåndterer.java

+30-12
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,11 @@
1313
import no.nav.k9.oppgave.bekreftelse.Bekreftelse;
1414
import no.nav.k9.oppgave.bekreftelse.ung.inntekt.InntektBekreftelse;
1515
import no.nav.k9.prosesstask.api.ProsessTaskData;
16+
import no.nav.k9.prosesstask.api.ProsessTaskGruppe;
1617
import no.nav.k9.prosesstask.api.ProsessTaskTjeneste;
1718
import no.nav.ung.kodeverk.arbeidsforhold.ArbeidType;
19+
import no.nav.ung.kodeverk.behandling.BehandlingStegType;
20+
import no.nav.ung.sak.behandling.prosessering.task.FortsettBehandlingTask;
1821
import no.nav.ung.sak.behandlingslager.behandling.Behandling;
1922
import no.nav.ung.sak.behandlingslager.etterlysning.EtterlysningEntitet;
2023
import no.nav.ung.sak.behandlingslager.etterlysning.EtterlysningRepository;
@@ -38,31 +41,45 @@ public class InntektBekreftelseHåndterer implements BekreftelseHåndterer {
3841
this.prosessTaskTjeneste = prosessTaskTjeneste;
3942
}
4043

44+
//TODO hva hvis behandling er ikke på KONTROLLER_REGISTER_INNTEKT steg?
4145
@Override
42-
public void håndter(OppgaveBekreftelseInnhold bekreftelse) {
43-
InntektBekreftelse b = bekreftelse.oppgaveBekreftelse().getBekreftelse();
46+
public void håndter(OppgaveBekreftelseInnhold oppgaveBekreftelseInnhold) {
47+
InntektBekreftelse inntektBekreftelse = oppgaveBekreftelseInnhold.oppgaveBekreftelse().getBekreftelse();
4448

4549
// lagre grunnlag
46-
var oppgittOpptjeningMottattRequest = mapOppgittOpptjeningRequest(bekreftelse);
47-
lagreOppgittOpptjeningFraSøknad(bekreftelse, oppgittOpptjeningMottattRequest);
50+
var abakusTask = lagOppdaterAbakusTask(oppgaveBekreftelseInnhold);
51+
52+
// opprett uttalelse hvis finnes
53+
54+
55+
// ta behandling av vent (lukker autopunkt også)
56+
var fortsettTask = ProsessTaskData.forProsessTask(FortsettBehandlingTask.class);
57+
Behandling behandling = oppgaveBekreftelseInnhold.behandling();
58+
fortsettTask.setBehandling(behandling.getFagsakId(), behandling.getId());
59+
fortsettTask.setSaksnummer(behandling.getFagsak().getSaksnummer().getVerdi());
60+
fortsettTask.setProperty(FortsettBehandlingTask.GJENOPPTA_STEG, BehandlingStegType.KONTROLLER_REGISTER_INNTEKT.getKode());
61+
62+
ProsessTaskGruppe gruppe = new ProsessTaskGruppe();
63+
gruppe.addNesteSekvensiell(abakusTask);
64+
gruppe.addNesteSekvensiell(fortsettTask);
65+
prosessTaskTjeneste.lagre(gruppe);
4866

4967
// hent tilhørende etterlysning og marker den som løst
50-
UUID oppgaveId = b.getOppgaveId();
68+
UUID oppgaveId = inntektBekreftelse.getOppgaveId();
5169
EtterlysningEntitet etterlysning = etterlysningRepository.hentEtterlysningForEksternReferanse(oppgaveId);
5270
etterlysning.mottattSvar();
5371
etterlysningRepository.lagre(etterlysning);
5472

55-
// opprett uttalelse hvis finnes
56-
57-
58-
// ta behandling av vent
59-
6073
}
6174

6275
/**
6376
* Lagrer oppgitt opptjening til abakus fra mottatt dokument.
77+
*
78+
* @return
6479
*/
65-
private void lagreOppgittOpptjeningFraSøknad(OppgaveBekreftelseInnhold bekreftelseInnhold, OppgittOpptjeningMottattRequest request) {
80+
private ProsessTaskData lagOppdaterAbakusTask(OppgaveBekreftelseInnhold bekreftelseInnhold) {
81+
var request = mapOppgittOpptjeningRequest(bekreftelseInnhold);
82+
6683
try {
6784
var behandling = bekreftelseInnhold.behandling();
6885
var enkeltTask = ProsessTaskData.forProsessTask(AsyncAbakusLagreOpptjeningTask.class);
@@ -75,8 +92,9 @@ public class InntektBekreftelseHåndterer implements BekreftelseHåndterer {
7592
enkeltTask.setBehandling(behandling.getFagsakId(), behandling.getId(), behandling.getAktørId().getAktørId());
7693
enkeltTask.setSaksnummer(behandling.getFagsak().getSaksnummer().getVerdi());
7794
enkeltTask.setCallIdFraEksisterende();
95+
return enkeltTask;
96+
7897

79-
prosessTaskTjeneste.lagre(enkeltTask);
8098
} catch (IOException e) {
8199
throw AbakusInntektArbeidYtelseTjenesteFeil.FEIL.feilVedKallTilAbakus("Opprettelse av task for lagring av oppgitt opptjening i abakus feiler.", e).toException();
82100
}

domenetjenester/mottak/src/test/java/no/nav/ung/sak/mottak/dokumentmottak/oppgavebekreftelse/InntektBekreftelseHåndtererTest.java

+8-8
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,10 @@
3232
import no.nav.k9.søknad.felles.type.SøknadId;
3333
import no.nav.ung.kodeverk.behandling.BehandlingStegType;
3434
import no.nav.ung.kodeverk.behandling.BehandlingType;
35-
import no.nav.ung.kodeverk.behandling.aksjonspunkt.AksjonspunktDefinisjon;
3635
import no.nav.ung.kodeverk.dokument.Brevkode;
3736
import no.nav.ung.kodeverk.etterlysning.EtterlysningStatus;
37+
import no.nav.ung.sak.behandling.prosessering.task.FortsettBehandlingTask;
38+
import no.nav.ung.sak.behandlingskontroll.BehandlingskontrollTjeneste;
3839
import no.nav.ung.sak.behandlingslager.behandling.Behandling;
3940
import no.nav.ung.sak.behandlingslager.etterlysning.EtterlysningEntitet;
4041
import no.nav.ung.sak.behandlingslager.etterlysning.EtterlysningRepository;
@@ -50,6 +51,8 @@ class InntektBekreftelseHåndtererTest {
5051

5152
@Inject
5253
private EntityManager em;
54+
@Inject
55+
private BehandlingskontrollTjeneste behandlingskontrollTjeneste;
5356
private EtterlysningRepository etterlysningRepository;
5457
private ProsessTaskTjeneste prosessTaskTjeneste;
5558

@@ -64,13 +67,9 @@ void setup() {
6467

6568
@Test
6669
void skalOppdatereEtterlysningOppdatereIayGrunnlagLagreUttalelseOgSetteBehandlingAvVent() {
67-
68-
6970
// Arrange
7071
TestScenarioBuilder scenarioBuilder = TestScenarioBuilder.builderMedSøknad()
7172
.medBehandlingType(BehandlingType.REVURDERING);
72-
73-
scenarioBuilder.leggTilAksjonspunkt(AksjonspunktDefinisjon.AUTO_SATT_PÅ_VENT_ETTERLYST_INNTEKTUTTALELSE, BehandlingStegType.KONTROLLER_REGISTER_INNTEKT);
7473
Behandling behandling = scenarioBuilder.lagre(em);
7574

7675
var periode = DatoIntervallEntitet.fra(LocalDate.now(), LocalDate.now());
@@ -123,9 +122,10 @@ void skalOppdatereEtterlysningOppdatereIayGrunnlagLagreUttalelseOgSetteBehandlin
123122
assertThat(abakusTask.getPropertyValue(AsyncAbakusLagreOpptjeningTask.BREVKODER)).isEqualTo(Brevkode.UNGDOMSYTELSE_OPPGAVE_BEKREFTELSE.getKode());
124123
assertThat(abakusTask.getPayloadAsString()).contains(String.valueOf(oppgittInntekt));
125124

126-
127-
//behandling er ikke lenger på vent
128-
assertThat(behandling.getAksjonspunkter()).isEmpty();
125+
//behandling taes av vent
126+
var fortsettSteg = prosessTaskTjeneste.finnAlle(FortsettBehandlingTask.TASKTYPE, ProsessTaskStatus.KLAR);
127+
assertThat(fortsettSteg).hasSize(1);
128+
assertThat(fortsettSteg.getFirst().getPropertyValue(FortsettBehandlingTask.GJENOPPTA_STEG)).isEqualTo(BehandlingStegType.KONTROLLER_REGISTER_INNTEKT.getKode());
129129

130130
//etterlysning er oppdatert
131131
var oppdatertEtterlysning = etterlysningRepository.hentEtterlysning(etterlysning.getId());

0 commit comments

Comments
 (0)