From 5baa865e3782edde439d472c85d741444d35b1ec Mon Sep 17 00:00:00 2001 From: Sverre Blekastad Stensby Date: Tue, 5 Nov 2024 13:21:43 +0100 Subject: [PATCH] =?UTF-8?q?La=20til=20muligheten=20for=20"default"-navn=20?= =?UTF-8?q?p=C3=A5=20samarbeid.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Samarbeid/EndreSamarbeidModal.tsx | 9 +++-- .../Samarbeid/NyttSamarbeidModal.tsx | 36 +++++++++++++++---- .../VirksomhetOgSamarbeidsHeader.tsx | 1 + 3 files changed, 36 insertions(+), 10 deletions(-) diff --git a/client/src/Pages/Virksomhet/Samarbeid/EndreSamarbeidModal.tsx b/client/src/Pages/Virksomhet/Samarbeid/EndreSamarbeidModal.tsx index 5e74ac85a..c540b6e16 100644 --- a/client/src/Pages/Virksomhet/Samarbeid/EndreSamarbeidModal.tsx +++ b/client/src/Pages/Virksomhet/Samarbeid/EndreSamarbeidModal.tsx @@ -32,11 +32,12 @@ export const TextFieldStyled = styled(TextField)` width: 100%; `; -export const DetaljerWrapper = styled.div` +export const DetaljerWrapper = styled.div<{ $disabled?: boolean }>` display: flex; flex-direction: row; justify-content: space-between; gap: 0.5rem; + opacity: ${({ $disabled }) => ($disabled ? 0.25 : 1)}; `; interface EndreSamarbeidModalProps { @@ -46,6 +47,8 @@ interface EndreSamarbeidModalProps { iaSak: IASak; } +export const MAX_LENGDE_SAMARBEIDSNAVN = 25; + export const EndreSamarbeidModal = ({ open, setOpen, @@ -143,7 +146,7 @@ export const EndreSamarbeidModal = ({ {defaultNavnHvisTomt(samarbeid.navn)}" Husk, aldri skriv personopplysninger. - {antallTegn}/25 tegn + {antallTegn}/{MAX_LENGDE_SAMARBEIDSNAVN} tegn Navnet kan vises på Min Side Arbeidsgiver diff --git a/client/src/Pages/Virksomhet/Samarbeid/NyttSamarbeidModal.tsx b/client/src/Pages/Virksomhet/Samarbeid/NyttSamarbeidModal.tsx index 165d507f4..f77263572 100644 --- a/client/src/Pages/Virksomhet/Samarbeid/NyttSamarbeidModal.tsx +++ b/client/src/Pages/Virksomhet/Samarbeid/NyttSamarbeidModal.tsx @@ -1,5 +1,5 @@ import { IASak } from "../../../domenetyper/domenetyper"; -import { BodyShort, Button, Detail, Heading, Modal } from "@navikt/ds-react"; +import { BodyShort, Button, Checkbox, Detail, Heading, Modal } from "@navikt/ds-react"; import { StyledModal } from "../../../components/Modal/StyledModal"; import React, { useState } from "react"; @@ -8,24 +8,30 @@ import { useHentAktivSakForVirksomhet } from "../../../api/lydia-api/virksomhet" import { nyHendelsePåSak } from "../../../api/lydia-api/sak"; import { DetaljerWrapper, + MAX_LENGDE_SAMARBEIDSNAVN, ModalBodyInnholdGrid, TextFieldStyled, } from "./EndreSamarbeidModal"; import { useNavigate } from "react-router-dom"; import { useHentSamarbeid } from "../../../api/lydia-api/spørreundersøkelse"; +import { Virksomhet } from "../../../domenetyper/virksomhet"; interface NyttSamarbeidProps { iaSak: IASak; åpen: boolean; setÅpen: React.Dispatch>; + virksomhet: Virksomhet; } + export const NyttSamarbeidModal = ({ iaSak, åpen, setÅpen, + virksomhet, }: NyttSamarbeidProps) => { const [navn, setNavn] = useState(""); + const [brukVirksomhetsnavn, setBrukVirksomhetsnavn] = useState(false); const inputRef = React.useRef(null); const antallTegn = navn.length; const lukkModal = () => { @@ -38,10 +44,12 @@ export const NyttSamarbeidModal = ({ const { mutate: hentHistorikkPåNytt } = useHentSamarbeidshistorikk( iaSak.orgnr, ); - const { mutate: hentSamarbeidPåNytt } = useHentSamarbeid( + const { mutate: hentSamarbeidPåNytt, data: samarbeidData } = useHentSamarbeid( iaSak.orgnr, iaSak.saksnummer, ); + const samarbeidsnavnBasertPåVirksomhet = virksomhet.navn.length > MAX_LENGDE_SAMARBEIDSNAVN ? `${virksomhet.navn.substring(0, MAX_LENGDE_SAMARBEIDSNAVN - 3)}...` : virksomhet.navn; + const kanBrukeVirksomhetsnavn = samarbeidData?.find((s) => s.navn === samarbeidsnavnBasertPåVirksomhet) === undefined; const navigate = useNavigate(); const nyttSamarbeid = () => { @@ -82,6 +90,7 @@ export const NyttSamarbeidModal = ({ // Fokus på inputfeltet når modalen åpnes if (åpen) { inputRef.current?.focus(); + setBrukVirksomhetsnavn(false); } }, [åpen]); @@ -106,7 +115,20 @@ export const NyttSamarbeidModal = ({ Her kan du opprette og navngi ulike samarbeid med virksomheten. - + { + kanBrukeVirksomhetsnavn && ( + { + setBrukVirksomhetsnavn(!brukVirksomhetsnavn); + if (!brukVirksomhetsnavn) { + setNavn(samarbeidsnavnBasertPåVirksomhet); + } + }} + >Bruk virksomhetsnavn + ) + }
- - + Husk, aldri skriv personopplysninger. - {antallTegn}/25 tegn + {antallTegn}/{MAX_LENGDE_SAMARBEIDSNAVN} tegn Navnet kan vises på Min Side Arbeidsgiver diff --git a/client/src/Pages/Virksomhet/Virksomhetsoversikt/VirksomhetsinfoHeader/VirksomhetOgSamarbeidsHeader.tsx b/client/src/Pages/Virksomhet/Virksomhetsoversikt/VirksomhetsinfoHeader/VirksomhetOgSamarbeidsHeader.tsx index c9a44977a..ea128fb9e 100644 --- a/client/src/Pages/Virksomhet/Virksomhetsoversikt/VirksomhetsinfoHeader/VirksomhetOgSamarbeidsHeader.tsx +++ b/client/src/Pages/Virksomhet/Virksomhetsoversikt/VirksomhetsinfoHeader/VirksomhetOgSamarbeidsHeader.tsx @@ -132,6 +132,7 @@ export default function VirksomhetOgSamarbeidsHeader({ {iaSak && brukerErEierAvSak && (