<?php
/**
 * @copyright (c) Kufer Software GmbH, Oderstraße 7, D-84453 Mühldorf
 */

class EPayBlBuchungsInfos
{
  // Typ wird benötigt, um beim Erzeugen der Beschreibung zwischen "Kurs", "Artikel"
  // und "Sonstige Position" unterscheiden zu können.
  const WARENKORBOBJEKT_TYP_KURS = 'K';
  const WARENKORBOBJEKT_TYP_ARTIKEL = 'A';
  const WARENKORBOBJEKT_TYP_SONST_POSTEN = 'S';

  public $nr;
  public $typ;
  public $objektnummer;
  public $haushaltstelle;
  public $betrag;

  public function __construct($nr, $typ, $objektnummer, $haushaltstelle, $betrag)
  {
    $this->nr = $nr;
    $this->objektnummer = $objektnummer;
    $this->haushaltstelle = $haushaltstelle;
    $this->betrag = $betrag;

    if ($typ !== self::WARENKORBOBJEKT_TYP_KURS && $typ !== self::WARENKORBOBJEKT_TYP_ARTIKEL && $typ !== self::WARENKORBOBJEKT_TYP_SONST_POSTEN) {
      throw new InvalidArgumentException('Ungültiger Typ');
    }
    $this->typ = $typ;
  }
}

