package de.ivu.elect.business.auffaelligkeit.entity;

import java.math.MathContext;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;

import de.ivu.elect.business.ergebnis.entity.Stimmenart;
import de.ivu.elect.business.gruppe.entity.PolitischeGruppe;
import de.ivu.elect.jee.faces.Messages;

public class AuffaelligkeitBemerkungUngueltige extends AuffaelligkeitBemerkung {
  private Stimmenart stimmenart;
  private double wert;

  public AuffaelligkeitBemerkungUngueltige(double auffaelligkeitsskala, Stimmenart stimmenart, double wert) {
    super(auffaelligkeitsskala);
    this.stimmenart = stimmenart;
    this.wert = wert;
  }

  @Override
  public String getAuffaelligkeitBemerkungAlsString(Locale locale, Messages messages) {
    MathContext mathContext = new MathContext(4, RoundingMode.HALF_EVEN);
    return messages.getMessageForMessageKey("stimmen.auffaelligkeit.suche.bemerkungen.hoher.ungueltige.anteil",
        messages.getMessageForMessageKey("stimmen.auffaelligkeit.suche.bemerkungen.stimmenart." + stimmenart.toString().toLowerCase()),
        getNumberInAbsoluteValueFormattedInDecimalTwoFractionDigitsPercentageForm(wert, locale, messages));
  }

  @Override
  public List<PolitischeGruppe> getInvolvedPartys() {
    return new ArrayList<>();
  }
}
