Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add geburtsdatum as optional field to BO Geschaeftspartner #493

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions src/bo4e/bo/geschaeftspartner.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
Contains Geschaeftspartner class
and corresponding marshmallow schema for de-/serialization
"""
from datetime import datetime

# pylint: disable=too-many-instance-attributes, too-few-public-methods
from typing import List, Optional

Expand Down Expand Up @@ -65,6 +67,13 @@ class Geschaeftspartner(Geschaeftsobjekt):
Hier können weitere Ergänzungen zum Firmennamen oder bei Privatpersonen Zusätze zum Namen dagestellt werden.
Beispiele: und Afrika oder Sängerin
"""

geburtsdatum: Optional[datetime] = None
"""
Geburtsdatum (bei Privatpersonen, sonst null)
"""
# the GeburtsDATUM is modelled as datetime to be consistent with all other dateTIMEs in this library

#: Handelsregisternummer des Geschäftspartners
hrnummer: Optional[str] = None
#: Amtsgericht bzw Handelsregistergericht, das die Handelsregisternummer herausgegeben hat
Expand Down
4 changes: 4 additions & 0 deletions tests/test_buendelvertrag.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ class TestBuendelvertrag:
name1="van der Waal",
name2="Helga",
name3=None,
geburtsdatum=None,
gewerbekennzeichnung=True,
kontaktweg=[Kontaktart.SMS],
umsatzsteuer_id="DE267311963",
Expand All @@ -44,6 +45,7 @@ class TestBuendelvertrag:
_vertragspartner2 = Geschaeftspartner(
name1="Eckart",
name2="Björn",
geburtsdatum=None,
gewerbekennzeichnung=False,
geschaeftspartnerrolle=[Geschaeftspartnerrolle.DIENSTLEISTER],
partneradresse=Adresse(
Expand All @@ -57,6 +59,7 @@ class TestBuendelvertrag:
"anrede": Anrede.FRAU,
"name1": "van der Waal",
"name2": "Helga",
"geburtsdatum": None,
"name3": None,
"gewerbekennzeichnung": True,
"kontaktweg": [Kontaktart.SMS],
Expand Down Expand Up @@ -85,6 +88,7 @@ class TestBuendelvertrag:
_vertragspartner2_dict: Dict[str, Any] = {
"name1": "Eckart",
"name2": "Björn",
"geburtsdatum": None,
"gewerbekennzeichnung": False,
"geschaeftspartnerrolle": [Geschaeftspartnerrolle.DIENSTLEISTER],
"partneradresse": {
Expand Down
2 changes: 2 additions & 0 deletions tests/test_vertrag.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ class TestVertrag:
"boTyp": BoTyp.GESCHAEFTSPARTNER,
"externeReferenzen": [],
"name1": "von Sinnen",
"geburtsdatum": None,
"gewerbekennzeichnung": True,
"geschaeftspartnerrolle": [Geschaeftspartnerrolle.DIENSTLEISTER],
"anrede": "FRAU",
Expand Down Expand Up @@ -98,6 +99,7 @@ class TestVertrag:
"boTyp": BoTyp.GESCHAEFTSPARTNER,
"externeReferenzen": [],
"name1": "Eckart",
"geburtsdatum": None,
"gewerbekennzeichnung": False,
"geschaeftspartnerrolle": [Geschaeftspartnerrolle.DIENSTLEISTER],
"anrede": None,
Expand Down