Source code for bo4e.bo.ansprechpartner

"""
Contains Ansprechpartner class
and corresponding marshmallow schema for de-/serialization
"""
from typing import Annotated, Optional

from pydantic import Field

from ..com.adresse import Adresse
from ..com.rufnummer import Rufnummer
from ..com.zustaendigkeit import Zustaendigkeit
from ..enum.anrede import Anrede
from ..enum.titel import Titel
from ..enum.typ import Typ
from ..utils import postprocess_docstring
from .geschaeftsobjekt import Geschaeftsobjekt
from .geschaeftspartner import Geschaeftspartner

# pylint: disable=too-many-instance-attributes, too-few-public-methods


[docs] @postprocess_docstring class Ansprechpartner(Geschaeftsobjekt): """ Object containing information about a Ansprechpartner .. raw:: html <object data="../_static/images/bo4e/bo/Ansprechpartner.svg" type="image/svg+xml"></object> .. HINT:: `Ansprechpartner JSON Schema <https://json-schema.app/view/%23?url=https://raw.githubusercontent.com/Hochfrequenz/BO4E-Schemas/{__gh_version__}/src/bo4e_schemas/bo/Ansprechpartner.json>`_ """ typ: Annotated[Optional[Typ], Field(alias="_typ")] = Typ.ANSPRECHPARTNER individuelle_anrede: Optional[str] = None """ Im Falle einer nicht standardisierten Anrede kann hier eine frei definierbare Anrede vorgegeben werden. Beispiel: "Sehr geehrte Frau Müller, sehr geehrter Herr Dr. Müller" """ anrede: Optional[Anrede] = None #: Mögliche Anrede des Ansprechpartners titel: Optional[Titel] = None #: Möglicher Titel des Ansprechpartners vorname: Optional[str] = None #: Vorname des Ansprechpartners nachname: Optional[str] = None #: Nachname (Familienname) des Ansprechpartners e_mail_adresse: Optional[str] = None #: E-Mail Adresse geschaeftspartner: Optional[ Geschaeftspartner ] = None #: Der Geschäftspartner, für den dieser Ansprechpartner modelliert wird #: Adresse des Ansprechpartners, falls diese von der Adresse des Geschäftspartners abweicht adresse: Optional[Adresse] = None #: Liste der Telefonnummern, unter denen der Ansprechpartner erreichbar ist rufnummer: Optional[Rufnummer] = None # todo: make this a list and rename to rufnummern kommentar: Optional[str] = None #: Weitere Informationen zum Ansprechpartner #: Liste der Abteilungen und Zuständigkeiten des Ansprechpartners zustaendigkeit: Optional[Zustaendigkeit] = None # todo: make this a list and rename to "zustaendigkeiten"