
package de.ivu.elect.dokumente.wahlvorschlag;

import de.ivu.document.generator.template.BaseDocument;
import de.ivu.document.generator.template.annotations.DocumentComplexField;
import de.ivu.document.generator.template.annotations.DocumentSimpleField;
import de.ivu.elect.business.wahlvorschlag.entity.Listenverbindung;
import de.ivu.elect.dokumente.gebiet.GebietDokument;

public class CoreListenverbindungDokument extends BaseDocument {

  private static final long serialVersionUID = 1L;

  @DocumentSimpleField("Bezeichnung")
  public final String bezeichnung;

  @DocumentSimpleField("LaufendeNummer")
  public final Long laufendeNummer;

  @DocumentSimpleField("IstZugelassen")
  public final boolean zugelassen;

  @DocumentSimpleField("IstNichtZugelassen")
  public final boolean nichtZugelassen;

  @DocumentComplexField("Gebiet")
  public final GebietDokument gebietDokument;

  public CoreListenverbindungDokument(Listenverbindung listenverbindung, Long laufendeNummer, GebietDokument gebietDokument) {
    this(listenverbindung.getBezeichnung(), laufendeNummer, gebietDokument, true);
  }

  protected CoreListenverbindungDokument(String bezeichnung, Long laufendeNummer, GebietDokument gebietDokument, boolean zugelassen) {
    this.bezeichnung = bezeichnung;
    this.laufendeNummer = laufendeNummer;
    this.zugelassen = zugelassen;
    this.nichtZugelassen = !this.zugelassen;
    this.gebietDokument = gebietDokument;
  }
}
