Ejemplo n.º 1
0
    def setUp(self):
        super().setUp()

        # medewerker wordt geidentificeerd in de .xml bestanden, met
        # '${gemeentecode}56789' wat is vervangen door '0123456789'
        self.medewerker = MedewerkerFactory.create(
            organisatorische_eenheid__organisatieeenheididentificatie='01234',
            medewerkeridentificatie='56789')
        self.assertEqual(self.medewerker.identificatie, '0123456789')

        self.zaak_type = ZaakTypeFactory.create(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345678')

        self.context = {
            'gemeentecode': '',
            'referentienummer': self.genereerID(10),

            'datumVandaag': self.genereerdatum(),
            'datumEergisteren': self.genereerdatum(-2),
            'tijdstipRegistratie': self.genereerdatumtijd(),

            'zds_zaaktype_omschrijving': 'Aanvraag burgerservicenummer behandelen',
            'zds_zaaktype_code': '12345678',
        }
Ejemplo n.º 2
0
    def test_betrokkene_medewerker(self):
        medewerker = MedewerkerFactory.create()
        rol = RolFactory.create(zaak=self.zaak, betrokkene=medewerker)

        proxy_zaak = ZaakProxy.objects.get()
        proxy_rol = proxy_zaak.rol_set.get()
        proxy_betrokkene = proxy_rol.betrokkene
        proxy_medewerker = proxy_betrokkene.is_type()

        self.assertEquals(proxy_medewerker, to_proxy_obj(medewerker))
    def handle(self, *args, **options):

        # Needed for all tests.
        ZaakType.objects.filter(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345678',
        ).delete()

        # Medewerker.objects.get_or_create(
        #     medewerkeridentificatie='123456789',
        #     achternaam='achternaam',
        #     voorvoegsel_achternaam='voorvoeg',
        #     voorletters='voorletters',
        #     defaults={
        #         'organisatorische_eenheid': None,
        #     }
        # )

        ZaakTypeFactory.create(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345678',
            datum_begin_geldigheid_zaaktype='20171001')

        # Required for 'creeerZaak_zakLk01 volgnummer 3'

        # First do cleanup.
        Medewerker.objects.filter(
            medewerkeridentificatie='7007',
            organisatorische_eenheid__isnull=True).delete()
        ZaakType.objects.filter(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345679',
        ).delete()

        try:
            organisatorische_eenheid = OrganisatorischeEenheid.objects.filter(
                identificatie='organisatorischeEenheid',
                naam='Naam',
                organisatieeenheididentificatie='organisatorischeEenheid',
                organisatieidentificatie='0',
                gevestigd_in__is_specialisatie_van__identificatie=
                '012345678910',
                gevestigd_in__is_specialisatie_van__handelsnaam=[
                    'handelsnaam',
                ],
            ).get()
        except OrganisatorischeEenheid.DoesNotExist:
            pass
        else:
            if organisatorische_eenheid.gevestigd_in.is_specialisatie_van:
                organisatorische_eenheid.gevestigd_in.is_specialisatie_van.delete(
                )
            if organisatorische_eenheid.gevestigd_in:
                organisatorische_eenheid.gevestigd_in.delete()

        OverigeAdresseerbaarObjectAanduidingObject.objects.filter(
            identificatie='0123456789101112',
            woonplaatsnaam='woonplaatsNaam',
            naam_openbare_ruimte='openbareRuimteNaam',
            huisnummer=99999,
            huisletter='A',
            huisnummertoevoeging='',
        ).delete()

        MedewerkerFactory.create(
            medewerkeridentificatie='7007',
            organisatorische_eenheid=None,
        )
        zaak_type = ZaakTypeFactory.create(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345679')

        status_type1 = StatusType.objects.get_or_create(
            statustypeomschrijving='Intake afgerond',
            statustypevolgnummer='1',
            zaaktype=zaak_type,
        )

        status_type2 = StatusType.objects.get_or_create(
            statustypeomschrijving='Afgerekend',
            statustypevolgnummer='3',
            zaaktype=zaak_type,
        )

        status_type3 = StatusType.objects.get_or_create(
            statustypeomschrijving='Product opgesteld',
            statustypevolgnummer='5',
            zaaktype=zaak_type,
        )

        status_type4 = StatusType.objects.get_or_create(
            statustypeomschrijving='Zaak afgerond',
            statustypevolgnummer='7',
            zaaktype=zaak_type,
        )

        organisatorische_eenheid = OrganisatorischeEenheidFactory.create(
            identificatie='organisatorischeEenheid',
            naam='Naam',
            organisatieeenheididentificatie='organisatorischeEenheid',
            organisatieidentificatie='0',
            gevestigd_in__is_specialisatie_van__identificatie='012345678910',
            gevestigd_in__is_specialisatie_van__handelsnaam=[
                'handelsnaam',
            ],
        )

        # OverigeAdresseerbaarObjectAanduidingObjectFactory.create(
        #     identificatie='0123456789101112',
        #     woonplaatsnaam='woonplaatsNaam',
        #     naam_openbare_ruimte='openbareRuimteNaam',
        #     huisnummer=99999,
        #     huisletter='A',
        #     huisnummertoevoeging='',
        # )

        # Required for creeerZaak_zakLk01 volgnummer 5

        # Deelzaak en Andere zaak
        ZaakFactory.create(
            zaakidentificatie='0123456789',
            omschrijving='omschrijving',
        )

        NatuurlijkPersoon.objects.filter(
            burgerservicenummer=self.context['gemeentecode'] +
            '56789').delete()
        NatuurlijkPersoonFactory.create(
            burgerservicenummer=self.context['gemeentecode'] + '56789')

        # Required for creeerZaak_zakLk01 volgnummer 7
        NietNatuurlijkPersoon.objects.filter(
            rsin=self.context['gemeentecode'] + '56789').delete()
        NietNatuurlijkPersoonFactory.create(rsin=self.context['gemeentecode'] +
                                            '56789')

        # Required for creeerZaak_zakLk01 volgnummer 9, 11 and 13
        Vestiging.objects.filter(identificatie='010203040506').delete()
        VestigingFactory.create(identificatie='010203040506')

        # Required for creeerZaak_zakLk01 volgnummer 13
        medewerkers = [
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56791',
                'achternaam': 'achternaam22',
                'voorletters': 'voorletters22',
                'voorvoegsel_achternaam': 'voorvoeg22',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56790',
                'achternaam': 'achternaam20',
                'voorletters': 'voorletters20',
                'voorvoegsel_achternaam': 'voorvoeg20',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56789',
                'achternaam': 'achternaam22',
                'voorletters': 'voorletters22',
                'voorvoegsel_achternaam': 'voorvoeg22',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56788',
                'achternaam': 'achternaam2',
                'voorletters': 'voorletters2',
                'voorvoegsel_achternaam': 'voorvoeg2',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56787',
                'achternaam': 'achternaam22',
                'voorletters': 'voorletters22',
                'voorvoegsel_achternaam': 'voorvoeg22',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56786',
                'achternaam': 'achternaam6',
                'voorletters': 'voorletters6',
                'voorvoegsel_achternaam': 'voorvoeg6',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56785',
                'achternaam': 'unknown',
                'voorletters': 'unknown',
                'voorvoegsel_achternaam': 'unknown',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56784',
                'achternaam': 'achternaam22',
                'voorletters': 'voorletters22',
                'voorvoegsel_achternaam': 'voorvoeg22',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56783',
                'achternaam': 'achternaam2',
                'voorletters': 'voorletters2',
                'voorvoegsel_achternaam': 'voorvoeg2',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56782',
                'achternaam': 'achternaam22',
                'voorletters': 'voorletters22',
                'voorvoegsel_achternaam': 'voorvoeg22',
                'organisatorische_eenheid': None,
            },
            {
                'medewerkeridentificatie':
                self.context['gemeentecode'] + '56781',
                'achternaam': 'achternaam2',
                'voorletters': 'voorletters2',
                'voorvoegsel_achternaam': 'voorvoeg2',
                'organisatorische_eenheid': None,
            },
        ]
        for medewerker in medewerkers:
            Medewerker.objects.get_or_create(defaults={
                'geslachtsaanduiding':
                GeslachtsAanduiding.onbekend,
            },
                                             **medewerker)

        InformatieObjectType.objects.filter(
            informatieobjecttypeomschrijving='omschrijving').delete()
        InformatieObjectType.objects.filter(
            informatieobjecttypeomschrijving=
            'Aanvraag burgerservicenummer behandelen').delete()
        InformatieObjectTypeFactory.create(
            informatieobjecttypeomschrijving='omschrijving')
        InformatieObjectTypeFactory.create(
            informatieobjecttypeomschrijving=
            'Aanvraag burgerservicenummer behandelen')

        oeh2_defaults = {
            'organisatieeenheididentificatie': "0123456785",
            'organisatieidentificatie': "0123456785"[:4],
            'naam': 'naam2',
            'gevestigd_in': organisatorische_eenheid.gevestigd_in,
        }

        organisatorische_eenheid, _ = OrganisatorischeEenheid.objects.get_or_create(
            identificatie="0123456785",
            defaults=oeh2_defaults,
        )

        # For actualiseerZaakstatus volgnummer 1
        OrganisatorischeEenheid.objects.get_or_create(
            identificatie='0123456789',
            organisatieeenheididentificatie="0123456789",
            organisatieidentificatie="0123456789"[:4],
            defaults={
                'naam': '0123456789',
                'gevestigd_in': organisatorische_eenheid.gevestigd_in,
            })

        # For actualiseerZaakstatus volgnummer 5
        # TODO [KING]: Deze organisatorische eenheid is volgens de test ergens anders
        # gevestigd.
        OrganisatorischeEenheid.objects.get_or_create(
            identificatie='01234567890',
            organisatieeenheididentificatie="01234567890",
            organisatieidentificatie="01234567890"[:4],
            defaults={
                'naam': '01234567890',
                'gevestigd_in': organisatorische_eenheid.gevestigd_in,
            })

        NatuurlijkPersoon.objects.filter(
            burgerservicenummer='012345678').delete()
        natuurlijk_persoon = NatuurlijkPersoonFactory.create(
            burgerservicenummer='012345678',
            naam_geslachtsnaam='geslachtsnaam5',
            naam_voorvoegsel_geslachtsnaam_voorvoegsel='voorvoeg5',
            naam_aanschrijving_voorletters_aanschrijving='voorletters5',
            naam_voornamen='voornamen5',
            geslachtsaanduiding='M',
            geboortedatum_ingeschreven_persoon=self.genereerdatum(),
        )

        NietNatuurlijkPersoon.objects.filter(
            rsin='012345678', statutaire_naam='statutaireNaam').delete()
        niet_natuurlijk_persoon = NietNatuurlijkPersoonFactory.create(
            rsin='012345678', statutaire_naam='statutaireNaam')

        # This is the default BesluitType.
        BesluitType.objects.get_or_create(
            besluittypeomschrijving=None,
            defaults={
                'domein': 'dom',
                'rsin': 12345,
                'reactietermijn': 5,
                'publicatie_indicatie': 'J',
                'datum_begin_geldigheid_besluittype': self.genereerdatum(),
            })

        BesluitType.objects.get_or_create(
            besluittypeomschrijving='omschrijving',
            defaults={
                'domein': 'dom',
                'rsin': 12345,
                'reactietermijn': 5,
                'publicatie_indicatie': 'J',
                'datum_begin_geldigheid_besluittype': self.genereerdatum(),
            })
        BesluitType.objects.get_or_create(
            besluittypeomschrijving='bst.omschrijving',
            defaults={
                'domein': 'dom',
                'rsin': 12345,
                'reactietermijn': 5,
                'publicatie_indicatie': 'J',
                'datum_begin_geldigheid_besluittype': self.genereerdatum(),
            })

        BesluitType.objects.get_or_create(
            besluittypeomschrijving='bst.omschrijving3',
            defaults={
                'domein': 'dom',
                'rsin': 12345,
                'reactietermijn': 5,
                'publicatie_indicatie': 'J',
                'datum_begin_geldigheid_besluittype': self.genereerdatum(),
            })
Ejemplo n.º 4
0
    def test_create_13(self):
        vraag = 'creeerZaak_ZakLk01_13.orig.xml'

        ves = VestigingFactory.create(identificatie='010203040506')
        mdw56786 = MedewerkerFactory.create(
            medewerkeridentificatie=self.context['gemeentecode'] + '56786',
            organisatorische_eenheid=None,
        )
        mdw56785 = MedewerkerFactory.create(
            medewerkeridentificatie=self.context['gemeentecode'] + '56785',
            organisatorische_eenheid=None,
        )
        mdw56784 = MedewerkerFactory.create(
            medewerkeridentificatie=self.context['gemeentecode'] + '56784',
            organisatorische_eenheid=None,
        )
        mdw56783 = MedewerkerFactory.create(
            medewerkeridentificatie=self.context['gemeentecode'] + '56783',
            organisatorische_eenheid=None,
        )
        mdw56782 = MedewerkerFactory.create(
            medewerkeridentificatie=self.context['gemeentecode'] + '56782',
            organisatorische_eenheid=None,
        )
        mdw56781 = MedewerkerFactory.create(
            medewerkeridentificatie=self.context['gemeentecode'] + '56781',
            organisatorische_eenheid=None,
        )
        self.context.update(
            creerzaak_identificatie_13=self.genereerID(10)
        )
        response = self._do_request(self.porttype, vraag, self.context, stp_syntax=True)

        zaak = Zaak.objects.get()

        # Both 'heeftAlsBelanghebbende' and 'heeftAlsGemachtigde' in RGBZ2 are stored as
        # 'Belanghebbende' and both point to medewerker.
        belanghebbenden = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.belanghebbende,
            betrokkene=mdw56781)
        self.assertEquals(belanghebbenden.count(), 1)

        # heeftAlsInitiator
        initiators = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.initiator,
            betrokkene=ves)
        self.assertEquals(initiators.count(), 1)

        # heeftAlsUitvoerende
        behandelaars = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.behandelaar,
            betrokkene__in=[mdw56782, mdw56783])
        self.assertEquals(behandelaars.count(), 2)

        # heeftAlsVerantwoordelijke
        beslissers = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.beslisser,
            betrokkene=mdw56784)
        self.assertEquals(beslissers.count(), 1)

        # heeftAlsOverigBetrokkene
        adviseurs = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.adviseur,
            betrokkene__in=[mdw56785, mdw56786])
        self.assertEquals(adviseurs.count(), 2)

        self._test_response(response)
        self._validate_response(response)
Ejemplo n.º 5
0
    def test_create_03(self):
        """
        creeerZaak_zakLk01 volgnummer 3
        """
        vraag = 'creeerZaak_ZakLk01_03.orig.xml'
        medewerker = MedewerkerFactory.create(
            medewerkeridentificatie='7007',
            organisatorische_eenheid=None,
        )
        self.assertEqual(medewerker.identificatie, '7007')

        ZaakTypeFactory.create(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345679')

        # TODO [TECH]: This should be created in the tests, but the matching-data mismatches
        # with the required information. This can be removed once Issue #250 is solved.
        oeh = OrganisatorischeEenheidFactory.create(
            identificatie='organisatorischeEenheid',
            naam='Naam',
            organisatieeenheididentificatie='organisatorischeEenheid',
            organisatieidentificatie='0',
            gevestigd_in__is_specialisatie_van__identificatie='012345678910',
            gevestigd_in__is_specialisatie_van__handelsnaam=['handelsnaam', ],
        )

        self.assertEquals(OverigeAdresseerbaarObjectAanduidingObject.objects.count(), 0)

        # # In the test this is a 'T', however, the required field 'datum_begin_geldigheid_adresseerbaar_object_aanduiding'
        # # isn't given a value in the StUF test, so we can't possibly create the OverigeAdresseerbaarObjectAanduidingObject object.OverigeAdresseerbaarObjectAanduidingObject
        # # I assume, that the KING test suite assumes that we create this object in our database.
        # OverigeAdresseerbaarObjectAanduidingObjectFactory.create(
        #     identificatie='0123456789101112',
        #     woonplaatsnaam='woonplaatsNaam',
        #     naam_openbare_ruimte='openbareRuimteNaam',
        #     huisnummer=99999,
        #     huisletter='A',
        #     huisnummertoevoeging='',
        #     postcode='1000',
        # )

        self.assertEquals(Zaak.objects.count(), 0)
        self.context.update(**{
            'genereerzaakident_identificatie_4': self.genereerID(10),
            'genereerbesluitident_identificatie_2': '123',
            'genereerzaakident_identificatie_2': self.genereerID(10),
        })
        response = self._do_request(self.porttype, vraag, self.context, stp_syntax=True)

        self._test_response(response)

        self.assertEquals(Zaak.objects.count(), 1)
        expected = {
            'zaakidentificatie': self.context['gemeentecode'] + self.context['genereerzaakident_identificatie_4'],
            'bronorganisatie': self.context['gemeentecode'],
            'archiefstatus': 'Nog te archiveren',
            'verantwoordelijke_organisatie': self.context['gemeentecode'],
            'omschrijving': 'omschrijving',
            'toelichting': 'toelichting',
            'resultaatomschrijving': 'omschrijving',
            'resultaattoelichting': 'toelichting',
            'startdatum': self.context['datumVandaag'],
            'registratiedatum': self.context['datumVandaag'],
            'publicatiedatum': self.context['datumVandaag'],
            'einddatum_gepland': self.context['datumVandaag'],
            'uiterlijke_einddatum_afdoening': self.context['datumVandaag'],
            'einddatum': self.context['datumVandaag'],
            'betalingsindicatie': '(Nog) niet',
            'laatste_betaaldatum': self.context['datumVandaag'],
            'archiefnominatie': None,
            'zaaktype_id': self.zaak_type.pk,
        }
        self.assertTrue(Zaak.objects.filter(**expected).exists())
        zaak = Zaak.objects.get()

        self.assertEquals(zaak.zaakkenmerk_set.filter(
            kenmerk='kenmerk', kenmerk_bron='bron'
        ).count(), 2)

        self.assertEquals(zaak.anderzaakobject_set.filter(
            ander_zaakobject_omschrijving='omschrijving', ander_zaakobject_aanduiding='aanduiding',
            ander_zaakobject_registratie='registratie',
            ander_zaakobject_lokatie__startswith='<gml:OrientableSurface',
        ).count(), 2)

        # Test for resultaat

        self.assertEquals(zaak.zaakopschorting_set.filter(
            indicatie_opschorting='N', reden_opschorting='reden',
        ).count(), 1)

        self.assertEquals(zaak.zaakverlenging_set.filter(
            duur_verlenging=123, reden_verlenging='reden',
        ).count(), 1)

        self.assertEquals(zaak.zaakobject_set.count(), 2)

        self.assertEquals(OverigeAdresseerbaarObjectAanduidingObject.objects.filter(
            object_zaken__in=[zaak, ],
            identificatie='0123456789101112',
            woonplaatsnaam='woonplaatsNaam',
            naam_openbare_ruimte='openbareRuimteNaam',
            huisnummer='99999',
            huisletter='A',
            huisnummertoevoeging='',
        ).count(), 2)

        # De rollen zijn als volgt aangepast van RGBZ 1.0 naar RGBZ 2.0.
        #
        # "Gemachtigde" wordt "Belanghebbende"
        # "Overig" wordt "Adviseur"
        # "Uitvoerder" wordt "Behandelaar"
        # "Verantwoordelijke" wordt "Beslisser"
        # Overige rolbenamingen blijven gelijk.

        # Both 'heeftAlsBelanghebbende' and 'heeftAlsGemachtigde' in RGBZ2 are stored as
        # 'Belanghebbende' and both point to medewerker.
        belanghebbenden = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.belanghebbende,
            betrokkene=self.medewerker)
        self.assertEquals(belanghebbenden.count(), 4)

        # heeftAlsInitiator
        initiators = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.initiator,
            betrokkene=oeh)
        self.assertEquals(initiators.count(), 1)

        # heeftAlsUitvoerende
        behandelaars = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.behandelaar,
            betrokkene=self.medewerker)
        self.assertEquals(behandelaars.count(), 2)

        # heeftAlsVerantwoordelijke
        beslissers = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.beslisser,
            betrokkene=self.medewerker)
        self.assertEquals(beslissers.count(), 2)

        # heeftAlsOverigBetrokkene
        adviseurs = zaak.rol_set.filter(
            rolomschrijving=Rolomschrijving.adviseur,
            betrokkene=self.medewerker)
        self.assertEquals(adviseurs.count(), 2)

        self._validate_response(response)
    def handle(self, *args, **options):

        # Needed for all tests.
        ZaakType.objects.filter(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345678',
        ).delete()

        # Medewerker.objects.get_or_create(
        #     medewerkeridentificatie='123456789',
        #     achternaam='achternaam',
        #     voorvoegsel_achternaam='voorvoeg',
        #     voorletters='voorletters',
        #     defaults={
        #         'organisatorische_eenheid': None,
        #     }
        # )

        ZaakTypeFactory.create(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345678',
            datum_begin_geldigheid_zaaktype='20171001')

        # Required for 'creeerZaak_zakLk01 volgnummer 3'

        # First do cleanup.
        Medewerker.objects.filter(
            medewerkeridentificatie='7007',
            organisatorische_eenheid__isnull=True
        ).delete()
        ZaakType.objects.filter(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345679',
        ).delete()

        try:
            organisatorische_eenheid = OrganisatorischeEenheid.objects.filter(
                identificatie='organisatorischeEenheid',
                naam='Naam',
                organisatieeenheididentificatie='organisatorischeEenheid',
                organisatieidentificatie='0',
                gevestigd_in__is_specialisatie_van__identificatie='012345678910',
                gevestigd_in__is_specialisatie_van__handelsnaam=['handelsnaam', ],
            ).get()
        except OrganisatorischeEenheid.DoesNotExist:
            pass
        else:
            if organisatorische_eenheid.gevestigd_in.is_specialisatie_van:
                organisatorische_eenheid.gevestigd_in.is_specialisatie_van.delete()
            if organisatorische_eenheid.gevestigd_in:
                organisatorische_eenheid.gevestigd_in.delete()

        OverigeAdresseerbaarObjectAanduidingObject.objects.filter(
            identificatie='0123456789101112',
            woonplaatsnaam='woonplaatsNaam',
            naam_openbare_ruimte='openbareRuimteNaam',
            huisnummer=99999,
            huisletter='A',
            huisnummertoevoeging='',
        ).delete()

        MedewerkerFactory.create(
            medewerkeridentificatie='7007',
            organisatorische_eenheid=None,
        )
        zaak_type = ZaakTypeFactory.create(
            zaaktypeomschrijving='Aanvraag burgerservicenummer behandelen',
            zaaktypeidentificatie='12345679')

        status_type1 = StatusType.objects.get_or_create(
            statustypeomschrijving='Intake afgerond',
            statustypevolgnummer='1',
            zaaktype=zaak_type,
        )

        status_type2 = StatusType.objects.get_or_create(
            statustypeomschrijving='Afgerekend',
            statustypevolgnummer='3',
            zaaktype=zaak_type,
        )

        status_type3 = StatusType.objects.get_or_create(
            statustypeomschrijving='Product opgesteld',
            statustypevolgnummer='5',
            zaaktype=zaak_type,
        )

        status_type4 = StatusType.objects.get_or_create(
            statustypeomschrijving='Zaak afgerond',
            statustypevolgnummer='7',
            zaaktype=zaak_type,
        )

        organisatorische_eenheid = OrganisatorischeEenheidFactory.create(
            identificatie='organisatorischeEenheid',
            naam='Naam',
            organisatieeenheididentificatie='organisatorischeEenheid',
            organisatieidentificatie='0',
            gevestigd_in__is_specialisatie_van__identificatie='012345678910',
            gevestigd_in__is_specialisatie_van__handelsnaam=['handelsnaam', ],
        )

        # OverigeAdresseerbaarObjectAanduidingObjectFactory.create(
        #     identificatie='0123456789101112',
        #     woonplaatsnaam='woonplaatsNaam',
        #     naam_openbare_ruimte='openbareRuimteNaam',
        #     huisnummer=99999,
        #     huisletter='A',
        #     huisnummertoevoeging='',
        # )

        # Required for creeerZaak_zakLk01 volgnummer 5

        # Deelzaak en Andere zaak
        ZaakFactory.create(
            zaakidentificatie='0123456789',
            omschrijving='omschrijving',
        )

        NatuurlijkPersoon.objects.filter(
            burgerservicenummer=self.context['gemeentecode'] + '56789'
        ).delete()
        NatuurlijkPersoonFactory.create(burgerservicenummer=self.context['gemeentecode'] + '56789')

        # Required for creeerZaak_zakLk01 volgnummer 7
        NietNatuurlijkPersoon.objects.filter(
            rsin=self.context['gemeentecode'] + '56789'
        ).delete()
        NietNatuurlijkPersoonFactory.create(rsin=self.context['gemeentecode'] + '56789')

        # Required for creeerZaak_zakLk01 volgnummer 9, 11 and 13
        Vestiging.objects.filter(identificatie='010203040506').delete()
        VestigingFactory.create(identificatie='010203040506')

        # Required for creeerZaak_zakLk01 volgnummer 13
        medewerkers = [{
            'medewerkeridentificatie': self.context['gemeentecode'] + '56791',
            'achternaam': 'achternaam22',
            'voorletters': 'voorletters22',
            'voorvoegsel_achternaam': 'voorvoeg22',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56790',
            'achternaam': 'achternaam20',
            'voorletters': 'voorletters20',
            'voorvoegsel_achternaam': 'voorvoeg20',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56789',
            'achternaam': 'achternaam22',
            'voorletters': 'voorletters22',
            'voorvoegsel_achternaam': 'voorvoeg22',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56788',
            'achternaam': 'achternaam2',
            'voorletters': 'voorletters2',
            'voorvoegsel_achternaam': 'voorvoeg2',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56787',
            'achternaam': 'achternaam22',
            'voorletters': 'voorletters22',
            'voorvoegsel_achternaam': 'voorvoeg22',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56786',
            'achternaam': 'achternaam6',
            'voorletters': 'voorletters6',
            'voorvoegsel_achternaam': 'voorvoeg6',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56785',
            'achternaam': 'unknown',
            'voorletters': 'unknown',
            'voorvoegsel_achternaam': 'unknown',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56784',
            'achternaam': 'achternaam22',
            'voorletters': 'voorletters22',
            'voorvoegsel_achternaam': 'voorvoeg22',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56783',
            'achternaam': 'achternaam2',
            'voorletters': 'voorletters2',
            'voorvoegsel_achternaam': 'voorvoeg2',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56782',
            'achternaam': 'achternaam22',
            'voorletters': 'voorletters22',
            'voorvoegsel_achternaam': 'voorvoeg22',
            'organisatorische_eenheid': None,
        }, {
            'medewerkeridentificatie': self.context['gemeentecode'] + '56781',
            'achternaam': 'achternaam2',
            'voorletters': 'voorletters2',
            'voorvoegsel_achternaam': 'voorvoeg2',
            'organisatorische_eenheid': None,
        }, ]
        for medewerker in medewerkers:
            Medewerker.objects.get_or_create(defaults={
                'geslachtsaanduiding': GeslachtsAanduiding.onbekend,
            }, **medewerker)

        InformatieObjectType.objects.filter(informatieobjecttypeomschrijving='omschrijving').delete()
        InformatieObjectType.objects.filter(informatieobjecttypeomschrijving='Aanvraag burgerservicenummer behandelen').delete()
        InformatieObjectTypeFactory.create(informatieobjecttypeomschrijving='omschrijving')
        InformatieObjectTypeFactory.create(informatieobjecttypeomschrijving='Aanvraag burgerservicenummer behandelen')

        oeh2_defaults = {
            'organisatieeenheididentificatie': "0123456785",
            'organisatieidentificatie': "0123456785"[:4],
            'naam': 'naam2',
            'gevestigd_in': organisatorische_eenheid.gevestigd_in,
        }

        organisatorische_eenheid, _ = OrganisatorischeEenheid.objects.get_or_create(
            identificatie="0123456785",
            defaults=oeh2_defaults,
        )

        # For actualiseerZaakstatus volgnummer 1
        OrganisatorischeEenheid.objects.get_or_create(
            identificatie='0123456789',
            organisatieeenheididentificatie="0123456789",
            organisatieidentificatie="0123456789"[:4],
            defaults={
                'naam': '0123456789',
                'gevestigd_in': organisatorische_eenheid.gevestigd_in,
            }
        )

        # For actualiseerZaakstatus volgnummer 5
        # TODO [KING]: Deze organisatorische eenheid is volgens de test ergens anders
        # gevestigd.
        OrganisatorischeEenheid.objects.get_or_create(
            identificatie='01234567890',
            organisatieeenheididentificatie="01234567890",
            organisatieidentificatie="01234567890"[:4],
            defaults={
                'naam': '01234567890',
                'gevestigd_in': organisatorische_eenheid.gevestigd_in,
            }
        )

        NatuurlijkPersoon.objects.filter(
            burgerservicenummer='012345678'
        ).delete()
        natuurlijk_persoon = NatuurlijkPersoonFactory.create(
            burgerservicenummer='012345678',
            naam_geslachtsnaam='geslachtsnaam5',
            naam_voorvoegsel_geslachtsnaam_voorvoegsel='voorvoeg5',
            naam_aanschrijving_voorletters_aanschrijving='voorletters5',
            naam_voornamen='voornamen5',
            geslachtsaanduiding='M',
            geboortedatum_ingeschreven_persoon=self.genereerdatum(),
        )

        NietNatuurlijkPersoon.objects.filter(
            rsin='012345678',
            statutaire_naam='statutaireNaam'
        ).delete()
        niet_natuurlijk_persoon = NietNatuurlijkPersoonFactory.create(
            rsin='012345678',
            statutaire_naam='statutaireNaam'
        )

        # This is the default BesluitType.
        BesluitType.objects.get_or_create(
            besluittypeomschrijving=None,
            defaults={
                'domein': 'dom',
                'rsin': 12345,
                'reactietermijn': 5,
                'publicatie_indicatie': 'J',
                'datum_begin_geldigheid_besluittype': self.genereerdatum(),
            }
        )

        BesluitType.objects.get_or_create(
            besluittypeomschrijving='omschrijving',
            defaults={
                'domein': 'dom',
                'rsin': 12345,
                'reactietermijn': 5,
                'publicatie_indicatie': 'J',
                'datum_begin_geldigheid_besluittype': self.genereerdatum(),
            }
        )
        BesluitType.objects.get_or_create(
            besluittypeomschrijving='bst.omschrijving',
            defaults={
                'domein': 'dom',
                'rsin': 12345,
                'reactietermijn': 5,
                'publicatie_indicatie': 'J',
                'datum_begin_geldigheid_besluittype': self.genereerdatum(),
            }
        )


        BesluitType.objects.get_or_create(
            besluittypeomschrijving='bst.omschrijving3',
            defaults={
                'domein': 'dom',
                'rsin': 12345,
                'reactietermijn': 5,
                'publicatie_indicatie': 'J',
                'datum_begin_geldigheid_besluittype': self.genereerdatum(),
            }
        )