From 6f09828dcc649574b5511aa3959317d11721cfa2 Mon Sep 17 00:00:00 2001 From: Remko Date: Tue, 16 Apr 2024 11:53:39 +0200 Subject: [PATCH] build fix --- pages/extra/index.tsx | 58 ++++-- pages/gateway-login/index.tsx | 2 +- pages/persoonsgegevens/[person].tsx | 193 ++++++++++-------- pages/voorgenomen-huwelijk/checken.tsx | 4 +- pages/voorgenomen-huwelijk/getuigen/index.tsx | 24 +-- .../huwelijksplanner/PageFooterTemplate.tsx | 2 +- src/openapi/openapi.yaml | 88 +++++++- 7 files changed, 238 insertions(+), 133 deletions(-) diff --git a/pages/extra/index.tsx b/pages/extra/index.tsx index 44ca73d1..1e183367 100644 --- a/pages/extra/index.tsx +++ b/pages/extra/index.tsx @@ -53,33 +53,52 @@ export default function MultistepForm1() { const certificateRadioName = "marriage-certificate-kind"; const noCertificateId = useId(); + const getCosts = (id: any) => { + switch (id) { + case "998206bc-d530-4291-89eb-02ebe21a7289": + return parseFloat(marriageOptions.reservation?.["ceremony-price-amount"] ?? "0") + 32.5; + case "22f40941-72ff-4825-87f4-1a67d6daf7f2": + return parseFloat(marriageOptions.reservation?.["ceremony-price-amount"] ?? "0") + 32.5; + case "c8c733e1-13c8-4d96-a388-de30d787f15b": + return parseFloat(marriageOptions.reservation?.["ceremony-price-amount"] ?? "0") + 30; + default: + return parseFloat(marriageOptions.reservation?.["ceremony-price-amount"] ?? "0") + 0; + } + }; + const onMarriageCertificateKindSubmit = (formData: FormData) => { if (formData["marriage-certificate-kind"] === "none") { push("/voorgenomen-huwelijk/checken"); return; } + const test = getCosts(formData).toString(); + if (!reservation) return; setSaving(true); - HuwelijkService.huwelijkPatchItem({ - id: marriageOptions.id as string, - requestBody: { - producten: [formData["marriage-certificate-kind"]], + setMarriageOptions({ + ...marriageOptions, + reservation: { + ...reservation, + "ceremony-price-amount": test, }, - }) - .then(({ kosten }) => { - setMarriageOptions({ - ...marriageOptions, - reservation: { - ...reservation, - "ceremony-price-amount": kosten ? kosten.replace("EUR ", "") : "-", - }, - }); - push("/voorgenomen-huwelijk/checken"); - }) - .finally(() => setSaving(false)); + }); + + setSaving(false); + push("/voorgenomen-huwelijk/checken"); + + // HuwelijkService.huwelijkPatchItem({ + // id: marriageOptions.id as string, + // requestBody: { + // producten: [formData["marriage-certificate-kind"]], + // }, + // }) + // .then(({ kosten }) => { + + // }) + // .finally(() => setSaving(false)); }; return ( @@ -152,12 +171,7 @@ export default function MultistepForm1() { )} - diff --git a/pages/gateway-login/index.tsx b/pages/gateway-login/index.tsx index 11b51a39..c15504b9 100644 --- a/pages/gateway-login/index.tsx +++ b/pages/gateway-login/index.tsx @@ -23,7 +23,7 @@ const GatewayLogin: NextPage = () => { __request(OpenAPI, { method: "POST", - url: "/users/login", + url: "/api/users/login", body: data, mediaType: "application/json", }) diff --git a/pages/persoonsgegevens/[person].tsx b/pages/persoonsgegevens/[person].tsx index fbb2f7b0..52f184b2 100644 --- a/pages/persoonsgegevens/[person].tsx +++ b/pages/persoonsgegevens/[person].tsx @@ -27,6 +27,7 @@ import { serverSideTranslations } from "next-i18next/serverSideTranslations"; import React, { ChangeEventHandler, useCallback, useContext, useEffect, useId, useRef, useState } from "react"; import { useForm, UseFormRegister } from "react-hook-form"; import Skeleton from "react-loading-skeleton"; +import { v4 as uuidv4 } from "uuid"; import { Aside, Checkbox2, PageContentMain, ReservationCard } from "../../src/components"; import { AddressDataList } from "../../src/components/huwelijksplanner/AddressDataList"; import { PageFooterTemplate } from "../../src/components/huwelijksplanner/PageFooterTemplate"; @@ -38,7 +39,6 @@ import { resolveEmbedded } from "../../src/embedded"; import { AssentService, HuwelijkService } from "../../src/generated"; import { useIngeschrevenpersoonGetByBsn } from "../../src/hooks/useIngeschrevenpersoonGetByBsn"; import { getBsnFromJWT } from "../../src/openapi/authentication"; -import { v4 as uuidv4 } from "uuid"; export const getServerSideProps = async ({ locale }: { locale: string }) => ({ props: { @@ -99,16 +99,6 @@ export default function MultistepForm1() { }; useEffect(() => { - // console.log(loadingType) - // console.log(loadingCeremonie) - // console.log(loadingMoment) - // console.log(loadingAmbtenaar) - // console.log(loadingLocatie) - // console.log(loadingKosten) - // console.log(loadingPartner) - // console.log(!huwelijkId) - // console.log(loading) - if ( loadingType === true && loadingCeremonie === true && @@ -119,7 +109,7 @@ export default function MultistepForm1() { loadingPartner === true && !huwelijkId ) { - HuwelijkService.huwelijkGet(huwelijkIdCreate ?? " ").then((response: any) => { + HuwelijkService.huwelijkGet({ id: huwelijkIdCreate ?? " " }).then((response: any) => { if (!reservation) return; const partner = response.results.find( @@ -148,7 +138,7 @@ export default function MultistepForm1() { setLoading(false); }); } else { - !huwelijkId && setLoading(true); + if (!huwelijkId) setLoading(true); } }, [loadingType, loadingCeremonie, loadingMoment, loadingAmbtenaar, loadingLocatie, loadingKosten, loadingPartner]); @@ -179,70 +169,91 @@ export default function MultistepForm1() { startdatum: format(new Date(), "yyyy-MM-dd"), }; - HuwelijkService.huwelijkCreate(postHuwelijk) + HuwelijkService.huwelijkCreate({ requestBody: postHuwelijk }) .then((response) => { setHuwelijkIdCreate(response.id); // ID - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "a2f2bce4-3877-4ad9-833e-5241c3a71cab", - productId ?? "" - ).finally(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/a2f2bce4-3877-4ad9-833e-5241c3a71cab", + waarde: productId ?? "", + }, + }).finally(() => { setLoadingType(true); }); // Ceremonie - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "d63af89f-0ee7-4b26-b07d-0faf02d34b51", - reservation["ceremony-id"] ?? "" - ).finally(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/d63af89f-0ee7-4b26-b07d-0faf02d34b51", + waarde: reservation["ceremony-id"] ?? "", + }, + }).finally(() => { setLoadingCeremonie(true); }); // Moment - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "f81cb98c-233c-4b8d-9de3-4ecc93032012", - reservation["ceremony-start"] ?? "" - ).finally(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/f81cb98c-233c-4b8d-9de3-4ecc93032012", + waarde: reservation["ceremony-start"] ?? "", + }, + }).finally(() => { setLoadingMoment(true); }); // Ambtenaar - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "1f8e3903-ca20-4b34-a46a-aef0cc16eb19", - ambtenaar ?? "" - ).finally(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/1f8e3903-ca20-4b34-a46a-aef0cc16eb19", + waarde: ambtenaar ?? "", + }, + }).finally(() => { setLoadingAmbtenaar(true); }); // Location - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "745d85cc-8972-43b9-916e-c268bf87d750", - reservation["ceremony-location"] ?? "" - ).finally(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/745d85cc-8972-43b9-916e-c268bf87d750", + waarde: reservation["ceremony-location"] ?? "", + }, + }).finally(() => { setLoadingLocatie(true); }); // Kosten - HuwelijkService.huwelijkPostEigenschap( - huwelijkIdCreate ?? "", - "416de8b8-d5d1-4f44-9a1e-1846d552292c", - getCosts(reservation) ?? "" - ).finally(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${huwelijkIdCreate ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/416de8b8-d5d1-4f44-9a1e-1846d552292c", + waarde: getCosts(reservation) ?? "", + }, + }).finally(() => { setLoadingKosten(true); }); // Partner - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "4dee2797-1faf-4dc0-95f8-ddc4956302f3", - JSON.stringify(persoonData) ?? "" - ).finally(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/4dee2797-1faf-4dc0-95f8-ddc4956302f3", + waarde: JSON.stringify(persoonData) ?? "", + }, + }).finally(() => { setLoadingPartner(true); }); }) @@ -268,7 +279,7 @@ export default function MultistepForm1() { const onContactDetailsSubmit = (data: FormData) => { setLoading(true); if (huwelijkId) { - HuwelijkService.huwelijkGet(huwelijkId.toString()).then((response: any) => { + HuwelijkService.huwelijkGet({ id: huwelijkId.toString() }).then((response: any) => { if (!reservation) return; const partnerString = response.results.find( @@ -280,32 +291,36 @@ export default function MultistepForm1() { const partner = JSON.parse(partnerString.waarde); // Partner - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "4dee2797-1faf-4dc0-95f8-ddc4956302f3", - JSON.stringify([ - { partner }, - { - ...persoonData, - requester: getBsnFromJWT(), - - contact: { - subjectIdentificatie: { - inpBsn: getBsnFromJWT(), + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/4dee2797-1faf-4dc0-95f8-ddc4956302f3", + waarde: + JSON.stringify([ + { partner }, + { + ...persoonData, + requester: getBsnFromJWT(), + + contact: { + subjectIdentificatie: { + inpBsn: getBsnFromJWT(), + }, + ...mapToContactObject(data.email, data.phoneNumber), + }, + results: getResultsChecklist(), + name: "", }, - ...mapToContactObject(data.email, data.phoneNumber), - }, - results: getResultsChecklist(), - name: "", - }, - ]) ?? "" - ).then(() => { + ]) ?? "", + }, + }).then(() => { push(`/persoonsgegevens/succes?huwelijkId=${huwelijkId}`); setLoading(false); }); }); } else { - HuwelijkService.huwelijkGet(huwelijkIdCreate ?? " ").then((response: any) => { + HuwelijkService.huwelijkGet({ id: huwelijkIdCreate ?? " " }).then((response: any) => { if (!reservation) return; const partnerString = response.results.find( @@ -317,23 +332,27 @@ export default function MultistepForm1() { const partner = JSON.parse(partnerString.waarde); // Partner - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "4dee2797-1faf-4dc0-95f8-ddc4956302f3", - JSON.stringify({ - ...partner, - requester: getBsnFromJWT(), - - contact: { - subjectIdentificatie: { - inpBsn: getBsnFromJWT(), - }, - ...mapToContactObject(data.email, data.phoneNumber), - }, - results: getResultsChecklist(), - name: "", - }) ?? "" - ).then(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/4dee2797-1faf-4dc0-95f8-ddc4956302f3", + waarde: + JSON.stringify({ + ...partner, + requester: getBsnFromJWT(), + + contact: { + subjectIdentificatie: { + inpBsn: getBsnFromJWT(), + }, + ...mapToContactObject(data.email, data.phoneNumber), + }, + results: getResultsChecklist(), + name: "", + }) ?? "", + }, + }).then(() => { const newPartner: any = JSON.stringify({ ...partner, requester: getBsnFromJWT(), diff --git a/pages/voorgenomen-huwelijk/checken.tsx b/pages/voorgenomen-huwelijk/checken.tsx index 14ae34c0..13330489 100644 --- a/pages/voorgenomen-huwelijk/checken.tsx +++ b/pages/voorgenomen-huwelijk/checken.tsx @@ -3,6 +3,7 @@ import Head from "next/head"; import { useRouter } from "next/router"; import { useTranslation } from "next-i18next"; import { serverSideTranslations } from "next-i18next/serverSideTranslations"; +import { useContext } from "react"; import { ButtonGroup, ButtonLink, @@ -21,9 +22,8 @@ import { } from "../../src/components"; import { PageFooterTemplate } from "../../src/components/huwelijksplanner/PageFooterTemplate"; import { PageHeaderTemplate } from "../../src/components/huwelijksplanner/PageHeaderTemplate"; -import { exampleState } from "../../src/data/huwelijksplanner-state"; -import { useContext } from "react"; import { MarriageOptionsContext } from "../../src/context/MarriageOptionsContext"; +import { exampleState } from "../../src/data/huwelijksplanner-state"; export const getServerSideProps = async ({ locale }: { locale: string }) => ({ props: { diff --git a/pages/voorgenomen-huwelijk/getuigen/index.tsx b/pages/voorgenomen-huwelijk/getuigen/index.tsx index 9a28d69e..a55324cf 100644 --- a/pages/voorgenomen-huwelijk/getuigen/index.tsx +++ b/pages/voorgenomen-huwelijk/getuigen/index.tsx @@ -51,7 +51,6 @@ type WitnessFormData = { export default function MultistepForm1() { const { t } = useTranslation(["common", "huwelijksplanner-step-getuigen", "form"]); const [marriageOptions] = useContext(MarriageOptionsContext); - console.log(marriageOptions); const { locale = "nl", push } = useRouter(); const formMethods = useForm(); @@ -75,8 +74,6 @@ export default function MultistepForm1() { return; } - console.log(marriageOptions.id); - let hasError = false; formData.witnesses.forEach((witness, index) => { @@ -92,20 +89,17 @@ export default function MultistepForm1() { if (hasError) return; - console.log(formData); - - console.log(mapWitnesses(formData.witnesses)); - - console.log(); - if (marriageOptions.id) { - HuwelijkService.huwelijkGet(marriageOptions.id.toString()).then((response: any) => { + HuwelijkService.huwelijkGet({ id: marriageOptions.id.toString() }).then((response: any) => { // Getuigen - HuwelijkService.huwelijkPostEigenschap( - response.id ?? "", - "7e950e1d-04ab-482e-a066-299711d4b4ed", - JSON.stringify(mapWitnesses(formData.witnesses ?? [])) ?? "" - ).then(() => { + HuwelijkService.huwelijkPostEigenschap({ + requestBody: { + zaak: `https://api.huwelijksplanner.online/api/zrc/v1/zaken/${response.id ?? ""}`, + eigenschap: + "https://api.huwelijksplanner.online/api/ztc/v1/eigenschappen/7e950e1d-04ab-482e-a066-299711d4b4ed", + waarde: JSON.stringify(mapWitnesses(formData.witnesses ?? [])) ?? "", + }, + }).then(() => { push("/voorgenomen-huwelijk/getuigen/succes"); setLoading(false); }); diff --git a/src/components/huwelijksplanner/PageFooterTemplate.tsx b/src/components/huwelijksplanner/PageFooterTemplate.tsx index b472c4e6..a75bcf74 100644 --- a/src/components/huwelijksplanner/PageFooterTemplate.tsx +++ b/src/components/huwelijksplanner/PageFooterTemplate.tsx @@ -10,7 +10,7 @@ export const PageFooterTemplate = () => { const [data, setData] = React.useState(footerData.find((data: any) => data.theme === "utrecht-theme")); React.useEffect(() => { - typeof window !== "undefined" && + if (typeof window !== "undefined") setData( footerData.find( (data: any) => data.theme === process.env.NEXT_PUBLIC_NL_DESIGN_THEME_CLASSNAME ?? "utrecht-theme" diff --git a/src/openapi/openapi.yaml b/src/openapi/openapi.yaml index 4f28b586..387b321d 100644 --- a/src/openapi/openapi.yaml +++ b/src/openapi/openapi.yaml @@ -8,7 +8,7 @@ servers: url: 'https://api.huwelijksplanner.online/' description: 'The kubernetes server' paths: - '/brp/ingeschrevenpersonen/{id}': + '/api/brp/ingeschrevenpersonen/{id}': get: operationId: ingeschrevenpersoon-get-item summary: IngeschrevenPersoon @@ -123,7 +123,7 @@ paths: schema: type: string example: 'Object is successfully deleted' - /brp/ingeschrevenpersonen: + /api/brp/ingeschrevenpersonen: get: operationId: ingeschrevenpersoon-get-collection summary: IngeschrevenPersoon @@ -3631,6 +3631,84 @@ paths: schema: type: string example: 'Object is successfully deleted' + /api/zrc/v1/zaken: + post: + operationId: huwelijk-create + summary: Huwelijk + tags: + - huwelijk + description: '' + requestBody: + content: + application/json: + schema: + type: any + responses: + 200: + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/Huwelijk' + application/xml: + schema: + $ref: '#/components/schemas/Huwelijk' + "/api/zrc/v1/zaakeigenschappen?zaak=https://api.huwelijksplanner.online/api/zrc/v1/zaken/{id}": + get: + operationId: huwelijk-get + summary: Huwelijk + tags: + - huwelijk + description: '' + parameters: + - + name: id + in: path + description: '' + required: true + schema: + type: string + responses: + 200: + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/Huwelijk' + application/xml: + schema: + $ref: '#/components/schemas/Huwelijk' + /api/zrc/v1/zaakeigenschappen: + post: + operationId: huwelijk-post-eigenschap + summary: Huwelijk + tags: + - huwelijk + description: '' + requestBody: + content: + application/json: + schema: + type: object + properties: + zaak: + type: string + format: uri + eigenschap: + type: string + format: uri + waarde: + type: string + responses: + 200: + description: '' + content: + application/json: + schema: + $ref: '#/components/schemas/Huwelijk' + application/xml: + schema: + $ref: '#/components/schemas/Huwelijk' /hp/huwelijk: get: operationId: huwelijk-get-collection @@ -5163,7 +5241,7 @@ paths: application/xml: schema: $ref: '#/components/schemas/Medewerker' - '/hp/producten/{id}': + '/api/hp/producten/{id}': get: operationId: sdgproduct-get-item summary: SDGProduct @@ -5278,7 +5356,7 @@ paths: schema: type: string example: 'Object is successfully deleted' - /hp/producten: + /api/hp/producten: get: operationId: sdgproduct-get-collection summary: SDGProduct @@ -7471,7 +7549,7 @@ paths: application/xml: schema: $ref: '#/components/schemas/AvailabilityCheck' - /hp/calendar/availabilitycheck: + /api/hp/calendar/availabilitycheck: get: operationId: availabilitycheck-get-collection summary: AvailabilityCheck