Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
matsbyfl committed Dec 6, 2024
2 parents a19f222 + c32e2af commit 0935916
Show file tree
Hide file tree
Showing 6 changed files with 51 additions and 33 deletions.
2 changes: 2 additions & 0 deletions client/src/oppgaveliste/Oppgaveliste.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ export function Oppgaveliste() {
return (
<Tildeling
oppgave={oppgave}
oppgaveVersjon={{ oppgaveId: oppgave.oppgaveId, versjon: oppgave.versjon }}
visTildelingKonfliktModalForSak={setVisTildelingKonfliktModalForSak}
onMutate={mutate}
/>
Expand Down Expand Up @@ -205,6 +206,7 @@ export function Oppgaveliste() {
return (
<MenyKnapp
sakId={oppgave.sakId}
oppgaveVersjon={{ oppgaveId: oppgave.oppgaveId, versjon: oppgave.versjon }}
status={oppgave.status}
tildeltSaksbehandler={oppgave.saksbehandler}
gåTilSak={true}
Expand Down
22 changes: 14 additions & 8 deletions client/src/oppgaveliste/kolonner/MenyKnapp.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -8,26 +8,28 @@ import { amplitude_taxonomy, logAmplitudeEvent } from '../../utils/amplitude'

import { useFortsettBehandling } from '../../hooks/useFortsettBehandling'
import { useInnloggetSaksbehandler } from '../../state/authentication'
import { OppgaveStatusType, Saksbehandler, Sakstype } from '../../types/types.internal'
import { OppgaveStatusType, OppgaveVersjon, Saksbehandler, Sakstype } from '../../types/types.internal'
import { useTildeling } from './useTildeling'
import { useOverførGosys } from '../../saksbilde/useOverførGosys'
import { OverførGosysModal } from '../../saksbilde/OverførGosysModal'

interface MenyKnappProps {
sakId: string
oppgaveVersjon?: OppgaveVersjon
status: OppgaveStatusType
tildeltSaksbehandler?: Saksbehandler
sakstype?: Sakstype
kanTildeles: boolean
gåTilSak?: boolean
knappeTekst?: string
knappeIkon?: any
setKonfliktModalOpen?: (val: string | undefined) => void
onMutate: (...args: any[]) => any
setKonfliktModalOpen?(val: string | undefined): void
onMutate(...args: any[]): any
}

export const MenyKnapp = ({
export function MenyKnapp({
sakId,
oppgaveVersjon = {},
status,
tildeltSaksbehandler,
kanTildeles,
Expand All @@ -37,7 +39,7 @@ export const MenyKnapp = ({
onMutate,
knappeTekst,
knappeIkon,
}: MenyKnappProps) => {
}: MenyKnappProps) {
const saksbehandler = useInnloggetSaksbehandler()
const { onTildel } = useTildeling({
sakId: sakId,
Expand All @@ -51,7 +53,11 @@ export const MenyKnapp = ({
})
const { onFortsettBehandling, isFetching: endrerStatus } = useFortsettBehandling({ sakId: sakId, gåTilSak: false })
const [isFetching, setIsFetching] = useState(false)
const { onOpen: visOverførGosys, ...overførGosys } = useOverførGosys(sakId, {}, 'barnebrillesak_overført_gosys_v1')
const { onOpen: visOverførGosys, ...overførGosys } = useOverførGosys(
sakId,
oppgaveVersjon,
'barnebrillesak_overført_gosys_v1'
)

const menyClick = (event: MouseEvent) => {
event.stopPropagation()
Expand Down Expand Up @@ -82,7 +88,7 @@ export const MenyKnapp = ({

if (!saksbehandler || isFetching) return
setIsFetching(true)
postTildeling(sakId, {}, true)
postTildeling(sakId, oppgaveVersjon, true)
.catch(() => setIsFetching(false))
.then(() => {
logAmplitudeEvent(amplitude_taxonomy.SAK_OVERTATT)
Expand All @@ -96,7 +102,7 @@ export const MenyKnapp = ({

if (!saksbehandler || isFetching) return
setIsFetching(true)
deleteFjernTildeling(sakId)
deleteFjernTildeling(sakId, oppgaveVersjon)
.catch(() => setIsFetching(false))
.then(() => {
logAmplitudeEvent(amplitude_taxonomy.SAK_FRIGITT)
Expand Down
50 changes: 28 additions & 22 deletions client/src/oppgaveliste/kolonner/Tildeling.tsx
Original file line number Diff line number Diff line change
@@ -1,34 +1,40 @@
import { memo } from 'react'

import { EllipsisCell, TekstCell } from '../../felleskomponenter/table/Celle'
import { Oppgave, Sakstype } from '../../types/types.internal'
import { Oppgave, OppgaveVersjon, Sakstype } from '../../types/types.internal'
import { IkkeTildelt } from './IkkeTildelt'

interface TildelingProps {
oppgave: Oppgave
oppgaveVersjon?: OppgaveVersjon
visTildelingKonfliktModalForSak: (val: string | undefined) => void
onMutate: ((...args: any[]) => any) | null
}

export const Tildeling = memo(({ oppgave, visTildelingKonfliktModalForSak, onMutate }: TildelingProps) => {
if (oppgave.saksbehandler || oppgave.kanTildeles) {
return (
<>
{oppgave.saksbehandler && <EllipsisCell minLength={15} value={oppgave.saksbehandler.navn} />}
{!oppgave.saksbehandler && oppgave.kanTildeles && (
<IkkeTildelt
sakId={oppgave.sakId}
gåTilSak={true}
onTildelingKonflikt={() => {
visTildelingKonfliktModalForSak(
oppgave.sakstype !== Sakstype.TILSKUDD ? `/sak/${oppgave.sakId}/hjelpemidler` : `/sak/${oppgave.sakId}`
)
if (onMutate) onMutate()
}}
/>
)}
</>
)
export const Tildeling = memo(
({ oppgave, oppgaveVersjon, visTildelingKonfliktModalForSak, onMutate }: TildelingProps) => {
if (oppgave.saksbehandler || oppgave.kanTildeles) {
return (
<>
{oppgave.saksbehandler && <EllipsisCell minLength={15} value={oppgave.saksbehandler.navn} />}
{!oppgave.saksbehandler && oppgave.kanTildeles && (
<IkkeTildelt
sakId={oppgave.sakId}
oppgaveVersjon={oppgaveVersjon}
gåTilSak={true}
onTildelingKonflikt={() => {
visTildelingKonfliktModalForSak(
oppgave.sakstype !== Sakstype.TILSKUDD
? `/sak/${oppgave.sakId}/hjelpemidler`
: `/sak/${oppgave.sakId}`
)
if (onMutate) onMutate()
}}
/>
)}
</>
)
}
return <TekstCell value="-" />
}
return <TekstCell value="-" />
})
)
1 change: 1 addition & 0 deletions client/src/saksbilde/barnebriller/Barnebrillesaksbilde.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ const BarnebrillesakContent = memo(() => {
<StatusTag sakStatus={sak.data.status} vedtakStatus={sak.data.vedtak?.status} />
<MenyKnapp
sakId={sak.data.sakId}
oppgaveVersjon={{ oppgaveId: sak.oppgave?.oppgaveId, versjon: sak.oppgave?.versjon }}
tildeltSaksbehandler={sak.data.saksbehandler}
status={sak.data.status}
kanTildeles={sak.kanTildeles}
Expand Down
6 changes: 3 additions & 3 deletions client/src/saksbilde/useBarnebrillesak.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { useParams } from 'react-router'
import useSwr from 'swr'

import type { BarnebrillesakResponse } from '../types/types.internal'
import { httpGet } from '../io/http'
import type { BarnebrillesakResponse } from '../types/types.internal'

interface DataResponse {
sak: BarnebrillesakResponse | undefined
sak?: BarnebrillesakResponse
isLoading: boolean
isError: any
mutate: (...args: any[]) => any
mutate(...args: any[]): any
}

// Duplisert frem til vi vet om de ulike sakstypene vil ha samme payload eller om det blir to ulike varianter/endepunkt
Expand Down
3 changes: 3 additions & 0 deletions client/src/types/types.internal.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ export interface SakResponse {

export interface BarnebrillesakResponse {
kanTildeles: boolean
oppgave?: OppgaveApiOppgave
data: Barnebrillesak
}

Expand Down Expand Up @@ -469,6 +470,8 @@ export interface Oppgave {
saksbehandler?: Saksbehandler
kanTildeles: boolean
hast?: Hast
oppgaveId?: string
versjon?: number
}

export interface OppgaveBruker {
Expand Down

0 comments on commit 0935916

Please sign in to comment.