diff --git a/src/services/openklant2/service.ts b/src/services/openklant2/service.ts index eea042b35..97bb1678a 100644 --- a/src/services/openklant2/service.ts +++ b/src/services/openklant2/service.ts @@ -24,6 +24,7 @@ import { DigitaalAdresTypes, type OnderwerpObjectPostModel, type Betrokkene, + CodeSoortObjectId, } from "./types"; import type { ContactverzoekData } from "../../features/contact/components/types"; @@ -715,7 +716,7 @@ async function mapPartijToKlant( ?.filter((x) => x.adres && x.soortDigitaalAdres === type) .map((x) => x.adres || "") || []; - const getIdentificator = (type: { codeSoortObjectId: string }) => + const getIdentificator = (type: { codeSoortObjectId: CodeSoortObjectId }) => identificatoren?.find( (x) => x?.partijIdentificator?.objectId && diff --git a/src/services/openklant2/types.ts b/src/services/openklant2/types.ts index 775dcb209..54bd24df1 100644 --- a/src/services/openklant2/types.ts +++ b/src/services/openklant2/types.ts @@ -166,33 +166,53 @@ export enum DigitaalAdresTypes { overig = "overig", } +export enum CodeRegister { + brp = "brp", + hr = "hr", + overig = "overig", +} + +export enum CodeObjecttype { + natuurlijkPersoon = "natuurlijkPersoon", + vestiging = "vestiging", + nietNatuurlijkPersoon = "nietNatuurlijkPersoon", + overig = "overig", +} + +export enum CodeSoortObjectId { + bsn = "bsn", + kvkNummer = "kvkNummer", + rsin = "rsin", + vestigingsnummer = "vestigingsnummer", + overig = "overig", +} + export type IdentificatorType = { - codeRegister: string; - codeSoortObjectId: string; - codeObjecttype: string; + codeRegister: CodeRegister; + codeSoortObjectId: CodeSoortObjectId; + codeObjecttype: CodeObjecttype; }; -// TODO in toekomstige story: waardes overleggen met Maykin en INFO export const identificatorTypes = { persoon: { - codeRegister: "brp", - codeSoortObjectId: "bsn", - codeObjecttype: "inp", + codeRegister: CodeRegister.brp, + codeSoortObjectId: CodeSoortObjectId.bsn, + codeObjecttype: CodeObjecttype.natuurlijkPersoon, }, vestiging: { - codeRegister: "hr", - codeSoortObjectId: "vtn", - codeObjecttype: "vst", + codeRegister: CodeRegister.hr, + codeSoortObjectId: CodeSoortObjectId.vestigingsnummer, + codeObjecttype: CodeObjecttype.vestiging, }, nietNatuurlijkPersoonRsin: { - codeRegister: "hr", - codeSoortObjectId: "rsin", - codeObjecttype: "nnp", + codeRegister: CodeRegister.hr, + codeSoortObjectId: CodeSoortObjectId.rsin, + codeObjecttype: CodeObjecttype.nietNatuurlijkPersoon, }, nietNatuurlijkPersoonKvkNummer: { - codeRegister: "hr", - codeSoortObjectId: "kvk", - codeObjecttype: "nnp", + codeRegister: CodeRegister.hr, + codeSoortObjectId: CodeSoortObjectId.kvkNummer, + codeObjecttype: CodeObjecttype.nietNatuurlijkPersoon, }, } satisfies Record;