1
- import React , { useState , useRef , useEffect } from 'react' ;
2
- import { Textarea , RadioPanelGruppe } from 'nav-frontend-skjema' ;
1
+ import React , { useEffect , useRef , useState } from 'react' ;
2
+ import { RadioPanelGruppe , Textarea } from 'nav-frontend-skjema' ;
3
3
import {
4
- MarginContainer ,
4
+ CenteredContainer ,
5
5
FlexCenteredContainer ,
6
+ Margin40Container ,
6
7
Margin48Container ,
7
8
Margin48TopContainer ,
8
- MarginTopContainer ,
9
- Margin40Container ,
10
- CenteredContainer
9
+ MarginContainer ,
10
+ MarginTopContainer
11
11
} from '../../styled-components/main-styled-components' ;
12
12
import { Hovedknapp , Knapp } from 'nav-frontend-knapper' ;
13
- import { Normaltekst , Undertittel , Element , Undertekst } from 'nav-frontend-typografi' ;
14
- import { VEDLEGG_STATUS , VedleggProps , toVedleggProps , VedleggErrorMessages } from '../../types/vedlegg' ;
13
+ import { Element , Normaltekst , Undertekst , Undertittel } from 'nav-frontend-typografi' ;
14
+ import { toVedleggProps , VEDLEGG_STATUS , VedleggErrorMessages , VedleggProps } from '../../types/vedlegg' ;
15
15
import VedleggVisning from './vedlegg' ;
16
- import { postNewKlage , updateKlage } from '../../store/actions' ;
17
- import { useSelector , useDispatch } from 'react-redux' ;
16
+ import { postNewKlage , setKlageId , updateKlage } from '../../store/actions' ;
17
+ import { useDispatch , useSelector } from 'react-redux' ;
18
18
import { Store } from '../../store/reducer' ;
19
19
import { addVedleggToKlage , deleteVedlegg } from '../../services/fileService' ;
20
- import { klageSkjemaBasertPaaVedtak , KlageSkjema } from '../../types/klage' ;
21
- import { isValidDateString , toISOString } from '../../utils/date-util' ;
22
- import { AlertStripeFeil } from 'nav-frontend-alertstriper' ;
20
+ import { KlageSkjema , klageSkjemaBasertPaaVedtak } from '../../types/klage' ;
21
+ import { toISOString } from '../../utils/date-util' ;
22
+ import AlertStripe , { AlertStripeFeil } from 'nav-frontend-alertstriper' ;
23
23
import { datoValg } from './datoValg' ;
24
24
import { Datovelger } from 'nav-datovelger' ;
25
25
import NavFrontendSpinner from 'nav-frontend-spinner' ;
26
- import AlertStripe from 'nav-frontend-alertstriper' ;
27
- import { Tema } from '../../types/tema' ;
28
26
import { getReferrer } from '../../services/klageService' ;
29
27
30
28
const Begrunnelse = ( props : any ) => {
@@ -41,36 +39,26 @@ const Begrunnelse = (props: any) => {
41
39
const [ submitted , setSubmitted ] = useState < boolean > ( false ) ;
42
40
43
41
useEffect ( ( ) => {
44
- if ( ( ! activeKlage || ! activeKlage . id ) && klageId === '' ) {
42
+ if ( klageId === '' ) {
45
43
let klageskjema : KlageSkjema ;
46
44
if ( props . chosenVedtak ) {
47
45
klageskjema = klageSkjemaBasertPaaVedtak ( props . chosenVedtak ) ;
48
46
klageskjema . referrer = getReferrer ( ) ;
49
- } else {
50
- klageskjema = {
51
- fritekst : activeBegrunnelse ,
52
- tema : 'UKJ' ,
53
- ytelse : Tema [ 'UKJ' ] ,
54
- datoalternativ : datoalternativ ,
55
- saksnummer : '' ,
56
- referrer : getReferrer ( )
57
- } ;
58
- if ( activeDatoISO !== '' && isValidDateString ( activeDatoISO ) ) {
59
- klageskjema . vedtaksdatoobjekt = new Date ( activeDatoISO ) ;
60
- } else {
61
- klageskjema . vedtaksdatoobjekt = undefined ;
62
- }
47
+ dispatch ( postNewKlage ( klageskjema ) ) ;
63
48
}
64
- dispatch ( postNewKlage ( klageskjema ) ) ;
65
49
}
66
- } , [ activeKlage , dispatch , activeBegrunnelse , activeDatoISO , datoalternativ , props . chosenVedtak , klageId ] ) ;
50
+ } , [ dispatch , props . chosenVedtak , klageId ] ) ;
51
+
67
52
useEffect ( ( ) => {
68
53
setActiveBegrunnelse ( activeKlage . fritekst ) ;
69
54
setDatoalternativ ( activeKlageSkjema . datoalternativ ) ;
55
+ if ( activeKlage . id !== undefined ) {
56
+ dispatch ( setKlageId ( String ( activeKlage . id ) ) ) ;
57
+ }
70
58
if ( activeKlageSkjema . vedtaksdatoobjekt ) {
71
59
setActiveDatoISO ( toISOString ( activeKlageSkjema . vedtaksdatoobjekt ) ) ;
72
60
}
73
- } , [ activeKlage , activeKlageSkjema ] ) ;
61
+ } , [ dispatch , activeKlage , activeKlageSkjema ] ) ;
74
62
75
63
const INPUTDESCRIPTION =
76
64
'Skriv inn hvilke endringer du ønsker i vedtaket, og beskriv hva du begrunner klagen med. Legg ved dokumenter som du mener kan være til støtte for klagen.' ;
@@ -108,7 +96,10 @@ const Begrunnelse = (props: any) => {
108
96
console . log ( response ) ;
109
97
dispatch ( {
110
98
type : 'VEDLEGG_ADD_SUCCESS' ,
111
- value : { status : VEDLEGG_STATUS . OK , vedlegg : toVedleggProps ( response ) }
99
+ value : {
100
+ status : VEDLEGG_STATUS . OK ,
101
+ vedlegg : toVedleggProps ( response )
102
+ }
112
103
} ) ;
113
104
setVedleggLoading ( false ) ;
114
105
} )
0 commit comments