diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/aareg/form/Form.tsx b/apps/dolly-frontend/src/main/js/src/components/fagsystem/aareg/form/Form.tsx
index 9818ee2c45f..9b438bfbfb7 100644
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/aareg/form/Form.tsx
+++ b/apps/dolly-frontend/src/main/js/src/components/fagsystem/aareg/form/Form.tsx
@@ -10,7 +10,7 @@ import { ArbeidsforholdForm } from '@/components/fagsystem/aareg/form/partials/a
import React from 'react'
import { useDollyFasteDataOrganisasjoner, useOrganisasjoner } from '@/utils/hooks/useOrganisasjoner'
import { useCurrentBruker } from '@/utils/hooks/useBruker'
-import { getEgneOrganisasjoner } from '@/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner'
+import { getEgneOrganisasjoner } from '@/utils/EgneOrganisasjoner'
export const aaregAttributt = 'aareg'
diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/aareg/form/partials/arbeidsforholdToggle.tsx b/apps/dolly-frontend/src/main/js/src/components/fagsystem/aareg/form/partials/arbeidsforholdToggle.tsx
index ad36a83f1c6..df1df4f056e 100644
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/aareg/form/partials/arbeidsforholdToggle.tsx
+++ b/apps/dolly-frontend/src/main/js/src/components/fagsystem/aareg/form/partials/arbeidsforholdToggle.tsx
@@ -4,7 +4,7 @@ import { Alert, ToggleGroup } from '@navikt/ds-react'
import { initialArbeidsgiverOrg, initialArbeidsgiverPers } from '../initialValues'
import { ArbeidsgiverTyper } from '@/components/fagsystem/aareg/AaregTypes'
import { useFormContext } from 'react-hook-form'
-import { EgneOrganisasjoner } from '@/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner'
+import { EgneOrganisasjoner } from '@/utils/EgneOrganisasjoner'
import Loading from '@/components/ui/loading/Loading'
import { OrganisasjonMedArbeidsforholdSelect } from '@/components/organisasjonSelect'
import { FormTextInput } from '@/components/ui/form/inputs/textInput/TextInput'
@@ -12,7 +12,7 @@ import { ArbeidsgiverIdent } from '@/components/fagsystem/aareg/form/partials/ar
import _ from 'lodash'
import { BestillingsveilederContext } from '@/components/bestillingsveileder/BestillingsveilederContext'
import { hentAaregEksisterendeData } from '@/components/fagsystem/aareg/form/utils'
-import { arbeidsgiverToggleValues } from '@/components/fagsystem/utils'
+import { arbeidsgiverToggleValues } from '@/utils/OrgUtils'
const ToggleArbeidsgiver = styled(ToggleGroup)`
display: grid;
diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/OrgMiljoeInfoVisning.tsx b/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/OrgMiljoeInfoVisning.tsx
deleted file mode 100644
index 90c3fc9a2f9..00000000000
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/OrgMiljoeInfoVisning.tsx
+++ /dev/null
@@ -1,36 +0,0 @@
-import React from 'react'
-import Icon from '@/components/ui/icon/Icon'
-import Loading from '@/components/ui/loading/Loading'
-
-type Props = {
- miljoer: string[]
- loading?: boolean
- error?: boolean
-}
-
-export const OrgMiljoeInfoVisning = ({ miljoer, loading = false, error = false }: Props) => {
- const harMiljoe = miljoer.length > 0
- return (
-
- {loading &&
}
- {!loading && error && (
-
-
- Feil oppsto i henting av organisasjon info
-
- )}
- {!loading && !error && (
-
-
- {harMiljoe
- ? 'Organisasjon funnet i miljø: ' + miljoer
- : 'Fant ikke organisasjon i noen miljø'}
-
- )}
-
- )
-}
diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/orgnrToggle.tsx b/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/orgnrToggle.tsx
index ae43d7c9560..c0c24fd5ec6 100644
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/orgnrToggle.tsx
+++ b/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/orgnrToggle.tsx
@@ -1,10 +1,7 @@
import React, { useEffect, useState } from 'react'
import { OrganisasjonTextSelect } from '@/components/fagsystem/brregstub/form/partials/organisasjonTextSelect'
import { OrganisasjonToggleGruppe } from '@/components/organisasjonSelect/OrganisasjonToggleGruppe'
-import {
- EgneOrganisasjoner,
- getEgneOrganisasjoner,
-} from '@/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner'
+import { EgneOrganisasjoner, getEgneOrganisasjoner } from '@/utils/EgneOrganisasjoner'
import { useDollyEnvironments } from '@/utils/hooks/useEnvironments'
import { OrganisasjonLoader } from '@/components/organisasjonSelect/OrganisasjonLoader'
import { UseFormReturn } from 'react-hook-form/dist/types'
@@ -12,7 +9,7 @@ import { useCurrentBruker } from '@/utils/hooks/useBruker'
import { useDollyFasteDataOrganisasjoner, useOrganisasjoner } from '@/utils/hooks/useOrganisasjoner'
import { ArbeidsgiverTyper } from '@/components/fagsystem/aareg/AaregTypes'
import Loading from '@/components/ui/loading/Loading'
-import { getOrgType } from '@/components/fagsystem/utils'
+import { getOrgType } from '@/utils/OrgUtils'
interface OrgnrToggleProps {
path: string
diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/inntektsmelding/form/partials/orgnrToogle.tsx b/apps/dolly-frontend/src/main/js/src/components/fagsystem/inntektsmelding/form/partials/orgnrToogle.tsx
index b0e92fc3d88..6da3a2b81bd 100644
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/inntektsmelding/form/partials/orgnrToogle.tsx
+++ b/apps/dolly-frontend/src/main/js/src/components/fagsystem/inntektsmelding/form/partials/orgnrToogle.tsx
@@ -2,16 +2,13 @@ import React, { useEffect, useState } from 'react'
import { OrganisasjonMedArbeidsforholdSelect } from '@/components/organisasjonSelect'
import { FormTextInput } from '@/components/ui/form/inputs/textInput/TextInput'
import { OrganisasjonToggleGruppe } from '@/components/organisasjonSelect/OrganisasjonToggleGruppe'
-import {
- EgneOrganisasjoner,
- getEgneOrganisasjoner,
-} from '@/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner'
+import { EgneOrganisasjoner, getEgneOrganisasjoner } from '@/utils/EgneOrganisasjoner'
import { UseFormReturn } from 'react-hook-form/dist/types'
import { useCurrentBruker } from '@/utils/hooks/useBruker'
import { useDollyFasteDataOrganisasjoner, useOrganisasjoner } from '@/utils/hooks/useOrganisasjoner'
import { ArbeidsgiverTyper } from '@/components/fagsystem/aareg/AaregTypes'
import Loading from '@/components/ui/loading/Loading'
-import { getOrgType } from '@/components/fagsystem/utils'
+import { getOrgType } from '@/utils/OrgUtils'
interface OrgnrToggleProps {
path: string
diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/inntektstub/form/partials/virksomhetToggle.tsx b/apps/dolly-frontend/src/main/js/src/components/fagsystem/inntektstub/form/partials/virksomhetToggle.tsx
index 724ea47d0ab..f86a8ad4db4 100644
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/inntektstub/form/partials/virksomhetToggle.tsx
+++ b/apps/dolly-frontend/src/main/js/src/components/fagsystem/inntektstub/form/partials/virksomhetToggle.tsx
@@ -3,10 +3,7 @@ import styled from 'styled-components'
import { ToggleGroup } from '@navikt/ds-react'
import { ArbeidsgiverTyper } from '@/components/fagsystem/aareg/AaregTypes'
import { useFormContext } from 'react-hook-form'
-import {
- EgneOrganisasjoner,
- getEgneOrganisasjoner,
-} from '@/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner'
+import { EgneOrganisasjoner, getEgneOrganisasjoner } from '@/utils/EgneOrganisasjoner'
import Loading from '@/components/ui/loading/Loading'
import { OrganisasjonMedArbeidsforholdSelect } from '@/components/organisasjonSelect'
import { FormTextInput } from '@/components/ui/form/inputs/textInput/TextInput'
@@ -19,11 +16,7 @@ import {
import { OrganisasjonMedMiljoeSelect } from '@/components/organisasjonSelect/OrganisasjonMedMiljoeSelect'
import { useBoolean } from 'react-use'
import { useDollyEnvironments } from '@/utils/hooks/useEnvironments'
-import {
- arbeidsgiverToggleValues,
- getOrgType,
- handleManualOrgChange,
-} from '@/components/fagsystem/utils'
+import { arbeidsgiverToggleValues, getOrgType, handleManualOrgChange } from '@/utils/OrgUtils'
const ToggleArbeidsgiver = styled(ToggleGroup)`
display: grid;
diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/skattekort/form/ArbeidsgiverToggle.tsx b/apps/dolly-frontend/src/main/js/src/components/fagsystem/skattekort/form/ArbeidsgiverToggle.tsx
index 4fcaa4d3b1a..9c385ccbb65 100644
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/skattekort/form/ArbeidsgiverToggle.tsx
+++ b/apps/dolly-frontend/src/main/js/src/components/fagsystem/skattekort/form/ArbeidsgiverToggle.tsx
@@ -9,18 +9,15 @@ import {
useFasteDataOrganisasjon,
useOrganisasjoner,
} from '@/utils/hooks/useOrganisasjoner'
-import {
- EgneOrganisasjoner,
- getEgneOrganisasjoner,
-} from '@/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner'
+import { EgneOrganisasjoner, getEgneOrganisasjoner } from '@/utils/EgneOrganisasjoner'
import { ArbeidsgiverTyper } from '@/components/fagsystem/aareg/AaregTypes'
import { useDollyEnvironments } from '@/utils/hooks/useEnvironments'
import { useBoolean } from 'react-use'
import Loading from '@/components/ui/loading/Loading'
-import { arbeidsgiverToggleValues, handleManualOrgChange } from '@/components/fagsystem/utils'
import { OrganisasjonMedArbeidsforholdSelect } from '@/components/organisasjonSelect'
import { OrganisasjonMedMiljoeSelect } from '@/components/organisasjonSelect/OrganisasjonMedMiljoeSelect'
import styled from 'styled-components'
+import { arbeidsgiverToggleValues, handleManualOrgChange } from '@/utils/OrgUtils'
const ToggleArbeidsgiver = styled(ToggleGroup)`
display: grid;
diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/utils.tsx b/apps/dolly-frontend/src/main/js/src/components/fagsystem/utils.tsx
index 96703ccb2d3..466901b1772 100644
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/utils.tsx
+++ b/apps/dolly-frontend/src/main/js/src/components/fagsystem/utils.tsx
@@ -1,8 +1,6 @@
import _ from 'lodash'
import { isAfter, isBefore, isEqual } from 'date-fns'
import { Relasjon } from '@/components/fagsystem/pdlf/PdlTypes'
-import { ArbeidsgiverTyper } from '@/components/fagsystem/aareg/AaregTypes'
-import { OrgserviceApi } from '@/service/Api'
export const testDatoFom = (val, tomPath, feilmelding = 'Dato må være før til-dato') => {
return val.test('is-before-tom', feilmelding, (value, testContext) => {
@@ -49,88 +47,3 @@ export const getRandomValue = (liste: Array) => {
const random = Math.floor(Math.random() * liste.length) //NOSONAR not used in secure contexts
return liste[random]
}
-
-//TODO: Hente ut alle org-relaterte greier i en egen fil?
-export const arbeidsgiverToggleValues = [
- {
- value: ArbeidsgiverTyper.felles,
- label: 'Felles organisasjoner',
- },
- {
- value: ArbeidsgiverTyper.egen,
- label: 'Egen organisasjon',
- },
- {
- value: ArbeidsgiverTyper.fritekst,
- label: 'Skriv inn org.nr.',
- },
- {
- value: ArbeidsgiverTyper.privat,
- label: 'Privat arbeidsgiver',
- },
-]
-
-export const handleManualOrgChange = (
- org: string,
- miljo: string,
- formMethods,
- path,
- setLoading,
- setSuccess,
- organisasjon,
- opplysningspliktigPath,
-) => {
- const validEnhetstyper = ['BEDR', 'AAFY']
- if (!org || !miljo) {
- return
- }
- formMethods.clearErrors(path)
- setLoading(true)
- setSuccess(false)
- OrgserviceApi.getOrganisasjonInfo(org, miljo)
- .then((response: { data: { enhetType: string; juridiskEnhet: any; orgnummer: any } }) => {
- setLoading(false)
- if (!validEnhetstyper.includes(response.data.enhetType)) {
- formMethods.setError(path, { message: 'Organisasjonen må være av type BEDR eller AAFY' })
- return
- }
- if (!response.data.juridiskEnhet) {
- if (organisasjon?.overenhet) {
- opplysningspliktigPath &&
- formMethods.setValue(`${opplysningspliktigPath}`, organisasjon.overenhet)
- } else {
- formMethods.setError(path, { message: 'Organisasjonen mangler juridisk enhet' })
- return
- }
- }
- setSuccess(true)
- opplysningspliktigPath &&
- response.data.juridiskEnhet &&
- formMethods.setValue(`${opplysningspliktigPath}`, response.data.juridiskEnhet)
- formMethods.setValue(`${path}`, response.data.orgnummer)
- })
- .catch(() => {
- setLoading(false)
- formMethods.setError(path, { message: 'Fant ikke organisasjonen i ' + miljo })
- })
-}
-
-export const getOrgType = (orgnr: string, fasteOrganisasjoner: any, egneOrganisasjoner: any) => {
- if (
- !orgnr ||
- orgnr === '' ||
- fasteOrganisasjoner
- ?.map((organisasjon: any) => organisasjon?.orgnummer)
- ?.some((org: string) => org === orgnr)
- ) {
- return ArbeidsgiverTyper.felles
- } else if (
- egneOrganisasjoner
- ?.map((organisasjon: any) => organisasjon?.orgnr)
- ?.some((org: string) => org === orgnr)
- ) {
- return ArbeidsgiverTyper.egen
- } else {
- return ArbeidsgiverTyper.fritekst
- }
-}
diff --git a/apps/dolly-frontend/src/main/js/src/components/searchField/SearchField.less b/apps/dolly-frontend/src/main/js/src/components/searchField/SearchField.less
index cae6c004a03..58ff1da5d80 100644
--- a/apps/dolly-frontend/src/main/js/src/components/searchField/SearchField.less
+++ b/apps/dolly-frontend/src/main/js/src/components/searchField/SearchField.less
@@ -16,7 +16,7 @@
}
svg {
- position: absolute;
+ position: inherit;
top: 6px;
right: 8px;
}
diff --git a/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner.tsx b/apps/dolly-frontend/src/main/js/src/utils/EgneOrganisasjoner.tsx
similarity index 86%
rename from apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner.tsx
rename to apps/dolly-frontend/src/main/js/src/utils/EgneOrganisasjoner.tsx
index 8723fd96f77..5767d62cf6a 100644
--- a/apps/dolly-frontend/src/main/js/src/components/fagsystem/brregstub/form/partials/EgneOrganisasjoner.tsx
+++ b/apps/dolly-frontend/src/main/js/src/utils/EgneOrganisasjoner.tsx
@@ -6,9 +6,10 @@ import { useCurrentBruker } from '@/utils/hooks/useBruker'
import { EgneOrgSelect } from '@/components/ui/form/inputs/select/EgneOrgSelect'
import { useOrganisasjoner } from '@/utils/hooks/useOrganisasjoner'
import { OrgforvalterApi } from '@/service/Api'
-import { OrgMiljoeInfoVisning } from '@/components/fagsystem/brregstub/form/partials/OrgMiljoeInfoVisning'
import { useFormContext } from 'react-hook-form'
import StyledAlert from '@/components/ui/alert/StyledAlert'
+import Loading from '@/components/ui/loading/Loading'
+import Icon from '@/components/ui/icon/Icon'
interface OrgProps {
path: string
@@ -19,6 +20,12 @@ interface OrgProps {
isDisabled?: boolean
}
+type Props = {
+ miljoer: string[]
+ loading?: boolean
+ error?: boolean
+}
+
const getAdresseWithAdressetype = (adresser: Adresse[], adressetype: string) => {
if (!adresser || adresser.length === 0) {
return []
@@ -62,6 +69,33 @@ const getJuridiskEnhet = (orgnr: string, enheter: Organisasjon[]) => {
return ''
}
+const OrgMiljoeInfoVisning = ({ miljoer, loading = false, error = false }: Props) => {
+ const harMiljoe = miljoer.length > 0
+ return (
+
+ {loading &&
}
+ {!loading && error && (
+
+
+ Feil oppsto i henting av organisasjon info
+
+ )}
+ {!loading && !error && (
+
+
+ {harMiljoe
+ ? 'Organisasjon funnet i miljø: ' + miljoer
+ : 'Fant ikke organisasjon i noen miljø'}
+
+ )}
+
+ )
+}
+
export const getEgneOrganisasjoner = (organisasjoner: Organisasjon[] | undefined) => {
if (!organisasjoner) {
return []
diff --git a/apps/dolly-frontend/src/main/js/src/utils/OrgUtils.tsx b/apps/dolly-frontend/src/main/js/src/utils/OrgUtils.tsx
new file mode 100644
index 00000000000..24d9379bcb9
--- /dev/null
+++ b/apps/dolly-frontend/src/main/js/src/utils/OrgUtils.tsx
@@ -0,0 +1,86 @@
+import { ArbeidsgiverTyper } from '@/components/fagsystem/aareg/AaregTypes'
+import { OrgserviceApi } from '@/service/Api'
+
+export const arbeidsgiverToggleValues = [
+ {
+ value: ArbeidsgiverTyper.felles,
+ label: 'Felles organisasjoner',
+ },
+ {
+ value: ArbeidsgiverTyper.egen,
+ label: 'Egen organisasjon',
+ },
+ {
+ value: ArbeidsgiverTyper.fritekst,
+ label: 'Skriv inn org.nr.',
+ },
+ {
+ value: ArbeidsgiverTyper.privat,
+ label: 'Privat arbeidsgiver',
+ },
+]
+
+export const getOrgType = (orgnr: string, fasteOrganisasjoner: any, egneOrganisasjoner: any) => {
+ if (
+ !orgnr ||
+ orgnr === '' ||
+ fasteOrganisasjoner
+ ?.map((organisasjon: any) => organisasjon?.orgnummer)
+ ?.some((org: string) => org === orgnr)
+ ) {
+ return ArbeidsgiverTyper.felles
+ } else if (
+ egneOrganisasjoner
+ ?.map((organisasjon: any) => organisasjon?.orgnr)
+ ?.some((org: string) => org === orgnr)
+ ) {
+ return ArbeidsgiverTyper.egen
+ } else {
+ return ArbeidsgiverTyper.fritekst
+ }
+}
+
+export const handleManualOrgChange = (
+ org: string,
+ miljo: string,
+ formMethods,
+ path,
+ setLoading,
+ setSuccess,
+ organisasjon,
+ opplysningspliktigPath,
+) => {
+ const validEnhetstyper = ['BEDR', 'AAFY']
+ if (!org || !miljo) {
+ return
+ }
+ formMethods.clearErrors(path)
+ setLoading(true)
+ setSuccess(false)
+ OrgserviceApi.getOrganisasjonInfo(org, miljo)
+ .then((response: { data: { enhetType: string; juridiskEnhet: any; orgnummer: any } }) => {
+ setLoading(false)
+ if (!validEnhetstyper.includes(response.data.enhetType)) {
+ formMethods.setError(path, { message: 'Organisasjonen må være av type BEDR eller AAFY' })
+ return
+ }
+ if (!response.data.juridiskEnhet) {
+ if (organisasjon?.overenhet) {
+ opplysningspliktigPath &&
+ formMethods.setValue(`${opplysningspliktigPath}`, organisasjon.overenhet)
+ } else {
+ formMethods.setError(path, { message: 'Organisasjonen mangler juridisk enhet' })
+ return
+ }
+ }
+ setSuccess(true)
+ opplysningspliktigPath &&
+ response.data.juridiskEnhet &&
+ formMethods.setValue(`${opplysningspliktigPath}`, response.data.juridiskEnhet)
+ formMethods.setValue(`${path}`, response.data.orgnummer)
+ })
+ .catch(() => {
+ setLoading(false)
+ formMethods.setError(path, { message: 'Fant ikke organisasjonen i ' + miljo })
+ })
+}