
package de.ivu.elect.dokumente.ergebnistabelle;

import org.jsefa.csv.annotation.CsvField;

import de.ivu.elect.business.ergebnis.entity.Stimmabgabeart;
import de.ivu.elect.core.exchange.stimmen.csv.AbstractStimmenCsvDTO;
import de.ivu.jsefa.CsvHeader;

public abstract class AbstractErgebnistabelleCsvDTO extends AbstractStimmenCsvDTO implements ErgebnistabelleCsvDTO {

  public static final int ERGEBNISTABELLE_ERSTE_POSITION = LETZTE_POSITION + 1;

  public static final int ERGEBNISTABELLE_LETZTE_POSITION = ERGEBNISTABELLE_ERSTE_POSITION + 1;

  @CsvField(pos = ERGEBNISTABELLE_ERSTE_POSITION)
  @CsvHeader("Stimmabgabeart")
  private Stimmabgabeart stimmabgabeart;

  @CsvField(pos = ERGEBNISTABELLE_LETZTE_POSITION)
  @CsvHeader("Zeilenart")
  private ErgebnistabelleZeileArt zeileArt;

  protected AbstractErgebnistabelleCsvDTO() {
    super();
  }

  protected AbstractErgebnistabelleCsvDTO(AbstractErgebnistabelleZeilenSchluessel schluessel) {
    super();

    setGebiet(schluessel.getGebiet());
    setZeileArt(schluessel.getZeileArt());
    setStimmabgabeart(schluessel.getStimmabgabeart());
  }

  @Override
  public Stimmabgabeart getStimmabgabeart() {
    return stimmabgabeart;
  }

  @Override
  public void setStimmabgabeart(Stimmabgabeart stimmabgabeart) {
    this.stimmabgabeart = stimmabgabeart;
  }

  @Override
  public ErgebnistabelleZeileArt getZeileArt() {
    return zeileArt;
  }

  @Override
  public void setZeileArt(ErgebnistabelleZeileArt zeileArt) {
    this.zeileArt = zeileArt;
  }
}
