Source code for bo4e.bo.fremdkosten

"""
Contains Fremdkosten class and corresponding marshmallow schema for de-/serialization
"""

from typing import Annotated, Optional

from pydantic import Field

from ..com.betrag import Betrag
from ..com.fremdkostenblock import Fremdkostenblock
from ..com.zeitraum import Zeitraum
from ..enum.typ import Typ
from ..utils import postprocess_docstring
from .geschaeftsobjekt import Geschaeftsobjekt

# pylint: disable=too-few-public-methods


[docs] @postprocess_docstring class Fremdkosten(Geschaeftsobjekt): """ Mit diesem BO werden die Fremdkosten, beispielsweise für eine Angebotserstellung oder eine Rechnungsprüfung, übertragen. Die Fremdkosten enthalten dabei alle Kostenblöcke, die von anderen Marktteilnehmern oder Instanzen erhoben werden. .. raw:: html <object data="../_static/images/bo4e/bo/Fremdkosten.svg" type="image/svg+xml"></object> .. HINT:: `Fremdkosten JSON Schema <https://json-schema.app/view/%23?url=https://raw.githubusercontent.com/BO4E/BO4E-Schemas/{__gh_version__}/src/bo4e_schemas/bo/Fremdkosten.json>`_ """ typ: Annotated[Optional[Typ], Field(alias="_typ")] = Typ.FREMDKOSTEN #: Für diesen Zeitraum wurden die Kosten ermittelt gueltigkeit: Optional[Zeitraum] = None #: Die Gesamtsumme über alle Kostenblöcke und -positionen summe_kosten: Optional[Betrag] = None #: In Kostenblöcken werden Kostenpositionen zusammengefasst. Beispiele: Netzkosten, Umlagen, Steuern etc kostenbloecke: Optional[list[Fremdkostenblock]] = None