
package de.ivu.elect.dokumente.ergebnistabelle;

import de.ivu.elect.business.ergebnis.entity.Stimmabgabeart;
import de.ivu.elect.core.exchange.stimmen.csv.StimmenCsvDTO;

public interface ErgebnistabelleCsvDTO extends StimmenCsvDTO {

  default boolean isGesamt() {
    return Stimmabgabeart.GESAMT.equals(getStimmabgabeart());
  }

  default boolean isBriefwahl() {
    return Stimmabgabeart.BRIEF.equals(getStimmabgabeart());
  }

  default boolean isUrnenwahl() {
    return Stimmabgabeart.URNE.equals(getStimmabgabeart());
  }

  Stimmabgabeart getStimmabgabeart();

  void setStimmabgabeart(Stimmabgabeart stimmabgabeart);

  default boolean isCustom() {
    return getZeileArt().isCustom();
  }

  default boolean isSumme() {
    return ErgebnistabelleZeileArt.SUMME.equals(getZeileArt());
  }

  ErgebnistabelleZeileArt getZeileArt();

  void setZeileArt(ErgebnistabelleZeileArt zeileArt);
}
