
package de.ivu.elect.presentation.wahlausschuss.action;

import de.ivu.elect.business.entschaedigung.entity.EntschaedigungConstants;
import de.ivu.elect.business.security.UseCasePermission;
import de.ivu.elect.business.wahlausschuss.entity.Wahlausschussmitglied;
import de.ivu.elect.presentation.security.AbstractGebietSecurity;
import de.ivu.elect.presentation.wahlausschuss.WahlausschussmitgliedEntschaedigungEditView;

public class WahlausschussmitgliedEntschaedigungEditAction extends AbstractWahlausschussmitgliedAction {

  private static final long serialVersionUID = 1L;

  public WahlausschussmitgliedEntschaedigungEditAction() {
    super();
  }

  @Override
  public UseCasePermission getRequiredPermission() {
    return UseCasePermission.ENTSCHAEDIGUNG_EDIT;
  }

  @Override
  public AbstractGebietSecurity getGebietSecurity() {
    return getEinsehenGebietSecurity();
  }

  @Override
  protected String doIt(Wahlausschussmitglied wahlausschussmitglied) {
    wahlausschussmitgliedSelect.setEntity(wahlausschussmitglied);

    return WahlausschussmitgliedEntschaedigungEditView.VIEW_ID;
  }

  @Override
  protected String getLocalizedLabel() {
    return getMessage(getLabelKey(), getMessage(EntschaedigungConstants.MESSAGE_KEY_ENTITY_MEHRZAHL));
  }

  @Override
  public String getLabelKey() {
    return "personendaten.entschaedigung.edit.action.edit";
  }

  @Override
  public String getIcon() {
    return appIcons.getIconGeld();
  }
}
