/*
 * Querydsl query type
 *
 *
 */
package de.ivu.elect.business.entschaedigung.entity;

import static com.querydsl.core.types.PathMetadataFactory.*;

import com.querydsl.core.types.Path;
import com.querydsl.core.types.PathMetadata;
import com.querydsl.core.types.dsl.EntityPathBase;
import com.querydsl.core.types.dsl.NumberPath;
import com.querydsl.core.types.dsl.StringPath;
import com.querydsl.core.types.dsl.EnumPath;
import com.querydsl.core.types.dsl.DateTimePath;
import com.querydsl.core.types.dsl.SetPath;
import com.querydsl.core.types.dsl.BooleanPath;
import com.querydsl.core.types.dsl.PathInits;

@javax.enterprise.inject.Vetoed
@javax.annotation.Generated("de.ivu.takatuka")
public class QEntschaedigung extends EntityPathBase<Entschaedigung> {

  private static final long serialVersionUID = -1;

  // Wird benötigt zur Initialisierung der Entitäten. Verhindert Schleifen, initialisiert standardmäßig aber nur direkte Referenzen, nicht mehrere Ebenen. Mehrere Ebenen müssen explizit angegeben werden.
  private static final PathInits INITS_SAFE = new PathInits("*"
	// Auszahlung
, "auszahlung.customDataStorage"
, "auszahlung.dateiExport"
, "auszahlung.wahltermin"
, "auszahlung.wahl"
	// Entschaedigungsart
, "entschaedigungsart.wahltermin"
, "entschaedigungsart.wahl"
	// Personendaten
, "personendaten.anschrift"
, "personendaten.customDataStorage"
, "personendaten.erreichbarkeitsanschrift"
, "personendaten.foto"
, "personendaten.kontoverbindung"
, "personendaten.wahltermin"
, "personendaten.wahl"
);

  private static final PathInits INITS = de.ivu.elect.jee.entity.QueryDsl.DIREKT_4_EBENEN;

  public static final QEntschaedigung entschaedigung = new QEntschaedigung("entschaedigung");

  public final NumberPath<Long> id = createNumber("id", Long.class);

  public final NumberPath<java.lang.Long> anzahl = createNumber("anzahl", java.lang.Long.class);

  public final StringPath bezeichnung = createString("bezeichnung");

  public final NumberPath<java.math.BigDecimal> einzelbetrag = createNumber("einzelbetrag", java.math.BigDecimal.class);

  public final NumberPath<java.math.BigDecimal> gesamtbetrag = createNumber("gesamtbetrag", java.math.BigDecimal.class);

  public final EnumPath<de.ivu.elect.business.entschaedigung.entity.EntschaedigungStatus> status = createEnum("status", de.ivu.elect.business.entschaedigung.entity.EntschaedigungStatus.class);

  public final StringPath waehrungAlsIsoCode = createString("waehrungAlsIsoCode");


  // Beziehungen N:1 unidirektional

  public final de.ivu.elect.business.entschaedigung.entity.QAuszahlung auszahlung;

  public final de.ivu.elect.business.entschaedigung.entity.QEntschaedigungsart entschaedigungsart;

  public final de.ivu.elect.business.person.entity.QPersonendaten personendaten;

  // Beziehungen N:1 bidirektional


  // Beziehungen 1:N bidirektional

  /**
   * Beziehungen N:M bidirektional nicht selbstreferenzierend
   */

  public QEntschaedigung(Class<? extends Entschaedigung> type, PathMetadata metadata, PathInits inits) {
    super(type, metadata, inits);
    this.auszahlung = inits.isInitialized("auszahlung") ? new de.ivu.elect.business.entschaedigung.entity.QAuszahlung(forProperty("auszahlung"), inits.get("auszahlung")) : null;// de.ivu.elect.business.entschaedigung.entity.QAuszahlung.auszahlung;
    this.entschaedigungsart = inits.isInitialized("entschaedigungsart") ? new de.ivu.elect.business.entschaedigung.entity.QEntschaedigungsart(forProperty("entschaedigungsart"), inits.get("entschaedigungsart")) : null;// de.ivu.elect.business.entschaedigung.entity.QEntschaedigungsart.entschaedigungsart;
    this.personendaten = inits.isInitialized("personendaten") ? new de.ivu.elect.business.person.entity.QPersonendaten(forProperty("personendaten"), inits.get("personendaten")) : null;// de.ivu.elect.business.person.entity.QPersonendaten.personendaten;
  }

  public QEntschaedigung(String variable) {
    this(Entschaedigung.class, forVariable(variable), INITS);
  }

  public QEntschaedigung(Path<? extends Entschaedigung> path) {
    this(path.getType(), path.getMetadata(), path.getMetadata().isRoot() ? INITS : PathInits.DEFAULT);
  }

  public QEntschaedigung(PathMetadata metadata) {
    this(metadata, metadata.isRoot() ? INITS : PathInits.DEFAULT);
  }

  public QEntschaedigung(PathMetadata metadata, PathInits inits) {
    this(Entschaedigung.class, metadata, inits);
  }
}
