
package de.ivu.elect.dokumente.entschaedigung;

import de.ivu.document.generator.template.annotations.DocumentComplexField;
import de.ivu.document.generator.template.annotations.DocumentSimpleField;
import de.ivu.elect.business.entschaedigung.entity.Entschaedigung;
import de.ivu.elect.business.person.entity.Personendaten;
import de.ivu.elect.dokumente.BaseElectContext;
import de.ivu.elect.dokumente.ElectDocument;
import de.ivu.elect.dokumente.PersonDokument;

public class EntschaedigungDocument extends ElectDocument {

  private static final long serialVersionUID = 1L;

  @DocumentSimpleField(value = "Nummer-Fortlaufend")
  public final Integer nummerFortlaufend;

  @DocumentComplexField("Personendaten")
  public final PersonDokument personendaten;

  @DocumentComplexField("Entschaedigungsinformationen")
  public final EntschaedigungBaseDocument entschaedigungsinformationen;

  public EntschaedigungDocument(BaseElectContext baseElectContext, int nummerFortlaufend, Entschaedigung entschaedigung) {
    super(baseElectContext);

    this.nummerFortlaufend = nummerFortlaufend;

    Personendaten personendaten = entschaedigung.getPersonendaten();

    if (personendaten == null) {
      this.personendaten = PersonDokument.EMPTY_OBJECT;
    } else {
      this.personendaten = new PersonDokument(baseElectContext, personendaten);
    }

    this.entschaedigungsinformationen = new EntschaedigungBaseDocument(baseElectContext, entschaedigung);
  }
}
