import React from 'react'; import { GyldighetsRegistrerer, ledetekst, OppsummeringBlokk, OppsummeringPunkt, OppsummeringTabell, useOppsummering, VerdiEllerInfoMangler, } from '..'; import { validerSoknadsinformasjon } from '../validering/SoknadsinformasjonValidering'; import { TilbakemeldingForSteg } from './tilbakemelding/TilbakemeldingForSteg'; import { erUlikeStrings, hentKontakt } from './utils'; function SoknadsinformasjonOppsummering({ visMerknadEndringsgrunnlag = false, }: { visMerknadEndringsgrunnlag?: boolean; }) { const { id: soknadId, kunLesbar, soknad, forrigeSoknad, gyldighet, vegarbeid = {}, } = useOppsummering() as any; // TODO type opp; const redigeringsLenke = !kunLesbar && `#/${soknadId}/soknadinformasjon`; const valideringsfeil = !kunLesbar && validerSoknadsinformasjon(soknad); const plantypeTekst = plantypeTilTekst(vegarbeid.plantype); const markerEndretTittel = !!forrigeSoknad && erUlikeStrings(soknad.prosjekttittel, forrigeSoknad.prosjekttittel); const markerEndretPlantype = !!forrigeSoknad && erUlikeStrings( soknad.vegarbeid.plantype, forrigeSoknad.vegarbeid?.plantype ); const kontaktperson = hentKontakt(vegarbeid.kontakter, 'KONTAKT_FOR_SOKER') || {}; return ( <> {soknad.prosjekttittel} {plantypeTekst} {gyldighet && ( )} ); } function erKontaktpersonEndret(kontaktperson, forrigeSoknad) { const kontaktpersonForrigeSoknad = hentKontakt( forrigeSoknad.vegarbeid?.kontakter, 'KONTAKT_FOR_SOKER' ); return ( !!kontaktpersonForrigeSoknad && (erUlikeStrings( kontaktperson.fornavn, kontaktpersonForrigeSoknad.fornavn ) || erUlikeStrings( kontaktperson.etternavn, kontaktpersonForrigeSoknad.etternavn ) || erUlikeStrings( kontaktperson.kontaktinformasjon?.mobiltelefonnummer, kontaktpersonForrigeSoknad.kontaktinformasjon ?.mobiltelefonnummer ) || erUlikeStrings( kontaktperson.kontaktinformasjon?.epostadresse, kontaktpersonForrigeSoknad.kontaktinformasjon?.epostadresse )) ); } function KontaktForSoknadOppsummering({ kontaktperson, markerEndring }) { const overskrifter = [ 'arbeidsvarsling.soknad.Kontaktinformasjon.aktor.fornavn', 'arbeidsvarsling.soknad.Kontaktinformasjon.aktor.etternavn', 'arbeidsvarsling.soknad.Kontaktinformasjon.aktor.telefonnummer', 'arbeidsvarsling.soknad.Kontaktinformasjon.aktor.epost', ].map(ledetekst.getTekst); const kontaktinfo = kontaktperson.kontaktinformasjon || {}; const data = [ { kolonner: [ kontaktperson.fornavn, kontaktperson.etternavn, kontaktinfo.mobiltelefonnummer, kontaktinfo.epostadresse, ], markerEndring: markerEndring, }, ]; return ( ); } function plantypeTilTekst(plantype) { if (plantype) { return ledetekst.getTekst( `arbeidsvarsling.soknad.Soknadsinformasjon.plantype.${plantype}` ); } return ''; } export { SoknadsinformasjonOppsummering };