package de.ivu.elect.presentation.ergebniskonflikt.menu;

import javax.enterprise.inject.Specializes;
import javax.inject.Inject;

import de.ivu.elect.business.ergebnis.boundary.ErgebnisSessionSelect;
import de.ivu.elect.business.ergebnis.entity.Ergebnis;
import de.ivu.elect.business.ergebniskonflikt.boundary.ErgebnisKonfliktExtendedDAO;

@Specializes
public class NlErgebnisKonfliktSearchMenuItemEntry extends ErgebnisKonfliktSearchMenuItemEntry {
  private static final long serialVersionUID = 1L;

  @Inject
  private transient ErgebnisKonfliktExtendedDAO ergebnisKonfliktExtendedDAO;

  @Inject
  private transient ErgebnisSessionSelect ergebnisSessionSelect;

  @Override
  public boolean isRendered() {
    return super.isRendered() && isLosentscheideVorhanden();
  }

  private boolean isLosentscheideVorhanden() {
    Ergebnis ergebnis = ergebnisSessionSelect.getEntity();
    if (ergebnis == null) {
      return false;
    }
    return !ergebnisKonfliktExtendedDAO.findByErgebnisOrderById(ergebnis).isEmpty();
  }
}
