Skip to content
Draft
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
4 changes: 0 additions & 4 deletions src/bo4e/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
"Angebot",
"Ausschreibung",
"Bilanzierung",
"Buendelvertrag",
"Energiemenge",
"Fremdkosten",
"Geraet",
Expand Down Expand Up @@ -95,7 +94,6 @@
"Umschaltzeit",
"Zaehlzeitsaison",
"Zaehlzeittagtyp",
"Unterschrift",
"Vertragskonditionen",
"Vertragsteil",
"VerwendungszweckProMarktrolle",
Expand Down Expand Up @@ -215,7 +213,6 @@
from .bo.angebot import Angebot
from .bo.ausschreibung import Ausschreibung
from .bo.bilanzierung import Bilanzierung
from .bo.buendelvertrag import Buendelvertrag
from .bo.energiemenge import Energiemenge
from .bo.fremdkosten import Fremdkosten
from .bo.geraet import Geraet
Expand Down Expand Up @@ -298,7 +295,6 @@
from .com.tarifpreisposition import Tarifpreisposition
from .com.tarifpreiszeitscheibe import Tarifpreiszeitscheibe
from .com.umschaltzeit import Umschaltzeit
from .com.unterschrift import Unterschrift
from .com.vertragskonditionen import Vertragskonditionen
from .com.vertragsteil import Vertragsteil
from .com.verwendungszweckpromarktrolle import VerwendungszweckProMarktrolle
Expand Down
76 changes: 0 additions & 76 deletions src/bo4e/bo/buendelvertrag.py

This file was deleted.

32 changes: 17 additions & 15 deletions src/bo4e/bo/vertrag.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@
from .geschaeftsobjekt import Geschaeftsobjekt

if TYPE_CHECKING:
from ..com.unterschrift import Unterschrift
from ..com.vertragskonditionen import Vertragskonditionen
from ..com.vertragsteil import Vertragsteil
from ..enum.sparte import Sparte
from ..enum.vertragsart import Vertragsart
from ..enum.vertragsstatus import Vertragsstatus
from .geschaeftspartner import Geschaeftspartner
from .produkt import Produkt

# pylint: disable=unused-argument
# pylint: disable=no-name-in-module
Expand Down Expand Up @@ -56,29 +56,31 @@ class Vertrag(Geschaeftsobjekt):
vertragsende: Optional[pydantic.AwareDatetime] = None
"""Gibt an, wann der Vertrag (voraussichtlich) endet oder beendet wurde (exklusiv)"""
# todo: add von/bis validator
vertragspartner1: Optional["Geschaeftspartner"] = None
vertragsaussteller: Optional["Geschaeftspartner"] = None
"""
Der "erstgenannte" Vertragspartner.
In der Regel der Aussteller des Vertrags.
Beispiel: "Vertrag zwischen Vertragspartner 1 ..."
Der Aussteller des Vertrags (in der Regel der "erstgenannte" Vertragspartner).
Beispiel: "Vertrag zwischen Vertragsaussteller ..."
"""
vertragspartner2: Optional["Geschaeftspartner"] = None
vertragsempfaenger: Optional["Geschaeftspartner"] = None
"""
Der "zweitgenannte" Vertragspartner.
In der Regel der Empfänger des Vertrags.
Beispiel "Vertrag zwischen Vertragspartner 1 und Vertragspartner 2".
Der Empfänger des Vertrags (in der Regel der "zweitgenannte" Vertragspartner).
Beispiel "Vertrag zwischen Vertragsaussteller und Vertragsempfänger".
"""
vertragsteile: Optional[list["Vertragsteil"]] = None
"""
Der Vertragsteil wird dazu verwendet, eine vertragliche Leistung in Bezug zu einer Lokation
(Markt- oder Messlokation) festzulegen.
Der Vertragsteil wird dazu verwendet, eine vertragliche Leistung in Bezug zu einer
Lokationszuordnung (Markt-, Mess-, Netzlokationen etc.) festzulegen.
"""

beschreibung: Optional[str] = None
"""Beschreibung zum Vertrag"""
vertragskonditionen: Optional["Vertragskonditionen"] = None
"""Festlegungen zu Laufzeiten und Kündigungsfristen"""
unterzeichnervp1: Optional[list["Unterschrift"]] = None
"""Unterzeichner des Vertragspartners 1"""
unterzeichnervp2: Optional[list["Unterschrift"]] = None
"""Unterzeichner des Vertragspartners 2"""
vertragsabschluss_datum: Optional[pydantic.AwareDatetime] = None
"""
Datum, an dem der Vertrag geschlossen (angenommen und unterschrieben) wurde.
"""
kuendigungsgrund: Optional[str] = None
"""Grund für die Kündigung des Vertrags"""
produkt: Optional["Produkt"] = None
"""Das dem Vertrag zugrundeliegende Produkt"""
39 changes: 0 additions & 39 deletions src/bo4e/com/unterschrift.py

This file was deleted.

5 changes: 1 addition & 4 deletions src/bo4e/com/vertragskonditionen.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
Contains Vertragskonditionen class
"""

from decimal import Decimal
from typing import TYPE_CHECKING, Annotated, Literal, Optional

from pydantic import Field
Expand Down Expand Up @@ -38,10 +37,8 @@ class Vertragskonditionen(COM):
"""
Freitext zur Beschreibung der Konditionen, z.B. "Standardkonditionen Gas"
"""
anzahl_abschlaege: Optional[Decimal] = None
anzahl_abschlaege: Optional[int] = None
"""Anzahl der vereinbarten Abschläge pro Jahr, z.B. 12"""
vertragslaufzeit: Optional["Zeitraum"] = None
"""Über diesen Zeitraum läuft der Vertrag"""
kuendigungsfrist: Optional["Zeitraum"] = None
"""Innerhalb dieser Frist kann der Vertrag gekündigt werden"""
vertragsverlaengerung: Optional["Zeitraum"] = None
Expand Down
9 changes: 5 additions & 4 deletions src/bo4e/com/vertragsteil.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

if TYPE_CHECKING:

from ..bo.lokationszuordnung import Lokationszuordnung
from .menge import Menge

# pylint: disable=too-few-public-methods
Expand All @@ -22,7 +23,7 @@
class Vertragsteil(COM):
"""
Abbildung für einen Vertragsteil. Der Vertragsteil wird dazu verwendet,
eine vertragliche Leistung in Bezug zu einer Lokation (Markt- oder Messlokation) festzulegen.
eine vertragliche Leistung in Bezug zu einer Lokationszuordnung (Markt-, Mess-, Netzlokationen etc.) festzulegen.

.. raw:: html

Expand All @@ -44,10 +45,10 @@ class Vertragsteil(COM):
Ende der Gültigkeit des Vertragsteils (exklusiv)
"""

lokation: Optional[str] = None
lokationszuordnung: Optional["Lokationszuordnung"] = None
"""
Der Identifier für diejenigen Markt- oder Messlokation, die zu diesem Vertragsteil gehören.
Verträge für mehrere Lokationen werden mit mehreren Vertragsteilen abgebildet
Die Lokationszuordnung (Markt-, Mess-, Netzlokationen etc.), die zu diesem Vertragsteil gehört.
Verträge für mehrere Lokationen werden mit mehreren Vertragsteilen abgebildet.
"""
vertraglich_fixierte_menge: Optional["Menge"] = None
"""
Expand Down
1 change: 0 additions & 1 deletion src/bo4e/enum/botyp.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ class BoTyp(StrEnum):
ANGEBOT = "ANGEBOT"
AUSSCHREIBUNG = "AUSSCHREIBUNG"
BILANZIERUNG = "BILANZIERUNG"
BUENDELVERTRAG = "BUENDELVERTRAG"
ENERGIEMENGE = "ENERGIEMENGE"
FREMDKOSTEN = "FREMDKOSTEN"
GERAET = "GERAET"
Expand Down
1 change: 0 additions & 1 deletion src/bo4e/enum/comtyp.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,6 @@ class ComTyp(StrEnum):
TARIFPREISPOSITION = "TARIFPREISPOSITION"
TARIFPREISZEITSCHEIBE = "TARIFPREISZEITSCHEIBE"
UMSCHALTZEIT = "UMSCHALTZEIT"
UNTERSCHRIFT = "UNTERSCHRIFT"
VERTRAGSKONDITIONEN = "VERTRAGSKONDITIONEN"
VERTRAGSTEIL = "VERTRAGSTEIL"
VERWENDUNGSZWECKPROMARKTROLLE = "VERWENDUNGSZWECKPROMARKTROLLE"
Expand Down
20 changes: 5 additions & 15 deletions src/bo4e/enum/vertragsstatus.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,21 +8,11 @@ class Vertragsstatus(StrEnum):
Abbildung einer Statusinformation für Verträge.
"""

IN_ARBEIT = "IN_ARBEIT"
"""in Arbeit"""
UEBERMITTELT = "UEBERMITTELT"
"""übermittelt"""
ANGENOMMEN = "ANGENOMMEN"
"""angenommen"""
AKTIV = "AKTIV"
"""aktiv"""
ABGELEHNT = "ABGELEHNT"
"""abgelehnt"""
WIDERRUFEN = "WIDERRUFEN"
"""widerrufen"""
STORNIERT = "STORNIERT"
"""storniert"""
"""aktiv; die Beendigung wird über das Vertragsende modelliert"""
GEKUENDIGT = "GEKUENDIGT"
"""gekündigt"""
BEENDET = "BEENDET"
"""beendet"""
STORNIERT = "STORNIERT"
"""storniert (durch den Vertragsaussteller)"""
WIDERRUFEN = "WIDERRUFEN"
"""widerrufen (durch den Vertragsempfänger)"""
7 changes: 2 additions & 5 deletions tests/test_adresse.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
Person,
Sparte,
Titel,
Unterschrift,
Vertrag,
Vertragsart,
Vertragskonditionen,
Expand All @@ -34,7 +33,7 @@ class TestVertrag:
sparte=Sparte.STROM,
vertragsbeginn=datetime(2021, 4, 30, 13, 45, tzinfo=timezone.utc),
vertragsende=datetime(2021, 6, 5, 16, 30, tzinfo=timezone.utc),
vertragspartner1=Geschaeftspartner(
vertragsaussteller=Geschaeftspartner(
ansprechpartner=[Person(), Person()],
anrede=Anrede.EHELEUTE,
individuelle_anrede="Künstler",
Expand All @@ -54,7 +53,7 @@ class TestVertrag:
hausnummer="3",
),
),
vertragspartner2=Geschaeftspartner(
vertragsempfaenger=Geschaeftspartner(
ansprechpartner=[Person(), Person()],
organisationstyp=Organisationstyp.UNTERNEHMEN,
organisationsname="Hochfrequenz",
Expand All @@ -78,8 +77,6 @@ class TestVertrag:
],
beschreibung="Hello Vertrag",
vertragskonditionen=Vertragskonditionen(beschreibung="Beschreibung"),
unterzeichnervp1=[Unterschrift(name="Foo")],
unterzeichnervp2=[Unterschrift(name="Bar"), Unterschrift(name="Dr.No")],
),
),
],
Expand Down
43 changes: 0 additions & 43 deletions tests/test_buendelvertrag.py

This file was deleted.

Loading
Loading