Project activity #35727
closedValidatie implementeren bij het zetten van een NVB resultaat
100%
Description
Bijvoorbeeld:
- als afleidingswijze: "eigenschap" moet er gecheckt worden dat de bijbehorende eigenschap ingevuld is
- ...
- in de app, in dialog 'afhandelen', als er een NVB resultaat wordt geselecteerd; als de check faalt, dan 'ok' is disabled en een melding met voldoende informatie komt tevoorschijn
- in de backend, in de implementatie van 'zaakClose' action; we doen dit omdat de validatie in openzaak gebeurt niet bij het zetten van de resultaat maar bij het zetten van de eindstatus, dus we willen voorkomen dat de resultaat wordt gezet zonder eindstatus; als de eerste punt correct geïmplementeerd is dan is deze overbodig, maar het is correct dat een api altijd zijn eigen validatie implementeert.
- backend service die de validatie logica implementeert
- webscript die deze backend service gebruikt, de frontend moet deze gebruiken om check 1 uit te voeren
- 'zaakClose' action executer moet deze service gebruiken om check 2 uit te voeren
Updated by Diego Mirandola 2 months ago
- Status changed from Backlog to In Progress
Updated by Diego Mirandola 2 months ago
· Edited
- webscript aangemaakt: POST api/zrc/nvb/validate met body
{ "zaak": "http://openzaak.local:8000/zaken/api/v1/zaken/88a85677-1118-4829-b799-27ba9aa6f360", "resultaattype": "http://openzaak.local:8000/catalogi/api/v1/resultaattypen/5152088b-8fa3-4d58-b170-60788c26ec5a" }
De webscript valideert de request body en roept nvbService.validateResultaat(zaakUrl, resultaattypeUrl) - nvbService.validateResultaat(zaakUrl, resultaattypeUrl) implementeert de logica voor afleidingswijze = eigenschap. Dit moet uitgebreid worden met de logica voor alle andere NVB afleidingswijzen.
Updated by Diego Mirandola 2 months ago
- eigenschap: klaar
- hoofdzaak: klaar maar ik snap niet hoe ik deze kan testen
- termijn: klaar (doet eigenlijk niets)
- zaakobject: objecttype wordt gecheckt, ik snap niet hoe ik de datumKenmerk op het zaakobject kan definiëren
Updated by Diego Mirandola 14 days ago
· Edited
- Nieuw webscript POST api/zrc/nvb/validate met body
{ "zaak": "http://openzaak.local:8000/zaken/api/v1/zaken/ae127540-a340-4e48-a86f-e53b38753e49", "resultaattype": "http://openzaak.local:8000/catalogi/api/v1/resultaattypen/fc9e8d5d-ee94-498b-a0ec-198fae6171df" }
Doel: valideren als zaak en resultaattype zijn compatibel. - Implementatie in nl.contezza.component.zrc.webscript.NvbValidatePost: roept een onderliggende service om de combinatie zaak + resultaattype te valideren, retourneert 204 (goed) of 409 (conflict, met uitleg).
- Onderliggende service is nl.contezza.component.zrc.service.NaVervallenBelangService. Dit bevat een method validateResultaat die op basis van zaak en resultaattype de logica van de pdf in #32987 implementeert. In het geval van een negatief antwoord, moet de method ook voldoende informatie retourneren over wat ontbreekt.
- Bestaande action "zaakClose" (ZaakCloseActionExecuter) gebruikt nl.contezza.component.zrc.service.NaVervallenBelangService.validateResultaat om de combinatie zaak + resultaattype te valideren, en gaat door alleen als die geldig is.
Updated by Diego Mirandola 13 days ago
NVB validaties voor de volgende afleidingswijzen zijn geïmplementeerd:
- eigenschap
- hoofdzaak
- termijn
- zaakobject, maar: voorlopig wordt er alleen gecheckt dat een zaakobject bestaan met de aangegeven objecttype en dat deze een geldig url heeft, er is nog geen check op de datumKenmerk
Updated by Diego Mirandola 13 days ago
De volgende wijzigingen in tezza app zijn klaar in contezza-apps branch feature/tezza/nvb-validate-resultaat/#35727.
In zaak afhandelen dialoog, als er een nvb resultaattype wordt geselecteerd, wordt webscript #35727#note-9 gebruikt om de combinatie zaak + resultaattype te valideren.
Als de zaak alle eisen voldoet, dan de huidige melding is zichtbaar:
* De vernietigingstermijn gaat lopen als gerelateerde belangen zijn vervallen.
Anders, wordt de volgende error getoond:
Het is niet mogelijk om dit resultaattype te selecteren want de volgende bron ontbreekt of is ongeldig: <invalidResource>
waar de <invalidResource> komt vanuit de webscript response.
Updated by Diego Mirandola 13 days ago
· Edited
De volgende flow wordt getest en via api en via ui:
- zaak aanmaken
- combinatie zaak + resultaattype met afleidingswijze=eigenschap valideren, error verwacht
- zaakeigenschap toevoegen
- combinatie zaak + resultaattype met afleidingswijze=eigenschap valideren, succes verwacht
Let op: de tests zijn gebaseerd op catalogus NVB die aangemaakt is op dev-tezza. Ik heb die catalogus lokaal geïmporteerd om te kunnen ontwikkelen en testen.
Updated by Diego Mirandola 13 days ago
- Status changed from In Progress to Ready in Dev
- Assignee changed from Diego Mirandola to Rick de Rooij
@Rick de Rooij zie https://support.contezza.nl/issues/35727#note-9, graag testen.
Merge request: https://git.contezza.nl/develop/products/tezza-services/-/merge_requests/128
Updated by Rick de Rooij 8 days ago
- Status changed from Ready in Dev to Test approved
- % Done changed from 0 to 100
Akkoord, zit in TS 3.6.4.
Updated by Rick de Rooij 8 days ago
- Status changed from Test approved to Resolved
Updated by Diego Mirandola 8 days ago
- Status changed from Resolved to In Progress
- Assignee changed from Rick de Rooij to Diego Mirandola
Updated by Diego Mirandola 7 days ago
- Status changed from In Progress to Ready in Dev
- Assignee changed from Diego Mirandola to Maaike Bommerson
De backend is nu op dev.
Graag testen in branch feature/tezza/nvb-validate-resultaat/#35727, tezza app gekoppeld met dev-tezza.
Het afhandelen van zaken van zaaktypen in catalogus NVB moet zo werken:
- Afleidingswijze brondatum Eigenschap: toont nvb error en laat niet afhandelen totdat de zaakeigenschap 'geboortedatum leerling' wordt toegevoegd, daarna toont nvb info en laat afhandelen
- Afleidingswijze brondatum Hoofdzaak: toont nvb error en laat niet afhandelen
- Afleidingswijze brondatum Termijn: toont nvb info en laat afhandelen
- Afleidingswijze brondatum Zaakobject: toont nvb error en laat niet afhandelen
Nvb error en info zijn degene in #35727#note-10.
Updated by Maaike Bommerson 7 days ago
- Status changed from Ready in Dev to Test approved
- Assignee changed from Maaike Bommerson to Diego Mirandola
Getest, kan mee met de release
Updated by Diego Mirandola 2 days ago
- Status changed from Test approved to Resolved
Backend is in TS 3.6.4.
Frontend is in contezza-apps 4.6.3.
