def __call__(self, attrs: dict): selectielijstklasse_url = attrs.get(self.selectielijstklasse_field) archiefprocedure = attrs.get(self.archiefprocedure_field) if not selectielijstklasse_url or not archiefprocedure: return selectielijstklasse = fetch_object("resultaat", selectielijstklasse_url) procestermijn = selectielijstklasse["procestermijn"] afleidingswijze = archiefprocedure["afleidingswijze"] error = False if not procestermijn: return if (procestermijn == Procestermijn.nihil and afleidingswijze != Afleidingswijze.afgehandeld) or ( procestermijn != Procestermijn.nihil and afleidingswijze == Afleidingswijze.afgehandeld): error = True elif (procestermijn == Procestermijn.ingeschatte_bestaansduur_procesobject and afleidingswijze != Afleidingswijze.termijn) or ( procestermijn != Procestermijn.ingeschatte_bestaansduur_procesobject and afleidingswijze == Afleidingswijze.termijn): error = True if error: raise ValidationError(self.message.format(afleidingswijze, procestermijn), code=self.code)
def _get_object(self) -> dict: """ Retrieve the `Object` specified as URL in `ZaakObject.object`. :return: A `dict` representing the object. """ if not hasattr(self, "_object"): object_url = self.object self._object = None if object_url: self._object = fetch_object(self.object_type.lower(), url=object_url) return self._object
def __call__(self, attrs: dict): selectielijstklasse_url = attrs.get(self.relation_field) zaaktype = attrs.get(self.zaaktype_field) if not selectielijstklasse_url: return selectielijstklasse = fetch_object("resultaat", selectielijstklasse_url) if selectielijstklasse["procesType"] != zaaktype.selectielijst_procestype: raise ValidationError( self.message.format(self.relation_field, self.zaaktype_field), code=self.code, )