
package de.ivu.elect.exchange.person;

import org.jsefa.csv.annotation.CsvDataType;
import org.jsefa.csv.annotation.CsvField;

import de.ivu.elect.business.person.entity.Personendaten;
import de.ivu.elect.exchange.AlleDatenDTO;
import de.ivu.elect.exchange.anschrift.AnschriftAlleDatenDTO;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.jsefa.CsvHeader;

@CsvDataType
public class PersonendatenOhneWahlrechtlicheBedeutungAlleDatenDTO extends AlleDatenDTO {

  private static final long serialVersionUID = 1L;

  protected static final int PERSONENDATEN_OHNE_WAHLRECHTLICHE_BEDEUTUNG_LETZTE_ID = 15;

  @CsvField(pos = 1)
  @CsvHeader("Anrede")
  private String anrede;

  @CsvField(pos = 2)
  @CsvHeader("Familienname")
  private String familienname;

  @CsvField(pos = 3)
  @CsvHeader("Vorname")
  private String rufname;

  @CsvField(pos = 6)
  @CsvHeader("Bemerkung")
  private String bemerkung;

  @CsvField(pos = 7)
  @CsvHeader("EmailAdresse")
  private String emailAdresse;

  @CsvField(pos = 8)
  @CsvHeader("EmailAdresseArbeit")
  private String emailAdresseArbeit;

  @CsvField(pos = 9)
  @CsvHeader("Faxnummer")
  private String faxnummer;

  @CsvField(pos = 10)
  @CsvHeader("TelefonnummerArbeit")
  private String telefonnummerArbeit;

  @CsvField(pos = 11)
  @CsvHeader("TelefonnummerFestnetz")
  private String telefonnummerFestnetz;

  @CsvField(pos = 12)
  @CsvHeader("TelefonnummerMobil")
  private String telefonnummerMobil;

  @CsvField(pos = 13)
  @CsvHeader("Titel")
  private String titel;

  @CsvField(pos = 14)
  @CsvHeader("Anschrift")
  private AnschriftAlleDatenDTO anschrift = new AnschriftAlleDatenDTO();

  @CsvField(pos = PERSONENDATEN_OHNE_WAHLRECHTLICHE_BEDEUTUNG_LETZTE_ID)
  @CsvHeader("Kontoverbindung")
  KontoverbindungAlleDatenDTO kontoverbindung = new KontoverbindungAlleDatenDTO();

  public PersonendatenOhneWahlrechtlicheBedeutungAlleDatenDTO() {
    super();
  }

  public PersonendatenOhneWahlrechtlicheBedeutungAlleDatenDTO(Personendaten personendaten, Messages messages) {
    super();

    anrede = personendaten.getAnrede();
    familienname = personendaten.getFamilienname();
    rufname = personendaten.getRufname();
    bemerkung = personendaten.getBemerkung();
    emailAdresse = personendaten.getEmailAdresse();
    emailAdresseArbeit = personendaten.getEmailAdresseArbeit();
    faxnummer = personendaten.getFaxnummer();
    telefonnummerArbeit = personendaten.getTelefonnummerArbeit();
    telefonnummerFestnetz = personendaten.getTelefonnummerFestnetz();
    telefonnummerMobil = personendaten.getTelefonnummerMobil();
    titel = personendaten.getTitel();
    anschrift = new AnschriftAlleDatenDTO(personendaten.getAnschrift(), messages);
    kontoverbindung = new KontoverbindungAlleDatenDTO(personendaten.getKontoverbindung());
  }

  public String getAnrede() {
    return anrede;
  }

  public void setAnrede(String anrede) {
    this.anrede = anrede;
  }

  public String getFamilienname() {
    return familienname;
  }

  public void setFamilienname(String familienname) {
    this.familienname = familienname;
  }

  public String getRufname() {
    return rufname;
  }

  public void setRufname(String rufname) {
    this.rufname = rufname;
  }

  public String getBemerkung() {
    return bemerkung;
  }

  public void setBemerkung(String bemerkung) {
    this.bemerkung = bemerkung;
  }

  public String getEmailAdresse() {
    return emailAdresse;
  }

  public void setEmailAdresse(String emailAdresse) {
    this.emailAdresse = emailAdresse;
  }

  public String getEmailAdresseArbeit() {
    return emailAdresseArbeit;
  }

  public void setEmailAdresseArbeit(String emailAdresseArbeit) {
    this.emailAdresseArbeit = emailAdresseArbeit;
  }

  public String getFaxnummer() {
    return faxnummer;
  }

  public void setFaxnummer(String faxnummer) {
    this.faxnummer = faxnummer;
  }

  public String getTelefonnummerArbeit() {
    return telefonnummerArbeit;
  }

  public void setTelefonnummerArbeit(String telefonnummerArbeit) {
    this.telefonnummerArbeit = telefonnummerArbeit;
  }

  public String getTelefonnummerFestnetz() {
    return telefonnummerFestnetz;
  }

  public void setTelefonnummerFestnetz(String telefonnummerFestnetz) {
    this.telefonnummerFestnetz = telefonnummerFestnetz;
  }

  public String getTelefonnummerMobil() {
    return telefonnummerMobil;
  }

  public void setTelefonnummerMobil(String telefonnummerMobil) {
    this.telefonnummerMobil = telefonnummerMobil;
  }

  public String getTitel() {
    return titel;
  }

  public void setTitel(String titel) {
    this.titel = titel;
  }

}
