Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Sonstige Spendenbescheinigung #247

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
18 changes: 14 additions & 4 deletions src/de/jost_net/JVerein/gui/action/SpendenbescheinigungAction.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@

public class SpendenbescheinigungAction implements Action
{
private int spendenart = Spendenart.SACHSPENDE;
private int spendenart = Spendenart.SONSTIG;

private Spendenbescheinigung spb = null;

Expand All @@ -63,8 +63,19 @@ public void handleAction(Object context) throws ApplicationException
spb = (Spendenbescheinigung) Einstellungen.getDBService()
.createObject(Spendenbescheinigung.class, null);
spb.setSpendenart(spendenart);
switch (spendenart)
{
case Spendenart.GELDSPENDE:
spb.setErsatzAufwendungen(false);
break;
case Spendenart.SACHSPENDE:
spb.setErsatzAufwendungen(false);
break;
case Spendenart.SONSTIG:
spb.setErsatzAufwendungen(true);
break;
}
spb.setAutocreate(Boolean.FALSE);
spb.setErsatzAufwendungen(false);
spb.setBescheinigungsdatum(new Date());

if (context != null && (context instanceof Mitglied))
Expand Down Expand Up @@ -113,8 +124,6 @@ else if (mkn.getType() == MitgliedskontoNode.MITGLIED)
}
else
{
spb.setSpendenart(Spendenart.SACHSPENDE);
spb.setAutocreate(Boolean.FALSE);
Object o = GUI.getCurrentView().getCurrentObject();
if (o != null && o instanceof Spendenbescheinigung)
{
Expand All @@ -126,6 +135,7 @@ else if (mkn.getType() == MitgliedskontoNode.MITGLIED)
spb.setZeile5(von.getZeile5());
spb.setZeile6(von.getZeile6());
spb.setZeile7(von.getZeile7());
spb.setMitglied(von.getMitglied());
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -315,6 +315,7 @@ private void generiereSpendenbescheinigungStandard(Spendenbescheinigung spb,
switch (spb.getSpendenart())
{
case Spendenart.GELDSPENDE:
case Spendenart.SONSTIG:
rpt.addHeaderColumn("Betrag der Zuwendung -in Ziffern-",
Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
break;
Expand Down Expand Up @@ -628,6 +629,7 @@ private void generiereSpendenbescheinigungStandardAb2013(
switch (spb.getSpendenart())
{
case Spendenart.GELDSPENDE:
case Spendenart.SONSTIG:
rpt.addHeaderColumn("Betrag der Zuwendung -in Ziffern-",
Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY);
break;
Expand Down Expand Up @@ -784,7 +786,8 @@ private void generiereSpendenbescheinigungStandardAb2013(
rpt.add("\nEs wird best�tigt, dass die Zuwendung nur zur "
+ Einstellungen.getEinstellung().getBeguenstigterzweck()
+ " verwendet wird.\n", 8);
if (spb.getSpendenart() == Spendenart.GELDSPENDE)
if (spb.getSpendenart() == Spendenart.GELDSPENDE ||
spb.getSpendenart() == Spendenart.SONSTIG)
{
char mitgliedBetraege = (char) 113; // box leer
if (!Einstellungen.getEinstellung().getMitgliedsbetraege())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -683,7 +683,7 @@ public Part getSpendenbescheinigungList() throws RemoteException
return spbList;
}
spbList = new TablePart(getSpendenbescheinigungen(),
new SpendenbescheinigungAction(Spendenart.SACHSPENDE));
new SpendenbescheinigungAction(Spendenart.SONSTIG));
spbList.addColumn("Nr", "id");
spbList.addColumn("Bescheinigungsdatum", "bescheinigungsdatum",
new DateFormatter(new JVDateFormatTTMMJJJJ()));
Expand Down
2 changes: 2 additions & 0 deletions src/de/jost_net/JVerein/gui/menu/MitgliedMenu.java
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,8 @@ public void handleAction(Object context) throws ApplicationException
new SpendenbescheinigungAction(Spendenart.GELDSPENDE), "file-invoice.png"));
addItem(new CheckedSingleContextMenuItem("Sachspendenbescheinigung",
new SpendenbescheinigungAction(Spendenart.SACHSPENDE), "file-invoice.png"));
addItem(new CheckedSingleContextMenuItem("Spendenbescheinigung (Sonstig)",
new SpendenbescheinigungAction(Spendenart.SONSTIG), "file-invoice.png"));
addItem(new CheckedContextMenuItem("Personalbogen",
new PersonalbogenAction(), "file-invoice.png"));
addItem(new CheckedSingleContextMenuItem("Manuelle Lastschrift",
Expand Down
2 changes: 2 additions & 0 deletions src/de/jost_net/JVerein/gui/menu/MitgliedskontoMenu.java
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,8 @@ public MitgliedskontoMenu()
new SpendenbescheinigungAction(Spendenart.GELDSPENDE), "file-invoice.png"));
addItem(new MitgliedItem("Sachspendenbescheinigung",
new SpendenbescheinigungAction(Spendenart.SACHSPENDE), "file-invoice.png"));
addItem(new MitgliedItem("Spendenbescheinigung (Sonstig)",
new SpendenbescheinigungAction(Spendenart.SONSTIG), "file-invoice.png"));
}

private static class MitgliedItem extends CheckedContextMenuItem
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,10 +64,11 @@ public void bind() throws Exception
ButtonArea buttons = new ButtonArea();
buttons.addButton("Hilfe", new DokumentationAction(),
DokumentationUtil.SPENDENBESCHEINIGUNG, false, "question-circle.png");
buttons.addButton("Neu (Sachspende)", new SpendenbescheinigungAction(Spendenart.SACHSPENDE), null,
false, "document-new.png");
buttons.addButton("Neu (automatisch)",
new SpendenbescheinigungAutoNeuAction(), null, false,
buttons.addButton("Neu (Sachspende)", new SpendenbescheinigungAction(
Spendenart.SACHSPENDE), null, false, "document-new.png");
buttons.addButton("Neu (Spende (Sonstig))", new SpendenbescheinigungAction(
Spendenart.SONSTIG), null, false, "document-new.png");
buttons.addButton("Neu (Geldspenden)", new SpendenbescheinigungAutoNeuAction(), null, false,
"document-new.png");
buttons.paint(this.getParent());
}
Expand Down
16 changes: 7 additions & 9 deletions src/de/jost_net/JVerein/gui/view/SpendenbescheinigungView.java
Original file line number Diff line number Diff line change
Expand Up @@ -83,20 +83,16 @@ public void bind() throws Exception
/*
* Betrag kann bei Geldspenden nicht ge�ndert werden
*/
if (control.getSpendenbescheinigung().getAutocreate())
if (control.getSpendenbescheinigung().getSpendenart()
== Spendenart.GELDSPENDE)
{
control.getSpendenart().setEnabled(false);
control.getBetrag().setEnabled(false);
// Buchnungen nur f�r Geldspenden
LabelGroup grBuchungen = new LabelGroup(scrolled.getComposite(),
"Buchungen");
grBuchungen.addPart(control.getBuchungsList());
}
else
{
control.getSpendenart().setEnabled(false);
control.getBetrag().setEnabled(true);
}
control.getSpendenart().setEnabled(false);

ButtonArea buttons = new ButtonArea();
buttons.addButton("Hilfe", new DokumentationAction(),
Expand All @@ -105,8 +101,10 @@ public void bind() throws Exception
buttons.addButton(control.getPDFStandardButton(true));
buttons.addButton(control.getPDFIndividuellButton(false));
buttons.addButton(control.getPDFIndividuellButton(true));
buttons.addButton("Neu (Sachspende)", new SpendenbescheinigungAction(Spendenart.SACHSPENDE), null, false,
"document-new.png");
buttons.addButton("Neu (Sachspende)", new SpendenbescheinigungAction(
Spendenart.SACHSPENDE), null, false, "document-new.png");
buttons.addButton("Neu (Spende (Sonstig))", new SpendenbescheinigungAction(
Spendenart.SONSTIG), null, false, "document-new.png");
buttons.addButton("Speichern", new Action()
{

Expand Down
5 changes: 5 additions & 0 deletions src/de/jost_net/JVerein/keys/Spendenart.java
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ public class Spendenart
public static final int GELDSPENDE = 1;

public static final int SACHSPENDE = 2;

public static final int SONSTIG = 3; // Aufwandsspende oder Verg�tungsspende

private int art;

Expand All @@ -53,6 +55,8 @@ public static String get(int key)
return "Geldspende";
case SACHSPENDE:
return "Sachspende";
case SONSTIG:
return "Sonstig (Aufwands-, Verg�tungsspende)";
default:
return null;
}
Expand All @@ -63,6 +67,7 @@ public static ArrayList<Spendenart> getArray()
ArrayList<Spendenart> ret = new ArrayList<>();
ret.add(new Spendenart(GELDSPENDE));
ret.add(new Spendenart(SACHSPENDE));
ret.add(new Spendenart(SONSTIG));
return ret;
}

Expand Down
9 changes: 3 additions & 6 deletions src/de/jost_net/JVerein/server/SpendenbescheinigungImpl.java
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ public int getSpendenart() throws RemoteException
Integer ret = (Integer) getAttribute("spendenart");
if (ret == null)
{
ret = Spendenart.GELDSPENDE;
ret = Spendenart.SONSTIG;
}
return ret;
}
Expand Down Expand Up @@ -627,11 +627,8 @@ public Map<String, Object> getMap(Map<String, Object> inma)
switch (getSpendenart())
{
case Spendenart.GELDSPENDE:
String art = "Geldzuwendungen";
if (Einstellungen.getEinstellung().getMitgliedsbetraege())
{
art += "/Mitgliedsbeitrag";
}
case Spendenart.SONSTIG:
String art = "Geldzuwendungen/Mitgliedsbeitrag";
map.put(SpendenbescheinigungVar.SPENDEART.getName(), art);
break;
case Spendenart.SACHSPENDE:
Expand Down