1
1
import { useBesluttDelutbetaling } from "@/api/utbetaling/useBesluttDelutbetaling" ;
2
2
import { formaterPeriodeSlutt , formaterPeriodeStart , tilsagnTypeToString } from "@/utils/Utils" ;
3
3
import {
4
+ DelutbetalingStatus ,
5
+ Totrinnskontroll ,
4
6
BesluttDelutbetalingRequest ,
5
7
Besluttelse ,
6
8
DelutbetalingDto ,
@@ -18,30 +20,31 @@ import { AarsakerOgForklaringModal } from "../modal/AarsakerOgForklaringModal";
18
20
import { DelutbetalingTag } from "./DelutbetalingTag" ;
19
21
20
22
interface Props {
23
+ ansatt : NavAnsatt ;
21
24
tilsagn : TilsagnDto ;
22
25
delutbetaling : DelutbetalingDto ;
23
- ansatt : NavAnsatt ;
26
+ opprettelse : Totrinnskontroll ;
24
27
}
25
28
26
- export function DelutbetalingRow ( { tilsagn, delutbetaling, ansatt } : Props ) {
29
+ export function DelutbetalingRow ( { ansatt , tilsagn, delutbetaling, opprettelse } : Props ) {
27
30
const [ avvisModalOpen , setAvvisModalOpen ] = useState ( false ) ;
28
31
const queryClient = useQueryClient ( ) ;
29
32
30
33
const besluttMutation = useBesluttDelutbetaling ( delutbetaling . id ) ;
31
34
32
35
const kanBeslutte =
33
- delutbetaling . opprettelse . behandletAv !== ansatt . navIdent &&
34
- ansatt ? .roller . includes ( NavAnsattRolle . OKONOMI_BESLUTTER ) &&
35
- delutbetaling . type === "DELUTBETALING_TIL_GODKJENNING" ;
36
+ delutbetaling . status === DelutbetalingStatus . TIL_GODKJENNING &&
37
+ ansatt . roller . includes ( NavAnsattRolle . OKONOMI_BESLUTTER ) &&
38
+ opprettelse . behandletAv !== ansatt . navIdent ;
36
39
37
- const godkjentUtbetaling =
38
- delutbetaling . type === "DELUTBETALING_OVERFORT_TIL_UTBETALING" ||
39
- delutbetaling . type === "DELUTBETALING_UTBETALT" ;
40
+ const godkjentUtbetaling = [ DelutbetalingStatus . GODKJENT , DelutbetalingStatus . UTBETALT ] . includes (
41
+ delutbetaling . status ,
42
+ ) ;
40
43
41
44
function beslutt ( body : BesluttDelutbetalingRequest ) {
42
45
besluttMutation . mutate ( body , {
43
46
onSuccess : ( ) => {
44
- queryClient . invalidateQueries ( { queryKey : [ "utbetaling" ] } ) ;
47
+ return queryClient . invalidateQueries ( { queryKey : [ "utbetaling" ] } ) ;
45
48
} ,
46
49
onError : ( error : ProblemDetail ) => {
47
50
throw error ;
@@ -50,29 +53,23 @@ export function DelutbetalingRow({ tilsagn, delutbetaling, ansatt }: Props) {
50
53
}
51
54
52
55
function content ( ) {
53
- if ( delutbetaling . frigjorTilsagn && ! godkjentUtbetaling )
56
+ if ( delutbetaling . frigjorTilsagn && ! godkjentUtbetaling ) {
54
57
return (
55
58
< Alert variant = "warning" >
56
59
Når denne utbetalingen godkjennes av beslutter vil det ikke lenger være mulig å gjøre
57
60
flere utbetalinger fra tilsagnet
58
61
</ Alert >
59
62
) ;
60
- else if ( godkjentUtbetaling )
63
+ } else if ( godkjentUtbetaling ) {
61
64
return (
62
65
< HStack gap = "4" >
63
- < Metadata
64
- horizontal
65
- header = "Behandlet av"
66
- verdi = { delutbetaling . opprettelse . behandletAv }
67
- />
68
- < Metadata
69
- horizontal
70
- header = "Besluttet av"
71
- verdi = { delutbetaling . opprettelse . besluttetAv }
72
- />
66
+ < Metadata horizontal header = "Behandlet av" verdi = { opprettelse . behandletAv } />
67
+ < Metadata horizontal header = "Besluttet av" verdi = { opprettelse . besluttetAv } />
73
68
</ HStack >
74
69
) ;
75
- else return null ;
70
+ } else {
71
+ return null ;
72
+ }
76
73
}
77
74
78
75
return (
@@ -93,7 +90,7 @@ export function DelutbetalingRow({ tilsagn, delutbetaling, ansatt }: Props) {
93
90
</ Table . DataCell >
94
91
< Table . DataCell > { formaterNOK ( delutbetaling . belop ) } </ Table . DataCell >
95
92
< Table . DataCell >
96
- < DelutbetalingTag type = { delutbetaling . type } />
93
+ < DelutbetalingTag status = { delutbetaling . status } />
97
94
</ Table . DataCell >
98
95
< Table . DataCell >
99
96
{ kanBeslutte && (
0 commit comments