Skip to content

Commit 19dbdbb

Browse files
committed
Rename websaknummer -> sakarkivNummer
Public360 i frontend
1 parent 334eefe commit 19dbdbb

File tree

23 files changed

+68
-67
lines changed

23 files changed

+68
-67
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
package no.nav.mulighetsrommet.model
2+
3+
import kotlinx.serialization.Serializable
4+
5+
private val SAKARKIV_NUMMER_REGEX = "^(\\d{2,4})/(\\d+)$".toRegex()
6+
7+
@Serializable
8+
@JvmInline
9+
value class SakarkivNummer(val value: String) {
10+
init {
11+
require(SAKARKIV_NUMMER_REGEX.matches(value)) {
12+
"The format of 'sakarkiv_nummer' is invalid. Expected '{year}/{id}'."
13+
}
14+
}
15+
}

common/domain/src/main/kotlin/no/nav/mulighetsrommet/model/Websaknummer.kt

-15
This file was deleted.

frontend/mr-admin-flate/src/components/avtaler/AvtaleFormConst.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ export function defaultAvtaleData(
5454
startDato: avtale?.startDato ? avtale.startDato : undefined,
5555
sluttDato: avtale?.sluttDato ? avtale.sluttDato : undefined,
5656
},
57-
websaknummer: avtale?.websaknummer,
57+
sakarkivNummer: avtale?.sakarkivNummer,
5858
prisbetingelser: avtale?.prisbetingelser ?? undefined,
5959
beskrivelse: avtale?.beskrivelse ?? null,
6060
faneinnhold: avtale?.faneinnhold ?? null,

frontend/mr-admin-flate/src/components/avtaler/AvtaleFormContainer.tsx

+1-1
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ export function AvtaleFormContainer({
8181
id: avtale?.id ?? uuidv4(),
8282
navEnheter: data.navEnheter.concat(data.navRegioner),
8383
avtalenummer: avtale?.avtalenummer || null,
84-
websaknummer: data.websaknummer || null,
84+
sakarkivNummer: data.sakarkivNummer || null,
8585
arrangor:
8686
data.arrangorHovedenhet && data.arrangorUnderenheter
8787
? {

frontend/mr-admin-flate/src/components/avtaler/AvtaleFormDetaljer.tsx

+5-5
Original file line numberDiff line numberDiff line change
@@ -128,13 +128,13 @@ export function AvtaleFormDetaljer({ tiltakstyper, ansatt, enheter, avtale }: Pr
128128
<TextField
129129
size="small"
130130
placeholder="åå/12345"
131-
error={errors.websaknummer?.message}
131+
error={errors.sakarkivNummer?.message}
132132
label={
133133
<LabelWithHelpText
134-
label={avtaletekster.websaknummerLabel}
135-
helpTextTitle={avtaletekster.websaknummerHelpTextTitle}
134+
label={avtaletekster.sakarkivNummerLabel}
135+
helpTextTitle={avtaletekster.sakarkivNummerHelpTextTitle}
136136
>
137-
I Websak skal det opprettes tre typer arkivsaker med egne saksnummer:
137+
I Public360 skal det opprettes tre typer arkivsaker med egne saksnummer:
138138
<ol>
139139
<li>En sak for hver anskaffelse.</li>
140140
<li>En sak for kontrakt/avtale med hver leverandør (Avtalesaken).</li>
@@ -145,7 +145,7 @@ export function AvtaleFormDetaljer({ tiltakstyper, ansatt, enheter, avtale }: Pr
145145
Det er <b>2) Saksnummeret til Avtalesaken</b> som skal refereres til herfra.
146146
</LabelWithHelpText>
147147
}
148-
{...register("websaknummer")}
148+
{...register("sakarkivNummer")}
149149
/>
150150
</HGrid>
151151
</FormGroup>

frontend/mr-admin-flate/src/components/ledetekster/avtaleLedetekster.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ export const avtaletekster = {
1414
prisOgBetalingLabel: "Pris- og betalingsbetingelser",
1515
administratorerForAvtalenLabel: "Administratorer for avtalen",
1616
ingenAdministratorerSattLabel: "Ingen administratorer satt for avtalen",
17-
websaknummerLabel: "Saksnummer til Avtalesaken i Websak",
18-
websaknummerHelpTextTitle: "Hvilket saksnummer er dette?",
17+
sakarkivNummerLabel: "Saksnummer til Avtalesaken i Public360",
18+
sakarkivNummerHelpTextTitle: "Hvilket saksnummer er dette?",
1919
fylkessamarbeidLabel: "Fylkessamarbeid",
2020
navRegionerLabel: "Nav-regioner",
2121
navEnheterLabel: "Nav-enheter (kontorer)",

frontend/mr-admin-flate/src/components/redaksjoneltInnhold/AvtaleSchema.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export const AvtaleSchema = z
5050
customOpsjonsmodellNavn: z.string().optional().nullable(),
5151
}),
5252
administratorer: z.string().array().min(1, "Du må velge minst én administrator"),
53-
websaknummer: z
53+
sakarkivNummer: z
5454
.string()
5555
.nullable()
5656
.refine(
@@ -59,7 +59,7 @@ export const AvtaleSchema = z
5959
return /^\d{2}\/\d+$/.test(value);
6060
},
6161
{
62-
message: "Websaknummer må være på formatet 'år/løpenummer'",
62+
message: "Saksnummer må være på formatet 'år/løpenummer'",
6363
},
6464
),
6565
prisbetingelser: z.string().optional(),
@@ -76,7 +76,7 @@ export const AvtaleSchema = z
7676
.superRefine((data, ctx) => {
7777
if (
7878
[Avtaletype.AVTALE, Avtaletype.RAMMEAVTALE].includes(data.avtaletype) &&
79-
!data.websaknummer
79+
!data.sakarkivNummer
8080
) {
8181
ctx.addIssue({
8282
code: z.ZodIssueCode.custom,

frontend/mr-admin-flate/src/mocks/fixtures/mock_avtaler.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ export const mockAvtaler: AvtaleDto[] = [
196196
},
197197
navn: "Avtale hos Kulinarisk akademi",
198198
avtalenummer: "2020#4929",
199-
websaknummer: "24/12345",
199+
sakarkivNummer: "24/12345",
200200
arrangor: {
201201
...mockArrangorer.data[0],
202202
slettet: false,

frontend/mr-admin-flate/src/pages/avtaler/AvtaleDetaljer.tsx

+3-3
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ export function AvtaleDetaljer({ avtale }: Props) {
3434
startDato,
3535
sluttDato,
3636
administratorer,
37-
websaknummer,
37+
sakarkivNummer,
3838
kontorstruktur,
3939
arenaAnsvarligEnhet,
4040
arrangor,
@@ -53,8 +53,8 @@ export function AvtaleDetaljer({ avtale }: Props) {
5353

5454
<Bolk aria-label="Eksterne referanser">
5555
<Metadata header={avtaletekster.avtalenummerLabel} verdi={avtalenummer} />
56-
{websaknummer ? (
57-
<Metadata header={avtaletekster.websaknummerLabel} verdi={websaknummer} />
56+
{sakarkivNummer ? (
57+
<Metadata header={avtaletekster.sakarkivNummerLabel} verdi={sakarkivNummer} />
5858
) : null}
5959
</Bolk>
6060

frontend/mr-admin-flate/tests/adminflate.avtale.spec.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ const fyllInnAvtale = async (page: Page) => {
1111
const heading = page.locator("h2");
1212
await test.expect(heading).toHaveText("Opprett ny avtale");
1313
await locateAndFillInput(page, "navn", "Testavtale fra Playwright");
14-
await locateAndFillInput(page, "websaknummer", "24/123");
14+
await locateAndFillInput(page, "sakarkivNummer", "24/123");
1515
await locateAndFillComboboxFirst(page, "input#tiltakstype", "AFT");
1616
await page.fill('.navds-form-field:has(label:text("Startdato")) input', "01.02.2025");
1717
await locateAndFillComboboxFirst(page, "input#tiltakstype", "AFT");

mulighetsrommet-api/src/main/kotlin/no/nav/mulighetsrommet/api/avtale/AvtaleRoutes.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ data class AvtaleRequest(
3333
val tiltakstypeId: UUID,
3434
val arrangor: Arrangor?,
3535
val avtalenummer: String?,
36-
val websaknummer: Websaknummer?,
36+
val sakarkivNummer: SakarkivNummer?,
3737
@Serializable(with = LocalDateSerializer::class)
3838
val startDato: LocalDate,
3939
@Serializable(with = LocalDateSerializer::class)

mulighetsrommet-api/src/main/kotlin/no/nav/mulighetsrommet/api/avtale/AvtaleService.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ private fun toAvtaleDbo(
239239
id = id,
240240
navn = navn,
241241
avtalenummer = avtalenummer,
242-
websaknummer = websaknummer,
242+
sakarkivNummer = sakarkivNummer,
243243
tiltakstypeId = tiltakstypeId,
244244
arrangor = arrangor,
245245
startDato = startDato,

mulighetsrommet-api/src/main/kotlin/no/nav/mulighetsrommet/api/avtale/AvtaleValidator.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -104,8 +104,8 @@ class AvtaleValidator(
104104
)
105105
}
106106

107-
if (avtale.avtaletype.kreverWebsaknummer() && avtale.websaknummer == null) {
108-
add(FieldError.of(AvtaleDbo::websaknummer, "Du må skrive inn Websaknummer til avtalesaken"))
107+
if (avtale.avtaletype.kreverWebsaknummer() && avtale.sakarkivNummer == null) {
108+
add(FieldError.of(AvtaleDbo::sakarkivNummer, "Du må skrive inn Websaknummer til avtalesaken"))
109109
}
110110

111111
if (avtale.arrangor?.underenheter?.isEmpty() == true) {

mulighetsrommet-api/src/main/kotlin/no/nav/mulighetsrommet/api/avtale/db/AvtaleDbo.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ data class AvtaleDbo(
1111
val navn: String,
1212
val tiltakstypeId: UUID,
1313
val avtalenummer: String?,
14-
val websaknummer: Websaknummer?,
14+
val sakarkivNummer: SakarkivNummer?,
1515
// @todo: Make nullable
1616
val arrangor: Arrangor?,
1717
val startDato: LocalDate,

mulighetsrommet-api/src/main/kotlin/no/nav/mulighetsrommet/api/avtale/db/AvtaleQueries.kt

+5-5
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ class AvtaleQueries(private val session: Session) {
4242
navn,
4343
tiltakstype_id,
4444
avtalenummer,
45-
websaknummer,
45+
sakarkiv_nummer,
4646
arrangor_hovedenhet_id,
4747
start_dato,
4848
slutt_dato,
@@ -62,7 +62,7 @@ class AvtaleQueries(private val session: Session) {
6262
:navn,
6363
:tiltakstype_id::uuid,
6464
:avtalenummer,
65-
:websaknummer,
65+
:sakarkiv_nummer,
6666
:arrangor_hovedenhet_id,
6767
:start_dato,
6868
:slutt_dato,
@@ -81,7 +81,7 @@ class AvtaleQueries(private val session: Session) {
8181
navn = excluded.navn,
8282
tiltakstype_id = excluded.tiltakstype_id,
8383
avtalenummer = excluded.avtalenummer,
84-
websaknummer = excluded.websaknummer,
84+
sakarkiv_nummer = excluded.sakarkiv_nummer,
8585
arrangor_hovedenhet_id = excluded.arrangor_hovedenhet_id,
8686
start_dato = excluded.start_dato,
8787
slutt_dato = excluded.slutt_dato,
@@ -439,7 +439,7 @@ class AvtaleQueries(private val session: Session) {
439439
"navn" to navn,
440440
"tiltakstype_id" to tiltakstypeId,
441441
"avtalenummer" to avtalenummer,
442-
"websaknummer" to websaknummer?.value,
442+
"sakarkiv_nummer" to sakarkivNummer?.value,
443443
"arrangor_hovedenhet_id" to arrangor?.hovedenhet,
444444
"start_dato" to startDato,
445445
"slutt_dato" to sluttDato,
@@ -540,7 +540,7 @@ class AvtaleQueries(private val session: Session) {
540540
id = uuid("id"),
541541
navn = string("navn"),
542542
avtalenummer = stringOrNull("avtalenummer"),
543-
websaknummer = stringOrNull("websaknummer")?.let { Websaknummer(it) },
543+
sakarkivNummer = stringOrNull("sakarkiv_nummer")?.let { SakarkivNummer(it) },
544544
startDato = startDato,
545545
sluttDato = sluttDato,
546546
opphav = ArenaMigrering.Opphav.valueOf(string("opphav")),

mulighetsrommet-api/src/main/kotlin/no/nav/mulighetsrommet/api/avtale/model/AvtaleDto.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ data class AvtaleDto(
2727
val tiltakstype: Tiltakstype,
2828
val navn: String,
2929
val avtalenummer: String?,
30-
val websaknummer: Websaknummer?,
30+
val sakarkivNummer: SakarkivNummer?,
3131
val arrangor: ArrangorHovedenhet?,
3232
@Serializable(with = LocalDateSerializer::class)
3333
val startDato: LocalDate,
@@ -110,7 +110,7 @@ fun AvtaleDto.toDbo(): AvtaleDbo {
110110
navn = navn,
111111
tiltakstypeId = tiltakstype.id,
112112
avtalenummer = avtalenummer,
113-
websaknummer = websaknummer,
113+
sakarkivNummer = sakarkivNummer,
114114
arrangor = arrangor?.id?.let {
115115
AvtaleDbo.Arrangor(
116116
hovedenhet = it,

mulighetsrommet-api/src/main/kotlin/no/nav/mulighetsrommet/api/tilsagn/OkonomiBestillingService.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ class OkonomiBestillingService(
132132
arrangor = arrangor,
133133
kostnadssted = NavEnhetNummer(tilsagn.kostnadssted.enhetsnummer),
134134
// TODO: håndter avtalenummer fra p360, eller erstatter til Mercell
135-
avtalenummer = avtale.websaknummer?.value,
135+
avtalenummer = avtale.sakarkivNummer?.value,
136136
belop = tilsagn.beregning.output.belop,
137137
periode = tilsagn.periode,
138138
behandletAv = opprettelse.behandletAv.toOkonomiPart(),

mulighetsrommet-api/src/main/resources/db/migration/R__view_avtale_admin.sql

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ select avtale.id,
77
avtale.fts,
88
avtale.navn,
99
coalesce(avtale.avtalenummer, avtale.lopenummer) as avtalenummer,
10-
avtale.websaknummer,
10+
avtale.sakarkiv_nummer,
1111
avtale.start_dato,
1212
avtale.slutt_dato,
1313
avtale.opsjon_maks_varighet,
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
alter table avtale rename column websaknummer to sakarkiv_nummer;

mulighetsrommet-api/src/main/resources/web/openapi.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -2795,7 +2795,7 @@ components:
27952795
type: string
27962796
avtalenummer:
27972797
type: string
2798-
websaknummer:
2798+
sakarkivNummer:
27992799
type: [string, "null"]
28002800
arrangor:
28012801
$ref: "#/components/schemas/ArrangorHovedenhet"
@@ -2885,7 +2885,7 @@ components:
28852885
format: UUID
28862886
avtalenummer:
28872887
type: [string, "null"]
2888-
websaknummer:
2888+
sakarkivNummer:
28892889
type: [string, "null"]
28902890
arrangor:
28912891
anyOf:

mulighetsrommet-api/src/test/kotlin/no/nav/mulighetsrommet/api/avtale/AvtaleValidatorTest.kt

+7-7
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ class AvtaleValidatorTest : FunSpec({
5454
kontaktpersoner = emptyList(),
5555
),
5656
avtalenummer = "123456",
57-
websaknummer = Websaknummer("24/1234"),
57+
sakarkivNummer = SakarkivNummer("24/1234"),
5858
startDato = LocalDate.now().minusDays(1),
5959
sluttDato = LocalDate.now().plusMonths(1),
6060
administratorer = listOf(NavAnsattFixture.ansatt1.navIdent),
@@ -303,22 +303,22 @@ class AvtaleValidatorTest : FunSpec({
303303
validator.validate(gruppeAmoOffentlig, null).shouldBeRight()
304304
}
305305

306-
test("Websak-referanse må være med når avtalen er avtale eller rammeavtale") {
306+
test("SakarkivNummer må være med når avtalen er avtale eller rammeavtale") {
307307
val validator = createValidator()
308308

309-
val rammeavtale = AvtaleFixtures.oppfolging.copy(avtaletype = Avtaletype.Rammeavtale, websaknummer = null)
309+
val rammeavtale = AvtaleFixtures.oppfolging.copy(avtaletype = Avtaletype.Rammeavtale, sakarkivNummer = null)
310310
validator.validate(rammeavtale, null).shouldBeLeft(
311-
listOf(FieldError("/websaknummer", "Du må skrive inn Websaknummer til avtalesaken")),
311+
listOf(FieldError("/sakarkivNummer", "Du må skrive inn Websaknummer til avtalesaken")),
312312
)
313313

314-
val avtale = AvtaleFixtures.oppfolging.copy(avtaletype = Avtaletype.Avtale, websaknummer = null)
314+
val avtale = AvtaleFixtures.oppfolging.copy(avtaletype = Avtaletype.Avtale, sakarkivNummer = null)
315315
validator.validate(avtale, null).shouldBeLeft(
316-
listOf(FieldError("/websaknummer", "Du må skrive inn Websaknummer til avtalesaken")),
316+
listOf(FieldError("/sakarkivNummer", "Du må skrive inn Websaknummer til avtalesaken")),
317317
)
318318

319319
val offentligOffentligSamarbeid = AvtaleFixtures.gruppeAmo.copy(
320320
avtaletype = Avtaletype.OffentligOffentlig,
321-
websaknummer = null,
321+
sakarkivNummer = null,
322322
amoKategorisering = AmoKategorisering.Studiespesialisering,
323323
)
324324
validator.validate(offentligOffentligSamarbeid, null).shouldBeRight()

mulighetsrommet-api/src/test/kotlin/no/nav/mulighetsrommet/api/avtale/OpsjonLoggValidatorTest.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ class OpsjonLoggValidatorTest : FunSpec({
2525
),
2626
navn = "Avtale for opsjoner",
2727
avtalenummer = "24/123",
28-
websaknummer = Websaknummer("24/1234"),
28+
sakarkivNummer = SakarkivNummer("24/1234"),
2929
arrangor = AvtaleDto.ArrangorHovedenhet(
3030
id = UUID.randomUUID(),
3131
organisasjonsnummer = Organisasjonsnummer("123456789"),

0 commit comments

Comments
 (0)