Skip to content

Commit

Permalink
Wip Beslutter kan godkjenne 6 tilskuddsperioder
Browse files Browse the repository at this point in the history
  • Loading branch information
MagnusRom committed Nov 26, 2024
1 parent a3cdab3 commit d80aef8
Showing 1 changed file with 130 additions and 72 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ import { Periode, TilskuddsperiodeContext } from '@/BeslutterSide/BeslutterSide'
import { Returårsaker, TilskuddsPeriode } from '@/types/avtale';
import { tilskuddsperiodeReturÅrsakTekst } from '@/messages';
import TilskuddsperiodeReturModal from '@/BeslutterSide/beslutterPanel/TilskuddsperiodeVisAvslag';
import { set } from 'zod';
import moment from 'moment';

interface Props {
startAnimering: () => void;
Expand All @@ -25,6 +27,11 @@ const BeslutterTilskuddsPerioder: FunctionComponent<Props> = (props) => {
const [godkjennModalÅpen, setGodkjennModalÅpen] = useState<boolean>(false);
const gjeldendeTilskuddsperiodeRef = useRef<HTMLTableRowElement | null>(null);

const [viseFremITid, setViseFremITid] = useState<number>(0);
const [viseTilbakeITid, setViseTilbakeITid] = useState<number>(0);

//const [tilskudsperiodeListe, setTilskuddsperiodeListe] = useState<TilskuddsPeriode[]>([]);

const cls = BEMHelper('beslutter-tilskuddsperioder');
useEffect(() => {
if (gjeldendeTilskuddsperiodeRef.current) {
Expand All @@ -34,7 +41,15 @@ const BeslutterTilskuddsPerioder: FunctionComponent<Props> = (props) => {
});
}
}, []);

/*
useEffect(() => {
setTilskuddsperiodeListe(avtale.tilskuddPeriode.filter((tilskuddPeriode) => tilskuddPeriode.kanBehandles));
}, [])
/*
useEffect(() => {
setTilskuddsperiodeListe(avtale.tilskuddPeriode.filter((tilskuddPeriode) => tilskuddPeriode.kanBehandles));
}, [tilskudsperiodeListe])
*/
if (avtale.tilskuddPeriode.length < 1) return null;

const settStylingForTabellrad = (periode: TilskuddsPeriode): string => {
Expand Down Expand Up @@ -64,6 +79,28 @@ const BeslutterTilskuddsPerioder: FunctionComponent<Props> = (props) => {
);
};

console.log('viseFremITid', viseFremITid);
console.log('viseTilbakeITid', viseTilbakeITid);

/*
const tilskuddTilbakeITid = () => {
const seksMånderTilbake = (tilskudsperiodeListe[0].løpenummer - 6 < 1) ? 1 : (tilskudsperiodeListe[0].løpenummer - 6)
const leggtilTilskuddTilbakeITid = (avtale.tilskuddPeriode.filter((periode) => periode.løpenummer >= seksMånderTilbake && periode.løpenummer < tilskudsperiodeListe[0].løpenummer))
setTilskuddsperiodeListe([...leggtilTilskuddTilbakeITid, ...tilskudsperiodeListe])
console.log("tilskuddTilbakeITid")
}
*/

/*
const tilskuddFremITid = () => {
const seksMånderFrem = gjeldendeTilskuddsperiode ? gjeldendeTilskuddsperiode?.løpenummer + 6 : 0
console.log("tilskuddFremITid")
const leggtilTilskuddTilbakeITid = (avtale.tilskuddPeriode.filter((periode) => periode.løpenummer <= seksMånderFrem))
setTilskuddsperiodeListe([...tilskudsperiodeListe, ...leggtilTilskuddTilbakeITid])
}
*/
// console.log("tilskudsperiodeListe", tilskudsperiodeListe)

return (
<div className={cls.className}>
<Heading level="2" size="small" className={cls.element('tittel')}>
Expand All @@ -83,88 +120,109 @@ const BeslutterTilskuddsPerioder: FunctionComponent<Props> = (props) => {
</tr>
</thead>
<tbody>
{avtale.tilskuddPeriode.map((periode) => {
const gjeldende = periode.løpenummer === gjeldendeTilskuddsperiode?.løpenummer;
return (
<React.Fragment key={periode.id}>
<tr
className={cls.element(
'tilskuddsperiode-rad',
settStylingForTabellrad(periode),
)}
>
<td>{periode.løpenummer}</td>
<td
aria-label={`Startdato ${periode.startDato} og sluttdato ${periode.sluttDato}`}
>
{formatterPeriode(periode.startDato, periode.sluttDato, 'DD.MM.YY')}
</td>
<td>{formatterPenger(periode.beløp)}</td>
<td>{formatterProsent(periode.lonnstilskuddProsent)}</td>
<td>{formatterDato(periode.kanBesluttesFom, NORSK_DATO_FORMAT)}</td>
<td>{periode.status === 'GODKJENT' ? periode.enhet : enhet}</td>
<td>
<EtikettStatus
tilskuddsperiodestatus={periode.status}
refusjonStatus={periode.refusjonStatus}
godkjentAv={periode.godkjentAvNavIdent}
/>
</td>
</tr>
{!gjeldende && periode.status === 'AVSLÅTT' && (
<tr className={cls.element('knapp-row')}>
<td
colSpan={7}
className={cls.element('knapp-data', settStylingForTabellrad(periode))}
{gjeldendeTilskuddsperiode != undefined &&
avtale.tilskuddPeriode
.filter(
(tilskuddPeriode) =>
tilskuddPeriode.startDato <= gjeldendeTilskuddsperiode.startDato,
)
.map((periode) => {
const gjeldende = periode.løpenummer === gjeldendeTilskuddsperiode?.løpenummer;
return (
<React.Fragment key={periode.id}>
<tr
className={cls.element(
'tilskuddsperiode-rad',
settStylingForTabellrad(periode),
)}
>
{hentAvslattInfoTilskuddsperiode(periode)}
</td>
</tr>
)}
{gjeldende && (
<tr className={cls.element('knapp-row')} ref={gjeldendeTilskuddsperiodeRef}>
<td colSpan={7} className={cls.element('knapp-data')}>
<>
{periode.status === 'AVSLÅTT' &&
hentAvslattInfoTilskuddsperiode(periode)}
{periode.status === 'UBEHANDLET' && (
<td>{periode.løpenummer}</td>
<td
aria-label={`Startdato ${periode.startDato} og sluttdato ${periode.sluttDato}`}
>
{formatterPeriode(periode.startDato, periode.sluttDato, 'DD.MM.YY')}
</td>
<td>{formatterPenger(periode.beløp)}</td>
<td>{formatterProsent(periode.lonnstilskuddProsent)}</td>
<td>{formatterDato(periode.kanBesluttesFom, NORSK_DATO_FORMAT)}</td>
<td>{periode.status === 'GODKJENT' ? periode.enhet : enhet}</td>
<td>
<EtikettStatus
tilskuddsperiodestatus={periode.status}
refusjonStatus={periode.refusjonStatus}
godkjentAv={periode.godkjentAvNavIdent}
/>
</td>
</tr>
{!gjeldende && periode.status === 'AVSLÅTT' && (
<tr className={cls.element('knapp-row')}>
<td
colSpan={7}
className={cls.element(
'knapp-data',
settStylingForTabellrad(periode),
)}
>
{hentAvslattInfoTilskuddsperiode(periode)}
</td>
</tr>
)}
{gjeldende && (
<tr
className={cls.element('knapp-row')}
ref={gjeldendeTilskuddsperiodeRef}
>
<td colSpan={7} className={cls.element('knapp-data')}>
<>
<Button
disabled={!enhet || !periode.kanBehandles}
onClick={() => {
if (enhet) {
setGodkjennModalÅpen(true);
} else {
setVisEnhetFeil(true);
}
}}
>
Godkjenn tilskuddsperiode
</Button>
<HorizontalSpacer rem={1} />
<Button
variant="secondary"
onClick={() => setVisAvslag(true)}
>
Send i retur med forklaring
</Button>
{periode.status === 'AVSLÅTT' &&
hentAvslattInfoTilskuddsperiode(periode)}
{periode.status === 'UBEHANDLET' && (
<>
<Button
disabled={!enhet || !periode.kanBehandles}
onClick={() => {
if (enhet) {
setGodkjennModalÅpen(true);
} else {
setVisEnhetFeil(true);
}
}}
>
Godkjenn tilskuddsperiode
</Button>
<HorizontalSpacer rem={1} />
<Button
variant="secondary"
onClick={() => setVisAvslag(true)}
>
Send i retur med forklaring
</Button>
</>
)}
</>
)}
</>
</td>
</tr>
)}
</React.Fragment>
);
})}
</td>
</tr>
)}
</React.Fragment>
);
})}
</tbody>
</table>
<div style={{ display: 'flex', justifyContent: 'space-around', gap: '30px' }}>
<Button variant="secondary" onClick={() => setViseTilbakeITid(viseTilbakeITid + 3)}>
Se tilskudd tilbake i tid
</Button>
<Button variant="secondary" onClick={() => setViseFremITid(viseFremITid + 3)}>
Se tilskudd frem i tid
</Button>
</div>
</div>
<TilskuddsperiodeReturModal tiltakstype={avtale.tiltakstype} />
<BekreftelseModal
bekreftOnClick={async () => {
if (enhet) {
await godkjennTilskudd(enhet);
//setTilskuddsperiodeListe(avtale.tilskuddPeriode.filter((tilskuddPeriode) => tilskuddPeriode.kanBehandles));
setGodkjennModalÅpen(false);
}
}}
Expand Down

0 comments on commit d80aef8

Please sign in to comment.