"""
Contains Ausschreibungslos class and corresponding marshmallow schema for de-/serialization
"""
# pylint: disable=too-few-public-methods, too-many-instance-attributes
# pylint: disable=no-name-in-module
from typing import TYPE_CHECKING, Optional
from ..utils import postprocess_docstring
from .com import COM
if TYPE_CHECKING:
from ..enum.preismodell import Preismodell
from ..enum.rechnungslegung import Rechnungslegung
from ..enum.sparte import Sparte
from ..enum.vertragsform import Vertragsform
from .ausschreibungsdetail import Ausschreibungsdetail
from .menge import Menge
from .zeitraum import Zeitraum
[docs]
@postprocess_docstring
class Ausschreibungslos(COM):
"""
Eine Komponente zur Abbildung einzelner Lose einer Ausschreibung
.. raw:: html
<object data="../_static/images/bo4e/com/Ausschreibungslos.svg" type="image/svg+xml"></object>
.. HINT::
`Ausschreibungslos JSON Schema <https://json-schema.app/view/%23?url=https://raw.githubusercontent.com/BO4E/BO4E-Schemas/{__gh_version__}/src/bo4e_schemas/com/Ausschreibungslos.json>`_
"""
#: Laufende Nummer des Loses
losnummer: Optional[str] = None
#: Bezeichnung der Ausschreibung
bezeichnung: Optional[str] = None
#: Bezeichnung der Preismodelle in Ausschreibungen für die Energielieferung
preismodell: Optional["Preismodell"] = None
#: Unterscheidungsmöglichkeiten für die Sparte
energieart: Optional["Sparte"] = None
#: Aufzählung der Möglichkeiten zur Rechnungslegung in Ausschreibungen
wunsch_rechnungslegung: Optional["Rechnungslegung"] = None
#: Aufzählung der Möglichkeiten zu Vertragsformen in Ausschreibungen
wunsch_vertragsform: Optional["Vertragsform"] = None
#: Name des Lizenzpartners
betreut_durch: Optional[str] = None
#: Anzahl der Lieferstellen in dieser Ausschreibung
anzahl_lieferstellen: Optional[int] = None
#: Die ausgeschriebenen Lieferstellen
lieferstellen: Optional[list["Ausschreibungsdetail"]] = None
#: Zeitraum, für den die in diesem Los enthaltenen Lieferstellen beliefert werden sollen
lieferzeitraum: Optional["Zeitraum"] = None
#: Bemerkung des Kunden zum Los
bemerkung: Optional[str] = None
#: Gibt den Gesamtjahresverbrauch (z.B. in kWh) aller in diesem Los enthaltenen Lieferstellen an
gesamt_menge: Optional["Menge"] = None
#: Mindesmenge Toleranzband (kWh, %)
wunsch_mindestmenge: Optional["Menge"] = None
#: Maximalmenge Toleranzband (kWh, %)
wunsch_maximalmenge: Optional["Menge"] = None
wiederholungsintervall: Optional["Zeitraum"] = None
"""
In welchem Intervall die Angebotsabgabe wiederholt werden darf.
Angabe nur gesetzt für die 2. Phase bei öffentlich-rechtlichen Ausschreibungen
"""
#: Kundenwunsch zur Kündigungsfrist in der Ausschreibung
wunsch_kuendingungsfrist: Optional["Zeitraum"] = None
#: Kundenwunsch zum Zahlungsziel in der Ausschreibung
wunsch_zahlungsziel: Optional["Zeitraum"] = None