Skip to content

Commit a35cbe4

Browse files
author
Simon Blank
committed
#1047 change BO Energiemenge and use it instead of COM Verbrauch
1 parent fbaef5d commit a35cbe4

4 files changed

Lines changed: 20 additions & 15 deletions

File tree

src/bo4e/bo/energiemenge.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,9 @@
1111
from .geschaeftsobjekt import Geschaeftsobjekt
1212

1313
if TYPE_CHECKING:
14+
from ..com.menge import Menge
1415
from ..com.verbrauch import Verbrauch
15-
from ..enum.lokationstyp import Lokationstyp
16+
from ..com.zeitraum import Zeitraum
1617

1718

1819
# pylint: disable=too-few-public-methods
@@ -34,11 +35,11 @@ class Energiemenge(Geschaeftsobjekt):
3435
"""
3536

3637
typ: Annotated[Literal[BoTyp.ENERGIEMENGE], Field(alias="_typ")] = BoTyp.ENERGIEMENGE
37-
lokations_id: Optional[str] = None
38-
"""Eindeutige Nummer der Marktlokation bzw. der Messlokation, zu der die Energiemenge gehört"""
39-
lokationstyp: Optional["Lokationstyp"] = None
40-
"""Gibt an, ob es sich um eine Markt- oder Messlokation handelt"""
41-
42-
energieverbrauch: Optional[list["Verbrauch"]] = None
43-
"""Gibt den Verbrauch in einer Zeiteinheit an"""
44-
# there are no optional attributes
38+
obis_kennzahl: Optional[str] = None
39+
"""Die OBIS-Kennzahl der Energiemenge"""
40+
beschreibung: Optional[str] = None
41+
"""Ergänzende Beschreibung zur Energiemenge"""
42+
zeitraum: Optional["Zeitraum"] = None
43+
"""Zeitraum, in dem die Energiemenge angefallen ist/gemessen wurde"""
44+
menge: Optional["Menge"] = None
45+
"""Die angefallene/gemessene Menge"""

src/bo4e/bo/marktlokation.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@
1212
from .geschaeftsobjekt import Geschaeftsobjekt
1313

1414
if TYPE_CHECKING:
15+
from ..bo.energiemenge import Energiemenge
1516
from ..com.adresse import Adresse
1617
from ..com.geokoordinaten import Geokoordinaten
1718
from ..com.katasteradresse import Katasteradresse
18-
from ..com.verbrauch import Verbrauch
1919
from ..com.zaehlwerk import Zaehlwerk
2020
from ..enum.bilanzierungsmethode import Bilanzierungsmethode
2121
from ..enum.energierichtung import Energierichtung
@@ -103,7 +103,7 @@ class Marktlokation(Geschaeftsobjekt):
103103
marktgebiet: Optional[str] = None
104104
"""für Gas. Code vom EIC, https://www.entsog.eu/data/data-portal/codes-list"""
105105
zaehlwerke: Optional[list["Zaehlwerk"]] = None
106-
verbrauchsmengen: Optional[list["Verbrauch"]] = None
106+
verbrauchsmengen: Optional[list["Energiemenge"]] = None
107107
zaehlwerke_der_beteiligten_marktrolle: Optional[list["Zaehlwerk"]] = None
108108

109109
lokationszuordnungen: Optional[list["Lokationszuordnung"]] = None

tests/test_energiemenge.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import pytest
22

3-
from bo4e import Energiemenge, Lokationstyp, Verbrauch
3+
from bo4e import Energiemenge, Menge, Zeitraum
4+
45
from tests.serialization_helper import assert_serialization_roundtrip
56

67

@@ -10,9 +11,10 @@ class TestEnergiemenge:
1011
[
1112
pytest.param(
1213
Energiemenge(
13-
lokations_id="DE0123456789012345678901234567890",
14-
lokationstyp=Lokationstyp.MELO,
15-
energieverbrauch=[Verbrauch()],
14+
obis_kennzahl="1-0:1.8.1",
15+
beschreibung="Eine Beschreibung",
16+
zeitraum=Zeitraum(),
17+
menge=Menge(),
1618
),
1719
id="all attributes at first level",
1820
),

tests/test_marktlokation.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
from bo4e import (
44
Adresse,
55
Bilanzierungsmethode,
6+
Energiemenge,
67
Energierichtung,
78
Geschaeftspartner,
89
Kundentyp,
@@ -29,6 +30,7 @@ class TestMaLo:
2930
netzebene=Netzebene.NSP,
3031
endkunde=Geschaeftspartner(),
3132
kundengruppen=[Kundentyp.GEWERBE, Kundentyp.PRIVAT],
33+
verbrauchsmengen=[Energiemenge()],
3234
lokationsbuendel_objektcode="9992 00000 125 6",
3335
lokationszuordnungen=[Lokationszuordnung()],
3436
)

0 commit comments

Comments
 (0)