package de.ivu.elect.presentation.auffaelligkeit.table;

import de.ivu.elect.business.ergebnis.entity.Stimmenart;
import de.ivu.elect.business.stimmeingabe.entity.StimmeingabeAuffaelligkeit;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.elect.jee.presentation.dynamictable.ColumnType;

public class StimmeingabeAuffaelligkeitAbweichungSummeColumn extends AbstractStimmeingabeAuffaelligkeitColumn{
  private static final long serialVersionUID = 1L;

  private final Stimmenart stimmenart;

  public StimmeingabeAuffaelligkeitAbweichungSummeColumn(Messages messages, Stimmenart stimmenart) {
    super(messages);
    this.stimmenart = stimmenart;
  }

  @Override
  public Object getValue(StimmeingabeAuffaelligkeit entity) {
    return entity.getSummeAbsoluteAbweichungEinerStimmenart(stimmenart);
  }

  @Override
  public String getHeader() {
    return getMessage("stimmen.auffaelligkeit.suche.abweichung.summe.header") +  " (" + getMessage(stimmenart) + ")";
  }

  @Override
  public ColumnType getType() {
    return ColumnType.DECIMAL_TWO_FRACTION_DIGITS_PERCENTAGE;
  }
}
