def test_zet_eigenschappen(self):
        zaak = ZaakFactory.create()
        eigenschap = EigenschapFactory.create(eigenschapnaam="foobar")
        url = get_operation_url("zaakeigenschap_create", zaak_uuid=zaak.uuid)
        zaak_url = get_operation_url("zaak_read", uuid=zaak.uuid)
        eigenschap_url = reverse(eigenschap)
        data = {
            "zaak": zaak_url,
            "eigenschap": eigenschap_url,
            "waarde": "overlast_water",
        }

        response = self.client.post(url, data)

        self.assertEqual(response.status_code, status.HTTP_201_CREATED, response.data)
        response_data = response.json()
        zaakeigenschap = ZaakEigenschap.objects.get()
        self.assertEqual(zaakeigenschap.zaak, zaak)
        detail_url = get_operation_url(
            "zaakeigenschap_read", zaak_uuid=zaak.uuid, uuid=zaakeigenschap.uuid
        )
        self.assertEqual(
            response_data,
            {
                "url": f"http://testserver{detail_url}",
                "uuid": str(zaakeigenschap.uuid),
                "naam": "foobar",
                "zaak": f"http://testserver{zaak_url}",
                "eigenschap": f"http://testserver{eigenschap_url}",
                "waarde": "overlast_water",
            },
        )
示例#2
0
    def zet_statussen_resultaat(self):
        statustype = StatusTypeFactory.create(zaaktype=self.references["zaaktype"])
        statustype_url = reverse(statustype)
        statustype_overlast_geconstateerd = StatusTypeFactory.create(
            zaaktype=self.references["zaaktype"]
        )
        statustype_overlast_geconstateerd_url = reverse(
            statustype_overlast_geconstateerd
        )
        resultaattype = ResultaatTypeFactory.create(
            zaaktype=self.references["zaaktype"],
            archiefactietermijn="P10Y",
            archiefnominatie=Archiefnominatie.blijvend_bewaren,
            brondatum_archiefprocedure_afleidingswijze=BrondatumArchiefprocedureAfleidingswijze.afgehandeld,
        )
        resultaattype_url = reverse(resultaattype)
        status_create_url = get_operation_url("status_create")
        resultaat_create_url = get_operation_url("resultaat_create")
        created = parser.parse(self.data["datetime"])

        self.client.post(
            status_create_url,
            {
                "zaak": self.references["zaak_url"],
                "statustype": f"http://testserver{statustype_url}",
                "datumStatusGezet": created.isoformat(),
            },
        )

        self.client.post(
            resultaat_create_url,
            {
                "zaak": self.references["zaak_url"],
                "resultaattype": f"http://testserver{resultaattype_url}",
                "toelichting": "",
            },
        )

        self.client.post(
            status_create_url,
            {
                "zaak": self.references["zaak_url"],
                "statustype": f"http://testserver{statustype_overlast_geconstateerd_url}",
                "datumStatusGezet": parser.parse(
                    self.data["datetime_overlast"]
                ).isoformat(),
            },
        )

        self.references["statustype"] = statustype
        self.references[
            "statustype_overlast_geconstateerd"
        ] = statustype_overlast_geconstateerd
    def test_create_aanvraag(self):
        """
        Maak een zaak voor een aanvraag.
        """
        zaaktype = ZaakTypeFactory.create()
        zaaktype_url = reverse(zaaktype)
        zaak_create_url = get_operation_url("zaak_create")
        data = {
            "zaaktype": f"http://testserver{zaaktype_url}",
            "vertrouwelijkheidaanduiding":
            VertrouwelijkheidsAanduiding.openbaar,
            "bronorganisatie": "517439943",
            "verantwoordelijkeOrganisatie": VERANTWOORDELIJKE_ORGANISATIE,
            "identificatie": "HLM-straatartiest-42",
            "omschrijving": "Dagontheffing - Station Haarlem",
            "toelichting":
            "Het betreft een clown met grote trom, mondharmonica en cymbalen.",
            "startdatum": "2018-08-15",
        }

        # aanmaken zaak
        response = self.client.post(zaak_create_url, data, **ZAAK_WRITE_KWARGS)

        self.assertEqual(response.status_code, status.HTTP_201_CREATED,
                         response.data)
        data = response.json()
        self.assertIn("identificatie", data)
        self.assertEqual(data["registratiedatum"],
                         date.today().strftime("%Y-%m-%d"))
        self.assertEqual(data["startdatum"], "2018-08-15")
示例#4
0
    def registreer_zaak(self):
        zaaktype = ZaakTypeFactory.create()
        zaaktype_url = reverse(zaaktype)
        zaak_create_url = get_operation_url("zaak_create")

        created = parser.parse(self.data["datetime"])
        intern_id = self.data["id"]

        response = self.client.post(
            zaak_create_url,
            {
                "zaaktype": f"http://testserver{zaaktype_url}",
                "vertrouwelijkheidaanduiding": VertrouwelijkheidsAanduiding.openbaar,
                "bronorganisatie": "517439943",
                "verantwoordelijkeOrganisatie": VERANTWOORDELIJKE_ORGANISATIE,
                "identificatie": f"WATER_{intern_id}",
                "registratiedatum": created.strftime("%Y-%m-%d"),
                "startdatum": created.strftime("%Y-%m-%d"),
                "toelichting": self.data["text"],
                "zaakgeometrie": self.data["coordinates"],
            },
            **ZAAK_WRITE_KWARGS,
        )

        self.references["zaak_url"] = response.json()["url"]
        self.references["zaaktype"] = zaaktype
示例#5
0
    def registreer_domein_data(self):
        eigenschap_objecttype = EigenschapFactory.create(eigenschapnaam="melding_type")
        eigenschap_objecttype_url = reverse(eigenschap_objecttype)
        eigenschap_naam_boot = EigenschapFactory.create(
            eigenschapnaam="waternet_naam_boot"
        )
        eigenschap_naam_boot_url = reverse(eigenschap_naam_boot)
        zaak_uuid = self.references["zaak_url"].rsplit("/")[-1]
        url = get_operation_url("zaakeigenschap_create", zaak_uuid=zaak_uuid)

        self.client.post(
            url,
            {
                "zaak": self.references["zaak_url"],
                "eigenschap": f"http://testserver{eigenschap_objecttype_url}",
                "waarde": "overlast_water",
            },
        )
        self.client.post(
            url,
            {
                "zaak": self.references["zaak_url"],
                "eigenschap": f"http://testserver{eigenschap_naam_boot_url}",
                "waarde": TEST_DATA["waternet_naam_boot"],
            },
        )

        self.references["eigenschap_naam_boot"] = eigenschap_naam_boot
示例#6
0
    def test_add_resultaat_on_zaak_with_einddatum_causes_archiefactiedatum_to_be_set(
            self):
        """
        Add RESULTAAT that causes `archiefactiedatum` to be set.
        """
        zaak = ZaakFactory.create(einddatum=date(2019, 1, 1))
        zaak_url = get_operation_url("zaak_read", uuid=zaak.uuid)
        resultaattype = ResultaatTypeFactory.create(
            archiefactietermijn="P10Y",
            archiefnominatie=Archiefnominatie.blijvend_bewaren,
            brondatum_archiefprocedure_afleidingswijze=
            BrondatumArchiefprocedureAfleidingswijze.afgehandeld,
            zaaktype=zaak.zaaktype,
        )
        resultaattype_url = reverse(resultaattype)
        resultaat_create_url = get_operation_url("resultaat_create")
        data = {
            "zaak": zaak_url,
            "resultaattype": resultaattype_url,
            "toelichting": ""
        }

        self.assertIsNone(zaak.archiefactiedatum)

        response = self.client.post(resultaat_create_url, data)

        self.assertEqual(response.status_code, status.HTTP_201_CREATED,
                         response.data)

        # add final status to the case to close it and to calculate archive parameters
        statustype = StatusTypeFactory.create(zaaktype=zaak.zaaktype)
        statustype_url = reverse(statustype)
        status_create_url = get_operation_url("status_create")

        data = {
            "zaak": zaak_url,
            "statustype": statustype_url,
            "datumStatusGezet": "2018-10-18T20:00:00Z",
        }

        response = self.client.post(status_create_url, data)

        self.assertEqual(response.status_code, status.HTTP_201_CREATED,
                         response.data)

        zaak.refresh_from_db()
        self.assertEqual(zaak.archiefactiedatum, date(2028, 10, 18))
示例#7
0
 def registreer_klantcontact(self):
     url = get_operation_url("klantcontact_create")
     self.client.post(
         url,
         {
             "zaak": self.references["zaak_url"],
             "datumtijd": self.data["datetime"],
             "kanaal": self.data["source"],
         },
     )
示例#8
0
    def test_add_resultaat_on_zaak_with_incorrect_eigenschap_fails(self):
        """
        Attempt to add RESULTAAT with incorrect ZTC-configuration.
        """
        zaak = ZaakFactory.create()
        zaak_url = get_operation_url("zaak_read", uuid=zaak.uuid)
        resultaattype = ResultaatTypeFactory.create(
            archiefactietermijn="P10Y",
            archiefnominatie=Archiefnominatie.blijvend_bewaren,
            brondatum_archiefprocedure_afleidingswijze=
            BrondatumArchiefprocedureAfleidingswijze.eigenschap,
            brondatum_archiefprocedure_datumkenmerk="brondatum",
            zaaktype=zaak.zaaktype,
        )
        resultaattype_url = reverse(resultaattype)
        # add resultaat
        resultaat_create_url = get_operation_url("resultaat_create")
        data = {
            "zaak": zaak_url,
            "resultaattype": resultaattype_url,
            "toelichting": ""
        }

        response = self.client.post(resultaat_create_url, data)

        self.assertEqual(response.status_code, status.HTTP_201_CREATED,
                         response.data)

        # add final status to the case to close it and to calculate archive parameters
        statustype = StatusTypeFactory.create(zaaktype=zaak.zaaktype)
        statustype_url = reverse(statustype)
        status_create_url = get_operation_url("status_create")
        data = {
            "zaak": zaak_url,
            "statustype": statustype_url,
            "datumStatusGezet": "2018-10-18T20:00:00Z",
        }

        response = self.client.post(status_create_url, data)

        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
示例#9
0
    def test_can_set_archiefstatus_when_archiefnominatie_and_archiefactiedatum_already_set(
            self):
        zaak = ZaakFactory.create(
            archiefnominatie=Archiefnominatie.vernietigen,
            archiefactiedatum=date.today(),
        )
        zaak_patch_url = get_operation_url("zaak_partial_update",
                                           uuid=zaak.uuid)

        data = {"archiefstatus": Archiefstatus.gearchiveerd}

        response = self.client.patch(zaak_patch_url, data, **ZAAK_WRITE_KWARGS)
        self.assertEqual(response.status_code, status.HTTP_200_OK,
                         response.data)
示例#10
0
    def test_can_set_archiefstatus_with_archiefnominatie_and_archiefactiedatum(
            self):
        zaak = ZaakFactory.create()
        zaak_patch_url = get_operation_url("zaak_partial_update",
                                           uuid=zaak.uuid)

        data = {
            "archiefnominatie": Archiefnominatie.vernietigen,
            "archiefactiedatum": date(2019, 1, 1),
            "archiefstatus": Archiefstatus.gearchiveerd,
        }

        response = self.client.patch(zaak_patch_url, data, **ZAAK_WRITE_KWARGS)
        self.assertEqual(response.status_code, status.HTTP_200_OK,
                         response.data)